View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003388||The Dark Mod||Def / Setup||public||28.04.2013 00:07||29.04.2013 01:13|
|Priority||normal||Severity||normal||Reproducibility||have not tried|
|Product Version||TDM 2.00|
|Target Version||TDM 2.00|
|Summary||0003388: Issue with Transaction scripted scene *spoilers*|
In the scripted bookstore scene, Grenefeld does not die in 1.09 like he should.
"The Grenefeld death sequence is the most horrible contraption of duct-tape and glue I've ever created. It is the ultimate map breakage testmark, I suppose.
Troubleshooting that will be one-way ticket to hell. Hopefully the cause for this is something ultra-simple.
There is a book on the table in front of Grenefeld. It is called "grenefeld_slay2." This contains some S&R that kills him.
The book is targeted by a trigger_once called "grenefeld_kill2." It should be possible to deduce if this is never activated: do the objectives tick off? "
|Tags||No tags attached.|
|Another interesting moment...grenefeld didn't die, but his glasses went flying off and hit the revenant, which caused her to turn and look at them. The sequence never continued after that and I had to quite from the console.|
Does the cutscene exit properly so that the player gets to fight LQ?
If the "Grenefeld is dead" objective ticks off, it means that everything is triggered properly, but S&R command is not killing Grenefeld (G). The command is on a book on the table in front of G. Book is named "grenefeld_slay2."
If the glasses are detached properly, it means the book IS triggered as it should be. The same book detaches the glasses and kills G.
Based on this analysis, the S&R command kill is broken somehow.
The glasses will probably not be a problem if G dies like he should. The glasses are bound to G. When he is killed the glasses are unbound. If they are unbound on a living AI, they probably get more kick than if unbound on a collapsing ragdoll. Fixing G death fixes "glasses rocket-firing" issue, I believe.
victim.map (6,327 bytes)
Attached a testmap "victim.map."
Check if the AI in front of you dies if you pull the lever.
Lever targets the panel, which contains S&R command that should kill the AI, analogously to Transaction G death scene.
If this S&R works, but Transaction S&R does not, then we have plunged into a mysterious situation.
The rest of the sequence does finish as normal (I only saw the rev get hit with the glasses once in about 10 tries).
I'll give the map a test today, thanks.
Tested the map. Flipping the switch did not kill the guard. Although interestingly, he reacted as if he heard a noise each time I pulled it down.
So which S/R should be firing?
Okay, we have now narrowed it down to S&R breakage. Good.
The settings on the switch plate are:
// entity 4
"origin" "-28 61.375 6.625"
It is an ordinary kill effect S&R. It works in TDM 1.08. Looks like "effect_kill" does not work anymore in the developer version. How it is so, I have no clue.
It may be very critical: what if other responses are broken as well? Many features in other maps could break too.
When I pull the switch with the latest TDM SVN, the guard dies, just like in 1.08.
I verified that the response effect script is receiving the request to kill the guard, and is calling his damage() routine to do the job.
I don't know why mine works and yours doesn't.
I checked in a new windows DLL, on the off chance that my DLL is different than what's in SVN (it shouldn't be).
Please upgrade to (at least) SVN release 13432 and test with that.
|Just updated. No change; guard doesn't die when switch is pulled.|
|SH: Are you using TDM standalone, or with D3 present?|
effect_kill relies on "damage_suicide" and I can't find a definition for that in darkmod/def/.
It appears in base/def/, though, which is where 1.08 must get it from.
|I do all my testing standalone now. I'll copy over damage_suicide and see if that works.|
|Ok, after copying over the suicide entity, the guard dies when I pull the switch. Nice to solve this, but it makes me worried about how many other D3 entities that screwthings up might be missing...there was no console warning about that missing entity.|
Confirmed that the Transaction sequence is now working normally.
I dug into this a bit deeper.
The code says that if damage entity doesn't exist, abort.
However, when it's looking to see if the entity exists, if it doesn't, it creates a dummy. So the abort code path is never run, so I'm not sure why it's even there. The dummy, of course, has damage = 0, which is why death doesn't occur.
Since we need to know for standalone purposes when something doesn't exist, I'm going to change the code to allow the crash, and see if the console message provided at crash time is useful.
If it's readable, and identifies the missing entity, I suggest we use that in the lead-up to 2.00.
|28.04.2013 00:07||Springheel||New Issue|
|28.04.2013 00:18||Springheel||Note Added: 0005321|
|28.04.2013 05:21||sotha_sil||Note Added: 0005322|
|28.04.2013 05:24||sotha_sil||File Added: victim.map|
|28.04.2013 05:27||sotha_sil||Note Added: 0005323|
|28.04.2013 12:00||Springheel||Note Added: 0005324|
|28.04.2013 12:16||Springheel||Note Added: 0005325|
|28.04.2013 12:37||sotha_sil||Note Added: 0005326|
|28.04.2013 14:46||grayman||Assigned To||=> grayman|
|28.04.2013 14:46||grayman||Status||new => assigned|
|28.04.2013 15:04||grayman||Note Added: 0005327|
|28.04.2013 23:23||Springheel||Note Added: 0005328|
|28.04.2013 23:25||grayman||Note Added: 0005329|
|28.04.2013 23:50||grayman||Note Added: 0005330|
|28.04.2013 23:58||Springheel||Note Added: 0005331|
|29.04.2013 00:04||Springheel||Note Added: 0005332|
|29.04.2013 00:09||Springheel||Note Added: 0005333|
|29.04.2013 00:09||Springheel||Status||assigned => resolved|
|29.04.2013 00:09||Springheel||Resolution||open => fixed|
|29.04.2013 00:09||Springheel||Note Edited: 0005333||View Revisions|
|29.04.2013 01:13||grayman||Note Added: 0005334|