• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Tower defence exploit: Juggling

Status
Not open for further replies.

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
Prevent tower sales or construction during a round. They can still build towers but not in a place that will block the creeps off (Use the pathing test triggers).

Alternativly, restrict the number of sales during a round so that they can atmost juggle once.

Also putting a gold penalty for selling works great if you do not allow cheap towers.

Allow the other team to "report" juggling which temporarilly prevents them from doing it.

Calculate a maximum duration in maze time for the number of towers a player has (if used in best maze configuration) and if the unit lives longer than that they skip the maze completly and move on to the next player in defense (or the goal if he was the last).

The final method is probably the most advanced.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
IDEA 1

Create some invisible tester units along with all the spawns (no art at all or collision) which are unable to be attacked and serve the sole purpose of going to the end desternation.

These units will happilly pass through all the chaos and combat and will eventually reach the end desternation where they get reycled or whatever. They also move slower than normal units so would be more easy to juggle However if juggiling occours they will start to take a stupidly long time to reach the end desternation. Further more as more of them are created, they will beggin to cluster towards each other. Additionally they may start arriving out of order (due to juggling leaks as the player can not tell where they are). If enough of these abnormalities occur, it is obvious he is juggling the units.

In normal opperating conditions. The rate they are comming in should equal the rate they are comming out and in the same order they are created. Yes when mazes are extended they may take slightly longer but the order will still be the same. Also slight maze alterations will register only 1-2 faults where as major juggling will start to register a lot of faults (out of order or failure to arrive at all). In that case you should probably increase the speed of the spawns and test units to something stupid (like 50, SC2 can handle such stupid speeds) and freeze their sales abilities until all faults are fixed (all testers arrive). During this time they will probably leak like a scive so do not expect many games will actually continue after this point.

IDEA 2
This is my best and final idea.

I believe blizzard created a pathing cost native which returns a function of pathing distance to the target point. Units going through a maze should always be losing pathing distance to their desternation (waypoint or end) with the minor exception of maze extensions (each adds a very minor quantity to the units walk distance). When someone juggles, the distance to the desternation is greatly increased (as it has to walk to the other side of the maze) so the pathing cost will increase dramatically.

All you need to do is keep track of some units pathing cost to desternation every time a building is sold or created. No need for all units, just the strongest and toughest units currently spawned. Selling will only ever measure decreases so use it to record (as its the first parte of a juggle since they can not block). Then when they build a tower you compare the cost change. A maze extension will increase the distance by a small amount (usually undetectable due to the time passed and the unit being in motion). A juggle will dramatically incrrease the pathing cost due to the distance increase.

Once you detect a sudden large pathing increase, you have detected a juggle attempt. This gives you many options of varying levels of amusements. Heres a short list hehe.
1. Start to mega buff all the spawns being juggled or even future spawns. Reheal them, increase armor, more maximum HP or even boost speed stacking infinitly as they perform more juggles. Eventually stuff will go so fast and be so crazy that they will be forced to leak.
2. The fair and professional approach of just canceling their new tower (preventitive, they are not allowed to carry out an action which will regiser a juggling aleart).
3. Mega penaltive where random towers are sold until the pathing cost is dramatically decreased.
4. Teleport all the units immediatly to their desternation.

I advise 2 as it is the most fair and does not involve abnormal game behaviour (no one expects the other stuff to happen).

To prevent the juggle system registering when towers are being replaced in a maze, you may wish to create a tower morph system allowing you to replace towers without rebuilding them (morph them to the tower you want instead).
 
Level 9
Joined
Dec 21, 2006
Messages
490
i used idea 2 in my tower defence. i'll just check if the pathing costs increase by +5 during a wave. i'll instanly sell the tower again if that is the case BUT the tower will be build for a very short time which makes the units move back for a short time. could probaply be fixed by ordering all curently active units to move again after selling.
you can test it on my map if you like.
 
Last edited:
How about something like:

Any unit enters (playable map area)
Conditions:
Unit (triggering unit) has Structure attribute == true
Actions:
If ((Oldcost) < (Pathing cost from Lane1Start to Lane1End) + 18) & &(Number of units in Lane1 <= 5){
Player - Add (Minerals cost of (Unit type of (Triggering unit))) to Player's minerals
Unit - Remove (Triggering unit)
}
Oldcost = Pathing cost from Lane1Start to Lane1End;
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,198
That will not work as a symetrical juggle pattern will not register an increase from the start to the end even though the units may have to walk an increadable distance witin the maze to get to the other side.

Think about sloshing water from one side of a pot to the other. As long as that side of the pot it goes towards is blocked it can not excapse. Water travels the same distance when dropped into the middle of the pot to get to each side.
 
Level 4
Joined
May 13, 2010
Messages
66
Make the tower build time or tower destruction time a lot longer. Have an ability dedicated to destroying the tower, and it has a long channeling time. In a fast paced td, I would assume that this is enough to prevent juggling.
 
Level 5
Joined
Jul 10, 2010
Messages
124
keep track of sold towers per round

after player sells at least 3 towers in a round, all towers sold by that player that round leave a wreckage that has ground pathing but is not buildable

clear wreckages when all creeps leave the map

this only counts towers sold while creeps are alive
 
Level 10
Joined
Nov 28, 2008
Messages
655
i like what, uh, apocalypse td did?

After a time period, the creeps just start damaging everything around them in a small AoE.

So your maze can't be too big, AND you can't juggle. (so no insane hooks that take up half of the map either)

So like, for example, after 30 seconds they do 10dps to everything around them, then after 45 seconds it is 15 dps, then at 55 seconds it is 25dps and at 60 seconds it is 50dps, to give random numbers.

Have it penalize you GREATLY for doing things like this.


^^ Would be my idea.
 
Status
Not open for further replies.
Top