Approved Allow moves to have non-max PP

DaWoblefet

Demonstrably so
is a Smogon Social Media Contributoris a Top Researcheris a Tiering Contributoris a Battle Simulator Moderator
There is some merit of intentionally not PP maxing your moves that I have seen be relevant in VGC:
  • Encore will end early if a Pokemon runs out of PP on its move. For moves like Gravity or Trick Room that can often be bad to be locked into, not maxing PP can help you break out of Encore locks in certain lategame scenarios. Some players opt not to PP max Detect/Protect for similar reasons on cartridge. I would have won a game at North American Internationals this year if my Xerneas only had 10 Protect PP rather than 16, because I was got in an Encore lock vs Whimsicott but my opponent also couldn't do much damage to it, and I managed to get enough double Protects that I would have done 10 in a row.
  • Choice locked Pokemon with moves that only have 5 PP sometimes intentionally opted not to PP max so they could Struggle sooner to be able to hit Shedinja. The most common example of this was Choice Scarf Kyogre with Water Spout; you often couldn't afford to drop another moveslot for a move that would hit Shedinja, so the next best thing was to speed up the process of getting to Struggle.
So in that sense, being able to choose whether or not you want your moves PP maxed is incredibly niche, but still something Showdown could emulate. I'd place this very low on the to-do list, however.
 

fart

formerly watchingtv
is a Battle Simulator Driver
Just to add to this, and I know this isn't exactly super-competitively relevant, but Trump Card also appreciates having lower PP.

1 PP Trump Card Sylveon when?
 

pre

shaving yaks and herding cats
is a Battle Simulator Administratoris a Community Leaderis a Programmer
PS Leader
The 'hardest' part of this would be coming up with a reasonable syntax for denoting it in the team export and pack formats (any proposals?). Other than that you'd just need to add support to the teambuilder (contentious given the Preact client work) and a small amount of logic to battle initialization on the server.
 

HoeenHero

The Misspelled Hero!
is a Battle Simulator Administratoris a Community Leaderis a Programmer
PS Leader
Just to add to this, and I know this isn't exactly super-competitively relevant, but Trump Card also appreciates having lower PP.
Moves like this have the `noPPBoosts` flag applied so by default they use the base PP (which is 5 for trump card, not 1)
 

DaWoblefet

Demonstrably so
is a Smogon Social Media Contributoris a Top Researcheris a Tiering Contributoris a Battle Simulator Moderator
Probably the most reasonable way would be to specify the amount of PP Ups used on the particular move, and just calculate the PP of the move at battle initialization. For example,

Lunala @ Lunalium Z
Ability: Shadow Shield
Level: 50
EVs: 4 HP / 252 SpA / 252 Spe
Timid Nature
IVs: 0 Atk
- Moongeist Beam
- Psyshock
- Tailwind (PP Up: 0)
- Roar (PP Up: 1)

So no parentheses would indicate default PP max, and you would just read the number after PP Ups to determine the number of PP Ups used on the move, and when importing, ensure PP Up is between 0 and 3.

In this example:
  • Moongeist Beam has 5 base PP, and since there is no PP Up specified, assume 3 PP Up, so Moongeist Beam PP = 8.
  • Psyshock has 10 base PP, and since there is no PP Up specified, assume 3 PP Up, so Psyshock PP = 16.
  • Tailwind has 15 base PP, and since PP Up is 0, Tailwind PP = 15.
  • Roar has 20 base PP, and since PP Up is 1, Roar PP = 24.
In order to calculate how much base PP a move should have, take base PP * 0.2 * number of PP Ups. Base PP is always a multiple of 5, so there will never be rounding issues.

As far as packed teams go:
Lunala||lunaliumz|shadowshield|moongeistbeam,psyshock,tailwind,roar|Timid|4,,,252,,252||,0,,,,||50|]

could have additional commas added, in a similar way to how EVs without a value are assumed to be default 0:

Lunala||lunaliumz|shadowshield|moongeistbeam,,psyshock,,tailwind,0,roar,1,|Timid|4,,,252,,252||,0,,,,||50|]


The biggest disadvantage of this model is that other platforms dependent on Showdown imports might break depending on how they read in move data; however, given that wanting to modify PP is already pretty niche, it shouldn't affect a wide majority of applications, I'd imagine.
 
Last edited:

HoeenHero

The Misspelled Hero!
is a Battle Simulator Administratoris a Community Leaderis a Programmer
PS Leader
In order to calculate how much base PP a move should have, take base PP * 0.2 * number of PP Ups. Base PP is always a multiple of 5, so there will never be rounding issues.
This should only be run if the # of PP ups used is > 0 or else you have 0 PP, which is shown incorrectly by your example above too:
Tailwind has 15 base PP, and since PP Up is 0, Tailwind PP = 0.
 

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

Top