I'm making a custom version of Random CB. I have anti-delete triggers set in place that work, however sometimes I get false results, i.e, occasionally legitimate razes are counted as deletes. This is obviously a pretty big issue and I'm curious as to how I have never seen an issue like this on a map like CBA
For reference the way my triggers work are like this:
Upon razing a player tributes 1 raze to gaia. A hawk is spawned somewhere on the map.
I have two triggers for each raze: one that checks for a delete and one that checks for a legit raze.
The delete one checks the hawk area for any hawks. If there are none, the player is booted. If there is a hawk, the raze checker turns off the deleter. Finally I have a trigger that tasks the hawks to an area where they die to keep the map from being flooded with hawks (and thus deactivating the anti-delete).
Like I said, this works the majority of the time. However sometimes it screws up. While bug testing my map, I was auto-booted upon one of my towers being razed. Checking the recording shows that a hawk was spawned on the field, so I'm not sure why this happened. Is it lag? Am I missing something else?
It's a huge pain in the ass is what it is. The anti-delete triggers in RCB Gold 2013 F11 (find it in map pack) are pretty much the best they can be in terms of programming them. Although there was a guy that mentioned he figured out a way to do anti-delete for all objects even ones not present on the map from the start but I'm not sure how that'd be possible.
the trick are the triggers internal order (not visual). you dont even need to spawn any object in the map for the detection
you need something to be detected though. you can't just have the condition of destroy object for two triggers (the act and deact) for anti-delete without something to differentiate them.
Really, Justin sick and is in hospital, IllMindofHopsin is inactive and I am not sure if Myth knows about anti-delete triggers although he is good at making maps.
Plenty of topic on aok heaven for this. Try searching there.
I found [You must login to view link] old thread which seems like it might have had useful triggers, but unfortunately the download is no longer there.
the trick are the triggers internal order (not visual). you dont even need to spawn any object in the map for the detection
Could you maybe explain what you mean by this? What order do the triggers need to be in? When I look at the triggers using trigger script editor the anti-delete triggers come before the triggers to check for a raze.
Well, now I can't avoid this question:/ Personally, I'm not using anti-delete triggers in my maps, but here something from this genius guy BF_Basse (he teached me a lot of trick years ago about triggers):
Trigger: Raze-counter
Starts: ON
Looping: YES
Condition: Accumulate Attribute: 1 Razing
Effect: Tribute: 1 Razing from Player to GAIA
Effect: Activate Trigger: Building Razed
Then a trigger to deactivate the Building Deleted trigger if it was razed:
Trigger: Building Razed
Starts: OFF
Looping: NO
Condition: Timer: 2
Effect: Deactivate Trigger: Building Deleted
This trigger activates the delete-detection trigger:
Trigger: Building Lost
Starts: ON
Looping: NO
Condition: Destroy Object: Desired Object
Effect: Activate Trigger: Building Deleted
If the building was deleted, this trigger will fire:
Trigger: Building Deleted
Starts: OFF
Looping: NO
Condition: Timer: 4
Effect: Punishment for Deleting building
Instead of "Destroy Object" you can use "Own Fewer Objects". This means you can have a "looping" delete-detection when. For example:
Trigger: Building Lost
Starts: OFF
Looping: NO
Condition: Own Fewer Objects: 0 The Accursed Tower (Let's say you start with only 1 tower)
Effect: Activate Trigger: Building Deleted
Effect: Activate Trigger: Re-activate Building Lost
Trigger: Re-activate Building Lost
Starts: ON
Looping: OFF
Condition: Own Objects: 1 The Accursed Tower
Effect: Activate Trigger: Building Lost
I hope this works. It's been a while since I used it last, so there might be something wrong, not sure
I implemented Basse's method but I'm still having the same issues. Out of about 50 tests I had around 6 where a raze was counted as a delete. I'm completely stumped as to what is making this happen. [You must login to view link] is how I'm doing it if anyone wants to take a look.
Create a bunch of junk triggers between it creating the thing you want to detect and the detect triggers. It may not have enough time to realize it's been created. I attempted to look at your triggers but then I got really tired. Anywho, I remember that throwing me off for a little while back in the day. Also, just find a scenario that has anti-delete in it and look at how they're programmed.
For reference the way my triggers work are like this:
Upon razing a player tributes 1 raze to gaia. A hawk is spawned somewhere on the map.
I have two triggers for each raze: one that checks for a delete and one that checks for a legit raze.
The delete one checks the hawk area for any hawks. If there are none, the player is booted. If there is a hawk, the raze checker turns off the deleter. Finally I have a trigger that tasks the hawks to an area where they die to keep the map from being flooded with hawks (and thus deactivating the anti-delete).
Like I said, this works the majority of the time. However sometimes it screws up. While bug testing my map, I was auto-booted upon one of my towers being razed. Checking the recording shows that a hawk was spawned on the field, so I'm not sure why this happened. Is it lag? Am I missing something else?
Thanks.
you need something to be detected though. you can't just have the condition of destroy object for two triggers (the act and deact) for anti-delete without something to differentiate them.
For this to work you need to retribute the razing to GAIA after every time a player razes.
I found [You must login to view link] old thread which seems like it might have had useful triggers, but unfortunately the download is no longer there.
Could you maybe explain what you mean by this? What order do the triggers need to be in? When I look at the triggers using trigger script editor the anti-delete triggers come before the triggers to check for a raze.
[You must login to view link]
missing [MM]Gallas
Derp><
Well, now I can't avoid this question:/ Personally, I'm not using anti-delete triggers in my maps, but here something from this genius guy BF_Basse (he teached me a lot of trick years ago about triggers):
Trigger: Raze-counter
Starts: ON
Looping: YES
Condition: Accumulate Attribute: 1 Razing
Effect: Tribute: 1 Razing from Player to GAIA
Effect: Activate Trigger: Building Razed
Then a trigger to deactivate the Building Deleted trigger if it was razed:
Trigger: Building Razed
Starts: OFF
Looping: NO
Condition: Timer: 2
Effect: Deactivate Trigger: Building Deleted
This trigger activates the delete-detection trigger:
Trigger: Building Lost
Starts: ON
Looping: NO
Condition: Destroy Object: Desired Object
Effect: Activate Trigger: Building Deleted
If the building was deleted, this trigger will fire:
Trigger: Building Deleted
Starts: OFF
Looping: NO
Condition: Timer: 4
Effect: Punishment for Deleting building
Instead of "Destroy Object" you can use "Own Fewer Objects". This means you can have a "looping" delete-detection when. For example:
Trigger: Building Lost
Starts: OFF
Looping: NO
Condition: Own Fewer Objects: 0 The Accursed Tower (Let's say you start with only 1 tower)
Effect: Activate Trigger: Building Deleted
Effect: Activate Trigger: Re-activate Building Lost
Trigger: Re-activate Building Lost
Starts: ON
Looping: OFF
Condition: Own Objects: 1 The Accursed Tower
Effect: Activate Trigger: Building Lost
I hope this works. It's been a while since I used it last, so there might be something wrong, not sure