I encountered a rather odd bug when my health reaches 0. I was doing some tests on my project and any time the player's health reaches 0 (whether it be from a sector that causes damage or an enemy) the game crashes. I then tried it using just the standard DooM2 WAD to make sure it just wasn't my horrible modding skills etc. Again it crashed the second my health hit 0.
Here is the bug report:
1.3.11 BETA Bug - Crashes when heath reaches 0
Moderator: Graf Zahl
- Big-Boss
- Posts: 11
- Joined: Fri Nov 06, 2009 4:09
- Location: Eastern United States
1.3.11 BETA Bug - Crashes when heath reaches 0
- Attachments
-
- CrashReport.zip
- Crash report zip
- (17.01 KiB) Downloaded 60 times

- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: 1.3.11 BETA Bug - Crashes when heath reaches 0
I can see where it crashes but this can only happen when your player class is badly defined. Can you at least post the DECORATE for your player class if you use one?
- Big-Boss
- Posts: 11
- Joined: Fri Nov 06, 2009 4:09
- Location: Eastern United States
Re: 1.3.11 BETA Bug - Crashes when heath reaches 0
I tried it with just plain ZDooM and the problem doesn't occur.ACTOR DTRPlayer : PlayerPawn
{
Speed 1
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Player.ColorRange 112, 127
Player.DisplayName "Marine"
Player.CrouchSprite "PLYC"
Player.StartItem "Blaster"
Player.StartItem "Fist"
Player.StartItem "Cell", 50
Player.WeaponSlot 1, Fist, Chainsaw
Player.WeaponSlot 2, Blaster
Player.WeaponSlot 3, HeavyBlaster
Player.WeaponSlot 4, Rotogun
Player.WeaponSlot 5, RocketLauncher
Player.WeaponSlot 6, PlasmaRifle
Player.WeaponSlot 7, BFG9000
States
{
Spawn:
PLAY A -1
Loop
See:
PLAY ABCD 4
Loop
Missile:
PLAY E 12
Goto Spawn
Melee:
PLAY F 6 BRIGHT
Goto Missile
Pain:
PLAY G 4
PLAY G 4 A_Pain
Goto Spawn
Death:
PLAY H 0 A_PlayerSkinCheck("AltSkinDeath")
Death1:
PLAY H 10
PLAY I 10 A_PlayerScream
PLAY J 10 A_NoBlocking
PLAY KLM 10
PLAY N -1
Stop
XDeath:
PLAY O 0 A_PlayerSkinCheck("AltSkinXDeath")
XDeath1:
PLAY O 5
PLAY P 5 A_XScream
PLAY Q 5 A_NoBlocking
PLAY RSTUV 5
PLAY W -1
Stop
AltSkinDeath:
PLAY H 6
PLAY I 6 A_PlayerScream
PLAY JK 6
PLAY L 6 A_NoBlocking
PLAY MNO 6
PLAY P -1
Stop
AltSkinXDeath:
PLAY Q 5 A_PlayerScream
PLAY R 0 A_NoBlocking
PLAY R 5 A_SkullPop
PLAY STUVWX 5
PLAY Y -1
Stop
}
}
Last edited by Big-Boss on Fri Nov 06, 2009 16:29, edited 2 times in total.

- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: 1.3.11 BETA Bug - Crashes when heath reaches 0
The crash was in GZDoom specific code. But the only way it could happen is that the player disappeared into nothing. That's why I wanted to see the definition.
I added a check for this condition but I hoped your player class would explain why it happened. But it does not.
I added a check for this condition but I hoped your player class would explain why it happened. But it does not.
- Big-Boss
- Posts: 11
- Joined: Fri Nov 06, 2009 4:09
- Location: Eastern United States
Re: 1.3.11 BETA Bug - Crashes when heath reaches 0
I see. I am not having a go at you but it seems like perhaps you did something in DECORATE in relation to inheritance. Perhaps my new player class is having issues with inheriting values from the PlayerPawn class. I seriously doubt that even makes any sense, but it is just a rough guess based on what little I know of the engine.

- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: 1.3.11 BETA Bug - Crashes when heath reaches 0
No, it's not your player class. What I was expecting was a death state that makes it disappear.
If you want me to check the problem for real you can PM me the WAD that causes the crash.
If you want me to check the problem for real you can PM me the WAD that causes the crash.
- Big-Boss
- Posts: 11
- Joined: Fri Nov 06, 2009 4:09
- Location: Eastern United States
Re: 1.3.11 BETA Bug - Crashes when heath reaches 0
The WAD is of despicably shameful quality but yeah I'll PM it to you when I return home this evening. Which will be late night for you, so you'll get it tomorrow
.

