52 lines
1.9 KiB
Plaintext
52 lines
1.9 KiB
Plaintext
# darena
|
|
|
|
an open-ended game of rocks and sand, and/or a simulator for compudanzas
|
|
|
|
the sandy space contains a bunch of rocks in either one of two possible colors, and yourself.
|
|
|
|
push and arrange the rocks to prototype and build your own computer, cellular automata, 1-bit art, etc.
|
|
|
|
=> ./img/screenshot_darena.png screenshot of the game. it shows a square clear space inside a textured world. inside the square there are several round rocks of two possible colors. there is a small platform, and a person.
|
|
|
|
what will you do with the sand?
|
|
|
|
# about
|
|
|
|
darena was developed as an exercise to learn about {uxn}
|
|
|
|
=> https://wiki.xxiivv.com/site/uxn.html uxn virtual machine and assembly language
|
|
|
|
on one hand, this happened as part of the {s-camino} practice.
|
|
|
|
on the other, this was thought as a potencial simulator of computational {performances}.
|
|
|
|
you can play with it in the web, thanks to the webuxn port by aduros:
|
|
|
|
=> https://aduros.com/webuxn/?rom=roms/darena.rom darena via webuxn
|
|
=> https://github.com/aduros/webuxn webuxn repository
|
|
|
|
# features
|
|
|
|
* a character that moves in all four cardinal directions
|
|
* rocks that can be pushed around, unless they are colliding with other rocks or the borders of the "arena"
|
|
* a toggling station where rocks can be switched to the other color
|
|
* realistic animation: the character slows down when pushing rocks, recovering their original speed when walking
|
|
|
|
# controls
|
|
|
|
use the arrow keys for cartesian movement within the space
|
|
|
|
# possible "improvements"
|
|
|
|
* add an "official" pulling option (you can pull rocks right now, but in a hacky way)
|
|
* save rocks state (position and color) to file
|
|
* optimize the use of memory for rock colors, using one bit per rock instead of one byte
|
|
* optimize for 256x192 screensize
|
|
|
|
# the code
|
|
|
|
this iteration has 31 rocks and a single toggling station where one can switch their color/state.
|
|
|
|
you can find the code in the {uxnería}
|
|
=> https://codeberg.org/sejo/uxneria uxnería repo
|