Snake!
Made while learning nim-lang and thinking about gameplay variants for as a potential educational project.
Several implementations of a very simple snake game:
- rust + macroquad a graphical implementation in rust using macroquad (similar to the official snake example)
- rust + bevy a graphical implementation in rust using bevy (mostly following this tutorial)
- nim + nico a graphical implementation in nim using nico.
- nim + ill-will a command-line implementation in nim using illwill.
- python abandoned partial implementation to get a feel for the data structures involved
This was a good, very basic early project while learning nim-lang and some rust libraries. This is as far as I will take it for now. Considering the following next steps (some day):
- Get the nico version to compile for web (having trouble installing emscripten for the headers to be picked up by the compiler).
- Make a multi-player variant. Implementation can probably get away with client-authoritative netcode or a simple rollback system.
- Make an AI to solve the game (single-player) and play against (multi-player).
- Make a COMP30024-style project out of the multi-player variant, perhaps with real-time as the interesting challenging aspect for the year. (Note: Nim could be a good choice of language for a COMP30024-style class?)
Other snake games, from which I took some inspiration:
- The snake game on my nokia
- dom96/snake
