Home Creators Posts Import Register Favorites Logout

Content

sometimes people say i have a better speed than defense, because yesterday i was a little hasty. i said i'd be posting about one other AI structure thingy today but uh the problem is i actually meant i was going to -do that- today, and i usually don't post about things until the day after do them. 

but in the words of a popular modern philosopher,
porque no los dos?

so i guess i'll just do the thing as i've writing this post and think out here. at least the first part, otherwise this post will become approximately Way Too Long.

so our goal today is to write out what i'm calling a Field Disruption Method, which i want to check which field we're on and look at the current battlers and decide how good or bad of an idea it is to change the field just for the sake of changing it. this would be called mainly from any move that creates a new field, since sometimes we want to create a new field because we want that specific field, and sometimes we want to create a new field just because the opponent is abusing the existing one. 

and domestic field violence is never okay.

again, i'm not actually coding this here, just making a plan for marcello to put into code somewhere. i already know more or less which moves it'll be called from, so i just need to jump into it.

first we need a base value to set multipliers on. we'll create a fieldscore variable and set it to 100 so that we have something to get us started. next, i'll outline it to look at each field

as a passing thought, inverse field could be tricky for this....

all right, now i'll just go down the list. electric is always first, so let's take a look at the field. since most players do not intimately abuse fields and many major trainers do not use moves that create them, i will be taking only a surface level approach for this method and looking at the most impactful elements of each one.

for electric, we obviously want to change the field if the player is using an electric type. i'll do score * 1.5 for that and tweak the value later if necessary. similarly, we probably don't want to break the field if we (as the AI trainer) have an electric type. to match, score * 0.5

we don't necessarily know what bench pokemon the trainer has, but we do know what pokemon we have, and we should think about them too. if we have an electric pokemon on the bench, score * 0.5. i would choose a lower score here since there's a chance that pokemon won't make it out while the field is still up but i would also choose a higher score since i'm not concerned about looking for multiples on the team. chances are if we've got one electric type on this field we've got more than one of this field (looking at you arclight, julia) and so i'm just going to assume that's the case. 

fortunately, not much in the electric terrain is especially consequential. i'd consider looking for the galvanize boost, but that stuff is going to hurt anyway... so i think the only thing i will ask about is Surge Surfer. speed doubling abilities can be easy sweeps if not taken care of when possible. let's say *1.3 if the player has it and *0.7 if we do. it doesn't have to be a huge boost, just a nudge.

now that i think about it maybe i should make a weather disruption method for breaking swift swim etc.... we'll see.

altogether our section for electric looks like this

super simple stuff really. typing it out this way saves a lot of Thinking Time since i dont have to worry about syntax. or actually fitting it in! ty marche

grassy up next. we'll start with the main types. grassy field is good for grass types... and it's really really good for fire types. i pick standard *1.5/0.5 for grass and *1.8/0.2 for fire because if we have the chance we definitely do not want to stand around and get burned up. 

i consider asking about the healing if their pokemon is a wall... is that worth disrupting for? i suppose not much else is going on on this field except for it being firebait so we might as well. it doesn't make that much of a difference so i go 1.2/0.8 for a gentler, nudgier nudge.

misty next. this one's a little strange because it doesn't directly give an offense boost to fairies, just sp.def. that also doens't matter with physical attackers in the mix. let's do it like... this:

also if we're a dragon type we should probably run screaming-- and if the opponent is a dragon type then we keep the mist the heck around. we'll also ask about our bench (yes, we TCG in here) as usual.

all right, so what else... we need to be wary of the mist being poisoned, right? we can do that. let's say if we'd be affected by corromist-- aka we're not poison or steel type, then we'll look out for when the opponent starts trying to change the field, and we'll want to do the fuck something about it.

fecounter is a stray misc variable i use in a few fields. in the mist, it's used to track how many times a poison move has been used on the field. once it hits 2, the field changes. we use it similarly for the cave collapse, when an attack has been reflected by the mirror, and to track the flower garden's growth stage. among other things, probably.

that's about all i care much about for misty field. so next up is dark crystal cavern. DCC does even less than electric field tbh, not even boosting dark moves, but most dark or ghost pokemon will still -have- a move to use it. i'll look for those types on a lower score and call it a day.

it's not the most threatening field after all. i suppose i could buff luna by adding a flat value to it. i commonly hear she's one of the easiest. but. oh well. now's not the time for that.

chess board could be a little strange... like DCC it doesn't directly boost psychic pokemon, but there are lots of opportunities for psychics to use it. i'll use a lower score there again.

more importantly, i need to figure out what to do about the trick room piece. once trick room is cast, changing the field won't lower the duration.  i suppose we'd need to pre-empt the trick room usage. this should be possible since it's on a lower priority and likely to be used by slower pokemon anyway. therefore, i'll have it look at the battlers' speeds and decide if TR is a threat based on that.

big top next. this one has a lot. obviously, fighting types are king here. flying types aren't directly buffed so i dont worry about that too much... funny how ciel is the stronger one despite that. 

the biggest problems here are probably the set up dance moves, as well as Oricorio. sing is pretty significant too though... i suppose i'll look mainly for quiver dance, dragon dance and sing, since those are the things that will lead to an easy sweep. all of these can be game-changing so i'll keep the values high. 

next up-- ohohohoh. burning field. if there's one field you want to hurry up the fuck and change-- it's underwater. but if there's two fields you want to hurry up the fuck and change, it's also this one. we'll have some high multipliers here.

that 1.5 and 1.8 will stack up pretty quickly into one ticket to get the hell out of dodge... or i guess we're getting dodge the hell out of here. details. this feel is pretty binary though, either you're fire type or you're dead, so i dont think we need much more for it.

swamp next. let's talk about things that matter on the swamp:

  • fucking nothing

good. for the sake posterity i'll look for sleep powder since it's basically spore there, and call it a day.

rainbow-- cloud nine is pretty strong here. a lot of moves are benefited but no specific type except normal. well, all right, normal it is.
we can also look for sonic rainbooms-- gently though, since they dont matter too much later on.

corrosive looks pretty straight forward. it's for poison types. it's not for not-poison types. but no direct boost. sleep powder is spore there too though so we gotta be careful for that. corrosion ability is also a flat damage boost so we'll care about that.

all right, the last one we'll talk about here is corromist. if there are three fields you want to hurry the fuck up and change-- this is next. corrosion still applies here, but sleep powder doesn't. we also have to worry about fire types. because they can boost damage AND blow the whole thing up.

that said, this field still doesn't really directly reward poison types-- it just punishes others. so let's do it like this... 

we dont really care as much about the poison types as we do about the pokemon that can't be poisoned. so we'll look at what we have that can be poisoned. normally i'd place more emphasis on the active pokemon and less on the bench, but since unlike burning field the damage is going to come in if we're out in it for even one turn, the active pokemon is kind of already hecked, and the bench pokemon are who we  need to save. that said i keep the active pokemon handler somewhat high still so that it has enough interest to do the job itself right away.

the rest of the corromist piece looks like so. we care about fire's damage, and we care more about them blowing up the field, but we care less about them since they'll be poisoned too. us having fire types is also less incentive to change the field because they'll get poisoned to so we use a lower score there.

now, i'm going to go ahead and stop this post here so that i can more directly focus on finishing the other 26 fields out in good time, and also because i am getting increasingly paranoid at pressing a wrong key and deleting this entire post... but first, let's cheat to the end of the method.

we've gone through our field and we've done or multiplying so now we have a score that's around 50-150 probably. we need to convert this into a multiplier like the ones we're using so that the move can take it, and then pass it back.
oh, i suppose i've been writing score, not fieldscore. well i guess that's what we're using then. actuall nah notepad++ replace saves the day. i want a different score name variable so it's more visible when scanning through the large AI sections.
anyway all we need to add onto the end is this: 

and then we're better-set than your grandma's dinner table.
tata for today~

Comments

No comments found for this post.