Sword & Shield Battle Mechanics Research

DaWoblefet

Demonstrably so
is a Battle Simulator Administratoris a Community Leaderis a Programmeris a Community Contributoris a Top Researcheris a Top Tiering Contributoris a Social Media Contributor Alumnus
PS Admin
Does mold breaker user receive flower gift boost from allys? Is the boost ignored when mb user attack its opponent?
Both the Attack boost and Special Defense boost are ignored. So a Mold Breaker Pokemon with an ally Cherrim in the sun won't receive extra physical Attack, and if it targeted into a Pokemon with extra Special Defense from Flower Gift, it'd ignore that boost too. The same thing will happen for Sunsteel Strike or physical Photon Geyser with an ally Flower Gift in sun, as an example.
 
I checked if Terrain Pulse's type can be changed with an Ability that changes types of moves.

I was so unsure about this if it's the same behavior with other moves that can change types purely due to their effects. So, I decided to investigate. Had an Exeggutor with Terrain Pulse and Skill Swap, an Amaura with Refrigerate, and Cursola.

The plan for the test:
  1. Send out Exeggutor and Amaura.
  2. Have Exeggutor use Skill Swap on Amaura, so Exeggutor can get Refrigerate.
  3. Switch out Amaura for Cursola.
  4. Have Exeggutor use Terrain Pulse on Cursola.
The result? Terrain Pulse was ineffective on Cursola. Because of this, Terrain Pulse is unaffected by means like Refrigerate.

Video:
 

DaWoblefet

Demonstrably so
is a Battle Simulator Administratoris a Community Leaderis a Programmeris a Community Contributoris a Top Researcheris a Top Tiering Contributoris a Social Media Contributor Alumnus
PS Admin
I checked if Terrain Pulse's type can be changed with an Ability that changes types of moves.

I was so unsure about this if it's the same behavior with other moves that can change types purely due to their effects. So, I decided to investigate. Had an Exeggutor with Terrain Pulse and Skill Swap, an Amaura with Refrigerate, and Cursola.

The plan for the test:
  1. Send out Exeggutor and Amaura.
  2. Have Exeggutor use Skill Swap on Amaura, so Exeggutor can get Refrigerate.
  3. Switch out Amaura for Cursola.
  4. Have Exeggutor use Terrain Pulse on Cursola.
The result? Terrain Pulse was ineffective on Cursola. Because of this, Terrain Pulse is unaffected by means like Refrigerate.

Video:
This is a great example of the utility of the checks done before move success!

19. Check for move type change from type-changing Ability, like Pixilate (non-Max Move)
20. Set move type for Multi-Attack / Terrain Pulse / Weather Ball (this will override the previous check, if applicable).
21. Check for move type change from Electrify / Plasma Fists
22. Check for move type change from type-changing Ability, like Pixilate (Max Move)
 
Last edited:

Theorymon

Have a wonderful day, wahoo!
is a Site Content Manageris a Forum Moderatoris a Community Contributoris a Smogon Discord Contributoris a Pokemon Researcheris a Top Contributoris a Top Smogon Media Contributoris a Social Media Contributor Alumnusis a Community Leader Alumnusis a CAP Contributor Alumnusis a Battle Simulator Moderator Alumnus
OK this is going to be a super nerdy question, but I'm a bit stuck because this could involve testing in a LOT of different languages.

So this is a Japanese article on timer stalling in SwSh and ways to optimize it (such as for example, shiny Pokemon taking about an extra 2 seconds on the timer).

https://pokesol.com/column/tod1

This article brings up something interesting: it seems like the amount of characters for a ribbons title upon sending out the Pokemon actually impacts the amount of time they take to move. This Gastrodon has an Effort Ribbon, and this takes about 0:03 seconds longer than one without.

So my question is: Do different languages impact which ribbon takes up the most time, or is this only based off of one language's version?

I realize the amount of time used up is REALLY tiny so it's not nearly as important as using a Shiny Pokemon, but I'm pretty curious if this is known anywhere!
 

Theorymon

Have a wonderful day, wahoo!
is a Site Content Manageris a Forum Moderatoris a Community Contributoris a Smogon Discord Contributoris a Pokemon Researcheris a Top Contributoris a Top Smogon Media Contributoris a Social Media Contributor Alumnusis a Community Leader Alumnusis a CAP Contributor Alumnusis a Battle Simulator Moderator Alumnus
Apologies for the double post, but I just want to bring up this mechanic since I'm gonna be doing a Smogon article about timer mechanics as a whole, and I didn't see anything in the original post about this.


Basically, this video shows that the battle timer takes priority over my time in Sword and Shield. In the video, when the player's my time went to 0, he waited until the battle timer went to 0, and he won the game because of this!
 
This is technically related to battles directly, so I hope it's still on-topic.
Has anyone ever checked in SwSh if a wild Galarian Farfetch'd that performed 3 critical hits on your own Pokémon evolves after being caught? :blobthinking:
EDIT: To clarify, I'm asking this question because I wanna know if the battle system tracks the count of critical hits on the enemy's party's side too, and not just the Player's side.
 
Last edited:

Anubis

HONK
is a Community Contributoris a Top Researcheris a Battle Simulator Admin Alumnusis a Community Leader Alumnusis a Smogon Discord Contributor Alumnus
This is technically related to battles directly, so I hope it's still on-topic.
Has anyone ever checked in SwSh if a wild Galarian Farfetch'd that performed 3 critical hits on your own Pokémon evolves after being caught? :blobthinking:
EDIT: To clarify, I'm asking this question because I wanna know if the battle system tracks the count of critical hits on the enemy's party's side too, and not just the Player's side.
It doesn't. https://streamable.com/ddauwp
 
Could I get some more information about Corrosive Gas? Recordings would be amazing if possible, I'm trying to accurately implement the move into Gen 3.

How does Corrosive Gas interact with Magic Bounce / Magic Coat in Doubles?

Can melted items be tricked away? Do they regain their effect if tricked to a Pokémon not affected by Corrosive Gas? If a Pokémon affected by Corrosive Gas gets a new item, does it have an effect? Or does Corrosive Gas basically just place Embargo on a battler for the rest of the battle?
 

Celever

i am town
is a Community Contributor
Could I get some more information about Corrosive Gas? Recordings would be amazing if possible, I'm trying to accurately implement the move into Gen 3.

How does Corrosive Gas interact with Magic Bounce / Magic Coat in Doubles?

Can melted items be tricked away? Do they regain their effect if tricked to a Pokémon not affected by Corrosive Gas? If a Pokémon affected by Corrosive Gas gets a new item, does it have an effect? Or does Corrosive Gas basically just place Embargo on a battler for the rest of the battle?
I'm not a researcher but do know the answers to all of these. For future queries, the first place to check is probably the showdown move database and typing /dt [move] in any chat on showdown.

  • Yes, Corrosive Gas is bounceable (is affected by Magic Bounce / Magic Coat). That means it gets bounced back to the user and the user is affected by Corrosive Gas instead.
  • Beyond that, Corrosive Gas has the exact same effect as Knock Off. It takes a Pokémon from having an item to being itemless completely. Therefore, melted items can't be tricked away or regained by anything like Harvest, Recycle, etc.. That means it's different to Embargo, because when an Embargo is placed on a Pokémon the Pokémon still has its item, it just can't use it.
  • That means that if a Pokémon affected by Corrosive Gas gets a new item, that item has its full effect, as that item hasn't been corroded.
Good luck on your romhack.
 

Anubis

HONK
is a Community Contributoris a Top Researcheris a Battle Simulator Admin Alumnusis a Community Leader Alumnusis a Smogon Discord Contributor Alumnus
I decided to look into the battle RNG mechanics for Metronome tables for BDSP and SWSH and noticed something interesting. These games store a table with only the usable moves and then roll a random number to select from that table when Metronome is clicked.

From BDSP, the game selects from a Metronome table of 475 moves. The move dump from the initial game release also has 475 moves that are both usable and have the Metronome flag. These two tables correspond perfectly.

So far, so good.

From SWSH, the running game's Metronome table has 553 moves and specifically sets the range to 553.
1652274809384.png

I sorted the data from the move dump for 1.3.2 and there are 554 moves that are both usable and have the Metronome flag.

Marty pointed out that the extra move in the original dump is Dragon Hammer. For whatever reason, it isn't in the table the game references.

Here's a spreadsheet of all the metronome tables from BDSP and SWSH:
https://docs.google.com/spreadsheet...wpmhLiJ6GpQmH1gVsgmoT77sm0FHj3-Bo-1HA/pubhtml

exefs = from the running game binaries
romfs = from where the usual game assets and tables for move dumps come from

I did try forcing the RNG to pick index 509, which gave me Clanging Scales, and index 510, which gave me Brutal Swing (remember they are zero-indexed). This seems to suggest that Dragon Hammer isn't callable by Metronome in SWSH even though it has the Metronome flag.
 
Last edited:
Obscure question:

Bulbapedia says that Max Raid Shedinja's barrier is impossible to break, because it has 8 segments and successfully hitting it with anything will cause the piercing damage to KO Shedinja first. It claims that False Swipe/Hold Back would theoretically work, but there's no way for them to actually hit:
  • You need to negate both Wonder Guard and the natural Ghost-type immunity
  • The barrier makes Shedinja immune to all status moves
But aren't there still a few outs?
  • Have Shedinja hit an ally with Mummy, then have a Pokemon with Scrappy use False Swipe/Hold Back
  • Use Electrify/Ion Deluge on an ally with False Swipe/Hold Back while another ally has Neutralizing Gas
I don't have the equipment to test this myself, but this should be testable with three Switches/people or modding tools. I'm curious about if Max Raid Shedinja's barrier is actually breakable.
 
Last edited:
Not sure if this is documented anywhere, but the Air Balloon announces itself in the same speed tier as abilities like Intimidate or Drizzle. And if a Pokemon with one of those abilities has the Air Balloon, then the ability triggers first, and then the balloon right after.

This behavior means that if you lead with a Pokemon holding an Air Balloon, and the opponent has an ability that triggers on entry (but not Unnerve, etc.), you could determine whether the opponent is holding a Choice Scarf or not. Of course, this would be more useful in Doubles or VGC than Singles.
 
Last edited:
Something of a convoluted question that became relevant for a new OM.

Is the part of the cart damage calculation algorithm that corrects the damage source for Foul Play agnostic to whether the attack category is Physical or Special, i.e. if you could hack the in-game move database so that Foul Play was marked as a Special attack, would it use the target's Special Attack stat and stat changes (like Showdown does) or is the stat substitution hardcoded similar to Body Press, etc, so that it would use Physical Attack anyway? (Without any other information, I would assume Showdown is simulating the cart behaviour closely enough that cart FP is attack category agnostic, but just to check... Thank-you.)
 

DaWoblefet

Demonstrably so
is a Battle Simulator Administratoris a Community Leaderis a Programmeris a Community Contributoris a Top Researcheris a Top Tiering Contributoris a Social Media Contributor Alumnus
PS Admin
Something of a convoluted question that became relevant for a new OM.

Is the part of the cart damage calculation algorithm that corrects the damage source for Foul Play agnostic to whether the attack category is Physical or Special, i.e. if you could hack the in-game move database so that Foul Play was marked as a Special attack, would it use the target's Special Attack stat and stat changes (like Showdown does) or is the stat substitution hardcoded similar to Body Press, etc, so that it would use Physical Attack anyway? (Without any other information, I would assume Showdown is simulating the cart behaviour closely enough that cart FP is attack category agnostic, but just to check... Thank-you.)
In USUM at least, it is "stat-agnostic", as you put it, where if you edited move data to change Foul Play to be special, it would use the target's Sp. Atk and the target's -6 to +6 stat boosts/drops. No idea how Body Press would do it. You'd need to use a tool like pkNX to actually modify fundamental move data to truly test (effectively doing a ROM hack).
 

DaWoblefet

Demonstrably so
is a Battle Simulator Administratoris a Community Leaderis a Programmeris a Community Contributoris a Top Researcheris a Top Tiering Contributoris a Social Media Contributor Alumnus
PS Admin
Prompted by this post from Umbreon91, I decided to go through end-turn resolution order for Gen VIII more in-depth. The bulk of this order was already known from USUM, but additional information from USUM has led to more clarity, particularly concerning when Emergency Exit Pokemon can switch out during end-turn resolution. I won't go back to older games to verify this in-depth, but my assumption is that this list was also the way end-turn resolution order worked in previous generations too.
End-turn Resolution Order in Generation VIII
  1. Weather ending
  2. Sand damage / Hail damage / Ice Body / Dry Skin (rain or sun) / Solar Power / Rain Dish
  3. Pending Emergency Exit / Wimp Out switches resolve
  4. High affection curing major status condition
  5. Future Sight / Doom Desire / Wish (activate in the order they were set, like a queue; not determined by Speed)
  6. First event block
    1. Side conditions: G-Max chip (Cannonade, Vine Lash, Volcalith, Wildfire) and Pledge Sea of Fire. (activate in the order they were set, like a queue; not determined by Speed)
    2. Grassy Terrain
    3. Healer / Hydration / Shed Skin
    4. Black Sludge (healing / damaging) / Leftovers
  7. Pending Emergency Exit / Wimp Out switches resolve
  8. Aqua Ring
  9. Ingrain
  10. Leech Seed (the Pokemon affected by Leech Seed, i.e. the Pokemon losing HP)
  11. Regular Poison / Toxic / Poison Heal
  12. Burn
  13. Curse
  14. Binding moves (both taking damage / being freed from)
  15. Octolock
  16. Taunt ending
  17. Torment ending
  18. Encore ending
  19. Disable ending
  20. Magnet Rise ending
  21. Yawn
  22. Perish count
  23. Roost user regaining Flying-type
  24. Pending Emergency Exit / Wimp Out switches resolve
  25. Second event block
    1. Reflect ending
    2. Light Screen ending
    3. Safeguard ending
    4. Mist ending
    5. Tailwind ending
    6. Pledge Rainbow ending
    7. Pledge Sea of Fire ending
    8. Pledge Swamp ending
    9. Aurora Veil ending
  26. Trick Room ending
  27. Gravity ending
  28. Wonder Room ending
  29. Magic Room ending
  30. Terrain ending
  31. Third event block
    1. Uproar (active / ending)
    2. Bad Dreams / Ball Fetch / Harvest / Moody / Pickup / Slow Start / Speed Boost
    3. Flame Orb / Sticky Barb / Toxic Orb / White Herb
  32. Pending Emergency Exit / Wimp Out switches resolve
  33. Power Construct / Schooling / Shields Down / Zen Mode (uses raw Speed with a non-RNG based Speed tie to determine which does a form change first)
  34. Fourth event block
    1. Hunger Switch
    2. Eject Pack

Various notes and observations:
  • Torment ending is from G-Max Meltdown, G-Max Melmetal's move. Although it doesn't say so on the Y-info screen, its Torment effect wears off after 3 turns.
  • Steps 5 and 6-1 are queue-based. That is, whichever effect was set first will activate first. So if Sea of Fire is set first, then G-Max chip damage (on the same side), it will damage from Sea of Fire -> G-Max chip and vice versa.
    • I am near certain Future attacks / Wish should be lumped in with the rest of Step 6, but I can't explain the behavior of things like faster Doom Desire -> slower Doom Desire -> faster Grassy Terrain -> faster Leftovers -> slower Grassy Terrain -> slower Leftovers.
  • Step 25 is host-based. Whoever has their trainer card on the left side when the match starts is host, and they will see side effects on their side wear off prior to the opponent's. Court Change has no impact on this; the host's side will have their effects wear off first, not the host's effects (so it's unlike how, say, Court Change + Sticky Web + Defiant will fail to give your Pokemon an attack boost).
  • Step 33 is raw Speed with a non-RNG based Speed tie. See this post for an overview of what that means.
  • Multiple Emergency Exit / Wimp Out can activate throughout the end-of-turn effects. For example, a Poisoned EE and a burned EE will both switch out after being put under half HP, and then both Pokemon are replaced at step 24.
    • This is not how Eject Pack behaves; if multiple Pokemon could activate Eject Pack, the fastest Pokemon at the time of Eject Pack activating is the one that sees theirs trigger.
    • Eject Pack will activate immediately in response to switching in after say, Emergency Exit and getting a Sticky Web drop.
  • Surprisingly, end-turn resolution order does not use the typical dynamic Speed interactions of Gen 8. The timing of when and how Speed updates during end-turn resolution is identical to Gen 7.
  • Although Roost doesn't have a message at the end of the turn indicating where it wears off, a series of tests from SnorlaxMonster were used to determine its placement after Perish Song, but before the next Emergency Exit switchin:
    • A Flying-type Pokemon with Roost holds a super Sitrus Berry that will confuse the user and uses Roost on the same turn that an opposing Unnerve Pokemon would faint from Perish Song, in Misty Terrain. After using Roost, the user is knocked down into lower HP to allow the super Sitrus Berry to meet the HP condition to activate. The Roost user in this case is not confused, confirming it is still grounded and that Roost has not worn off yet.
    • A Flying-type Pokemon with Roost holds an Adrenaline Orb, paired with an ally Symbiosis Pokemon holding a super Sitrus Berry that will confuse the Roost user, in Misty Terrain. After using Roost, the user is knocked down into lower HP to allow the super Sitrus Berry to meet the HP condition to activate. An opposing Emergency Exit kicks in from poison, replacing the Emergency Exit Pokemon with an Intimidate Pokemon, which triggers Adrenaline Orb, which triggers Symbiosis, which causes the Pokemon to eat the super Sitrus Berry. The Roost user in this case is confused, confirming it is no longer grounded and that Roost has worn off.
  • The following effects are impossible to test in Gen 8 that were in Gen 7: Nightmare, Telekinesis, Heal Block, Embargo, Lucky Chant, Water Sport, and Mud Sport.
 
Given SwSh retains most if not all code for missing moves, it can probably be assumed that they would activate at the same time as they used to.
Off the top of my head, the only move that doesn't work quite right is Sky Drop, it now works regardless of the opponent's weight. If you unlock the moves with fan-made mods, and turn off move animations, they are pretty much usuable(That also is why we know that Hidden Power becomes the Max Move of it's actual Hidden Power type instead of Normal unlike Z-moves, which is also why it is implemented that way in the National Dex format)
 
Last edited:
Off the top of my head, the only move that doesn't work quite right is Sky Drop, it now works regardless of the opponent's weight. If you unlock the moves with fan-made mods, and turn of move animations, they are pretty much usuable(That also is why we know that Hidden Power becomes the Max Move of it's actual Hidden Power type instead of Normal unlike Z-moves, which is also why it is implemented that way in the National Dex format)
Does Sky drop also work against DMax targets, or is it possible that the "check for weight dependence" flag is being used for Dmax's immunity to weight-based moves instead?
 

Anubis

HONK
is a Community Contributoris a Top Researcheris a Battle Simulator Admin Alumnusis a Community Leader Alumnusis a Smogon Discord Contributor Alumnus
That also is why we know that Hidden Power becomes the Max Move of it's actual Hidden Power type instead of Normal unlike Z-moves, which is also why it is implemented that way in the National Dex format
This is actually incorrect. I demonstrated that Max Hidden Power and Max Judgment always become Max Strike, but it was decided to keep it as assumed mechanics so the meta would be more enjoyable, and because other mechanics are only partially implemented.

Refer to: https://www.smogon.com/forums/threads/national-dex-mechanics-thread.3656786/#post-8543860 and the post after it.
 
This is actually incorrect. I demonstrated that Max Hidden Power and Max Judgment always become Max Strike, but it was decided to keep it as assumed mechanics so the meta would be more enjoyable, and because other mechanics are only partially implemented.

Refer to: https://www.smogon.com/forums/threads/national-dex-mechanics-thread.3656786/#post-8543860 and the post after it.
Yeah, the behavior of Hidden Power and Judgement with Dmax was based on how the type changing moves that are actually in SwSh work like Multiattack and Weather Ball.
 

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

Top