[boskid][2.1.20] Crash after game.merge_forces when a character of the merged force is in a vehicle
Posted: Tue Sep 29, 2026 8:21 pm
What did you do?
Ran attached scenario. merge-crash-minimal.zip - for client, merge-crash-minimal-server.zip - for server
What happened?
The game crashed on the next tick. Client: Car::draw → Character::getPlayerColor → ForceData::getColor. Headless server: Character::update → Character::isLootInReach.
What should have happened?
The car and its driver should be moved to the player force, like any other entity of the merged force.
Does it happen always, once, or sometimes?
Always.
I think game.merge_forces does not reassign characters sitting in vehicles, so they keep a reference to the deleted force. Characters on foot are reassigned fine.
Ran attached scenario. merge-crash-minimal.zip - for client, merge-crash-minimal-server.zip - for server
What happened?
The game crashed on the next tick. Client: Car::draw → Character::getPlayerColor → ForceData::getColor. Headless server: Character::update → Character::isLootInReach.
What should have happened?
The car and its driver should be moved to the player force, like any other entity of the merged force.
Does it happen always, once, or sometimes?
Always.
I think game.merge_forces does not reassign characters sitting in vehicles, so they keep a reference to the deleted force. Characters on foot are reassigned fine.