scroll.server/crates
WiseDev b8c12cd00b count a spawned character up to its deploy time
first, a correction: the towers do have models. the king tower shows its
cannon and the princess towers carry health bars, and health bars are
built inside Character::Character. so objects from the opening state get
their models after all, and the listener theory that sent me around the
houses was wrong. only troops are missing.

the difference is one field. LogicCharacter::getDeployT is

  clamp(DeployTime - this[47], 0, DeployTime)

and field 47 is our deploy_timer, which we set to zero and never moved.
so every troop reads as still coming down, for the whole battle: it
keeps the spawn effect and the sound the user could hear, and never
gets a body. towers are unaffected - their deploy time is zero.

the counter now climbs a tick at a time, the way the client's own
simulation would, and a moving character starts in state 1 as
LogicCharacter::setDefaultState leaves it.

widening the push interval to ten seconds changed nothing, so the
tear-down theory is out too.
2026-08-23 16:40:47 +03:00
..
auth-service stop minting a new account on every login 2026-08-23 08:54:43 +03:00
game-service count a spawned character up to its deploy time 2026-08-23 16:40:47 +03:00
gateway answer the client when it asks for the sector state 2026-08-23 14:32:20 +03:00
logic count a spawned character up to its deploy time 2026-08-23 16:40:47 +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 answer the client when it asks for the sector state 2026-08-23 14:32:20 +03:00
storage fix chest shop prices and gate the free chest 2026-08-23 09:02:49 +03:00
titan take the checksum from before the closing checkpoint 2026-08-23 15:04:51 +03:00
titan-derive build and send the battle sector state 2026-08-23 10:24:20 +03:00