I've run into a small problem creating an ability in my map. Its a bomb that creates a long cross-shaped explosion. The problem is that a cliff won't stop the bomb, the explosion itself won't activate at all on top of the cliff, which is good(used the cliff validators), but after the cliff is done, the explosion persists. I've tried all different manners of solving this, but have come up short. Can anybody provide some insight on this? The ability is activated in the following way:
Build the mine -> behavior calls the suicide/persistent effect after 2 seconds - > persistent effect calls the damage effect on the locations needed with the offsets.
I have only come up with a solution that I don't believe will work that well if a lot of the bombs are placed down at once. I can use the vision validator and make the bomb part of a different player that only has vision of what the mine can see, but if I were to place the bomb on the other side of the cliff, the previous bomb would still be able to explode through the cliff.
Wouldn't it just be better to use the CliffLevel validators? And I guess have each individual explosion effect (with 4 initial explosions, of course) chain into another explosion effect in one direction, but if a cliff is encountered, it shouldn't spawn the next explosion in that chain... terminating the chain in that direction.
Of course, you'll also want to validate the initial explosion.
Is this being done with triggers or the data editor? I presume data, since you spoke about a vision validator.
Wouldn't it just be better to use the CliffLevel validators? And I guess have each individual explosion effect (with 4 initial explosions, of course) chain into another explosion effect in one direction, but if a cliff is encountered, it shouldn't spawn the next explosion in that chain... terminating the chain in that direction.
Of course, you'll also want to validate the initial explosion.
Yea, its the data editor. I was thinking of doing it that way, but I ran into a problem of how to chain the explosions up. What would be the best way to say, chain up 4 explosions going out in all directions as is done in the picture? if I do it that way I can create individual validators for all the explosions, but I haven't found a way to do it correctly/efficiently. For example, how would I link the north explosion, to create another explosion that continues to move north and link up 3 explosions to it, etc.
I'm not good with the data editor yet, but I was wondering if it's possible to have recursive effects (that also stop after a certain number in the chain). I'm fairly sure recursion is easy. The trouble is with terminating it at a certain count.
Unorthodox idea but it might be what you're looking for: Instead of creating the explosions 'out of thin air' you have them the end result of invisible missiles firing from the center point, these missiles then can be validated against where they are allowed to and not allowed to travel, simply at the end of their path or they meet an obstacle they create an explosion. This way you also get the nifty concentrated blast effect when a particular direction has something preventing it from expanding through.
Ah! I think I see something of value here. Evidently, there's a periodic offset field you might be able to make some use of here...
Yes, use this along with Periodic Validator (to check the cliff level). I have a hunch this should help.
EDIT: So the trick here is to think iteratively, not recursively, I guess.
My ability already uses the periodic offsets to create all the explosions in the proper places.
I've been playing around with the periodic validators, but I can't seem to be able to make it work with cliff levels. I don't think the periodic offsets keep the original caster/point in memory to compare it with the validators. I think it just compares its current cliff level with itself, which is always equal. If I change the validator to greater than, it works... less than, it works,(stops the persistent from continuing) because one point can't be greater than itself, or less than itself. If I change it to check if cliff is equal validator.. it always runs, and going up/down cliffs without stopping.
In your persistent effect, make the period effect a Switch Effect.
Make the top effect of the switch a Destroy Persistent effect that removes the persistent, disable fall through,
Set the validator of this value in the Switch effect to be a "location crosses cliff" validator. Set the locations of of the validator to Source Point and Target Point.
Now, when the period effect crosses a cliff, it will destroy the persistent effect.
Congratsulations!
Also put any effects you want the persistent to do after the destroy persistent in the switch effect.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
I've run into a small problem creating an ability in my map. Its a bomb that creates a long cross-shaped explosion. The problem is that a cliff won't stop the bomb, the explosion itself won't activate at all on top of the cliff, which is good(used the cliff validators), but after the cliff is done, the explosion persists. I've tried all different manners of solving this, but have come up short. Can anybody provide some insight on this? The ability is activated in the following way: Build the mine -> behavior calls the suicide/persistent effect after 2 seconds - > persistent effect calls the damage effect on the locations needed with the offsets.
I have only come up with a solution that I don't believe will work that well if a lot of the bombs are placed down at once. I can use the vision validator and make the bomb part of a different player that only has vision of what the mine can see, but if I were to place the bomb on the other side of the cliff, the previous bomb would still be able to explode through the cliff.
Here are pictures of my problem:
Wouldn't it just be better to use the CliffLevel validators? And I guess have each individual explosion effect (with 4 initial explosions, of course) chain into another explosion effect in one direction, but if a cliff is encountered, it shouldn't spawn the next explosion in that chain... terminating the chain in that direction.
Of course, you'll also want to validate the initial explosion.
Yea, its the data editor. I was thinking of doing it that way, but I ran into a problem of how to chain the explosions up. What would be the best way to say, chain up 4 explosions going out in all directions as is done in the picture? if I do it that way I can create individual validators for all the explosions, but I haven't found a way to do it correctly/efficiently. For example, how would I link the north explosion, to create another explosion that continues to move north and link up 3 explosions to it, etc.
I'm not good with the data editor yet, but I was wondering if it's possible to have recursive effects (that also stop after a certain number in the chain). I'm fairly sure recursion is easy. The trouble is with terminating it at a certain count.
Unorthodox idea but it might be what you're looking for: Instead of creating the explosions 'out of thin air' you have them the end result of invisible missiles firing from the center point, these missiles then can be validated against where they are allowed to and not allowed to travel, simply at the end of their path or they meet an obstacle they create an explosion. This way you also get the nifty concentrated blast effect when a particular direction has something preventing it from expanding through.
Ah! I think I see something of value here. Evidently, there's a periodic offset field you might be able to make some use of here...
Yes, use this along with Periodic Validator (to check the cliff level). I have a hunch this should help.
EDIT: So the trick here is to think iteratively, not recursively, I guess.
My ability already uses the periodic offsets to create all the explosions in the proper places.
I've been playing around with the periodic validators, but I can't seem to be able to make it work with cliff levels. I don't think the periodic offsets keep the original caster/point in memory to compare it with the validators. I think it just compares its current cliff level with itself, which is always equal. If I change the validator to greater than, it works... less than, it works,(stops the persistent from continuing) because one point can't be greater than itself, or less than itself. If I change it to check if cliff is equal validator.. it always runs, and going up/down cliffs without stopping.
Are you comparing the points between the source and the target, or the caster and the target? These are two different things, I believe.
@OneSoga: Go
I've pretty much tried every combination, don't think cliff comparisons work on persistent perioidic validator checks, or im doing something wrong.
I fixed it... I said screw the data editor... I remade the ability in triggers using cliff height comparisons in the conditions
I'm resurrecting this post.
In your persistent effect, make the period effect a Switch Effect.
Make the top effect of the switch a Destroy Persistent effect that removes the persistent, disable fall through,
Set the validator of this value in the Switch effect to be a "location crosses cliff" validator. Set the locations of of the validator to Source Point and Target Point.
Now, when the period effect crosses a cliff, it will destroy the persistent effect.
Congratsulations!
Also put any effects you want the persistent to do after the destroy persistent in the switch effect.