Gen 2 PS Development - Post bugs here

Marowak with Thick Club can SD again, it only takes into consideration the stat boost levels (no items, no screens, etc) when calculating whether or not adding another stat boost can happen. I recall testing this in-game Gold version on an emulator a year or so ago.

The other things you mentioned are correct though. PS still has the wrong mechanics.
 
I've seen some discussion about it, but Present's "special damage formula" based on secondary types doesn't seem to be implemented on PS. GS has it naturally, and Crystal uses it in all Link Battles for compatability. Stadium 2 totally fixes the glitch, but it lets you see opponent HP. Not too useful or practical but it's a niche.



https://replay.pokemonshowdown.com/gen2customgame-665091593 - repeatedly Presenting Umbreons with low level mons
 
Last edited:

Zarel

Not a Yuyuko fan
is a Site Content Manageris a Battle Simulator Administratoris a Programmeris a Pokemon Researcheris an Administrator
Creator of PS
I've seen some discussion about it, but Present's "special damage formula" based on secondary types doesn't seem to be implemented on PS. GS has it naturally, and Crystal uses it in all Link Battles for compatability. Stadium 2 totally fixes the glitch, but it lets you see opponent HP. Not too useful or practical but it's a niche.



https://replay.pokemonshowdown.com/gen2customgame-665091593 - repeatedly Presenting Umbreons with low level mons
PS generally only implements the most recent game in a generation (in this case Crystal). If people want to make pullreqs implementing GS, feel free, but I'm not sure any of our coders have the free time for that.
 
PS generally only implements the most recent game in a generation (in this case Crystal). If people want to make pullreqs implementing GS, feel free, but I'm not sure any of our coders have the free time for that.
I think doipy hooves argument here is that link battle Crystal mechs should be favored over regular battle Crystal mechs, which I do agree with. Granted it's not a relevant enough mechanic for the most part to be labelled as a priority.
 
The opposing Delibird used Present! Cloyster lost 48.2% of its health!
Starmie used Recover! Starmie restored its HP. The opposing Smeargle used Present! Starmie lost 100% of its health! Starmie fainted!


I disagree, after implementing it on a server and testing it, Present is surprisingly relevant. Most of the Pokemon with STAB Present tend to lack offenses, which Present partly fixes. It hits its targets for something like 25% HP with a 40BP attack (the lowest damage output), and that's Pokemon with very high HP like Vaporeon. Playtests have included Normal-types 3HKOing Acid Armor Vaporeon and Curse Entei (Present ignores stat modifiers) with a 40BP > 80BP > 80BP which isn't too unreasonable especially since they can be pressured into Rest loops, and OHKOing low-ish HP mons like Starmie with a lucky 120BP attack as shown above.

To reiterate, the way it works is the user's secondary type* overrides the target's Defense stat (not stage, stat), which Normal and Flying (which covers most Pokemon with Present) effectively reduce to 1 Defense, the target's secondary type* overrides the user's Level stat (all Special-type indexes are 20 or higher), and then the Attack stat is set to 10, and uses that for the calculation. Which results in potentially ridiculous damage from any Normal-type vs. any secondary Special-type.

High tier Pokemon that Present can maim:
Uber: Mew, Mewtwo, Celebi
OU: Cloyster, Exeggutor, Jolteon, Raikou, Starmie, Suicuine, Umbreon, Tyranitar (resisted), Vaporeon.
BL: Alakazam, Entei, Espeon, Houndoom, Jynx, Kingdra, Lapras, Meganium, Typhlosion
* - Pokemon with one type internally have the same type twice.

It is very practical on mons with 0 offensive presence like Smeargle and Chansey (maybe Snubbull for a low tier desperate for Heal Bell?), and even something with usable offense like Blissey or Miltank has niche use of it to tear specific targets like Raikou or Charm Umbreon (again, Present ignores stat modifiers / screens) to shreds. Heck, I'd argue it could be listed as 'viable' on Normal-types for the Gen 2 teambuilder despite the chance of healing opponents. As for those that lack STAB, Azumarill and Raichu (and their Prevos) have garbage damage and shouldn't ever use it, and Delibird's Present without STAB is somewhat mediocre.

Just in case somebody complains that Blissey/Chansey can't learn both Heal Bell + Present, they actually can via a Smeargle > Snubbull > Chansey chain, but isn't recognized by the teambuilder.

I'll be doing a pull request to implement accurate GSC Present soon.

Edit: Also, as far as I can tell from the disassembly, Present ignores all stat modifiers, so don't expect to sweep with Curse Blissey or have Acid Armor Vaporeon tank any hits from STAB Present. Also, Flying as the attacker's secondary type reduces damage more than I thought, which accounts for Delibird's mediocre damage, and also means Togetic will do less than compared to the other Normal-types.

I've also set up Present on a local damage calc build, will be doing a pull request for that soon. Enjoy some calcs in the mean time:

Blissey Present (80BP) vs. Cloyster: 247-291 (81.5 - 96%) -- 56.4% chance to OHKO after Spikes
Smeargle Present (80BP) vs. Raikou: 227-267 (59.2 - 69.7%) -- guaranteed 2HKO after Leftovers recovery
Blissey Present (120BP) vs. Tyranitar on a critical hit: 368-433 (91.3 - 107.4%) -- 46.2% chance to OHKO


For those worried about it being OP:

Blissey Present (80BP) vs. Snorlax: 43-51 (8.2 - 9.7%) -- possibly the worst move ever
Blissey Present (80BP) vs. Machamp: 43-51 (11.2 - 13.3%) -- possibly the worst move ever
Blissey Present (80BP) vs. Zapdos: 43-51 (11.2 - 13.3%) -- possibly the worst move ever
 
Last edited:

Zarel

Not a Yuyuko fan
is a Site Content Manageris a Battle Simulator Administratoris a Programmeris a Pokemon Researcheris an Administrator
Creator of PS
I think doipy hooves argument here is that link battle Crystal mechs should be favored over regular battle Crystal mechs, which I do agree with. Granted it's not a relevant enough mechanic for the most part to be labelled as a priority.
Oh, I missed the "Crystal link battles" part. Yeah, that should probably be implemented, then. Does anyone have an actual formula for how it works?

edit: Oh, looks like Enigami has it handled.
 

Lavos

Banned deucer.

Zarel

Not a Yuyuko fan
is a Site Content Manageris a Battle Simulator Administratoris a Programmeris a Pokemon Researcheris an Administrator
Creator of PS
I have not implemented Belly Drum yet because no one has given me details on how the 999 cap actually works, and I'm not sure if I care enough to find out without waiting for someone to tell me.
 
I have not implemented Belly Drum yet because no one has given me details on how the 999 cap actually works, and I'm not sure if I care enough to find out without waiting for someone to tell me.
It's all in Crystal's post which Lavos linked, but I guess the tl;dr is that BD consists of a series of increments rather than setting it straight to +6, and if an increment occurs when the stat is already 999, that increment is immediately reversed. Consequently, anything that hits 999 Atk at +5 or earlier will not boost any further via Belly Drum

I'm pretty sure this is right?
Code:
Increment(){
   if(stage<6){
      stage++;
      if(stat==999){
         stage--;
      } else{
         Recalculate();
      }
   }
}

BellyDrum(){
while(stage<6 && stat!=999){
      Increment();
      Increment();
   }
}
 

Jorgen

World's Strongest Fairy
is a Forum Moderator Alumnusis a Community Contributor Alumnusis a Contributor Alumnusis a Past SPL Champion
It seems to be more like this:

Code:
def SwordsDance(stats, stages, pokemon):
    if stages.attack < 6:
       stages.attack+=1
    else:
        return
  
    if stages.attack < 6:
        stages.attack+=1
    else:
        pass # note the lack of return here

    if stats.attack < 999:
        stats.calc_all(stages, pokemon)
        #reset all stats, calc all stats & cap each at 999
        stats.other_modifiers(pokemon)
        # burn, paralysis, items, screens... NO capping here, hence rollover issues
        return
    else:
        stages.attack -= 1
        return

def BellyDrum(stats, stages, pokemon):
    SwordsDance(stats, stages, pokemon)
  
    if pokemon.hp < pokemon.halfmaxhp:
        return
    else:
        pokemon.hp -= pokemon.halfmaxhp

    for i in range(5):
        SwordsDance(stats, stages, pokemon)

    return
 

Zarel

Not a Yuyuko fan
is a Site Content Manageris a Battle Simulator Administratoris a Programmeris a Pokemon Researcheris an Administrator
Creator of PS
Can we get a timeframe on the implementation of G/S accurate Present? SPL starts in a week and this mechanic will have a huge impact on the metagame if it works properly so we need a little warning. Thanks!
G/S accurate Present was implemented approximately a month ago; basically he did it a day or so after he said he would.
 

Lavos

Banned deucer.
"Your team was rejected for the following reasons: - Blissey's past gen egg moves Present, Heal Bell do not have a valid father. (Is this incorrect? If so, post the chainbreeding instructions in Bug Reports)"

Blissey gets both Present and Heal Bell from Granbull. However, Granbull appears to get Heal Bell from Smeargle, and Present from any of 10 Pokemon (not Smeargle). Is it possible to breed both moves onto a male Granbull so it can pass them along to Blissey, or can you only get one?

Worth noting that the current teambuilder on PS allows me to give a male Granbull Present + Heal Bell and there are no compatibility issues.
 

Zarel

Not a Yuyuko fan
is a Site Content Manageris a Battle Simulator Administratoris a Programmeris a Pokemon Researcheris an Administrator
Creator of PS
"Your team was rejected for the following reasons: - Blissey's past gen egg moves Present, Heal Bell do not have a valid father. (Is this incorrect? If so, post the chainbreeding instructions in Bug Reports)"

Blissey gets both Present and Heal Bell from Granbull. However, Granbull appears to get Heal Bell from Smeargle, and Present from any of 10 Pokemon (not Smeargle). Is it possible to breed both moves onto a male Granbull so it can pass them along to Blissey, or can you only get one?

Worth noting that the current teambuilder on PS allows me to give a male Granbull Present + Heal Bell and there are no compatibility issues.
In Gen 2, Blissey can learn these moves only when obtained from:
  • gen 2 egg: snubbull
Most likely, you have a different part of your set preventing Granbull from being a valid father. Can you post the full set?
 

Lavos

Banned deucer.
In Gen 2, Blissey can learn these moves only when obtained from:
  • gen 2 egg: snubbull
Most likely, you have a different part of your set preventing Granbull from being a valid father. Can you post the full set?
Sure, here you go:

Blissey (F)
Ability: Natural Cure
- Present
- Heal Bell
- Toxic
- Soft-Boiled
 

Zarel

Not a Yuyuko fan
is a Site Content Manageris a Battle Simulator Administratoris a Programmeris a Pokemon Researcheris an Administrator
Creator of PS
Ability: Natural Cure
This is probably your problem; trying to bring an Ability to Gen 2.

The UI is kind of inconsistent about that... You might need to manually delete it from the importable.
 

power

uh-oh, the game in trouble
This is probably your problem; trying to bring an Ability to Gen 2.

The UI is kind of inconsistent about that... You might need to manually delete it from the importable.
I deleted the ability and still got the same message - Blissey's past gen egg moves Present, Heal Bell do not have a valid father. (Is this incorrect? If so, post the chainbreeding instructions in Bug Reports)
 

Lavos

Banned deucer.
This is probably your problem; trying to bring an Ability to Gen 2.

The UI is kind of inconsistent about that... You might need to manually delete it from the importable.
That's how the exportable always looks for Gen 2, unfortunately there doesn't appear to be any way for me to delete the ability. I did try to delete it from the importable and re-save the team but it returned the same error message.



The red circle is where Abilities are located in the teambuilder for gens 3+. It's not giving me an option to change them here because they aren't supposed to exist. Is there any other reason why Present + Heal Bell wouldn't be allowed? Toxic is learned by TM and Softboiled from leveling up so those can't be the issue.
 

Lavos

Banned deucer.
Bumping this thread as a reminder that the Blissey bug with Present + Heal Bell incompatibility has not yet been fixed. This set is potentially viable in tournaments and we're a week into SPL. Thank you!
 

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

Top