normalizeSpacecraftListEvent maps position/rotation/mass/docking fields from PascalCase or camelCase, but never maps VelocityX/Y/Z (or camelCase equivalents) onto the normalized spacecraft objects.
handleSpacecraftList then seeds _entityStateCache with sc.velocityX ?? 0 (always 0), so initial list velocities from the server are discarded.
Repro
Unit coverage in game-server.events-space.spec.ts (Wave 6 a5): fire a SpacecraftList with VelocityX/velocityX set — cache entry velocity stays 0.
Expected
Normalize should include velocityX/Y/Z from VelocityX/Y/Z or camelCase, and the entity-state cache should seed those values.
## Summary
`normalizeSpacecraftListEvent` maps position/rotation/mass/docking fields from PascalCase or camelCase, but never maps `VelocityX/Y/Z` (or camelCase equivalents) onto the normalized spacecraft objects.
`handleSpacecraftList` then seeds `_entityStateCache` with `sc.velocityX ?? 0` (always `0`), so initial list velocities from the server are discarded.
## Repro
Unit coverage in `game-server.events-space.spec.ts` (Wave 6 a5): fire a `SpacecraftList` with `VelocityX`/`velocityX` set — cache entry velocity stays `0`.
## Expected
Normalize should include `velocityX/Y/Z` from `VelocityX/Y/Z` or camelCase, and the entity-state cache should seed those values.
## Location
`projects/spikersoft/src/app/_services/game-server/game-server.service.ts` — `normalizeSpacecraftListEvent` / `handleSpacecraftList`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
normalizeSpacecraftListEventmaps position/rotation/mass/docking fields from PascalCase or camelCase, but never mapsVelocityX/Y/Z(or camelCase equivalents) onto the normalized spacecraft objects.handleSpacecraftListthen seeds_entityStateCachewithsc.velocityX ?? 0(always0), so initial list velocities from the server are discarded.Repro
Unit coverage in
game-server.events-space.spec.ts(Wave 6 a5): fire aSpacecraftListwithVelocityX/velocityXset — cache entry velocity stays0.Expected
Normalize should include
velocityX/Y/ZfromVelocityX/Y/Zor camelCase, and the entity-state cache should seed those values.Location
projects/spikersoft/src/app/_services/game-server/game-server.service.ts—normalizeSpacecraftListEvent/handleSpacecraftList.Already on
master(not part of PR #819). normalizeSpacecraftListEvent already maps VelocityX/Y/Z onto the entity-state cache. Closing.