16 Jul 2019

feedPlanet Lisp

Nicolas Hafner: A Month of Daily Gamedev - Confession 86

header
That didn't feel as long as it was. A month ago I promised to do daily streams of game development. So far I've held true to that. I'm sure I won't be able to hold that true forever, but I'll try to keep going for as long as I can. In this one month alone, a lot has changed for the game though!

A new architecture for map organisation was implemented, including a new save file format for that. As part of that work I also completely rewrote the tilemap rendering as well. The game has a lighting system now, too, based on signed distance functions to compute precise light areas. In terms of physics, collision detection was revamped to properly support slopes and moving platforms, giving much more freedom for level design.

All of the art assets that existed previously were also dropped and replaced with new ones. I'm still working on that part, since I'm not quite happy with the current set of tiles. I'll also have to add more animations, and of course repeat the animation and character design work for any NPC I might add to the game. That's a bit of a ways out though, as I'll need to think about world building and story writing first before I can really get into that. Now there's a hard challenge!

Finally, in the last week I designed a new language for writing dialogue with branching, choices, looping, and so forth. To support this I extended the syntax of Markless, and added a compiler to transform the Markless AST into a simple assembly language, which is then executed in a simple, suspendable VM. Added on to that there's now a quest system that should be general enough to allow writing any kind of quest I'll need. Currently though it's lacking a way to conveniently write these quests, so that's a task to work on in the near future.

I intend on writing a simple UI to create and edit these quests. I'm not sure yet what I'll use for that, though. I'm most well-versed with Qt, but maybe I should finally cave in and give CLIM a shot. Or perhaps LTK. We'll have to see.

There's still about two months left in my summer break before university resumes. I hope to keep going with this until then, so expect further daily streams and more progress! As before, the stream still happens every day at 20:00 CEST, on https://stream.shinmera.com, or https://twitch.tv/shinmera. I've tremendously appreciated all the people that stop by in chat to watch, and even talk with me during work. It's made things so much more enjoyable for me. Really, thank you so much!

16 Jul 2019 9:13am GMT

11 Jul 2019

feedPlanet Lisp

Quicklisp news: July 2019 Quicklisp dist update now available

New projects:

Updated projects: 3d-matrices, 3d-vectors, alexandria, also-alsa, april, array-operations, array-utils, atomics, aws-sign4, binfix, bst, cari3s, cepl, ceramic, cffi, chirp, cl+ssl, cl-algebraic-data-type, cl-all, cl-ana, cl-cffi-gtk, cl-collider, cl-db3, cl-decimals, cl-digikar-utilities, cl-enumeration, cl-environments, cl-feedparser, cl-flac, cl-fond, cl-forms, cl-fuse, cl-fuse-meta-fs, cl-gamepad, cl-glfw3, cl-gpio, cl-hamcrest, cl-inotify, cl-just-getopt-parser, cl-k8055, cl-ledger, cl-mango, cl-markless, cl-mixed, cl-monitors, cl-mpg123, cl-mpi, cl-ntp-client, cl-opengl, cl-out123, cl-patterns, cl-png, cl-rabbit, cl-random-forest, cl-rdkafka, cl-rules, cl-smtp, cl-soloud, cl-spidev, cl-str, cl-who, cl-yesql, clack, clesh, clip, closer-mop, clss, com.clearly-useful.generic-collection-interface, command-line-arguments, concrete-syntax-tree, configuration.options, croatoan, crypto-shortcuts, cxml-rng, data-lens, deeds, deferred, definitions, dissect, djula, docbrowser, documentation-utils, doubly-linked-list, dufy, eazy-project, eclector, elf, find-port, flac-metadata, flac-parser, flare, float-features, flow, for, form-fiddle, fxml, gendl, generic-cl, glsl-toolkit, golden-utils, halftone, harmony, helambdap, humbler, iclendar, incf-cl, inkwell, ironclad, jsown, kenzo, lambda-fiddle, language-codes, lass, legit, lichat-ldap, lichat-protocol, lichat-serverlib, lichat-tcp-client, lichat-tcp-server, lichat-ws-server, lionchat, listopia, local-time, lquery, maiden, mcclim, mito, mmap, modularize, modularize-hooks, modularize-interfaces, multilang-documentation, multiposter, nineveh, nodgui, north, numpy-file-format, osicat, overlord, oxenfurt, pango-markup, parachute, parsley, pathname-utils, petalisp, piping, plokami, plump, plump-bundle, plump-sexp, plump-tex, pngload, py4cl, pzmq, qlot, qmynd, qt-libs, qtools, qtools-ui, quickutil, quilc, qvm, racer, random-state, ratify, redirect-stream, regular-type-expression, remote-js, replic, rpcq, rtg-math, sc-extensions, screamer, sealable-metaobjects, sel, serapeum, shadow, simple-actors, simple-inferiors, simple-tasks, slime, sly, snooze, softdrink, south, staple, static-dispatch, studio-client, stumpwm, system-locale, terrable, tooter, trace-db, trivia, trivial-arguments, trivial-backtrace, trivial-benchmark, trivial-bit-streams, trivial-cltl2, trivial-continuation, trivial-features, trivial-indent, trivial-main-thread, trivial-mimes, trivial-monitored-thread, trivial-pooled-database, trivial-signal, trivial-thumbnail, trivial-utilities, trivial-variable-bindings, ubiquitous, umbra, usocket, verbose, vernacular, woo.

To get this update, use (ql:update-dist "quicklisp").

Enjoy!

11 Jul 2019 8:02pm GMT

28 Jun 2019

feedPlanet Lisp

Lispers.de: Lisp-Meetup in Hamburg on Monday, 1st July 2019

We meet at Ristorante Opera, Dammtorstra├če 7, Hamburg, starting around 19:00 CEST on 1st July 2019.

This is an informal gathering of Lispers of all experience levels.

28 Jun 2019 12:00am GMT