Whats the secret behind anti-delete?

 Catalytical


Gönderildi 08/05/2014 - 09:30
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?

Thanks.
Bağlantı | Yanıt | Alıntı
 +[MM]jason


Gönderildi 08/05/2014 - 10:32
Plenty of topic on aok heaven for this. Try searching there.
Bağlantı | Yanıt | Alıntı
 MeTrOiD_WeaPoN


Düzenlendi08/05/2014 - 12:51 tarafından MeTrOiD_WeaPoN
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.
Bağlantı | Yanıt | Alıntı
 JustTesting1234


Gönderildi 08/05/2014 - 13:34
the trick are the triggers internal order (not visual). you dont even need to spawn any object in the map for the detection
Bağlantı | Yanıt | Alıntı
 MeTrOiD_WeaPoN


Gönderildi 08/05/2014 - 14:34
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.
Bağlantı | Yanıt | Alıntı
 ['RB']nhoobish


Gönderildi 08/05/2014 - 15:32
You can, because a player recieves a tribute when he razes. So you can detect if any players have recieved a tribute or not.

For this to work you need to retribute the razing to GAIA after every time a player razes.
Bağlantı | Yanıt | Alıntı
 MeTrOiD_WeaPoN


Gönderildi 08/05/2014 - 17:49
I approve of that method. Someone go rework all the rcb anti-delete triggers like that. Okay? Good. Glad that's taken care of.
Bağlantı | Yanıt | Alıntı
 mich


Gönderildi 08/05/2014 - 19:56
Map Pack Moderators. I'm sure one of them will be able to help you.
Bağlantı | Yanıt | Alıntı
 ['RB']nhoobish


Gönderildi 08/05/2014 - 21:47
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.
Bağlantı | Yanıt | Alıntı
 Catalytical


Gönderildi 08/05/2014 - 21:53
+[MM]jason wrote:
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.
Bağlantı | Yanıt | Alıntı
 ['RB']nhoobish


Gönderildi 08/05/2014 - 22:06
Downloads for the Trigger Studio program:
[You must login to view link]
Bağlantı | Yanıt | Alıntı
 [BH_]lnIghTzl


Gönderildi 08/05/2014 - 22:38
mich wrote:
Map Pack Moderators. I'm sure one of them will be able to help you.

missing [MM]Gallas
Bağlantı | Yanıt | Alıntı
 [MM]Gallas


Düzenlendi08/05/2014 - 22:57 tarafından [MM]Gallas
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):
BF_Basse wrote:
You'll need some kind of raze-counter first:

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 :)

Bağlantı | Yanıt | Alıntı
 Catalytical


Gönderildi 09/05/2014 - 01:42
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.
Bağlantı | Yanıt | Alıntı
 MeTrOiD_WeaPoN


Gönderildi 09/05/2014 - 02:47
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.


Bağlantı | Yanıt | Alıntı
[1]2
1 15 arasından ilk 27 - 0 görüntüleniyor
Foruma Git:
4 Kullanıcı(lar) Bu sayfaya bakıyor (30 dakika içinde)
0 üye, 4 ziyaretçi

Şu an en popüler:
1.6 reward campaing (36 kullanıcı)
Word Association (36 kullanıcı)
TIW 2020 Map votes (33 kullanıcı)
New Voobly Client 2.7 (33 kullanıcı)
AoKTS updates (32 kullanıcı)
Photos of Voobly Players (26 kullanıcı)
CBA PathBlood 1.8.0 (26 kullanıcı)