scroll.server/crates
WiseDev 41eca5b620 battle model: LogicBattle, the object manager and BattleResultMessage
field order taken straight off LogicBattle::encode. the object manager is
columnar, not object major: 6 counters, a count, then all data refs, then all
global ids, then all objects, then four component passes. global ids must be
ascending, the client binary searches them.

LogicRandom moved out of the shop into its own module. its abs was
checked_abs().unwrap_or(0), the binary uses NEGS so i32::MIN stays i32::MIN.
one seed in four billion, but it would have desynced the card shop.

per object subclass encodes and the component payloads are still missing, so no
snapshot can be sent yet.
2026-08-23 10:00:16 +03:00
..
auth-service stop minting a new account on every login 2026-08-23 08:54:43 +03:00
game-service roll chest loot from the csv instead of a fixed config 2026-08-23 09:30:38 +03:00
gateway fix chest shop prices and gate the free chest 2026-08-23 09:02:49 +03:00
logic battle model: LogicBattle, the object manager and BattleResultMessage 2026-08-23 10:00:16 +03:00
logic-derive move all crates into crates/, glob members 2026-08-23 08:15:45 +03:00
scroll-server supervised mode: run the services as child processes 2026-08-23 09:46:59 +03:00
service-rpc move all crates into crates/, glob members 2026-08-23 08:15:45 +03:00
storage fix chest shop prices and gate the free chest 2026-08-23 09:02:49 +03:00
titan move all crates into crates/, glob members 2026-08-23 08:15:45 +03:00
titan-derive move all crates into crates/, glob members 2026-08-23 08:15:45 +03:00