ludic/packages/ludic.things/index.ludic
Orkuncakilkaya 1af62d0879 ludic.things: a removed Thing's record placed again, oldest first past a lag of 32; things_reserve sizes the grid once
thing_put and thing_spawn made a new record for every Thing placed, and the world places and removes
them all day (an animal's sign and bed, a drop, a fish), so play grew by a record per placement.
Removed records wait in a queue compacted in place; once 32 wait, the oldest is set back as new
with a new uid. ludic.base's grid_reserve makes the buckets for n rows now, since a rehash in play
leaves the old bucket array behind. Tests: a record comes back only past the lag, as new, with a
new uid, the indexes agree, and the spare queue stays bounded.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 11:52:23 +03:00

16 lines
501 B
Text

# ludic.things - things placed in a world (a tent, a fire ring, a branch on the ground): the game
# names the kinds and draws them; the package keeps them, answers where they are, and saves them
module ludic_things uses ludic_base
numbers float
import "ludic.base"
import "kinds.ludic"
import "port.ludic"
import "store.ludic"
import "verbs.ludic"
import "moves.ludic"
import "queries.ludic"
import "near.ludic"
import "chunks.ludic"
import "dispatch.ludic"
import "system.ludic"
import "spare.ludic"