I am using triggers to with "any damage taken" events to capture damage statistics in a map. However, if I do this for nukes, the performance suffers hickup. Probably because the trigger for damage taken is executed multiple times at once (since multiple enemies were hit by the same nuke typically).
Is there another way to capture this damage which is a bit more performant? Can you transport the damage from a behaviour/damage response to the trigger editor/global variables somehow? I think I remember playing an old version of Income Wars Official which had nuke damage calculation and it didn't cause any noticeable hickups.
I am using triggers to with "any damage taken" events to capture damage statistics in a map. However, if I do this for nukes, the performance suffers hickup. Probably because the trigger for damage taken is executed multiple times at once (since multiple enemies were hit by the same nuke typically).
Try running your map without the trigger debugger active. Like all profilers/debuggers it adds overhead and slows execution down. You are meant to use it as an optimization aid and to help identify performance bottlenecks.
You could always try a different route such as when a unit dies, count the entire health of the unit as damage. Then when the map ends you could check for units which don't have all their health. Would add any repairs to the amount. I guess it depends on when you need the stats though.
There's "life damage dealt" and "shield damage dealt" score values. The game records all damage that each player does and records it in these score values. Just add those two scores together to get every single point of damage that the player has ever done during the match.
There's "life damage dealt" and "shield damage dealt" score values. The game records all damage that each player does and records it in these score values. Just add those two scores together to get every single point of damage that the player has ever done during the match.
Hm, that might work. Depending on how detailled those scores are, I could use them for my project. Thanks for the hint.
Performance was actually astonishingly good in a 4 player battle.net game, but there is a lot going on already and I haven't added any major doodads to the map, yet, so every bit of performance is welcome.
I am using triggers to with "any damage taken" events to capture damage statistics in a map. However, if I do this for nukes, the performance suffers hickup. Probably because the trigger for damage taken is executed multiple times at once (since multiple enemies were hit by the same nuke typically).
Try running your map without the trigger debugger active. Like all profilers/debuggers it adds overhead and slows execution down. You are meant to use it as an optimization aid and to help identify performance bottlenecks.
Solved: this was it. Triggers involving Damage Taken events and short timers are actually performant enough to easily make this work in 4player battle.net The largest junk of the lag came from the profiler.
If you need the code, just PM me. Nuke damage announces complete with a multiboard for each player's record are super fun.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Hi,
I am using triggers to with "any damage taken" events to capture damage statistics in a map. However, if I do this for nukes, the performance suffers hickup. Probably because the trigger for damage taken is executed multiple times at once (since multiple enemies were hit by the same nuke typically).
Is there another way to capture this damage which is a bit more performant? Can you transport the damage from a behaviour/damage response to the trigger editor/global variables somehow? I think I remember playing an old version of Income Wars Official which had nuke damage calculation and it didn't cause any noticeable hickups.
Any input on that matter from you Data pros?
Try running your map without the trigger debugger active. Like all profilers/debuggers it adds overhead and slows execution down. You are meant to use it as an optimization aid and to help identify performance bottlenecks.
You could always try a different route such as when a unit dies, count the entire health of the unit as damage. Then when the map ends you could check for units which don't have all their health. Would add any repairs to the amount. I guess it depends on when you need the stats though.
There's "life damage dealt" and "shield damage dealt" score values. The game records all damage that each player does and records it in these score values. Just add those two scores together to get every single point of damage that the player has ever done during the match.
Hm, that might work. Depending on how detailled those scores are, I could use them for my project. Thanks for the hint.
Performance was actually astonishingly good in a 4 player battle.net game, but there is a lot going on already and I haven't added any major doodads to the map, yet, so every bit of performance is welcome.
Solved: this was it. Triggers involving Damage Taken events and short timers are actually performant enough to easily make this work in 4player battle.net The largest junk of the lag came from the profiler.
If you need the code, just PM me. Nuke damage announces complete with a multiboard for each player's record are super fun.