🤖 A Fable 5 experiment. One of a handful of silly side projects I had Fable 5 build before the model was banned. I wanted to see how good Fable really was at game design — so I handed it a concept (a Stardew Valley–style farming sim) and let it run. It's a fun prototype, not a finished product; if Fable ever comes back, or I find the free time, I may pick it up and finish it.
A Stardew Valley–inspired farming life-sim in Rust + macroquad. Solo hobby project: the engine falls out of the game, not the other way around.
cargo run --releaseFarm: till, plant, water, harvest, ship produce in the crate by your house. Town: three villagers with daily schedules — talk to them, gift them produce (once a day) and friendship hearts grow, changing what they say. Orin's stall (8 AM–5 PM, rain or shine) sells seeds, bread, and a sword. North of town a cave hides log monsters and mineable rocks — gems sell well, but blacking out costs 10% of your gold. Rain waters your crops for you. Pip the chicken supervises the farm.
| Crop | Growth | Seed | Sells |
|---|---|---|---|
| Turnip | 4 days | 20g | 35g |
| Tomato | 6 days | 40g | 80g |
| Corn | 10 days | 80g | 200g |
| Key | Action |
|---|---|
| WASD / arrows | Move |
| 1–5 | Select hotbar slot |
| E / Space | Use held item, talk, gift, advance dialogue |
| Left click | Use held item (cursor targeting mode) |
| T | Toggle facing-tile / cursor targeting |
| Esc | Open menu (Inventory / Friends / Map / Settings / Controls) |
| Tab | Next menu section |
| Q (in menu) | Save & quit to title (with confirmation) |
Day runs 6:00–2:00 (~8 real minutes); at 2:00 you pass out. Energy limits how
much you can do; bread (30g at the stall) restores it. The game autosaves at
every day end and on quit. Delete save/ for a fresh start.
src/sim/— pure game state + systems, zero macroquad imports, fully headless-testable. Save/load is versioned serde + RON.src/render/,src/input.rs,src/audio.rs,src/main.rs— macroquad shell.assets/data/*.ron|txt— items, crops, maps, portals, NPCs are data, not code.tools/— atlas builder (CC0 sources) and audio synthesizer.
Key architectural seams: one ordered end-of-day pipeline (crops, weather,
NPC resets, dungeon respawn all hook there), one interact() dispatch funnel
(tools, gifting, combat, eating, shopping all route through it), and a strict
sim/presentation split.
Sprites assembled from CC0 OpenGameArt packs by tools/build_atlas.py; music
and SFX synthesized from scratch by tools/gen_audio.py. Credits and rebuild
instructions: ASSETS.md.
cargo test40 headless tests: crop economy over a month, schedules, gifting math, weather, portals, combat, mining, save round-trips.