Skip to content

The player considered the "Neutral" player / faction is lacking a lot of information and is a significant cause of crashes in the game #1321

@Mauller

Description

@Mauller

Player slot zero is implicitly initialised and accessed within the code as the "Neutral" player.

But this slot never gets initialised in the same way that other player slots do, leaving it identical to the leftover and uninitialised player slots in the players array.

Quite a few bits of information on the player make up part of the xfercrc so we can't currently initialise them.

This has lead to us having to make quite a few NULL checks in various places in case the "Neutral" player is made use of directly or indirectly.

In the future we will want to try adding data and other information to properly implement the neutral player as a full and invincible player in the game.

this will require properly initialising it with a custom player template, which we will have to make as no neutral player template exists in the retail game data.

we will have to give it a proper name, namekey, nameid etc so it can be searched properly by scripts instead of by using a blank player name, as with what currently happens.

we can also give it a functional tunnel system and remove most of the null checks on the tunnel system handling.
this could allow other future functionality on the neutral player / faction.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions