LogicBattle::resetSimulatedManaTimers reads both leaders out of the battle at +96 and +104 and calls a virtual on each without a null check, so an opening state with no leaders segfaults inside LogicGameMode ::decode before anything else happens. so the opening state carries the two king towers and nothing else. they are the objects that cannot get a model - the battle screen, and with it the listener, does not exist yet - and they are also the pair the hud caches at [SpellButton+0x1d0], so they are exactly the objects that must not be replaced later either. everything else, princess towers included, now arrives after the screen is up. |
||
|---|---|---|
| .. | ||
| auth-service | ||
| game-service | ||
| gateway | ||
| logic | ||
| logic-derive | ||
| scroll-server | ||
| service-rpc | ||
| storage | ||
| titan | ||
| titan-derive | ||