beyond-all-reason / spring

A powerful free cross-platform RTS game engine
https://beyond-all-reason.github.io/spring/
Other
191 stars 97 forks source link

Savegame load assert #1425

Closed lhog closed 3 months ago

lhog commented 4 months ago

Assert in UnitTrapCheckSystem:

    [[nodiscard]] decltype(auto) get(const entity_type entt) const {
        ENTT_ASSERT(contains(entt), "View does not contain entity");

Run ZK with NullAI. Save game, load game. Observe the crash (in debug mode) right when the game is about to finalize loading:

    spring.exe!entt::basic_view<enum entt::entity,entt::get_t<MoveTypes::YardmapTrapCheckSystemSystemComponent>,entt::exclude_t<>,void>::get<MoveTypes::YardmapTrapCheckSystemSystemComponent>(const entt::entity entt) Line 740    C++
    spring.exe!entt::basic_registry<enum entt::entity>::get<MoveTypes::YardmapTrapCheckSystemSystemComponent>(const entt::entity entity) Line 1031  C++
    spring.exe!SystemGlobals::SystemGlobal::GetSystemComponent<MoveTypes::YardmapTrapCheckSystemSystemComponent>() Line 28  C++
>   spring.exe!UnitTrapCheckSystem::Update() Line 79    C++
    spring.exe!CUnitHandler::UpdateUnitMoveTypes() Line 329 C++

infolog.txt

marcushutchings commented 4 months ago

Okay. Thanks. I will sort that out.