http://games.moria.org.uk/doom/research/running-body
In Doom, there was a bug where you could get a walking corpse. Basically, the Deathmatch starts were too close to a wall or some solid Thing was on top of the Deathmatch starts. If this happens, the game won't spawn you on that Deathmatch start, and it'll fallback to Single Player starts. If there is no Single Player start, the game thinks you respawned, but since there's nowhere to spawn you, you stay where you died, and you're still in your "dead" state but the game thinks you're alive, and everything gets screwy and you can walk around as a corpse.
I was bored and wanted to recreate this in SRB2.
First, I commented out the I_Error here, as it causes you to crash instead of becoming a walking corpse if there aren't any available starts:
Then I made a quick map. It had a deathmatch start, a Gargoyle, and a death pit. I spawned, moved the Gargoyle over the only spawn in the map, and jumped into the death pit. When I tried to respawn, the game crashed with a generic "srb2win.exe has stopped working."
ok so does anyone know how to get walking corpses in srb2
EDIT: This is what you'd expect to happen, but I put a Player 1 Start in the map. When the gargoyle was not on top of the deathmatch start, I would always spawn on the Deathmatch start. When the gargoyle was on the deathmatch start, I'd spawn on the Player 1 start.
EDIT2: By the way, it doesn't check if you can spawn in the Single Player/Coop spawn, it just checks if there is one. If you put a second gargoyle over the Single Player/Coop spawn, you still spawn there if the Deathmatch spawn is blocked.
In Doom, there was a bug where you could get a walking corpse. Basically, the Deathmatch starts were too close to a wall or some solid Thing was on top of the Deathmatch starts. If this happens, the game won't spawn you on that Deathmatch start, and it'll fallback to Single Player starts. If there is no Single Player start, the game thinks you respawned, but since there's nowhere to spawn you, you stay where you died, and you're still in your "dead" state but the game thinks you're alive, and everything gets screwy and you can walk around as a corpse.
I was bored and wanted to recreate this in SRB2.
First, I commented out the I_Error here, as it causes you to crash instead of becoming a walking corpse if there aren't any available starts:
Code:
void G_DeathMatchSpawnPlayer(int playernum)
{
int i, j;
if (numdmstarts)
for (j = 0; j < 64; j++)
{
i = P_Random() % numdmstarts;
if (G_CheckSpot(playernum, deathmatchstarts[i]))
{
P_SpawnPlayer(deathmatchstarts[i], playernum);
return;
}
}
// Use a coop start dependent on playernum
CONS_Printf("No deathmatch start in this map - shifting to player starts to avoid crash...\n");
if (!numcoopstarts)
I_Error("There aren't enough starts in this map!\n");
i = playernum % numcoopstarts;
P_SpawnPlayer(playerstarts[i], playernum);
}
Then I made a quick map. It had a deathmatch start, a Gargoyle, and a death pit. I spawned, moved the Gargoyle over the only spawn in the map, and jumped into the death pit. When I tried to respawn, the game crashed with a generic "srb2win.exe has stopped working."
ok so does anyone know how to get walking corpses in srb2
EDIT: This is what you'd expect to happen, but I put a Player 1 Start in the map. When the gargoyle was not on top of the deathmatch start, I would always spawn on the Deathmatch start. When the gargoyle was on the deathmatch start, I'd spawn on the Player 1 start.
EDIT2: By the way, it doesn't check if you can spawn in the Single Player/Coop spawn, it just checks if there is one. If you put a second gargoyle over the Single Player/Coop spawn, you still spawn there if the Deathmatch spawn is blocked.