Welcome
Welcome to the Castle Age AutoPlayer forums

You are currently viewing our boards as a guest, which gives you limited access to view most discussions and access our other features. By joining our free community, you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content, and access many other special features. In addition, registered members also see less advertisements. Registration is fast, simple, and absolutely free, so please, join our community today!

Guild and Festival Battles configs

Area to post your tutorials and guides to using CAAP

Moderators: didact69, stallion

Guild and Festival Battles configs

Postby Artifice » 07 Apr 2014, 06:56

Similar to the monster conditions list, I've created a text input field for detailed customization of guild battle behavior. The basic format is a list of attacks, with the modifiers following in brackets. For example of a mage poly attack and normal duel string:

poly[base:10000, poly:-20000, cleric:*2, active:*1 @Loadout Poly]
mduel[cleric:*2, active:*1 @Loadout MAtt]


Code: Select all
"poly" -- mage poly attack
"base:10000," -- add 10,000 points to all poly attacks
"poly:-20000" -- subtract 20,000 points if the target is already polymorphed
"cleric:*2" -- add the base metric times two to the score for cleric targets.
"active:*1" -- add the base metric times one for active targets.
"@Loadout Poly" means use the Poly loadout for this attack

Duel attacks are based on a metric of your chance of winning the battle, ranging from 0 - 100 percent depending on your API and the level of the target.

* There are new Festival and Guild Battle dashboards that show both the opponent team and your team, and allow you to see the score rating for each target and each attack.

Here are the attacks currently supported, and their base metric:
Code: Select all
rduel - rogue duel, based on win chance
poison - poison the target, based on win chance
smokebomb - cast smokebomb, based on target level
intimidate - based on win chance

cduel - cleric duel, based on win chance
heal - based on current health above stunned
dispel - based on target level
cleanse - based on target level
revive - based on current health above stunned
fortitude - based on target level
mass_heal - based on current health above stunned
divine_favor - based on win chance

wduel - warrior duel, based on win chance
whirlwind - base on win change percentage
guardian - based on target level
sentinel - based on target level

mduel - mage duel, based on win chance
poly - based on win change percentage, with +25% bonus
confuse - based on win change percentage, with +50% bonus
enrage - based on win chance
fireball - based on win chance

All the base metrics range from zero to 100, so for the above mage example, poly scores range from -10,000 for impossible to beat, inactive, polyed, non-cleric, to 10300 points for a super-easy to beat (level 1), non-polyed, active cleric.

Available modifiers, that go into the brackets, are:
cleric, mage, rogue, warrior - self explanatory
active - is active in this battle
base - will be added always
poly, confuse, fortitude, revive, guardian, poison - if the target has this condition
t1, t2, t3, t4 - if the target is in this Tower
festival -- in case you want different behaviors for Festival battles vs. Guild Battles
me -- If you want something done on yourself or not, for example dispelling yourself first
healed -- for when a target is less than 300 health below his max
unstunned -- for when the target has over 200 health, in either GB or FB. I use this like unstunned:*1 to keep CAAP from attacking easy wins with 10 health from splashes.
FBID -- True if the target's Facebook ID matches the number. For example, guardian[6969669:[email protected] Guard]
easy -- this modifier is to avoid wiping out a smaller guild before time is up. It triggers when the other side has only 1 tower with clerics left, or two towers with clerics left and you are winning by over 20%. I add an easy:-100000 to my warrior whirlwind strings to make them default to guardian when the battle is too easy. Good for warriors and mages, who do incidental damage to people in the tower other than the target. I have the mage use polymorph as backup attack.
easyc -- same as above, but this only applies when the battle is easy and the target is a cleric. I use this for my clerics, so they still duel to heal, but they don't kill off the other side's last clerics. Good for rogues and clerics.
bs -- When an opponent is at 100% health, for practicing rogue backstab
meshout -- true when your char has the Shout buff active. I use this to change attacks to a wduel loadout (!meshout:100000) with Shout equipped at the beginning of the battle.
afflicted -- true when the target is confused, polyed, or poisoned
p160, p200, p240 -- true when the target is worth that many points
wlp160, wlp200, wlp240 -- true when the target is worth that many points and you are winning or loosing by over 20%
attack, avoid, defend, healFlag -- targeting flags, they appear just below they player's class symbol. You can adjust the player's score based on what flag is set.

Attacks not useable by your current class in the battle will be ignored. For example, if you are a cleric in the current battle, non-cleric attacks, such as whirlwind, wduel, etc. will be ignored, so the Ratings box can have strings for multiple classes without issue.

These modifiers can have a "!" prefix to mean not that, such as !revive would be true for player without revive on him. Only the first modifier will be read for any condition, so you can use "revive:100" or "!revive:100," but not both.

Modifiers can be positive, negative, or multiplicative.
In general, use addition when you want to make a hard order for actions, such as using base:10000 to always do a special attack when possible, or for putting guardian on all active clerics before considering anyone else. Good for defensive actions that don't fail.
Use subtraction to disqualify actions, such as the poly:-20000 above to avoid casting poly on a target that is already polymorped.
Use multiplication for attacks that should be prioritized, but only if the base metric is good. For instance, offensive actions can prioritize clerics with "cleric:*4," but if there is only one cleric and you can't beat him, it will move to other targets instead of repeatedly loosing.

The targeting icons don't have any default value to CAAP, so you could do whirlwind[avoid:*100] and have increased chances of CAAP targeting any avoid with WW (might make your guildmates crazy).

When looking for who to attack, the script will go through all possible targets and attacks, and select the target with the highest score. If there are no targets with an attack that has a score greater than zero, the script will wait. Using the modifiers, complex attack actions are possible. For example, here is a dispel attack that will only dispel active players with poison:

dispel[base:-100, !active:-100000, poison:100,@Loadout GBDef]

These can be chained to prioritize attacks, and the script will automatically duel if stunned, even if there are other attacks in the Rating box, although it will hold tokens up to 8 tokens before using them when stunned. Here's a warrior config that does guardian on actives and then whirlwind and will do duel if he is stunned:

guardian[base:-100,active:[email protected] Guard], whirlwind[base:[email protected] WW], wduel[@Loadout WW]

Attacks for classes other than your current class are ignored, so it's ok to put multiple class commands in the same text box.

TOKEN SPENDING
The script has hold/burn logic for tokens. It follows the min/max settings, but it holds up to 8 tokens if you're stunned, poly'ed, or confused and you don't have cleanse or dispel. However, it will ignore your min/max settings and the conditions above and spend all tokens if there are less than eight minutes left in the battle or your guild is under 10% health.

The base duel attacks, (rduel, mduel, etc.) should always be included, so CAAP can still attack even if you're stunned.

Questions? Comments?

--Artifice

Artifice has been thanked by:
Artifice
Site Admin
Site Admin
 
Posts: 267
Joined: 23 Nov 2013, 07:47
Has thanked: 40 time
Have thanks: 191 time

 

Re: Guild and Festival Battles configs

Postby Cavalier007 » 13 Apr 2014, 00:36

Awesome!! What about having a target health setting? For example, my guild focuses on body count during FB. We attack targets we believe we can win against with the lowest amount health. The cut-off could be set at 0 or under 200 remaining health.

Additionally, I would love to see two new General categories for calling out Loadouts. One for Guild Battles and one for Festival Battles. Concept is to preset to GB and FB General Loadouts prior to start of battles.
User avatar
Cavalier007
First Knight
First Knight
 
Posts: 199
Joined: 26 Jun 2011, 21:35
Has thanked: 143 time
Have thanks: 11 time

Re: Guild and Festival Battles configs

Postby Yo Daddy » 14 Apr 2014, 19:29

Seems to be using guardian on the same target multiple times.

guardian[base:-100,active:20000,cleric:1500,guardian:-100]

is this line wrong? How do you get it to guard active clerics only when guardian is not already on that cleric?
Yo Daddy
Squire
Squire
 
Posts: 96
Joined: 11 Nov 2011, 04:16
Has thanked: 11 time
Have thanks: 3 time

Re: Guild and Festival Battles configs

Postby Yo Daddy » 14 Apr 2014, 20:13

guardian[base:-100,active:200,cleric:100,guardian:-400], guardian[base:-100,cleric:200,guardian:-400], guardian[base:-100,active:200,guardian:-400]

seems to do what I want. takes awhile to figure out how to code the right thing so you don't do something stupid in battle.
Yo Daddy
Squire
Squire
 
Posts: 96
Joined: 11 Nov 2011, 04:16
Has thanked: 11 time
Have thanks: 3 time

Re: Guild and Festival Battles configs

Postby Artifice » 15 Apr 2014, 04:54

Yo Daddy,

Yes, it can be tricky. It has a lot of flexibility, and that does have a cost in learning curve.

Your example of guardian[base:-100,active:200,cleric:100,guardian:-400] would prioritize active clerics, but would still guard active, non-clerics, because their scores would fall in the 0-100 range.

To do what you asked for: cast guardian only on active clerics, try this: guardian[base:-1000,cleric:600,active:600,guardian:-1000].

This will cast guardian on all active clerics because their score will be in the 200-300 range and ignore non-clerics and clerics that already have guardian or are inactive because those cases will result in a score less than zero.
Artifice
Site Admin
Site Admin
 
Posts: 267
Joined: 23 Nov 2013, 07:47
Has thanked: 40 time
Have thanks: 191 time

Re: Guild and Festival Battles configs

Postby Yo Daddy » 15 Apr 2014, 16:04

Thanks for the response, there is a lot of flexibility, and I'm just getting used to it. Using a more tiered approach now.

guardian[base:-400,cleric:700,active:600,guardian:-1500,!active:500]

I "think" it would now work to guard active clerics first, then if no more of those, inactive clerics, then any actives, then anyone else if the battle goes that long.
Yo Daddy
Squire
Squire
 
Posts: 96
Joined: 11 Nov 2011, 04:16
Has thanked: 11 time
Have thanks: 3 time

Re: Guild and Festival Battles configs

Postby Vitae » 15 Apr 2014, 16:51

Will doing Poison be added to this? I'm just seeing attacking people with it as a condition.

Also, what does "base" do? All I'm seeing entered for it above is negatives..
Finding all of this rather confusing.
User avatar
Vitae
High Commander
High Commander
 
Posts: 592
Joined: 23 Aug 2011, 01:05
Has thanked: 41 time
Have thanks: 56 time

Re: Guild and Festival Battles configs

Postby Yo Daddy » 15 Apr 2014, 17:06

"base - will be added always"

so, as I understand it, if you want to start with a clean slate, you can set base:-100 or something so that everyone starts out below zero regardless of class, activity, or tower.
Yo Daddy
Squire
Squire
 
Posts: 96
Joined: 11 Nov 2011, 04:16
Has thanked: 11 time
Have thanks: 3 time

Re: Guild and Festival Battles configs

Postby Vitae » 15 Apr 2014, 17:20

Yo Daddy wrote:"base - will be added always"

so, as I understand it, if you want to start with a clean slate, you can set base:-100 or something so that everyone starts out below zero regardless of class, activity, or tower.

ok....So, everyone starts out at 0, but you lower the base so that you can increase everything else...why not just lower everything else?..
Maybe I'm just not getting it :)

like this:
Artifice wrote:These modifiers can have a "!" prefix to mean not that, such as !revive would be true for player without revive on him.
For example, here is a dispel attack that will only dispel active players with poison:
dispel[base:-100, !active:-100000, poison:100]

So, if ! is "not", then !active is "not active", but the above will dispel actives according to the desc...
User avatar
Vitae
High Commander
High Commander
 
Posts: 592
Joined: 23 Aug 2011, 01:05
Has thanked: 41 time
Have thanks: 56 time

Re: Guild and Festival Battles configs

Postby Yo Daddy » 15 Apr 2014, 17:25

Yeah, thought I understood, but nothing I write works, so who knows.

Now I'm getting the "at max energy, quest" message when questing is not turned on, and I only have like 10 energy.

I just found a need for base after all. Say you need to guard active clerics. !active:-1000 makes sure you don't guard inactives, but you still don't want to guard active classes other than cleric if there are no clerics left to guard. without base:-100, you will guard mages and rogues and warriors if they're active.
Yo Daddy
Squire
Squire
 
Posts: 96
Joined: 11 Nov 2011, 04:16
Has thanked: 11 time
Have thanks: 3 time

Next

Return to Tutorials and Guides

Who is online

Users browsing this forum: No registered users and 1 guest

cron
suspicion-preferred