Commit 0f0b9e58d0
0f0b9e58d0292a7e645c11e4eef639db14c2d990
parent: 0c7885650f
Verified · cmc
cmc <hello@cleberg.net> · 2026-09-27 23:41 UTC
Give thin-flame runs 10 more torch fuel
Thin flame adds 1 torch drain per dark step. Seed 8q10qn could not
finish floor 1: the most torch reachable entering the den with crown
and key was 2, and the den escape needs 6 in the real engine.
THIN_FUEL_BONUS (10) raises the torch pickup and the brazier cap under
thin. With it, the torch, bow, vault, den route reaches the den with
enough fuel on that seed.
Layout: unified · split
1mb/data.js
+1 −1
| @@ -1,6 +1,6 @@ |
| 1 | // Game data — edit this file to mod the run (floors, relics, hazards, balance). |
1 | // Game data — edit this file to mod the run (floors, relics, hazards, balance). |
| 2 | // Loaded before the engine in index.html. |
2 | // Loaded before the engine in index.html. |
| 3 | const W=12,H=12,FUEL=16 |
3 | const W=12,H=12,FUEL=16,THIN_FUEL_BONUS=10 |
| 4 | const BEAST_CALM_RADIUS=4,BEAST_ENRAGED_SPEED=2,TORCH_DRAIN_BASE=1,TORCH_DRAIN_HAZARD=2,RELIC_SLOTS_LOW=2,RELIC_SLOTS_MID=3,RELIC_SLOTS_HIGH=4,RELIC_SLOTS_RICH_BONUS=1 |
4 | const BEAST_CALM_RADIUS=4,BEAST_ENRAGED_SPEED=2,TORCH_DRAIN_BASE=1,TORCH_DRAIN_HAZARD=2,RELIC_SLOTS_LOW=2,RELIC_SLOTS_MID=3,RELIC_SLOTS_HIGH=4,RELIC_SLOTS_RICH_BONUS=1 |
| 5 | const P={g:[5,2],b:[2,2],e:[2,9],h:[2,9],p:[2,2],i:[2,2],c:[2,2],v:[2,2],d:[2,2]} |
5 | const P={g:[5,2],b:[2,2],e:[2,9],h:[2,9],p:[2,2],i:[2,2],c:[2,2],v:[2,2],d:[2,2]} |
| 6 | const PITS=[[ |
6 | const PITS=[[ |
1mb/index.html
+2 −2
| @@ -865,7 +865,7 @@ function touch(t,x,y){ |
| 865 | if(t=="O"&&!pitSafe(x,y))return die("You step into the dark and do not find the edge.") |
865 | if(t=="O"&&!pitSafe(x,y))return die("You step into the dark and do not find the edge.") |
| 866 | if(S.r=="e"&&x==S.beast.x&&y==S.beast.y)return die("The beast tears you open.") |
866 | if(S.r=="e"&&x==S.beast.x&&y==S.beast.y)return die("The beast tears you open.") |
| 867 | if(S.drop&&S.drop.r==S.r&&S.drop.x==x&&S.drop.y==y&&S.drop.fuel){S.flags.torch=S.drop.fuel;S.drop=null;S.flags.ash=0;return setMsg("Recover the torch.")} |
867 | if(S.drop&&S.drop.r==S.r&&S.drop.x==x&&S.drop.y==y&&S.drop.fuel){S.flags.torch=S.drop.fuel;S.drop=null;S.flags.ash=0;return setMsg("Recover the torch.")} |
| 868 | if(t=="T"&&!S.flags.torch){S.flags.torch=FUEL;S.flags.ash=0;showHint("torch");setMsg("Take the torch.")} |
868 | if(t=="T"&&!S.flags.torch){S.flags.torch=FUEL+(hasMod("thin")?THIN_FUEL_BONUS:0);S.flags.ash=0;showHint("torch");setMsg("Take the torch.")} |
| 869 | if(t=="M"&&!S.flags.mask){S.flags.mask=1;setMsg("Take the funeral mask. Dark eases, but flame stops slowing the beast.")} |
869 | if(t=="M"&&!S.flags.mask){S.flags.mask=1;setMsg("Take the funeral mask. Dark eases, but flame stops slowing the beast.")} |
| 870 | if(t=="S"){ |
870 | if(t=="S"){ |
| 871 | const wardBase=S.level>=3?8:4 |
871 | const wardBase=S.level>=3?8:4 |
| @@ -886,7 +886,7 @@ function touch(t,x,y){ |
| 886 | } |
886 | } |
| 887 | } |
887 | } |
| 888 | if(t=="F"){ |
888 | if(t=="F"){ |
| 889 | const cap=FUEL+(S.flags.relic=="wick"?4:0) |
889 | const cap=FUEL+(S.flags.relic=="wick"?4:0)+(hasMod("thin")?THIN_FUEL_BONUS:0) |
| 890 | const fill=S.flags.relic=="ash"?10:S.flags.relic=="wick"?8:6 |
890 | const fill=S.flags.relic=="ash"?10:S.flags.relic=="wick"?8:6 |
| 891 | const gain=S.flags.relic=="ash"?6:4 |
891 | const gain=S.flags.relic=="ash"?6:4 |
| 892 | if(S.flags.ash||!S.flags.torch){S.flags.torch=fill;S.flags.ash=0;setMsg("Light the torch from the brazier.")} |
892 | if(S.flags.ash||!S.flags.torch){S.flags.torch=fill;S.flags.ash=0;setMsg("Light the torch from the brazier.")} |
docs/SIZES.txt
+1 −1
| @@ -7,4 +7,4 @@ Record a row after each phase of work; `tools/check-size.sh` prints the current |
| 7 | |---|---|---:|---:|---:|---:|---:| |
7 | |---|---|---:|---:|---:|---:|---:| |
| 8 | | Phase 0 — guardrails (no game changes) | 2026-07-12 | 55,225 | 27,015 | — | 82,240 | 7.8% | |
8 | | Phase 0 — guardrails (no game changes) | 2026-07-12 | 55,225 | 27,015 | — | 82,240 | 7.8% | |
| 9 | | Phase 1 — engine enablers (data-driven graph, procgen rooms, full-floor solver) | 2026-07-12 | 61,356 | 28,998 | — | 90,354 | 8.6% | |
9 | | Phase 1 — engine enablers (data-driven graph, procgen rooms, full-floor solver) | 2026-07-12 | 61,356 | 28,998 | — | 90,354 | 8.6% | |
| 10 | | Graphics — vector tiles, room legend, dark-step cue | 2026-09-27 | 64,192 | 30,340 | 17,943 | 112,475 | 10.7% | |
10 | | Graphics — vector tiles, room legend, dark-step cue, thin-flame fuel | 2026-09-27 | 64,262 | 30,359 | 17,943 | 112,564 | 10.7% | |