# 2023 Lisp Game Jam Entry ## "Game" Yeah I don't have a good name yet. I'm just playing around and trying to get characters on the screen right now. ## Dependencies - chicken scheme (`csi`) with eggs: - r7rs - matchable - stty - my ansi library, [yolk][] [yolk]: https://git.acdw.net/yolk ## Running Run `./game.scm` in this directory. ## License Uh.. GPL I guess. See COPYING for details. ## Development log ### 2023-05-29 - I've changed the basic logic from just throwing characters on the screen wherever to a vector-based approach. I thought there was a multiple-dimensional vector egg or something, but I apparently was mistaken. So I'm doing the ol' multiply-by-one-thing-and-add-another approach. - Implementing collision detection was slightly easier than I thought it might be. - Figuring out the vector bounds math was tricky... lots of "off-by-one" errors. I suppose I've hit both of the main errors of computer science with this game, then. - I encapsulated things in their own records (so far, `world`, `thing`, and `me` ... and `world` and `me` are parameterized) to keep stuff together. I think this'll work... I hope! ### .. before I started out by writing [yolk][], which has a bunch of procedures returning strings for terminal escapes. NIH and all :) Originally I had a big loop to just draw all the border stuff at once, then the character where I wanted it. The character would erase itself and redraw as it moved, which worked fine ... for one object. I was walking around when I realized I'd need to redo things.