View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003386||The Dark Mod||Textures||public||26.04.2013 01:09||13.05.2013 20:57|
|Priority||normal||Severity||normal||Reproducibility||have not tried|
|Product Version||TDM 2.00|
|Target Version||TDM 2.00||Fixed in Version||TDM 2.00|
|Summary||0003386: Blood decals fading away|
|Description||Blood decals are disappearing after 10 seconds. That shouldn't be happening, or AI will never find them.|
|Tags||No tags attached.|
There are two types of blood decals.
One is what we get when an AI dies through some trauma. That decal is a blood marker, which provides visual stims that other AI can see. It stays around until it's washed away by a water arrow.
The second type is what we get when an AI is hurt, but not killed. This type of decal is like all other temporary decals (i.e. explosion); it fades away after 10 seconds. It has no blood marker associated with it. It doesn't give off visual stims.
My guess is that this issue's bloodstain is of the second type.
|Ah...the problem might be that arrows are not causing the first type of blood decal, only the second. When I kill a character with an arrow, and he's near a wall, a blood decal appears on the wall but it fades away. If he's not near a wall I often can't find the decal at all.|
The current "can be washed away" decals are of the type "disappear after X seconds", because that was the only type of decals D3 supported.
Greebo hacked it so that these decals are "refreshed" every second, until you wash them away with an water stim.
It might be better, now that we have the source, to fix this to have decals that can stay infinitely long but simply react to water stims.
That way we can avoid the entire "fade and refresh" work-around. It would also enable these decals for usage by mappers - right now if placed, such an decal won't be visible in the map, because it disappears after 10 seconds, confusing mappers all the time.
Than we could also get away with the distinction between these two decal types. And it would fix this bug as a side-effect, too.
The "disappear after 10 seconds" type of decals where a cheap way to not suffer from performance drag in long-running maps in multiplayer, but they are neither realistic, nor have a place in a TDM setting. And modern machines (and an engine) should not have a problem with even 100000 decals.
Tried adding the following sequence to arrows, but the blood decals they drop still fade away.
Not sure exactly what it is that calls a blood marker rather than a normal decal.
|Death plants a blood marker. Nothing else.|
I've been killing AI with arrows for a while now, and I can't get any blood markers to appear on the ground. I can see them if I shoot a leg...when you reduced the distance blood decals would go, is the distance still enough for a decal to hit the ground from a headshot?
One of the main downsides to sniping relaxed AI in the head is supposed to be leaving blood on the ground, but at the moment that doesn't seem to be happening.
I managed to kill an AI with a hit to the leg, which shot blood on the wall, but that decal faded.
It's possible that the headshot is high enough off the floor that the code that looks for the floor doesn't look far enough down.
Did blood appear on the floor for 1.08 headshots?
Edit: I checked the bloodMarker code and it only looks down 60, which probably isn't far enough for a headshot. I'll try increasing it to 80 and see what happens. I didn't reduce the distance, so I expect 1.08 headshots didn't produce blood on the floor either.
Two things needed fixing to let blood markers appear on the floor:
1. The code that traces from the wound down to the floor to find where to place the blood marker was only looking down 60 units. I bumped it to 100, which should cover larger AI.
2. The damage def for arrows didn’t include any information about leaving blood markers. It needed “mtr_killed_splatN” definitions, same as the damage def for the sword.
These don’t fix the original complaint, that some blood stays and alerts AIs, and some blood fades after 10s. This is discussed above.
" The damage def for arrows didn’t include any information about leaving blood markers. It needed “mtr_killed_splatN” definitions, same as the damage def for the sword."
I added them to the projectile def, which I guess was the wrong place. Arrows didn't create any blood at ALL in 1.08, so this is all new.
|Yeah, those definitions are a bit messed up. The editor comment says they should live on the entity getting killed, but the code looks for them inside the damage def. I'd prefer they be on the entity, because then you could provide different types of decals depending on what's getting killed. (i.e. not all blood is red)|
|Cool; arrow blood now staying around indefinitely.|
|26.04.2013 01:09||Springheel||New Issue|
|29.04.2013 03:28||grayman||Note Added: 0005338|
|30.04.2013 00:59||Springheel||Note Added: 0005348|
|12.05.2013 11:31||tels||Note Added: 0005415|
|12.05.2013 20:23||Springheel||Note Added: 0005429|
|12.05.2013 22:39||grayman||Note Added: 0005430|
|13.05.2013 00:30||Springheel||Note Added: 0005432|
|13.05.2013 00:34||Springheel||Note Edited: 0005432||View Revisions|
|13.05.2013 00:58||grayman||Note Added: 0005433|
|13.05.2013 01:02||grayman||Note Edited: 0005433||View Revisions|
|13.05.2013 04:33||grayman||Assigned To||=> grayman|
|13.05.2013 04:33||grayman||Status||new => assigned|
|13.05.2013 04:43||grayman||Note Added: 0005437|
|13.05.2013 15:19||Springheel||Note Added: 0005446|
|13.05.2013 15:42||grayman||Note Added: 0005447|
|13.05.2013 20:57||Springheel||Note Added: 0005450|
|13.05.2013 20:57||Springheel||Status||assigned => resolved|
|13.05.2013 20:57||Springheel||Fixed in Version||=> TDM 2.00|
|13.05.2013 20:57||Springheel||Resolution||open => fixed|