Home Creators Posts Import Register Favorites Logout

Content

...is what we're going to make the AI say.

One of the ideas I had in our AI revamp was in the inclusion of Role tags for the AI team's Pokemon. If you are experienced in competitive battling, you may know these roles already-- sweepers kill lots of things, walls are super annoying and dont go away, phasers force switches to block set up  and do hazard damage, etc. Understanding the roles of various pokemon and how they work in a team is critical in being able to battle well.

so why should the AI not understand the same?

our role system is ultimately just a shortcut-- based on various conditions we have it assign a label to the pokemon (multiple roles allowed), and then in other parts of the code it figures based on those roles. this allows us greater ease in specific moves where we can tell it for instance, set up moves are better on sweepers than on tanks, as opposed to having to ask for the given criteria on each one. Aside from that it helps us work in the AI easier. 

So, below are the roles we've outlined (and have already implemented), including what defines them for the AI, and where we plan to use them:

  • Sweeper
  • Used in: when to set up; switching decisions
  • Defined by: max EV speed, modest/jolly/timid/adamant natures if no EVs, choice items
  • Physical Wall
  • Used in: when to recover; switching decisions
  • Defined by: a recovery move + (max def ev or + def nature if no EVs)
  • Special Wall
  • Used in: when to recover; switching decisions
  • Defined by: a recovery move + (max spdef ev or + def nature if no EVs)
  • Lead
  • Used in: suicide when support options are exhausted, or get out/switch back in sooner, don't waste potions on it
  • Defined by: first party slot
  • Cleric
  • Used in: switching decisions
  • Defined by: has Heal Bell/Aromatherapy, or Wish + max HP EV
  • Screener
  • Used in: get out of there when screens are up, send out earlier
  • Defined by: has light clay
  • Revenge Killer
  • Used in: send in after KO against low HP enemy
  • Defined by: has priority moves that can hit and KO, or outspeeds given opponent
  • Pivot
  • Used in: switching decisions, prefer u-turn/volt-switch
  • Defined by: has U-turn/Volt-Switch + a recovery move, or has Regenerator
  • Spinner
  • Used in: switching decisions
  • Defined by: has rapid spin/defog
  • Tank
  • Used in: prefer potion usage on this
  • Defined by: Max HP EV with no recovery move, or Assault Vest
  • Baton Passer
  • Used in: set up priority, switching decisions
  • Defined by: has baton pass
  • Stallbreaker
  • Used in: switching decisions
  • Defined by: has taunt, choice band or choice specs
  • Status Absorber
  • Used in: switching decisions, ignore status for item use
  • Defined by: has rest, comatose, toxic or flame orb, guts, quick feet, flare boost, toxic boost, natural cure, magic bounce or magic guard, hydration in rain, shed skin
  • Trapper
  • Used in: switching decisions
  • Defined by: has shadow tag, arena trap, magnet pull
  • Weather setters
  • Used in: send in earlier
  • Defined by: has weather-setting move or ability, or has weather rock
  • Field setter
  • Used in: send in earlier
  • Defined by: has field-setting move or ability, or has Amplifield Rock
  • Ace
  • Used in: send in last, prefer potions
  • Defined by: last slot in party when ace switch is on
  • Second
  • Used in: send in later, prefer potions
  • Defined by: second highest level on the team when ace switch is on

many. 

as i'm thinking about it we'll probably separate out special/physical sweeper
but that puts mixed in a rough spot
so we'll see. 

i spent most of yesterday writing out a lot more AI stuff already using this, so I'll post that on monday too

Comments

Michael Hamann

ahhh a really cool way to go about it. digging it!

Therrester

This new AI is going to absolutely wreck me. Question: Will the AI be able to, say, switch their sweeper out for their tank, have them swallow a hit, and use an item to heal the sweeper as it sits safely in their team like the player is able to do? I've always disliked the strategy of burning a Leader's healing items on Pokemon that can't really do anything to you since you bring them to red in a single hit.

AiedailEclipsed

I think this is supposed to be the part where I begin to sob softly to myself in the corner.

Geoffrey Nelson

So to make sure I'm understanding it right, the roles are determined by stats and moves, not by pokemon, so similar pokemon can have different and even abnormal roles as dictated by you? Like, if you had a full defenses, ariados it would play with the wall AI, correct?

Amethyst Liddell and Chasing Selene

correct! although well, that's assuming ariados has a recovery move, and i dont think it gets one... but i think you have the right idea at least. it would be impractical to overfit the possible roles for every species anyway, and this provides greater flexibility

Amethyst Liddell and Chasing Selene

Although we probably won't have trainers be healing benched pokemon because there isn't a precedent for that in the series, one of the first things we did was tackle the potion AI to not burn more than one potion per pokemon. the AI now remembers how much damage it can taken from a past attack so it should choose not to heal if it expects to take more than 50% of its HP.

Jáchym Toušek

Second should be determined by position on the team instead of level. When you get to E4 you'll probably have all mons at L100 so this would not work. Maybe there should be another group for mons who need revenge kill to set up - Fell Stinger and Battle Bond.

Amethyst Liddell and Chasing Selene

really good point about the second-- i'll pass that on. we'll use level first and then position if a tie. we arent using battle bond but that's a good point for fell stinger too. i'll have that put in