ludic/packages
Orkuncakilkaya 0af0ef681f ludic.fire: a camp fire's fuel, lit and out, the rain on it, and its reach
Minutes of fuel that burn down in game time, twice as fast in the rain with
nothing over the ring, and the hours it held under cover. Lighting and feeding
are decided (fire_decide), costed in wood (fire_cost) and applied
(fire_apply) apart, so a machine that does not own the world can ask the one
that does. Warmth and cooking by distance are queries. FIRE_LIT,
FIRE_WENT_OUT and FIRE_LOW_FUEL are facts; the rain, the tarp, the ban and
who owns the world come through the FireWorld port. Its own save section.
Uses ludic_base only; 8 tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 06:08:53 +03:00
..
ludic.base refactor(packages): the mechanic packages use ludic_base only, and ask through ports 2026-09-25 05:36:11 +03:00
ludic.clock refactor(packages): the mechanic packages use ludic_base only, and ask through ports 2026-09-25 05:36:11 +03:00
ludic.core feat(engine): #90 atlas-aware Sprite component, #91 become from listeners, 0.3.x ergonomics batch 2026-09-04 01:36:08 +03:00
ludic.dungeon feat(engine): #90 atlas-aware Sprite component, #91 become from listeners, 0.3.x ergonomics batch 2026-09-04 01:36:08 +03:00
ludic.effects refactor(packages): the mechanic packages use ludic_base only, and ask through ports 2026-09-25 05:36:11 +03:00
ludic.fire ludic.fire: a camp fire's fuel, lit and out, the rain on it, and its reach 2026-09-25 06:08:53 +03:00
ludic.gameplay refactor(runtime,packages,examples): named constants, package enums, idiom sweep 2026-09-05 01:12:26 +03:00
ludic.inventory refactor(packages): the mechanic packages use ludic_base only, and ask through ports 2026-09-25 05:36:11 +03:00
ludic.needs ludic.needs: a body's four needs, their rates, meals and the countdown to a collapse as a fact 2026-09-25 06:03:57 +03:00
ludic.npcai refactor(runtime,packages,examples): named constants, package enums, idiom sweep 2026-09-05 01:12:26 +03:00
ludic.platformer refactor(runtime,packages,examples): named constants, package enums, idiom sweep 2026-09-05 01:12:26 +03:00
ludic.prefs feat(lang): L7 memory is safe unless it says unsafe 2026-09-24 12:53:27 +03:00
ludic.render3d feat(ui): ludic.ui is a UI framework - input, controls, render3d backend, the CSS a game needs 2026-09-24 17:26:09 +03:00
ludic.rpg feat(lang): L7 memory is safe unless it says unsafe 2026-09-24 12:53:27 +03:00
ludic.settings feat(packages): ludic.settings - a settings store as data: typed reads and writes by id, clamping, rescue values, per-key persistence, a fact per change 2026-09-25 05:51:04 +03:00
ludic.shooter feat(lang): L4 type checker between parse and emit 2026-09-24 01:34:49 +03:00
ludic.steps feat(ludic.steps): chapters of steps, their kinds, progress and a party's pooled shares 2026-09-25 06:02:39 +03:00
ludic.telemetry feat(ludic.telemetry): an event queue batched to a PostHog-shaped endpoint 2026-09-25 05:33:16 +03:00
ludic.tracks refactor(packages): the mechanic packages use ludic_base only, and ask through ports 2026-09-25 05:36:11 +03:00
ludic.ui feat(ui): ui_scale and ui_box, on-submit, zoom (and a length over a length in calc), on-hold 2026-09-25 03:31:38 +03:00
ludic.update feat(ludic.update): a Velopack game updating itself, a frame at a time 2026-09-25 05:44:02 +03:00
ludic.wallet refactor(packages): the mechanic packages use ludic_base only, and ask through ports 2026-09-25 05:36:11 +03:00
ludic.weather refactor(packages): the mechanic packages use ludic_base only, and ask through ports 2026-09-25 05:36:11 +03:00