feat: make pantry crises visible in the world

This commit is contained in:
Rijad Zuzo
2026-07-14 23:54:22 +02:00
parent c722e32a88
commit c23f6887c8
21 changed files with 800 additions and 73 deletions
+27 -6
View File
@@ -1,11 +1,13 @@
# Simulation Garden 01
Captured: 2026-07-13
Captured: 2026-07-14
## Files
- `docs/baselines/simulation_garden_01_debug.png`
- `docs/baselines/simulation_garden_01_cinematic.png`
- `docs/baselines/simulation_garden_02_empty_pantry.png`
- `docs/baselines/simulation_garden_02_restocked_pantry.png`
- `tools/capture_simulation_garden.gd`
## Capture Command
@@ -32,9 +34,11 @@ The script warms up `main.tscn`, verifies that the simulation and active NPC
visuals exist, stages a real food-deposit/trust consequence, a one-food pantry
shortage, the hungry interested villager's ordinary gather-food replan, and one
wind gust. It captures the F10 debug presentation, then the cinematic
presentation with development labels and UI hidden. The trust blossom is
restarted only for the second framing so both captures show the same real
consequence clearly.
presentation with development labels and UI hidden. It lets the earlier trust
reaction finish so the crisis remains the single visual idea, then records a
tighter empty-pantry view. A real NPC deposit resolves the opportunity and
produces the matching restocked view; the capture-only close framing keeps the
same elevated third-person perspective and does not change gameplay defaults.
## Review
@@ -124,5 +128,22 @@ find food` instead of a stale pre-shortage decision.
The inspector still fits the 1280×720 frame without adding another panel, and
the cinematic capture remains free of UI while preserving the task glyph,
trust blossom, and sparse calligraphic gust. Neither gameplay camera defaults
nor the established capture framing changed.
interested-villager concern, and sparse calligraphic gust. Gameplay camera
defaults remain unchanged.
## July 14 physical-crisis follow-up
The pantry is no longer a generic crate whose appearance stays constant. Its
presentation reads the authoritative food amount and swaps between a large
empty terracotta bowl, a low basket with berries/sack, and a fuller stocked
arrangement. The active opportunity adds one small empty-bowl concern mark to
its interested villager only. A real NPC deposit clears that concern and emits
one short amber refill ring/mote response; restoring the same state rebuilds
the stock and concern without replaying the transient response.
The two `simulation_garden_02_*` images form a deterministic before/after pair
for editing or public progress posts. They deliberately keep UI panels out and
use a tighter version of the same elevated camera language. The broader
environment remains prototype-grade; the next useful visual proof is the full
2030 second gather/carry/deposit/recovery loop rather than another isolated
ornament pass.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 419 KiB

After

Width:  |  Height:  |  Size: 381 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 457 KiB

After

Width:  |  Height:  |  Size: 422 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 197 KiB

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://csdwcuh4q0n08"
path="res://.godot/imported/simulation_garden_02_empty_pantry.png-8afdd59748244e4706aba1dd7c45f6ef.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://docs/baselines/simulation_garden_02_empty_pantry.png"
dest_files=["res://.godot/imported/simulation_garden_02_empty_pantry.png-8afdd59748244e4706aba1dd7c45f6ef.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
Binary file not shown.

After

Width:  |  Height:  |  Size: 207 KiB

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bt0wgkeg8rhbf"
path="res://.godot/imported/simulation_garden_02_restocked_pantry.png-e95422ae67d7940f919886822d5c8ab1.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://docs/baselines/simulation_garden_02_restocked_pantry.png"
dest_files=["res://.godot/imported/simulation_garden_02_restocked_pantry.png-e95422ae67d7940f919886822d5c8ab1.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1