Releases: therezor/card-craft
Release list
Card Craft 1.0.1
A patch release. The game is unchanged to play; what changed is underneath it.
What's fixed
- The keyboard no longer allocates while a key is held. Reading the key
state copied a structure containing three vectors, so holding any key ran
three allocations and three frees every frame — and that was the only place
the game reached the allocator at all while you were playing. - Developer builds report their own memory. Heap low-water mark, a heap
integrity check, the margin left on both task stacks, and how much of the
placement-marker pool is spare. A freeze that happens once now leaves
something behind to read.
This came out of a report of the game freezing when the craft card was opened.
That could not be reproduced, and nothing here is proven to be its cause: the
heap measures 35.5 KB free and does not move by a single byte when the card
opens, and both task stacks have room to spare. What the keyboard fix removes
is the one place in the frame where a memory problem could have surfaced —
which happens to be a keypress, the same keypress that opens the craft card.
If you are on 1.0.0 and have never seen a freeze, there is nothing here you
need. Upgrading costs you nothing either.
Install
Easiest — flash the full image at offset 0, nothing else needed:
esptool.py --chip esp32s3 --port /dev/tty.usbmodemXXXX --baud 921600 \
write_flash 0x0 card-craft-1.0.1-cardputer-full.binIf you already have the bootloader and partition table on the board, the
application image alone goes at 0x10000:
esptool.py --chip esp32s3 --port /dev/tty.usbmodemXXXX --baud 921600 \
write_flash 0x10000 card-craft-1.0.1-cardputer-app.binOr build it yourself with PlatformIO:
git clone https://github.com/therezor/card-craft
cd card-craft
pio run -e cardputer -t uploadOne build runs on both the Cardputer and the Cardputer ADV.
Controls
Right hand moves, left hand acts. Arrows move and turn, W mines, A builds,
E/S look up and down, ENTER centres the view, SPACE jumps, 1-9 pick
a hotbar slot, Q drops, TAB crafts, ESC goes back. There is a CONTROLS
card in the game too.
Checksums
465fb961d99a8baf6edbf29476257af89a819ee5c9a78ab8e8b006f603f69d66 card-craft-1.0.1-cardputer-app.bin
88af1c537df2155d0e11e6260b1911551da5a8eecf05050206bbd91f37f90092 card-craft-1.0.1-cardputer-full.bin
Full changelog: v1.0.0...v1.0.1
Card Craft 1.0.0
Mine by day. Wall yourself in by night. Survive.
A first-person survival game for the M5Stack Cardputer. Dig up a world made of
blocks, build something to hide in, and see how many nights you last.
- Mine and build anywhere. Every block can come out and go back somewhere
else, so tunnels, shelves, roofs and floors in mid-air are never refused. - Craft from shapes. A pickaxe is a wide head over a handle, a sword is a
blade over a handle. Start with nothing and work up through stone, iron and
diamond. - Survive the night. Zombies wind up before they swing, so you can read it
and step back. Skeletons shoot from range. Creepers take out whatever you just
built. Torches keep the ground around them clear. - Sixteen cells of draw distance, a day/night cycle with music under the
daylight, and a score counted in nights survived.
One build runs on both the Cardputer and the Cardputer ADV.
Install
Easiest — flash the full image at offset 0, nothing else needed:
esptool.py --chip esp32s3 --port /dev/tty.usbmodemXXXX --baud 921600 \
write_flash 0x0 card-craft-1.0.0-cardputer-full.binIf you already have the bootloader and partition table on the board, the
application image alone goes at 0x10000:
esptool.py --chip esp32s3 --port /dev/tty.usbmodemXXXX --baud 921600 \
write_flash 0x10000 card-craft-1.0.0-cardputer-app.binOr build it yourself with PlatformIO:
git clone https://github.com/therezor/card-craft
cd card-craft
pio run -e cardputer -t uploadControls
Right hand moves, left hand acts. Arrows move and turn, W mines, A builds,
E/S look up and down, ENTER centres the view, SPACE jumps, 1-9 pick
a hotbar slot, Q drops, TAB crafts, ESC goes back. There is a CONTROLS
card in the game too.
Checksums
a897484aa6aefd3c6cde3fe06b067ac6ab62f86b2c14d69259c47a0e8b103a74 card-craft-1.0.0-cardputer-app.bin
b89c8576535cd3093ff1b5c30b043bcf57e54edefcad0d425471572f05c2b15c card-craft-1.0.0-cardputer-full.bin