Format Discussion Past Gens Random Battle Sets

In gen 2 random battles, Primeape and Hitmonlee never get the move Meditate, even though it is in their movepool. I can’t figure out why.
I (think?) figured it out. Meditate is not considered PhysicalSetup in the gen 8 randbats code (line 64). Therefore, counter.setupType does not become 'Physical'. The gen 2 randbats code uses the same (imported) move counter, so even if Meditate is in a pokemon's moveset, counter.setupType is not 'Physical'. Then, in lines 33-36 of the gen 2 randbats code, Meditate gets culled since (counter.setupType !== 'Physical') is true.

Suggestions to fix this behavior:
1. Add 'meditate' to the PhysicalSetup gen 8 code (line 64); that way, Meditate is counted as a physical setup move.

2. Remove case 'meditate': from the gen 2 culling code (line 33); there is no need to have it there. Neither Hitmonlee nor Primeape (the only two mons with Meditate in their movepool) have any other physical setup moves, so the line 36 cases aren't an issue. Hitmonlee has only one other non-physical move (Rest), so it will always have at least 2 physical attacks, so line 37 isn't an issue for it. Primeape has only two other non-physical moves (Rest, Substitute), but they are incompatible with each other (lines 107-108), so in the final moveset it will only ever have one other non-physical move. Hence it will also always have at least 2 physical attacks, so again no problem.

I have (personally) tested option 2 and it seems to work fine.
 
I (think?) figured it out. Meditate is not considered PhysicalSetup in the gen 8 randbats code (line 64). Therefore, counter.setupType does not become 'Physical'. The gen 2 randbats code uses the same (imported) move counter, so even if Meditate is in a pokemon's moveset, counter.setupType is not 'Physical'. Then, in lines 33-36 of the gen 2 randbats code, Meditate gets culled since (counter.setupType !== 'Physical') is true.

Suggestions to fix this behavior:
1. Add 'meditate' to the PhysicalSetup gen 8 code (line 64); that way, Meditate is counted as a physical setup move.

2. Remove case 'meditate': from the gen 2 culling code (line 33); there is no need to have it there. Neither Hitmonlee nor Primeape (the only two mons with Meditate in their movepool) have any other physical setup moves, so the line 36 cases aren't an issue. Hitmonlee has only one other non-physical move (Rest), so it will always have at least 2 physical attacks, so line 37 isn't an issue for it. Primeape has only two other non-physical moves (Rest, Substitute), but they are incompatible with each other (lines 107-108), so in the final moveset it will only ever have one other non-physical move. Hence it will also always have at least 2 physical attacks, so again no problem.

I have (personally) tested option 2 and it seems to work fine.
I highly prefer option 1 over option 2, as that seems more correct and future-proof
 
I highly prefer option 1 over option 2, as that seems more correct and future-proof
agreed, the second option was suggested in case altering gen 8 code is an issue

Thanks for the support, another one:

Gen 2 random battles shouldn't allow explosion + sleep talk/resttalk (equivalent since sleep talk without rest isn't allowed in gen 2 randbats). This has been mentioned before (see quote), but unfortunately restTalk + boom on steelix can still happen. This change would only affect steelix.

edit: Explosion + resttalk is an awful combination that basically prevents you from using sleep talk, since you don't want to boom uncontrollably.

Suggestion: change line 64 to one of the following:
Code:
{cull: moves.has('softboiled') || moves.has('sleeptalk')};
Code:
{cull: moves.has('softboiled') || restTalk};
Alternatively, line 69 can be altered to include explosion, so explosion + rest is prevented. I prefer the first implementation, since IMO rest + no sleep talk (i.e. mint berry) + explosion is a fine set and shouldn't be disallowed.


I don't know how easy this would be, but I really feel like Explosion and Sleep Talk should be unable to be rolled together. It basically means your Pokémon has 3 moves, because clicking Sleep Talk is way too risky.
 
Last edited:
This suggestion (bug? pun not intended) applies to gens 4, 6, and 7. I first noticed it for gen 7 randbats, but it applies to the others as well:

U-turn is unreasonably rare on many Bug-type Pokemon who have the move in their movepool. (particularly Scyther and Scizor)

For example, in gen 7 randbats:
  • Scyther and (non-mega) Scizor have zero chance of having U-turn, even though U-turn is in their movepool.
  • Mega Scizor only has a ~5% chance of having U-turn.
  • (non-mega) Beedrill only has a ~31% chance of having U-turn, even though U-turn is its only Bug STAB.
Also, in gen 4 randbats (pre-Quiver Dance), Venomoth only has a ~1% chance of having U-turn, and Beautifly only 5%. Even taking into account Bug-types being weak to Stealth Rock, the current situation is wrong IMO.

Why is it happening?

The (gen 4/6/7) randbats code was written with the intention (correct me if I'm mistaken) of ensuring that U-turn would not be their only STAB move. Specifically, (if some other conditions were also met) U-turn would be removed if the Pokemon did not have at least two STAB moves. Back then, U-turn was counted among these STAB moves. However, U-turn is no longer counted as a STAB move (it is on the "no STAB" list), so this effectively means that these Bug-type Pokemon need three STAB moves (including U-turn) in order for U-turn to remain.

This is clearly unreasonable. For example, Bullet Punch, U-turn, Pursuit, and Superpower is a very good Choice Band set for Scizor, but the current code would remove U-turn if it had the opportunity.

I suggest removing this requirement/culling condition for gens 4, 6, and 7. The set generation code forces a STAB move (not U-turn) to be on the moveset anyway. This change would have no affect on non-Bug types, or Bug types without U-turn in their movepool.

With this change, in gen 7, Scyther gets U-turn around 20% of the time and (non-lead) Beedrill around 82%, which I think makes a lot more sense. The chances of the other affected mons getting U-turn are similarly increased to more reasonable levels.
 
Your Volcarona must have had Buginium Z, preventing Mimikyu from having a Z-stone. When another mon on the team gets a Z-stone, (non-lead) Mimikyu has Leftovers 90% of the time.
That might have been it, but I really can't think of any situation where I would want Mimikyu with Leftovers over Life Orb, considering its ability. Heck, I'd even prefer Focus Sash, Lum Berry, Red Card, etc. over Leftovers.
 
Last edited:
For gen 2 randbats:

I think Hidden Power Flying should be replaced by Wing Attack in Yanma's movepool. Since Hidden Power Bug is in its movepool, this way it can have dual STABs, similar to Scyther. Currently, it can only have one or the other.

Also, I think Swords Dance Mew should not be required to have a STAB move (Psychic). Having Psychic forced on it really takes away from its physical movepool/coverage. I would even suggest going further and removing Psychic from its movepool (and replacing it with another good physical move, Rock Slide), particularly since Mew hardly ever uses Psychic in gen 2 Ubers, but at the very least it shouldn't be on 100% of Mew movesets.
 
Another gen 2 randbats moveset thing:

I think Shuckle should have Defense Curl instead of Curse. This would be consistent with the GSC analysis, which has Defense Curl and not Curse: https://www.smogon.com/dex/gs/pokemon/shuckle/.

Defense Curl doubles the damage of Rollout, so even from a damage perspective Curse is often worse, with Rollout only doing more damage if you boost to at least +3 Atk. The benefit of having extra PP is huge. Curse's 16 PP is really insufficient when up against dangerous threats, like many RestTalk boosting Normal-types that other Pokemon have a hard time with.

Using Rollout, even after boosting, is often something you don't want to do, since Water-types can come in for a free kill and it prevents you from healing. So you're stuck with 16 Curse PP (which you don't want to run out of, if you ever hav), 16 Toxic PP (which lets your opponent use Rest and further stall your PP), and 16 Rest PP (which you don't want to waste for obvious reasons). This often means that Shuckle loses to, or has to switch out of, the same mons it's meant to beat. Having Defense Curl would massively improve this situation.

Not lowering Shuckle's speed is another benefit of Defense Curl > Curse. This can really help when up against enemies with Curse. Even if Shuckle is extremely slow, it is still faster than a -6 Spe or paralysed enemy.

TL;DR Defense Curl > Curse on Shuckle due to more PP and not lowering speed, while still boosting Rollout damage.
 
Just played a Gen 4 game where I pulled a Crobat lacking any form of STAB. There really needs to be a rule enforced where all? Pokemon from Gen 3 onwards have a STAB move in their moveset. I can't think of any mon off the top of my head in modern gens that wants to forgo STAB for coverage.

The Crobat moveset was Taunt / Roost / Heat Wave / Super Fang. Awful.
 
In gen 2 randbats, currently, if a Pokemon has Rest without Sleep Talk in their moveset, it will always have Mint Berry as their item.

I think this should be changed, so that more defensive Pokemon will still have Leftovers even if they have Rest w/o Talk. This would be consistent with gen 2 OU and other gen 2 tiers. Unlike in other gens, using Rest without Sleep Talk or Mint/Chesto Berry is commonplace in gen 2. In general, bulky Pokemon that will usually Rest more than once during a battle would prefer Leftovers over Mint Berry.

Specifically: Shuckle, Snorlax, and Steelix should definitely have Leftovers all the time, and I think that many other mons should as well, including Rhydon and Magcargo. Of course, we still want to keep Mint Berry as the item on sweepers like Pinsir and Kingler.

My suggestion would be either using a bulk benchmark (summing base stats of HP, Def, SpD, Pokemon below a bulk threshold will be given Mint Berry and the rest Leftovers), or a speed benchmark (Pokemon with a base Spe stat >= a threshold are given Mint Berry, and the rest Leftovers).

For example (these numbers can be adjusted to change the list of Pokemon that would get Leftovers):
Bulk benchmark of 250 would give Azumarill, Magcargo, Rhydon, Kangaskhan, Snorlax, Dragonite, Steelix, Shuckle, and Tyranitar Leftovers instead of Mint Berry.

Speed benchmark of 45 would give Magcargo, Rhydon, Snorlax, Quagsire, Steelix, and Shuckle Leftovers instead of Mint Berry.

Wigglytuff
Azumarill
Hitmonlee
Arbok
Dodrio
Magcargo
Persian
Primeape
Kingler
Rhydon
Kangaskhan
Pinsir
Tauros
Snorlax
Dragonite
Crobat
Quagsire
Girafarig
Dunsparce
Steelix
Shuckle
Piloswine
Tyranitar
 
Yes, my request is a change to the gen 7 rhydon set to have lightning rod 100% of the time, i was faced against a pyukumuku with soak, and it killed my rhydon with another pokemons electric move after soak. Some may argue it’s a “niche ability” or “trace Pokémon” but that’s not the point it doesn’t matter that it can be traced, “free immunity” you might say, but I disagree the purpose is to fix rhydon against this supposedly niche set. So please, fix it.
 
Just played a Gen 4 game where I pulled a Crobat lacking any form of STAB. There really needs to be a rule enforced where all? Pokemon from Gen 3 onwards have a STAB move in their moveset. I can't think of any mon off the top of my head in modern gens that wants to forgo STAB for coverage.

The Crobat moveset was Taunt / Roost / Heat Wave / Super Fang. Awful.
Dnite
 
This suggestion (bug? pun not intended) applies to gens 4, 6, and 7. I first noticed it for gen 7 randbats, but it applies to the others as well:

U-turn is unreasonably rare on many Bug-type Pokemon who have the move in their movepool. (particularly Scyther and Scizor)

For example, in gen 7 randbats:
  • Scyther and (non-mega) Scizor have zero chance of having U-turn, even though U-turn is in their movepool.
  • Mega Scizor only has a ~5% chance of having U-turn.
  • (non-mega) Beedrill only has a ~31% chance of having U-turn, even though U-turn is its only Bug STAB.
Also, in gen 4 randbats (pre-Quiver Dance), Venomoth only has a ~1% chance of having U-turn, and Beautifly only 5%. Even taking into account Bug-types being weak to Stealth Rock, the current situation is wrong IMO.

Why is it happening?

The (gen 4/6/7) randbats code was written with the intention (correct me if I'm mistaken) of ensuring that U-turn would not be their only STAB move. Specifically, (if some other conditions were also met) U-turn would be removed if the Pokemon did not have at least two STAB moves. Back then, U-turn was counted among these STAB moves. However, U-turn is no longer counted as a STAB move (it is on the "no STAB" list), so this effectively means that these Bug-type Pokemon need three STAB moves (including U-turn) in order for U-turn to remain.

This is clearly unreasonable. For example, Bullet Punch, U-turn, Pursuit, and Superpower is a very good Choice Band set for Scizor, but the current code would remove U-turn if it had the opportunity.

I suggest removing this requirement/culling condition for gens 4, 6, and 7. The set generation code forces a STAB move (not U-turn) to be on the moveset anyway. This change would have no affect on non-Bug types, or Bug types without U-turn in their movepool.

With this change, in gen 7, Scyther gets U-turn around 20% of the time and (non-lead) Beedrill around 82%, which I think makes a lot more sense. The chances of the other affected mons getting U-turn are similarly increased to more reasonable levels.
u'll probably get Choice Scarf on some sets :/
 

Users Who Are Viewing This Thread (Users: 1, Guests: 1)

Top