
Building a Tamagotchi-like virtual pet on ESP32-S3, ended up spending more time on the save system than gameplay
I’m building a Tamagotchi-like(virtual pet) project on ESP32-S3.
GitHub repo: fluphus/esp32-artoria-tamagotchi
The main character is Artoria Pendragon from Fate series.
The gameplay is still very primitive right now:
- poke
- feed
- simple evolution logic
Most sprites/UI/animations are currently just placeholders, but the rendering and animation hooks/interfaces are already prepared.
But I ended up spending most of my time building a weird save system instead.
Current save system features:
- 3 save slots with active-pair rotation
- import/export over serial
- fallback recovery for corrupted saves
- import-time clock rebasing
- offline progression handling
- deep sleep compatible persistence
The idea is that players could exchange “living” pets instead of just unlocking a gallery. I want the pet state/history to matter more than pure completion percentage.
Right now I’m struggling more with game design/content than code architecture. Especially long-term event logic and meaningful evolution branches.
Would love feedback from people who’ve built ESP32 pet/game projects or embedded save systems before.