• Check out the relaunch of our general collection, with classic designs and new ones by our very own Pissog!

Research Legends: Z-A Mechanics Research

It’s more the plus benefit than megas.

I tested this with Florges too. Solarbeam doesn’t need to charge when it’s used under “plus” (or mega technically)

I had a friend asking me what's the interaction of Mega Greninja with Water Shuriken - apparently it becomes a single-hit move. I guess it's because it becomes a Plus move then, but do we know what happens to its BP?
 
So something I don't think I've seen anything solid on which might be a bit important, how exactly does the speed stat work? More specifically, how much speed do you need to reduce cooldowns by a specific amount? I'm sure the sweats lovely people on ranked will want to know what speed stats are needed to get the best results while also maximizing bulk.

I saw this linked in a Reddit thread. The conclusion is that every point in a Pokémon's actual Speed stat above 25 reduces cool downs by 0.03 seconds, to a minimum of 3 seconds. So breakpoints exist roughly every 33 points.
 
36 minutes late to the party, but I've just made my own calculation about speed.

1761247746056.png

Note: the actual speed of everyone but Fletching is +25. I removed 25 to try the theory of "it starts from 25" and took the screenshot a bit later

I tried moves of base reload 3, 6, 9, 12, 15 and 20 to the slowest Quick Attack user and 7 Pokémon with a speed stat multiple of 50. Up there is the table (I estimated my error margin to be +/- 0.3s). Down there is the graph:

1761246756944.png


I was about to conclude that it isn't exactly linear, we could probably simplify it to -0.025s/point but it doesn't work with Fletchling... Then ImperialWrath suggested that it starts from 25 speed point, and now the math works. It is most likely -0.03s/point from the 26th one.
 
Last edited:
Looking at the new arrays Anubis posted. The Real Time data table has the 247 entries corresponding to usable moves, plus about 400 more that likely represent various moves used by bosses and non-Pokemon enemies.

The personal table is interesting though. Moves have a minimum of two entries on the table, up to 3, where the values that differ are ExtensionType, Power and IsMamoruEnable (Protect-related). For most cases, the Power value is lower on the third entry EXCEPT for:
  • Rock Smash (which is increased from 40 to 90)
  • Core Enforcer (which is increased from 100 to 200, Nihil Light still has its own entry so it's not that)
  • Aqua Jet (which is increased from 30 to 45)
  • Liquidation, which is 85 on all three entries
  • Quick Attack (30 -> 40)
  • Take Down (90 ->100)
  • Twister (40 -> 45)
  • Whirlpool (20 -> 40)
Flamethrower, conversely, goes from 90 to 4. Additionally there's a flag "IsSick" that only applies to the third instance of Sludge Bomb, likely related to the Aron quest where you Sludge Bomb some metal, the only use of the move in the overworld. This is making me think that the third entries are possibly related to overworld function in some way.
Could ExtentionType refer to the distance at which the hitbox of the move collide with the target? That would explain why certain moves are way weakear at "ExtentionType=2" (farer).

I could not relate most of the third values to the overworld.

(my theory won't explain "sword dance, charge, and bulk-up, tho)
 
Can Greninja-Bond (if hackable) mega evolve in Legends Z-A? Also, which Zygarde forme is the one caught in Legends Z-A, regular Zygarde or Power Construct Zygarde? Can the other one mega evolve?
 
Last edited:
Can Greninja-Bond (if hackable) mega evolve in Legends Z-A? Also, which Zygarde forme is the one caught in Legends Z-A, regular Zygarde or Power Construct Zygarde? Can the other one mega evolve?

I cannot hack Greninja but about Zygarde:

The Zygarde you catch has a build-in power construct. Abilities are not in the game, but if you are familiar with Legends Arceus, think Cherrim/Regigigas.

Also you can only mega-evolved from the Complete Form, no matter the ability. This will most likely be ported to Champions, so non-PC Zygarde will de facto miss the mega evolution
 
I cannot hack Greninja but about Zygarde:

The Zygarde you catch has a build-in power construct. Abilities are not in the game, but if you are familiar with Legends Arceus, think Cherrim/Regigigas.

Also you can only mega-evolved from the Complete Form, no matter the ability. This will most likely be ported to Champions, so non-PC Zygarde will de facto miss the mega evolution
That's not what I was asking. Technically, Zygarde doesn't have just three forms (10%, Regular, Complete), it actually has five forms (10%, Regular, 10% Power Construct, Regular Power Construct and Complete).

It's similar to Greninja and Greninja-Bond, or Rockruff and Rockruff-Dusk. Pokémon Showdown doesn't separate Zygarde into all these forms because they share the same learnset, the only thing that changes is the ability.
 
ragonc For physical emitter-origin cast point moves with a charge time of 0.42 seconds, like Dragon Rush, Heat Crash, and Heavy Slam, there’s a period in their attack animations where the user disappears then reappears to slam onto its target. Do you know which part of the charge time or attack loop time that occurs?
 
ragonc For physical emitter-origin cast point moves with a charge time of 0.42 seconds, like Dragon Rush, Heat Crash, and Heavy Slam, there’s a period in their attack animations where the user disappears then reappears to slam onto its target. Do you know which part of the charge time or attack loop time that occurs?
No, it is period till they disappear - for example for explosion you have a whole second to get out of the range. The attack loop time should be what you are referring to!
 
No, it is period till they disappear - for example for explosion you have a whole second to get out of the range. The attack loop time should be what you are referring to!
Can you elaborate on what the charge time and attack loop time mean in relation to gameplay? You say that Explosion takes a second to execute, but your data says that it has 5/6ths of a second of charge time and half a second of attack loop time.
 
Can you elaborate on what the charge time and attack loop time mean in relation to gameplay? You say that Explosion takes a second to execute, but your data says that it has 5/6ths of a second of charge time and half a second of attack loop time.

Sure thing. I looked into the waza parameters and this is how I’m interpreting them:
  1. Charge frame: the time between pressing the button and the move’s hitbox appearing. Basically, the startup where nothing can hit yet.
  2. Attack loop frame: the time from the first active frame through recovery until the user can do anything else again. This is the full lockout -> the move is out, and you’re committed.
To make the numbers easier to use, I converted the frames into seconds assuming a 60 FPS baseline. So when you see something like ~0.8 seconds of charge and ~0.5 seconds of attack loop, that’s just those frame counts translated directly into real time.

These values tell us two things: how long a move takes to actually come out, and how long the user is stuck before they can act again.

Further testing on actual hardware would tighten these numbers, but structurally this is how the data lines up with gameplay timing.

I still need to confirm how spawn positioning, hit area, and effect duration are defined, this is why I didn’t add those variables in my table.

Something interesting is that ImpactMotionSpeed appears to be a movement scalar applied during the attack’s active phase, likely controlling the forward motion or lunge speed when a target is outside immediate range, but I still have to investigate this properly.
 
For the "personal_waza_param_array.json" in the Raw folder, this is what I found:

"CanThroughMigawari" = "HitThroughSubsitute"
"IsKaihukuHuuziEnable" = "AffectedByHealBlock"
"IsYubiWoHuruPermit" = "SelectableByMetronome"
"IsMamoruEnable" = "StoppedByProtect"

"ExtensionType" = 0 : Normal Move, 1 : Plus Move, 2 : Rouge Mega Pokemon Move

For the ExtensionType, all the moves are used by Rouge Mega Pokemon or Post-Game Zygarde are 2. Type 0 and 1 seem identical except that type 1 can Bypass Protect, a feature of Plus Moves and all self healing moves (like Recover) go from 30% self healing to 40%.

Edit: ExtensionType 1 also makes Water Shuriken from a 5 Hit Moves with 15BP to a 1 Hit Move of 75BP.
 
Last edited:
In "personal_waza_param_array.json" the "SickParamSickID" refers to the Status Effect and the "SickParamPer" is the percentage of that effect occurring.

For the "SickParamSickID" it should be the following:
Code:
0 - No Effect
1 - Paralysis
2 - Sleep
3 - Freeze
4 - Burn
5 - Poison
6 - Confusion
7 - UNUSED
8 - Infestation
9 - UNUSED
10 - UNUSED
11 - Taunt
12 - UNUSED
13 - UNUSED
14 - UNUSED
15 - Heal Block
16 - UNUSED
17 - UNUSED
18 - Leech Seed
19 - UNUSED
20 - Perish Song

For the "Category" parameter, I believe it should be the following:
Code:
0 - Moves that does damage
1 - Moves that cause Status Effects
2 - Moves that increase or decrease stats
3 - Moves that recover health
4 - Moves that cause damage and can cause a Status Effect
5 - Heal Block
6 - Moves that does damage and can decrease enemy stats
7 - Moves that does damage and can increase/decrease self stats
8 - Moves that does damage and heals self (ex. Absorb)
9 - UNUSED
10 - UNUSED
11 - Moves that set field effects (ex. Reflect, Spikes)
12 - Moves that push enemies away (ex. Roar)
13 - Every other status move (ex. Splash, Protect, Forest's Curse)
 
Last edited:
In "personal_waza_param_array.json" the "SickParamSickID" refers to the Status Effect and the "SickParamPer" is the percentage of that effect occurring.

For the "SickParamSickID" it should be the following:
Code:
0 - No Effect
1 - Paralysis
2 - Sleep
3 - Freeze
4 - Burn
5 - Poison
6 - Confusion
7 - UNUSED
8 - Infestation
9 - UNUSED
10 - UNUSED
11 - Taunt
12 - UNUSED
13 - UNUSED
14 - UNUSED
15 - Heal Block
16 - UNUSED
17 - UNUSED
18 - Leech Seed
19 - UNUSED
20 - Perish Song

For the "Category" parameter, I believe it should be the following:
Code:
0 - Moves that does damage
1 - Moves that cause Status Effects
2 - Moves that increase or decrease stats
3 - Moves that recover health
4 - Moves that cause damage and can cause a Status Effect
5 - Heal Block
6 - Moves that does damage and can decrease enemy stats
7 - Moves that does damage and can increase/decrease self stats
8 - Moves that does damage and heals self (ex. Absorb)
9 - UNUSED
10 - UNUSED
11 - Moves that set field effects (ex. Reflect, Spikes)
12 - Moves that push enemies away (ex. Roar)
13 - Every other status move (ex. Splash, Protect, Forest's Curse)
That’s amazing work. Thank you for sharing. Today, when I was looking at the table I was trying to wrap my head around what the AddMegaPower Value interacts with and how.

As I understand it, this might likely interact with the possibility to Mega the Pokemon (when you use a move, your charge increases by 5.75). The open question would be to understand what is the max amount of mega power you can store and if this is also how it works in ranked.
 
I want to tackle the damage formula. So I'm spending some time in Area 20, hitting once then catching the Pokémon, and let's compare to the damage calculator (Extreme Speed was correctly nerfed to 65 BP in the calculations)

Part 1 - Level 100:

252 Atk Lucario vs. Lvl 53 0 HP / 0 Def 4 IVs Dragalge: 146-172 (98.6 - 116.2%) -- 87.5% chance to OHKO
Actual damages: 103
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 2 IVs Malamar: 147-174 (84.9 - 100.5%) -- 6.3% chance to OHKO
Actual damages: 110
252 Atk Lucario Extreme Speed vs. Lvl 56 0 HP / 0- Def 0 IVs Scrafty: 125-148 (80.1 - 94.8%) -- guaranteed 2HKO
Actual damages: 89
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 6 IVs Hippowdon: 111-131 (56.3 - 66.4%) -- guaranteed 2HKO
Actual damages in two hits: 164
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 9 IVs Malamar: 143-169 (82.6 - 97.6%) -- guaranteed 2HKO
Actual damages: 118

If it's just a plain multiplier, it can only be something between 0.7055 and 0.6982. That would make sense with the 0.7 datamined that we couldn't pinpoint to anything.


Part 2 - Level 50ish:

Level is the second parameter I want to try. If the formula wasn't linear, changing the level is the only "static" parameter I could think of. So let's play with my newly caught lvl 54 Malamar.
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 30 0 HP / 0- Def 22 IVs Furfrou: 118-141 (125.5 - 150%) -- guaranteed OHKO
Actual damages: 90
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 31 0 HP / 0 Def 25 IVs Stunfisk: 78-93 (66.1 - 78.8%) -- guaranteed 2HKO
Actual damages: 57
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 32 0 HP / 0 Def 13 IVs Stunfisk: 81-96 (66.9 - 79.3%) -- guaranteed 2HKO
Actual damages: 65

A plain multiplier would be between 0.7308 and 0.6771. At this point and with the datamined 0.7, I'm convinced there is a flat nerf of 70% to every move against wild Pokémon.


Part 3 - Taking hits:

Back to area 20, I'll take some hits then catch the Pokémon to see the stats. Is it fair? Maybe the wild Pokémon are cheating! Let's find out.

Lvl 53 0 SpA 25 IVs Roserade Giga Drain vs. 0 HP / 0 SpD Lucario: 19-23 (6.7 - 8.1%) -- possibly the worst move ever
Actual damages: 16 (OK I'll try to take hits on something else for bigger numbers)
Lvl 54 0 SpA 10 IVs Malamar Psyshock vs. Lvl 54 0 HP / 0 Def 15 IVs Chikorita: 48-57 (37.2 - 44.1%) -- guaranteed 3HKO
Actual damages: 34
Lvl 54 0 SpA 0 IVs Dragalge Hydro Pump vs. Lvl 54 0 HP / 0 SpD 20 IVs Chikorita: 28-33 (21.7 - 25.5%) -- 0.5% chance to 4HKO
Actual damages: 25

The final calculation scared me for a second, it didn't make any sense... Until I remembered that NVE are x0.6 and not x0.5. It also applies to the Giga Drain on Lucario btw.

But it looks like our 0.7 is fair, everyone got this. At least in and against wild non-Alpha Pokémon. Which brings me to the next part: Trainer battles.


Part 4 - Trainer battles:

This time, I am going to assume that everything is fair: if there is a multiplicator, it is the same for each trainer. It wouldn't make sense otherwise and I cannot know exactly how much damages I deal. Let's sit on a bench until the next ZA Royale. The great part is that all trainers have been datamined, I know they have 0 IV and I know their nature. So I can calculate the theory accurately.

Lvl 63 0 Atk 0 IVs Hippowdon Heavy Slam (120 BP) vs. 0 HP / 0 Def Aerodactyl: 98-116 (32.5 - 38.5%) -- 97.6% chance to 3HKO
It dealt 79 damages
Lvl 61 0 Atk 0 IVs Garbodor Gunk Shot vs. 0 HP / 0 Def 7 IVs Meganium: 92-110 (30.5 - 36.5%) -- 56.3% chance to 3HKO
It dealt 67 damages
Lvl 61 0 Atk 0 IVs Garbodor Gunk Shot vs. 0 HP / 0 Def 28 IVs Umbreon: 39-46 (11.7 - 13.8%) -- possible 8HKO
It dealt 29 damages

I have all the reason to believe the 0.7 also apply here.


Final part - Online battles (TODO):

And the most important question, for anyone willing to play online. Do the 70% nerf also apply there? I will need some voluntaries to test this out. I hope that those first four parts will be enough to motivate people to join me in this research, as I will link it to our Discord. We are close, and we'll soon have another card to prepare for online battles!



1761742210389.png
 
I want to tackle the damage formula. So I'm spending some time in Area 20, hitting once then catching the Pokémon, and let's compare to the damage calculator (Extreme Speed was correctly nerfed to 65 BP in the calculations)

Part 1 - Level 100:

252 Atk Lucario vs. Lvl 53 0 HP / 0 Def 4 IVs Dragalge: 146-172 (98.6 - 116.2%) -- 87.5% chance to OHKO
Actual damages: 103
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 2 IVs Malamar: 147-174 (84.9 - 100.5%) -- 6.3% chance to OHKO
Actual damages: 110
252 Atk Lucario Extreme Speed vs. Lvl 56 0 HP / 0- Def 0 IVs Scrafty: 125-148 (80.1 - 94.8%) -- guaranteed 2HKO
Actual damages: 89
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 6 IVs Hippowdon: 111-131 (56.3 - 66.4%) -- guaranteed 2HKO
Actual damages in two hits: 164
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 9 IVs Malamar: 143-169 (82.6 - 97.6%) -- guaranteed 2HKO
Actual damages: 118

If it's just a plain multiplier, it can only be something between 0.7055 and 0.6982. That would make sense with the 0.7 datamined that we couldn't pinpoint to anything.


Part 2 - Level 50ish:

Level is the second parameter I want to try. If the formula wasn't linear, changing the level is the only "static" parameter I could think of. So let's play with my newly caught lvl 54 Malamar.
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 30 0 HP / 0- Def 22 IVs Furfrou: 118-141 (125.5 - 150%) -- guaranteed OHKO
Actual damages: 90
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 31 0 HP / 0 Def 25 IVs Stunfisk: 78-93 (66.1 - 78.8%) -- guaranteed 2HKO
Actual damages: 57
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 32 0 HP / 0 Def 13 IVs Stunfisk: 81-96 (66.9 - 79.3%) -- guaranteed 2HKO
Actual damages: 65

A plain multiplier would be between 0.7308 and 0.6771. At this point and with the datamined 0.7, I'm convinced there is a flat nerf of 70% to every move against wild Pokémon.


Part 3 - Taking hits:

Back to area 20, I'll take some hits then catch the Pokémon to see the stats. Is it fair? Maybe the wild Pokémon are cheating! Let's find out.

Lvl 53 0 SpA 25 IVs Roserade Giga Drain vs. 0 HP / 0 SpD Lucario: 19-23 (6.7 - 8.1%) -- possibly the worst move ever
Actual damages: 16 (OK I'll try to take hits on something else for bigger numbers)
Lvl 54 0 SpA 10 IVs Malamar Psyshock vs. Lvl 54 0 HP / 0 Def 15 IVs Chikorita: 48-57 (37.2 - 44.1%) -- guaranteed 3HKO
Actual damages: 34
Lvl 54 0 SpA 0 IVs Dragalge Hydro Pump vs. Lvl 54 0 HP / 0 SpD 20 IVs Chikorita: 28-33 (21.7 - 25.5%) -- 0.5% chance to 4HKO
Actual damages: 25

The final calculation scared me for a second, it didn't make any sense... Until I remembered that NVE are x0.6 and not x0.5. It also applies to the Giga Drain on Lucario btw.

But it looks like our 0.7 is fair, everyone got this. At least in and against wild non-Alpha Pokémon. Which brings me to the next part: Trainer battles.


Part 4 - Trainer battles:

This time, I am going to assume that everything is fair: if there is a multiplicator, it is the same for each trainer. It wouldn't make sense otherwise and I cannot know exactly how much damages I deal. Let's sit on a bench until the next ZA Royale. The great part is that all trainers have been datamined, I know they have 0 IV and I know their nature. So I can calculate the theory accurately.

Lvl 63 0 Atk 0 IVs Hippowdon Heavy Slam (120 BP) vs. 0 HP / 0 Def Aerodactyl: 98-116 (32.5 - 38.5%) -- 97.6% chance to 3HKO
It dealt 79 damages
Lvl 61 0 Atk 0 IVs Garbodor Gunk Shot vs. 0 HP / 0 Def 7 IVs Meganium: 92-110 (30.5 - 36.5%) -- 56.3% chance to 3HKO
It dealt 67 damages
Lvl 61 0 Atk 0 IVs Garbodor Gunk Shot vs. 0 HP / 0 Def 28 IVs Umbreon: 39-46 (11.7 - 13.8%) -- possible 8HKO
It dealt 29 damages

I have all the reason to believe the 0.7 also apply here.


Final part - Online battles (TODO):

And the most important question, for anyone willing to play online. Do the 70% nerf also apply there? I will need some voluntaries to test this out. I hope that those first four parts will be enough to motivate people to join me in this research, as I will link it to our Discord. We are close, and we'll soon have another card to prepare for online battles!



View attachment 783081
I think this is a good intuition, the only thing I don't agree is why you don't also adjust the min max rolls also to 70%, this would make the comparison a bit easier. The only ones that seem to be off are the ones in blue.

Let me know what you think!

1761767740939.png
 
I think this is a good intuition, the only thing I don't agree is why you don't also adjust the min max rolls also to 70%, this would make the comparison a bit easier. The only ones that seem to be off are the ones in blue.

Let me know what you think!

View attachment 783136
I didn't want to try to force the 70% into my results. It sounded more fair to calculate the difference then conclude the magical number is 70, rather than calculate the 70 then conclude my data works.

Also the way I did it allowed me to fork the nerf, the magic value needs to be less than "diff with min" and more than "diff with max". Starting with 70, well, only works if I end up on 70.

Now about your five blue values: two are flagged "wrong resistance ratio" because the standard damage formula halves the damages in the case of a resisted hit. The corrected value is 60%, not 50%.

The other three are not impossible, they are simply the highest roll (with a rounding mistake in Stunfisk 1)
 
I've gone through and frame counted all moves to document their cast time. Timing starts on the first frame the move name turns blue and ends on the last frame that the name is blue. All testing was done on the training dummy at the Justice Dojo, so unfortunately I didn't have any visual indicator of when moves actually generate a damage hitbox. Since this isn't datamined or anything, there are likely some small inaccuracies throughout, but I made sure that no Pokemon had to reposition to execute their move, since that would add time.

https://docs.google.com/spreadsheets/d/1zhAzTBRACaU4gHwySBtfoGt60462eqR8O0Oyi6HH49g/edit?usp=sharing
 
I didn't want to try to force the 70% into my results. It sounded more fair to calculate the difference then conclude the magical number is 70, rather than calculate the 70 then conclude my data works.

Also the way I did it allowed me to fork the nerf, the magic value needs to be less than "diff with min" and more than "diff with max". Starting with 70, well, only works if I end up on 70.

Now about your five blue values: two are flagged "wrong resistance ratio" because the standard damage formula halves the damages in the case of a resisted hit. The corrected value is 60%, not 50%.

The other three are not impossible, they are simply the highest roll (with a rounding mistake in Stunfisk 1)

Ah than it makes total sense. I thought you were directly testing the hypothesis for the damage calc being x0.7. Now that I think about this, if this is true also in ranked, it would also change the way we do damage calc for rank - especially because if you get low rolls.
 
I've gone through and frame counted all moves to document their cast time. Timing starts on the first frame the move name turns blue and ends on the last frame that the name is blue. All testing was done on the training dummy at the Justice Dojo, so unfortunately I didn't have any visual indicator of when moves actually generate a damage hitbox. Since this isn't datamined or anything, there are likely some small inaccuracies throughout, but I made sure that no Pokemon had to reposition to execute their move, since that would add time.

https://docs.google.com/spreadsheets/d/1zhAzTBRACaU4gHwySBtfoGt60462eqR8O0Oyi6HH49g/edit?usp=sharing

Can you help me understand the "Cast Time (s+f)" (column D) calculation? I am not sure I understand what it is. We have some parameters to compare those numbers against, so if you have a moment to explain I would gladly compare them against the waza parameters in the datamine.

Also below the pictures of a very interesting dynamic that I saw in Moxie Boosted Video where his Garchomp by starting the Dragon Rush few frames later manages to avoid the opponent rush and ko them. Super interesting to calc the exact way this this could be replicated.
 

Attachments

  • IMG_2156.png
    IMG_2156.png
    2.4 MB · Views: 20
  • IMG_2157.png
    IMG_2157.png
    2.5 MB · Views: 22
  • IMG_2159.png
    IMG_2159.png
    2.3 MB · Views: 18
  • IMG_2160.png
    IMG_2160.png
    2.6 MB · Views: 19
Can you help me understand the "Cast Time (s+f)" (column D) calculation? I am not sure I understand what it is. We have some parameters to compare those numbers against, so if you have a moment to explain I would gladly compare them against the waza parameters in the datamine.

Also below the pictures of a very interesting dynamic that I saw in Moxie Boosted Video where his Garchomp by starting the Dragon Rush few frames later manages to avoid the opponent rush and ko them. Super interesting to calc the exact way this this could be replicated.
Cast Time (s) is seconds, Cast Time (f) is frames (at 60fps), Cast Time (s + f) are just those two columns totaled to the nearest thousandth millisecond.
 
I want to tackle the damage formula. So I'm spending some time in Area 20, hitting once then catching the Pokémon, and let's compare to the damage calculator (Extreme Speed was correctly nerfed to 65 BP in the calculations)

Part 1 - Level 100:

252 Atk Lucario vs. Lvl 53 0 HP / 0 Def 4 IVs Dragalge: 146-172 (98.6 - 116.2%) -- 87.5% chance to OHKO
Actual damages: 103
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 2 IVs Malamar: 147-174 (84.9 - 100.5%) -- 6.3% chance to OHKO
Actual damages: 110
252 Atk Lucario Extreme Speed vs. Lvl 56 0 HP / 0- Def 0 IVs Scrafty: 125-148 (80.1 - 94.8%) -- guaranteed 2HKO
Actual damages: 89
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 6 IVs Hippowdon: 111-131 (56.3 - 66.4%) -- guaranteed 2HKO
Actual damages in two hits: 164
252 Atk Lucario Extreme Speed vs. Lvl 54 0 HP / 0 Def 9 IVs Malamar: 143-169 (82.6 - 97.6%) -- guaranteed 2HKO
Actual damages: 118

If it's just a plain multiplier, it can only be something between 0.7055 and 0.6982. That would make sense with the 0.7 datamined that we couldn't pinpoint to anything.


Part 2 - Level 50ish:

Level is the second parameter I want to try. If the formula wasn't linear, changing the level is the only "static" parameter I could think of. So let's play with my newly caught lvl 54 Malamar.
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 30 0 HP / 0- Def 22 IVs Furfrou: 118-141 (125.5 - 150%) -- guaranteed OHKO
Actual damages: 90
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 31 0 HP / 0 Def 25 IVs Stunfisk: 78-93 (66.1 - 78.8%) -- guaranteed 2HKO
Actual damages: 57
Lvl 54 0 Atk 30 IVs Malamar Psycho Cut vs. Lvl 32 0 HP / 0 Def 13 IVs Stunfisk: 81-96 (66.9 - 79.3%) -- guaranteed 2HKO
Actual damages: 65

A plain multiplier would be between 0.7308 and 0.6771. At this point and with the datamined 0.7, I'm convinced there is a flat nerf of 70% to every move against wild Pokémon.


Part 3 - Taking hits:

Back to area 20, I'll take some hits then catch the Pokémon to see the stats. Is it fair? Maybe the wild Pokémon are cheating! Let's find out.

Lvl 53 0 SpA 25 IVs Roserade Giga Drain vs. 0 HP / 0 SpD Lucario: 19-23 (6.7 - 8.1%) -- possibly the worst move ever
Actual damages: 16 (OK I'll try to take hits on something else for bigger numbers)
Lvl 54 0 SpA 10 IVs Malamar Psyshock vs. Lvl 54 0 HP / 0 Def 15 IVs Chikorita: 48-57 (37.2 - 44.1%) -- guaranteed 3HKO
Actual damages: 34
Lvl 54 0 SpA 0 IVs Dragalge Hydro Pump vs. Lvl 54 0 HP / 0 SpD 20 IVs Chikorita: 28-33 (21.7 - 25.5%) -- 0.5% chance to 4HKO
Actual damages: 25

The final calculation scared me for a second, it didn't make any sense... Until I remembered that NVE are x0.6 and not x0.5. It also applies to the Giga Drain on Lucario btw.

But it looks like our 0.7 is fair, everyone got this. At least in and against wild non-Alpha Pokémon. Which brings me to the next part: Trainer battles.


Part 4 - Trainer battles:

This time, I am going to assume that everything is fair: if there is a multiplicator, it is the same for each trainer. It wouldn't make sense otherwise and I cannot know exactly how much damages I deal. Let's sit on a bench until the next ZA Royale. The great part is that all trainers have been datamined, I know they have 0 IV and I know their nature. So I can calculate the theory accurately.

Lvl 63 0 Atk 0 IVs Hippowdon Heavy Slam (120 BP) vs. 0 HP / 0 Def Aerodactyl: 98-116 (32.5 - 38.5%) -- 97.6% chance to 3HKO
It dealt 79 damages
Lvl 61 0 Atk 0 IVs Garbodor Gunk Shot vs. 0 HP / 0 Def 7 IVs Meganium: 92-110 (30.5 - 36.5%) -- 56.3% chance to 3HKO
It dealt 67 damages
Lvl 61 0 Atk 0 IVs Garbodor Gunk Shot vs. 0 HP / 0 Def 28 IVs Umbreon: 39-46 (11.7 - 13.8%) -- possible 8HKO
It dealt 29 damages

I have all the reason to believe the 0.7 also apply here.


Final part - Online battles (TODO):

And the most important question, for anyone willing to play online. Do the 70% nerf also apply there? I will need some voluntaries to test this out. I hope that those first four parts will be enough to motivate people to join me in this research, as I will link it to our Discord. We are close, and we'll soon have another card to prepare for online battles!



View attachment 783081

I tried this in Online Battle with four moves, and three of them were in the 70% range as well.

The final one was a bit off (dealt three more HP than it should have with the 30% nerf) so I cannot really use the numbers as a proof. It was outside of the regular SV range as well (and it was a neutral Thunder on Dragonite so it's not a weakness/resistance/change of move's power)

I personally believe that I just missed something in this fourth move, I misread the HP or something like that. I'll assume from now that the 30% nerf still applies online.
 
I tried this in Online Battle with four moves, and three of them were in the 70% range as well.

The final one was a bit off (dealt three more HP than it should have with the 30% nerf) so I cannot really use the numbers as a proof. It was outside of the regular SV range as well (and it was a neutral Thunder on Dragonite so it's not a weakness/resistance/change of move's power)

I personally believe that I just missed something in this fourth move, I misread the HP or something like that. I'll assume from now that the 30% nerf still applies online.
Very nice, thanks for running these tests!

For online battles, is it already known how the red (attack) and blue (defense) items influence damage calcs? If I had to guess, I would guess that they provide direct 50% boosts similar to the red/blue cheers in Tera Raids, but that's pure speculation on my part. It could also be controlled by "DamagePerMegaAura", since I don't think that has been linked to anything yet.
 
I'm fairly sure I just found either a very weird mechanic, or a very broken bug.

If you:
- Approach an alpha without engaging
- Save the game
- Engage the alpha (my tests were by hitting it with an attack) (EDIT: It seems it might also occur by just aggro'ing too.)
- Close the game
- Reload the game
- Engage the alpha again

The alpha will now take far more damage than it did in the initial battle. In my testing, it's been consistently close to double the damage they'd take in the initial fight. I tested on both static and randomly generated alphas.

I'm thinking there's some sort of bug with the 252 HP evs it's meant to have not generating? I'd be very curious to see if someone else is interested in looking deeper into this odd behavior.
 
Back
Top