NPC dies but still stands
#1
Posté 05 novembre 2011 - 10:42
For example - you kill a mage as he casts a spell, he's dead, but the corpse is still standing upright casting a spell.
Happens when a NPC is running, too. Corpse keeps doing the running animation.
I wonder if this is a general problem with NWN2 - because I can't find reports about it no matter how much I google, and it happens on my module a lot. So I am naturally wondering if it was me that screwed something up on the module - or it just shows on my machine - or if it will show up when people play it, too.
It's just very annoying.
#2
Posté 05 novembre 2011 - 11:47
#3
Posté 05 novembre 2011 - 01:39
#4
Posté 05 novembre 2011 - 02:07
#5
Posté 05 novembre 2011 - 03:44
edit: corrected some spelling mistakes
Modifié par foil-, 06 novembre 2011 - 03:19 .
#6
Posté 05 novembre 2011 - 10:58
dno
#7
Posté 06 novembre 2011 - 01:21
A shame for corpses that don't fade...
#8
Posté 06 novembre 2011 - 01:52
#9
Posté 07 novembre 2011 - 09:39
#10
Posté 13 mars 2012 - 07:50
If you assign a command to a creature using DelayCommand, then there's always a chance that the creature might die in the meantime, and cause the bug. Dead creatures also retain their tags, so it's possible that a script can order them about that way, too. I'm still testing, but it's possible that the other event scripts, like on-physically attacked, or even on-perception, might also be run occasionally on the recently deceased. You can cut down on this bug by sticking a check in your scripts at the beginning:
if (GetIsDead(OBJECT_SELF)) {return;}
#11
Posté 13 mars 2012 - 07:54
#12
Posté 13 mars 2012 - 08:20
I_Raps wrote...
While you're looking into this, see if you can explain the compass-needle corpse phenomenon.
What's that, exactly? The corpses all face north?
#13
Posté 13 mars 2012 - 08:25
Modifié par I_Raps, 13 mars 2012 - 08:30 .
#14
Posté 13 mars 2012 - 05:35
The heartbeat and on-physically attacked scripts do not fire, nor does the on-disturbed or on-blocked. I haven't tested the on-spell-cast-at.
In testing, it seems that the zombie problem happens when a creature is attacked my multiple enemies in a single round. For me it was a line of archers all shooting at their designated target, but maybe something similar happens with mages that attract a lot of aggro with TonyK's AI.
It might be something hard-coded, where the impact effects of later hits cancel out the prone animation and death effect. Does anyone know how exactly the visual side of death is handled? I know there's a prone animation, and then a freeze animation to stop the breathing, but then there's the whole falling-down part, too. So I guess there has to be some bit of choreography going on in the system, with some delaycommands somewhere. Are there other complex animation bits, like casting or dodging, that might interfere with the death animation?
As for I_Raps' compass point problem, I noticed that the orient-to-object function used by the ga_ scripts has a 'lock' feature, where the NPC will continuously turn to face a moving target. That feature must have been programmed using some sort of pseudo-heartbeat, and so all we need to do is find where that bit of code is and insert a GetIsDead check in it.
#15
Posté 13 mars 2012 - 05:53
I_Raps wrote...
No, they point at your character as you move around them. Sydney Natale is the one I remember, but it has happened a few other times, I think. Maybe Garius (both versions), your treacherous companions, etc. Cutscene actors who don't know when to quit emoting, now that I think of it. Perhaps a whole new meaning for "chewing the scenery."
*Unintentional OC spoiler was below, I forgot this was in the General Discussion. This post concerns spinning dead bodies. Didn't want to ruin a new player's experience, so, I decided to just move it to the OC threads*
My moved spoiler post:
Spinning dead bodies turning to face PC
Modifié par Axe_Edge, 14 mars 2012 - 02:47 .
#16
Posté 13 mars 2012 - 08:02
#17
Posté 16 mars 2012 - 05:40
I'm beginning to think that the root cause is the new PlayCustomAnimation function. The old BioWare PlayAnimation function was tied to the action queue, which meant that it hardly ever played when it was supposed to. So OEI begot the PlayCustonAnimation function to override such timidness, but the new function is so bold that it will even order the dead to dance. Hence the various PlayCustomAnimation calls scattered far and wide can interfere with the animations called at death.
#18
Posté 01 avril 2012 - 03:19
Instead, now I'm calling a 'ClearAllActions(TRUE);' when a dead creature fires the 'on-damaged' event, as well as my own 'tactics' script. This seems to cut down on 90% of the standing dead, but a few occasionally remain.
My best guess now is that when an already dead creature gets hit again, the on-damaged script still fires, and any commands therein are executed, which can interrupt the standard death animations. For example, a creature gets hit and is killed, but then gets hit again in the same round. The on-damaged script fires for the second hit, and orders the creature to attack their attacker. This order stops the death animation started a half-round earlier, but since the creature is already dead, the on-death script doesn't fire a second time, nor does the hidden script that handles the death animation.
Modifié par Lugaid of the Red Stripes, 01 avril 2012 - 03:19 .
#19
Posté 06 avril 2012 - 06:26
In the Crossroad Keep battle I have tried various methods of killing the pair of arcane brothers in the foyer. One of them inhibited any use of magic by my designated killer. None of them resulted in "Remains" rather than a fallen NPC with health "Dead". Is there some way to convert a corpse to "remains"?





Retour en haut







