Pixelmon Mod
This pack requires 800mb to 2gb of RAM for optimal performance.
Java 8 - 64 bit is required.
Website:
https://pixelmonmod.com/
https://www.reforged.gg/
There have been 60,351 server installs of this pack.
Players have played a total of 1,915.06 years of this pack.
Incendium (5.4.3)
A nether biome overhaul combined with challenging structures to conquer, unique...
By: Starmute
Journeymap-NeoForge (not a fabric mod)
JourneyMap: Real-time map in-game or in a web browser as you explore. JourneyMap...
By: techbrew, Mysticdrew, meme_sapiens
Nullscape (1.2.11)
Transforms the boring Vanilla end into an alien dimension with the most surreal...
By: Starmute
Structory (1.3.10)
An atmospheric structure mod with detailed themes, varied builds, and light lore...
By: botanydev
Structory: Towers (1.0.11)
An add-on for Structory that adds immersive, biome-themed towers to the world.
By: botanydev
Terralith (2.5.8)
Explore almost 100 new biomes consisting of both realism and light fantasy, usin...
By: Starmute, the_catter1
The Pixelmon Mod OST (1.0.5)
The official OST of Pixelmon, by Chris Geddes
By: Chris Geddes, The Pixelmon Team
**"1.21.1 (9.3.1)"**
- The Java requirement for 1.21.1 is Java 21. This will come shipped with most launchers. For manual installation, you may need to install a later JRK.
- The minimum Neoforge version for this update is 21.1.172 and is required for a Pixelmon client to run.
- Worlds from 1.16.5 may not work with newer versions of Minecraft. Consider backups before updating.
- If using datapacks, consider refreshing every update for default datapack fixes from Pixelmon.
#### Version Update:
- Updated recommended Neoforge to 21.1.172
#### Changes
- All Pokemon that can spawn at a minimum of level 5 has been lowered to 2, to accommodate players spawning fresh into the world.
- New Music Discs have been added: Boss, Gym, Legendary, Player, PokéCenter, Raid, Trainer, Ultra Space Ambient, and Wild.
- [22342](https://pixelmonmod.com/tracker.php?p=2&t=22342) Bergmite can now evolve into Hisuian Avalugg when leveled up in Groves, replacing the outdated Snowy Taiga Hills biome requirement.
- Fire Stones may now be discovered in mesa biomes, embedded in stone between Y=0–200.
- Water Stones can be uncovered on ocean floors, replacing gravel.
- Leaf Stones appear in forest biomes, near the surface beneath dirt or exposed in stone.
- Moon Stones are located in mountainous regions, found between Y=100–320.
- Sun Stones now generate in arid biomes within sandstone from Y=0–100.
- Dawn, Dusk, and Shiny Stones can be found in plains, swamps, and flower-covered regions respectively, each within stone from Y=0–200.
- Ice Stones appear atop glaciers or frozen mountain peaks, embedded in packed ice.
- Fossils can now be excavated from gravel between Y=-20–100.
- Gracidea flowers now grow naturally on the floor of flower forests.
- Silicon now has new smelting and blasting recipes using gravel and quartz, with increased experience rewards for quartz use.
- Platinum Ore no longer references Ruby Ore, and its rarity has been re-balanced to align more closely with diamond.
- Silver Ore generation has been reduced to prevent it from appearing significantly more often than Gold Ore.
- Biomes from Biomes O’ Plenty have been updated to match 1.21.1 parity.
- All block tags (e.g., Land, TreeTop) have been brought up to date with 1.21.1 standards.
- Biome transitions from Oh The Biomes You’ll Go to Oh The Biomes We’ve Gone have been reflected across spawn data.
- Pokémon formerly spawning in BOP’s Tundra now appear in BWG’s Crimson Tundra.
- Replaced all references to Coral Mangroves with Lush Stacks.
- Lush Stacks has been added as a valid spawn for Warm Ocean water spawns.
- Nacli and its evolutions now spawn in BOP’s Wasteland and Wasteland Steppe.
- Replaced BYG’s Rocky Beach with BWG’s Dacite Shore in spawn definitions.
- BOP’s Gravel Beach has been added to Stone Shore spawns.
- Klawf now appears in BOP’s Gravel Beach and BWG’s Dacite Shore.
- Minior has been added to BWG’s Eroded Borealis biome.
- Kubfu now spawns in BWG’s Crag Gardens, replacing its previous spawn in BYG’s Bamboo Forest.
- Kyurem can now be found in BWG’s Eroded Borealis.
#### Fixes
- [22540](https://pixelmonmod.com/tracker.php?p=2&t=22540) Untradeable Pokémon can no longer be placed into Poke Gifts.
- Returning to the battle UI after using free roam no longer results in a softlock or client crash caused by an unresponsive interface.
- Fixed name formatting of Paldean TMs
- Flamigo's flying animation has been improved, and should loop correctly.
- Roaring Moon's texture has now been fully coloured in.
- Flutter Mane's ribbon is now coloured correctly, and the skirt detail is no longer incorrectly mirrored.
- Hoopa's Unbound form will now learn Hyperspace Fury at level 85, rather than Hyperspace Hole.
- [22266](https://pixelmonmod.com/tracker.php?p=2&t=22266) Leaves added by Pixelmon and Ultra Jungle Vines now require shears to drop, and no longer drop when mined by hand.
- Fixed a bug where picking up any item would incorrectly grant multiple Pixelmon recipes.
- [22323](https://pixelmonmod.com/tracker.php?p=2&t=22323) The objective for Stage 2 of the 'The Psychic Storm' research now correctly requires crafting a single Orb of Frozen Souls, rather than ten.
- [21907](https://pixelmonmod.com/tracker.php?p=2&t=21907) Type: Null can now correctly spawn in strongholds, as its spawn location has been updated from Land to Indoors.
- [22536](https://pixelmonmod.com/tracker.php?p=2&t=22536) Mobs can once again be spawned using spawn eggs, mob spawners, and the /summon command. This applies regardless of the allow-vanilla-mobs config setting.
- The camera during Pokémon evolution no longer stutters or rapidly repositions.
- Fixed a crash caused by a null pointer exception when two wild Pokémon initiated a battle without a player present.
- Pokémon status conditions are now correctly cleared after blacking out and respawning at the player spawnpoint.
- [22527](https://pixelmonmod.com/tracker.php?p=2&t=22527) Fixed a client crash that occurred when using the “Apply Preset” option in the NPC editor while in multiplayer, regardless of whether a preset was selected.
- [22525](https://pixelmonmod.com/tracker.php?p=2&t=22525) Fixed a client disconnection that occurred when placing a trainer-type NPC using the NPC editor. The NPC now spawns without requiring a reconnect.
- Fixed a crash that occurred when attempting to edit an NPC, caused by a packet encoding failure.
- Attempting to add an Essence Jar to the inventory via commands or the creative menu no longer causes the game to crash.
- The game no longer crashes when a Mystery Box is added to the player’s inventory.
- Mew will now properly appear in the Cloning Machine and is no longer consumed when initiating the cloning process.
- Text in the move tutor UI no longer appears overly bold or darkened when a move is selected.
- Pixelmon Music Discs now function correctly, with updated names, credits, and proper playback through datapack integration.
- Fixed an issue caused by custom Pokémon species with National Dex numbers exceeding 32767 crashing the server.
- Fixed an issue where Pokémon would not level up after battles despite gaining sufficient EXP, unless prompted by an additional EXP source.
- Fixed clients being kicked for carrying certain items in stack sizes uncommunicated to the server, such as Super Potions.
- [22529](https://pixelmonmod.com/tracker.php?p=2&t=22529) Fixed an issue where using `/pokeevolve` could cause the client to crash during the evolution sequence.
- [22532](https://pixelmonmod.com/tracker.php?p=2&t=22532) Fixed a client crash that occurred when pressing the Tab or Alt keys on the multiplayer server list screen.
- Fixed Safety Goggles, Relic Crowns Pixelmon Photos, and various other sprites not rendering properly as wearable models on Armour stands.
- Recipes have been updated to use NeoForge tags, display in proper Recipe Book categories, group similar variants together, and correctly appear when using colored wool.
- [22539](https://pixelmonmod.com/tracker.php?p=2&t=22539) [22538](https://pixelmonmod.com/tracker.php?p=2&t=22538) [22534](https://pixelmonmod.com/tracker.php?p=2&t=22534) An issue causing battles to desync or crash due to improperly constructed moveset packets has been resolved.
- Defeating boss Pokémon no longer causes a battle error, and rewards such as experience and item drops now function correctly.
- The text in the Day Care inventory screen has been realigned and no longer appears cut off.
- Cloning Machines and PokéStops now remain rendered when extremely close.
- Klawf should now spawn as intended.
- Raid battles now correctly display the reward screen and grant loot, and no longer cause disconnects when drops are empty.
- [22495](https://pixelmonmod.com/tracker.php?p=2&t=22495) Ultra Deep Sea Pickles now drop the correct number of items based on the size of the colony when broken.
- Wild Battle Victory advancements now progress correctly and no longer cause parsing errors.
- [22553](https://pixelmonmod.com/tracker.php?p=2&t=22553) Battle music now stops correctly when leaving a battle via free roam after walking out of range.
- Pokémon now correctly appear in the world when switched to during battle, and loot is properly awarded after switching mid-battle.
- Defeating Gimmighoul or Gholdengo no longer causes disconnects, and Gimmighoul now evolves with 99 coins; coin drop rates have been reduced accordingly.
- [22541](https://pixelmonmod.com/tracker.php?p=2&t=22541) Fog now correctly affects Pokémon, preventing them from appearing fully black or overly visible through thick fog in Ultra Space.
- The Ultra Space Teleporter now places players at the highest Y-level, preventing spawns inside solid blocks.
- Battle music now fades in and plays at a volume consistent with the master volume setting.
- [22553](https://pixelmonmod.com/tracker.php?p=2&t=22553) Battle music now stops correctly after the player respawns from a full party faint.
- The custom music disc has been removed to prevent tag loading errors.
- Rocket’s Secret Experiment painting has been restored and now loads correctly.
- The Dream Ball Infuser recipe has been updated to fix a parsing error and now loads correctly in-game.
- The Infuser recipes are now usable.
- [22372](https://pixelmonmod.com/tracker.php?p=2&t=22372) Slowking and Galarian Slowking now have their Egg and Tutor moves correctly categorized and learnable.
- The Recipe Book search bar now correctly respects focus, allowing for uninterrupted text input.
- The Mystery Box loot table has been updated to use valid functions and now loads correctly.
- The Day Care chest loot table now references the 1.21.1 updated item ID for scute and no longer causes parsing errors.
- Using certain hotkeys while the recipe book is closed no longer causes the client to crash, or swap to a different screen.
- Ditto created via the cloning machine now spawns correctly, preventing a potential crash.
- Pressing hotkeys while the recipe book is closed no longer causes the client to crash.
- Split stack behavior in the Survival inventory now functions as intended.
- Mega Lucario now renders correctly after Mega Evolution in battle.
- Receiving Blank TMs or TRs from loot or commands no longer causes the game to crash or freeze.
- Fixed an issue where the ability Harvest could recover items other than Berries, even while the user was still holding an item.
- Corrected unintended behavior that caused item duplication or deletion when Harvest activated improperly.
- Fixed an issue where switching between multiplayer servers and single-player worlds in the same session could prevent the single-player world from loading correctly.
- Trainer NPC parties can now be correctly edited immediately after placement without requiring a world restart.
- Items can once again be sold to NPC Shopkeepers as intended.
- Poké Balls can now be thrown at Pokémon even when standing close to them.
- Emissive textures have been properly applied to Strike, Ashen, and Alter palette Pokémon, restoring their intended glow effects.
- Fishing Log entries for all JUMP! forms of Slugma and Clobbopus now display their descriptions correctly.
- [22351](https://pixelmonmod.com/tracker.php?p=2&t=22351) Skeledirge can now correctly learn its intended Egg Moves through breeding.
- Shiny Koraidon now displays its proper flying animation when ridden in the air.
- Updated the Shiny sprite for Iron Jugulis to display its correct gray coloring.
- Updated Rellor’s model and animations to better reflect its intended appearance and behavior.
- Fixed an issue where Poké Balls could not be thrown at Pokémon when standing too close.
- PC option buttons now disappear properly after closing or canceling an action.
- [17342](https://pixelmonmod.com/tracker.php?p=2&t=17342) Legendary and boss battle music now plays correctly, including during raids.
- [19477](https://pixelmonmod.com/tracker.php?p=2&t=19477) Fossil Machine progress now updates correctly and no longer gets stuck at 33%.
- [18935](https://pixelmonmod.com/tracker.php?p=2&t=18935) Legendary Pokémon now retain their intended levels and are no longer affected by Y-level scaling when spawning underground.
- Pixelmon armor now renders correctly and is no longer invisible when worn.
- [21944](https://pixelmonmod.com/tracker.php?p=2&t=21944) Slugma and Larvitar now appear with correct proportions in the Pokédex view.
- Pokémon disguised by the Illusion ability now correctly match the hitbox size of their disguise.
- [17291](https://pixelmonmod.com/tracker.php?p=2&t=17291) The flame on Magmar’s tail now appears correctly.
- Ultra Elm and Ultra Jungle trees now require a 2×2 sapling formation to grow, as intended.
- Pokémon movement has been adjusted to prevent overly high jumps and ensure they can step over one-block terrain properly.
- Poké Marts now correctly display and sell the intended types of Poké Balls, rather than defaulting to regular Poké Balls.
- The Eject Pack now uses its correct sprite and is fully accessible in-game.
- Utility Umbrella and Eject Pack are now properly available in the Creative inventory.
- Pokémon can now spawn across the full area of multi-chunk structures, rather than being limited to a single chunk.
- Updated item visuals with new sprites for Juice items and the Colorful Shake.
- [20064](https://pixelmonmod.com/tracker.php?p=2&t=20064) Dawn and Dusk Stone Ore no longer drops cobblestone under any circumstances.
- [20064](https://pixelmonmod.com/tracker.php?p=2&t=20064) Mining Dawn or Dusk Stone Ore during their respective times now yields double shard drops, restoring pre-9.1.4 behavior.
- Updated the definitions of “dawn” and “dusk” to match Pixelmon’s internal spawning system.
- Silk Touch now correctly preserves ore drops and no longer fails due to outdated enchantment checks.
- Slowking and Galarian Slowking can now learn Helping Hand via TM; Galarian Slowking also now supports Snowscape.
- Removed outdated and misspelled biome references from raid spawn data to reduce startup warnings and improve raid compatibility.
- Hisuian Sliggoo’s cry now plays correctly.
- Fixed missing or incorrect subtitle text and keys.
- [22531](https://pixelmonmod.com/tracker.php?p=2&t=22531) Resolved a rendering issue where Pokémon models appeared distorted when using the Sodium mod.
- Logging into vanilla and non-Pixelmon servers now works correctly.
- Unnecessary network data is no longer sent when connecting to servers without Pixelmon installed.
- [21850](https://pixelmonmod.com/tracker.php?p=2&t=21850) Z-Moves now appear and function correctly in battle when using the appropriate Z-Crystal, allowing moves to be selected as intended.
#### Language
- Added missing language keys for Toast Curry.
- The Java requirement for 1.21.1 is Java 21. This will come shipped with most launchers. For manual installation, you may need to install a later JRE.
- The minimum Neoforge version for this update is 21.1.162 and is required for a Pixelmon client to run.
- Worlds from 1.16.5 may not work with newer versions of Minecraft. Consider backups before updating.
- If using datapacks, consider refreshing every update for default datapack fixes from Pixelmon.
## Version Update:
- Updated Pixelmon to version 1.21.1.
- Updated Pixelmon to Neoforge 21.1.162 for Minecraft 1.21.1.
## Additions:
- Added research searching.
- Added Daycare keybind, using [M] by default.
- Added Research keybind, using [N] by default.
## Moves, Battle Items and Abilities:
- Added Poison Puppeteer ability.
- Added the Utility Umbrella held item.
## Datapack:
- Moved Card Conditions, Rarity, Attack Effects, Card Attacks, Card Powers, Card Types, Damage Effect, Damage Bonus Effect, Energy, Card Backs, Coins, Card Conditions, Card Sets, Theme Decks, Trainer Effects, and Cards to Minecraft Registries / tags where applicable.
- Datapackable objects include Card Rarity, Card Set, Cards, Theme Decks, Coins, Card Backs. See `data/tcg/tcg/card/` for examples.
- Added tags to encapsulate what cards are in sets, allowing for the ability to modify / add custom own cards without replacing every JSON.
- Added new Pokémon to Mount Boost move skill: Tauros, Mantine, Sharpedo, Latias, Bouffalant, Mudsdale, Wyrdeer and Basculegion.
- Added `pixelmon:raid_boss` context to the defeat raid boss interaction event.
- Added two datapack registries for raids:
- `pixelmon/pixelmon/raid/ally` - controls the NPC allies that can appear with you in a raid.
- `pixelmon/pixelmon/raid/spawn` - controls the spawning of raid Pokemon.
- Updated raid drops to be now defined using the Minecraft loot table system.
## Statistics:
- Added Pixelmon statistics to the [ESC] Minecraft statistic screen, including:
- Added "Eggs Hatched" statistic tracking.
- Added "Legendary Pokémon Caught" statistic tracking.
- Added "Mythical Pokémon Caught" statistic tracking.
- Added "[All] Pokémon Caught" statistic tracking, where all refers to all possible parameters, including palettes (Valencian, Ashen, etc), sizes (XXS, XS, etc), and more.
- Added "Pokémon Evolved" statistic tracking.
- Added "Shiny Pokémon Caught" statistic tracking.
- Added "Pokéball [Action]" for statistic tracking.
- Added battle actions for statistic tracking, including critical hits, KOs, and more.
- Added boss actions for statistic tracking, including defeated per tier and type, such as raids and wild bosses.
- Added breeding actions for statistic tracking, including hatching, breeding, Ditto and more.
## Battle Tests:
- Held Items Eject Button, Lagging Tail, Loaded Dice, Mirror Herb, Smoke Ball, Mental Herb, Scope Lens, Razor Claw, Binding Band, Power Herb, Air Balloon, Oran Berry, Enigma Berry, Berry Juice, Bright Powder, Float Stone, Expert Belt, Focus Band, Deep Sea Scale, Deep Sea Tooth, Zoom Lens, Leek, Light Ball, Lucky Punch, Metal Powder, Quick Powder, Thick Club, Macho Brace, Power Items, Toxic Orb, Absorb Bulb, Cell Battery, Luminous Moss, Snowball, TypeEnhancingItems, Memory items, Weather Rocks, Wide Lens, Grip Claw, Light Clay, Sticky Barb, Terrain Extender, Big Root, Destiny Knot, Red Orb, Blue Orb, Wise Glasses, Muscle Band, Blunder Policy
- Abilities Oblivious, Adaptability, Aroma Veil, Compound Eyes, Competitive, Motor Drive, Merciless, Terrain Seed
## Changes:
- Research UI updated for enhanced readability and improved visual clarity.
- `/pokeheal` and `/poketest` now use Brigadier, enabling full player selector compatibility.
- Players can no longer open the Pokédex while using a Spyglass.
- Particle effects now applied to Pokémon affected by the Mount Boost speed boost move skill.
- PokéEditor now displays an error when importing a Pokémon with an invalid held item.
- Pixelmon Oven block updated to act like a furnace
- [16708](https://pixelmonmod.com/tracker.php?p=2&t=16708) Removed spawn level scaling by distance from spawn settings.
- Outside-of-battle capture setting replaced with a dimension-based whitelist configuration.
- `/setraid` command has been updated.
- `raiddrops.json` datapack file removed.
- `raids.json` datapack file removed.
- Introduced CachedModelLoader interface to support multiple model loading types.
- All Pixelmon shaders updated to use the new style of rendering.
- Rendering math transitioned to GPU execution via shaders.
- Implemented custom VertexFormat to support direct OpenGL rendering.
- Model data now uploaded to GPU buffers upon initial load, reducing vertex calculation during rendering.
- Integrated Assimp to load models from GLTF format.
## Fixes:
- Resolved an issue causing misalignment between Pokéstop hitboxes and their models.
- Zygarde Cells now spawn correctly in singleplayer worlds.
- Addressed a bug where Zygarde Cells would fail to spawn while in spectator mode.
- Fixed a case where Pokémon caught in Raids would gain incorrect abilities after evolving or changing forms.
- The Infuser block and its associated recipes have been corrected and now function as intended.
- The notification screen for Pokérus infection now displays properly.
- NPC Editor now correctly displays available presets for selection.
- Resolved a client crash triggered by resizing the NPC Editor window.
- The delete function in the NPC Editor has been restored.
- Fixed NPCs responding twice to right-clicks with an empty hand; default interaction now properly checks the used hand.
- Corrected numerical offsets in Paldean TMs; existing TMs remain unaffected.
- [21826](https://pixelmonmod.com/tracker.php?p=2&t=21826) Cloning Machines no longer delete Mew upon being broken.
- [22174](https://pixelmonmod.com/tracker.php?p=2&t=22174) The hotbar now returns correctly after zooming with the camera and changing items via scrolling.
- Spyglass use no longer overlaps with the Pixelmon team UI.
- Teleport and Fly now function correctly across dimensions after relaunching the server or game.
- Oval and Shiny Charms are now granted immediately upon meeting the required conditions.
- Mount Boost now properly applies a speed increase while mounted on a Pixelmon.
- Legendary Bird Orbs now update progress correctly when defeating Pokémon in horde battles.
- Raw Tumblestones are now visible in the Creative Mode inventory.
- Fixed a crash occurring during Cloning Machine activation.
- [22352](https://pixelmonmod.com/tracker.php?p=2&t=22352) Prevented multiplayer server crashes caused by placing Lures in the Lure slot.
- [22353](https://pixelmonmod.com/tracker.php?p=2&t=22353) Resolved a crash when searching for and selecting Pokémon stored outside Box 1 via the PC.
- Ribbon and Egg Moves UI panels now update properly when navigating between Pokémon.
- [22366](https://pixelmonmod.com/tracker.php?p=2&t=22366) Pokémon hatched from Eggs now inherit correct size scaling from parents.
- Shiny odds are now properly respected for Tower Bells, Porygon crafting, Ditto transformations, vanilla mob replacements, and group spawns.
- Fusion data is now properly cleared from Pokémon NBT upon being unfused.
- [21815](https://pixelmonmod.com/tracker.php?p=2&t=21815) Fixed a crash caused by interacting with the TCG Rulebook.
- Shiny Charm config now applies across all methods, not just breeding.
- [22325](https://pixelmonmod.com/tracker.php?p=2&t=22325) [22286](https://pixelmonmod.com/tracker.php?p=2&t=22286) [22354](https://pixelmonmod.com/tracker.php?p=2&t=22354) [22363](https://pixelmonmod.com/tracker.php?p=2&t=22363) Evolution screen UI no longer freezes during an attempted evolution.
- Assignment rendering is now visually consistent with research rendering.
- [22297](https://pixelmonmod.com/tracker.php?p=2&t=22297) EvoRockCondition now correctly considers rock types.
- [21625](https://pixelmonmod.com/tracker.php?p=2&t=21625) Dusk Ball logic now checks for rain independently of other conditions.
- Starter Pokémon now come with the correct partner ribbon and level.
- Text alignment issues in the Research screen have been corrected.
- Scroll bar and layout issues when more than three Research rewards are present have been fixed.
- Reward text in the Research screen now uses distinct coloration for clarity.
- Resolved various resizing and layout inconsistencies in the Research tab.
- Click zones for rewards under the Research tab are now more responsive.
- Fixed a rare crash in PokéEditor when modifying a Pokémon’s moveset.
- Fixed a crash triggered upon successfully catching a Pokémon.
## Battles:
- Resolved several issues with Eject Button behavior:
- No longer activates when damage is taken by a Substitute.
- Only one Eject Button can activate per attack.
- No longer activates if removed by Knock Off.
- No longer activates if stolen via Thief, Covet, or Magician.
- No longer consumed when the holder is forcibly switched by Dragon Tail or Circle Throw.
- Stall now correctly applies priority lower than Lagging Tail.
- Compound Eyes no longer boosts the accuracy of one-hit knockout moves.
- Max Raid Boss name now displays correctly post-raid.
- Eviolite no longer boosts Gigantamax Pikachu, Meowth, or Eevee.
- Electro Shot now consumes PP correctly during rain.
- Players can now successfully flee wild battles using Teleport.
- Fixed a crash when using Teleport without a valid entity.
- Mental Herb now correctly cures Heal Block and Torment.
- Air Balloons now burst correctly even when the holder has a Substitute active.
- Symbiosis now triggers correctly when an ally’s Air Balloon bursts.
- [22221](https://pixelmonmod.com/tracker.php?p=2&t=22221) Resolved an issue where Dragon Darts would hang if all targets fainted after the first strike.
- Stench no longer causes Flinch when using status moves.
- Muscle Band and Wise Glasses now correctly modify move power, not the user's stats.
- Bright Powder no longer affects one-hit KO moves.
- Bright Powder's evasion effect now reduces accuracy by the correct 10%.
- BattleValidator no longer fails if a multi-turn move is used with exactly 1 PP.
- Blunder Policy fixes:
- No longer activates on moves that fail to affect the target.
- No longer activates on protected targets.
- No longer activates incorrectly on partially successful multi-strike moves.
- Float Stone no longer reduces weight below 0.1 kg.
- Heavy Slam now deals correct power when the defender weighs exactly 1/3 of the attacker.
- Autotomize weight adjustment now occurs before Float Stone halving.
- Autotomize now sets minimum weight to 0.1 kg.
- Expert Belt now properly boosts move power, not final damage.
- Multi-turn moves no longer error out under Torment or Disable status.
- [21904](https://pixelmonmod.com/tracker.php?p=2&t=21904) [22131](https://pixelmonmod.com/tracker.php?p=2&t=22131) Torment no longer interrupts multi-turn moves mid-sequence.
- Thick Club now functions correctly on transformed Cubone and Marowak.
- Lucky Punch now functions on transformed Chansey.
- Type-enhancing items now boost base move power, not final damage output.
- Snatch now successfully steals Light Screen, Reflect, and Aurora Veil.
- Clamp now traps and deals residual damage as intended.
- Zoom Lens now checks correctly if the user moved after its target.
- Terrain Seeds now activate properly when damage is taken post-terrain change.
- Fixed consumable items (Absorb Bulb, Cell Battery, Luminous Moss, Snowball) triggering despite stats being capped or Contrary.
- Sticky Barb no longer transfers to Pokémon behind a Substitute.
- Unnerve no longer allows Berries to activate if removed during Magic Room.
- Protosynthesis no longer activates during Cloud Nine.
- Synthesis now heals properly under Mysterious Air Current.
- Flower Gift now correctly increases allies’ Special Defense by 50%.
## Language:
- Translation keys for TCG items have been added to many previously hard-coded text values.
## Developer:
- Adds a `PixelmonStatisticsRegistry` and a `TCGStatisticsRegistry` that adds values/registry entries that keep track of action the player makes.
- Most stats are awarded value within the `PixelmonStatisticsPixelmonListener`, `PixelmonStatisticsMinecraftListener`, `TCGStatisticsTCGListener`, and `TCGStatisticsMinecraftListener.`
- These are then handled by Minecraft and displayed in [Minecraft's Statistics menu.](https://minecraft.fandom.com/wiki/Statistics)
- New Events!
- `AttackEvent.DamageDealt` - Includes info on the amount of damage dealt to a Pokemon. `AttackEvent.Damage` is info on the _potential damage_ that was calculated.
- `PokedexOpenedEvent` - Called when the player opens their Pokedex
- Added it to the `ServerPokedexPacket`.
- `ShearInteractionEvent`:
- `ShearInteractionEvent(AbstractBaseEntity pixelmon, Player player, InteractionHand hand, ItemStack itemStack)`
- Cancelable
- Added to `ShearInteraction`
- `WildPixelmonAttackEvent` - An event that happens when a Wild Pixelmon is the one to initiate a battle with a player:
- `WildPixelmonAttackEvent(Player player, PlayerParticipant playerParticipant, Pokemon playersFirstPokemon, Mob wildPixelmonEntity, BattleParticipant wildPixelmonParticipant)`
- Placed into `ExecuteActionGoal#attackPlayer`.
- `CaughtTransformedDittoEvent` - Used when a PixelmonEntity is caught and the game successfully rolls to decide that the Pokemon was actually a Ditto.
- `CaughtTransformedDittoEvent(Player player, PixelmonEntity previousPixelmon, PixelmonEntity ditto, EmptyPokeBallEntity emptyPokeBallEntity, boolean transformToDitto, boolean isMeltan)`
- `EggMovesetEvent` - An event that occurs after the moves for an egg have been chosen, but before they are actually assigned to the Pokémon's moveset.
- `EggMovesetEvent(Player player, Pokemon motherPokemon, Pokemon fatherPokemon, List motherEggMoves, List fatherEggMoves, List fathersTMHMTutorMoves, List levelupMoves, List lvl1Moves, List masterAttackList)`
- `MirrorHerbEggMoveEvent` - Used when a Pokemon learns an Egg move because their partner in the DayCare knew it.
- `public MirrorHerbEggMoveEvent(Player player, Pokemon mirrorHerbPokemon, Pokemon partnerPokemon, int movesetIndex, Attack newAttack)`
- `FriendshipChangedEvent` - Used right before a Pokemon's Friendship increases or decreases.
- `FriendshipChangedEvent(Pokemon pokemon, int previousFriendshipAmount, int intendedFriendshipAmount)`
- `RandomEggEvent` - An event that occurs when a random Pokemon is generated for an egg.
- `RandomEggEvent(Pokemon parentOne, Pokemon parentTwo, Pokemon pokemonInEgg)`
- tcg/api/events/`CardDrawnEvent` - Occurs when a player draws a card from their deck.
- `CardDrawnEvent(GameServerState gameServerState, Player player, int numberOfCardsDrawn, List deck, List hand)`
- tcg/api/events/`EnergyAttachedEvent` - Should fire whenever a player places an energy card on the active or a bench Pokemon during a TCG Battle.
- `EnergyAttachedEvent(PlayerServerState player, PokemonCardState pokemonCardState, ImmutableCard card, CommonCardState cardState)`
- `SynchronizeNatureEvent` - Occurs when a player's Pixelmon with the Synchronize ability makes a Wild Pixelmon's Nature get re-rolled.
- `SynchronizeNatureEvent(PixelmonWrapper synchronizeUser, PixelmonWrapper synchronizeTarget, Nature nature)`
- `WildPixelmonHeldItemRerolledEvent` - Fires when a Pixelmon Entity tries to re-roll a held item because a nearby player has a Pixelmon with Super Luck.
- `WildPixelmonHeldItemRerolledEvent(ServerPlayer serverPlayer, PlayerPartyStorage party, ItemStack heldItem, SpawnAction spawnAction)`
- `InfuserEvent` - An event meant to be used for the Infuser. Currently only the `InfuserEvent.CreateItem Pre` and `Post` events are used. They're fired before and after an Infuser will finish the creation of an item.
- `HealTeamEvent` - Fires when the player's entire team would be healed, even if the player's team is already fully healed. Sleeping in a bed, using /pokeheal, and starting another battle with a player are 3 instances that aren't covered by the other event, `HealerEvent`.
- `HealTeamEvent(UUID playerUUID)`
- Changes to Events!
- Added a new constructor to `ExperienceEvent` that allows including information on the Pokemon giving the experience.
- `ExperienceGainEvent(@Nullable BattleController controller, Pokemon pokemon, Pokemon faintedPokemon, int experience, ExperienceGainType type)`
- Added `ExperienceEvent#getFaintedPokemon`
- Refactored the `ItemInteractionEvent` to have a Pre and Post event.
- `PassivePoisonEvent` was refactored to be less redundant.
- `EVsGainedEvent`:
- Added a new constructor to the Item subclass `Item(Pokemon pokemon, EVStore evStore, EVYields evYields, ItemStack itemStack)`.
- Added the event to `InteractionPerilousSoup`.
- `EVGainEvent`:
- Added a new `faintedPokemon` class variable and `EVGainEvent#getFaintedPokemon`.
- New constructor `EVGainEvent(Pokemon pokemon, Pokemon faintedPokemon, EVYields originalEVYields, EVYields evYields)` to handle the new variable while deprecating the old one.
- Updated the `DoubleYieldEvent` subclass and all the Pre and Post subclasses to match.
- `FishingEvent.Reel`
- Added `isItem()` and `getItemStack()`
- `CurryFInishedEvent`
- Deprecated `public CurryFinishedEvent(@Nullable ServerPlayer player, EnumCurryRating rating, EnumCurryKey curryKey, EnumBerryFlavor cookingFlavor)` in favor of `public CurryFinishedEvent(@Nullable ServerPlayer player, int quality, EnumCurryRating rating, EnumCurryKey curryKey, EnumBerryFlavor cookingFlavor)`. Allows us to grab the quality (a.k.a score) of the curry for our stats.
- Added `PokemonBase#isJumpPalette`, `PokemonBase#isJumpPaletteForMagikarp`, `PokemonBase#isJumpPaletteForSlugma`, `PokemonBase#isJumpPaletteForSpheal`, `PokemonBase#isJumpPaletteForShellos`, `PokemonBase#isJumpPaletteForClobbopus`.
- Added palettes missing from `PixelmonPalettes`:
- APRICOT_SAUCY
- BLUE_STRIPES
- MOONS
- GOLDW
- GOLDE
- Created a private `BattleController#applyEndOfBattleEffectsAndRestoreItems` from code that was in `BattleController#endBattle`.
- Refactored `Experience` to create a `Experience#hasExpAll` from code that was in `Experience#awardExp`.
- Fixed a NPE in `PlayerControlledMovement#updatePosition` for when `#getCameraTarget` returned null.
- Added a `@Nullable` identifier to `getCameraTarget()`.
- In `BikeEntity`, overrode `Entity#move(MoverType, Vec3)` so that we could run `BikeEntity#awardStatsForRiding(Entity, Vec3)`.
- Nearly identical thing in `AbstractMovesEntity` with `AbstractMovesEntity#awardStatsForRidingPixelmon`.
- Refactored `InteractionTechnicalMove` and `InteractionTM` to create the `private boolean isUnableToLearn(PixelmonEntity, Player, ItemStack, ImmutableAttack)` from code from the `processInteract(PixelmonEntity, Player, InteractionHand, ItemStack)`.
- Added several new static tags in `PixelmonBlockTags` for the data tags that already exist:
- DAY_CARES
- PCS
- TRADE_MACHINES
- TVS
- VENDING_MACHINES
- Refactored `PokerusSpreader` to create new functions to make things more legible and to hopefully make this class more clear on how it works.
- `private static void spreadToParty(PlayerParticipant participant)`
- `private static void forEachAttackVerifyIfAttackerCanReceivePokerus(BattleEndEvent event, List
- `private static void forEachSuccessfulAttackOnInfectedOpponentAttemptToSpreadPokerusToAttacker(AttackAction attackAction, Map
- `private static void spread(PokerusStrain donorType, PixelmonWrapper wrapper, PlayerPartyStorage storage)`
- Added `EVYields#getTotalCount`.
- Fixed `IncreaseEVItem#adjustEVs(PixelmonEntity, ItemStack)` always passing in 1 EV to the `EVsGainedEvent`, even if Vitamins were used.
- Deprecated `DecreaseEVBerryItem#berryEVs(PixelmonEntity)` in favor of `DecreaseEVBerryItem#berryEVs(PixelmonEntity, ItemStack)`.
- Added `EVStore#getPerilousSoupEVYield`.
- Added `EVStore#subtractEVsOfType(BattleStatsType, int, int)` and replaced the logic in `EVStore#berryEVs(BattleStatsType)` with that.
- Added `EVStore#gainEVYields(EVYields)` which returns an EVYields of the EVs that were actually applied to the Pokemon (in case of the Pokemon having or almost having the max amount of EVs overall or for one stat). This overloads the other gainEVYields function. The calculation of which EVs are actually applied is done by the new `EVStore#calculateEVYieldsWithinMaximumLimits(EVYields)`.
- Refactored code in `ExecuteActionGoal`:
- Code in `ExecuteActionGoal#tick` now is mostly split into `ExecuteActionGoal#moveSkill(LivingEntity)`, `ExecuteActionGoal#attackPlayer(LivingEntity)`, `ExecuteActionGoal#attackPixelmonEntity(LivingEntity)`.
- Fixed the Warp Plate block so that it no longer pushes Survival players off if they walk into it and then triggering the WarpPlateEvent on repeat, forcing players to have to jump to the block to have to teleport.
- Added `Pokemon#isParadox` and `FormTags#isParadox` for the new `PARADOX` tag in `Tags`.
- Moved most TCG Resources to use ResourceWithFallback.
- Removed unused CardWelcomeScreen.
- Added PokemonStorage#getAllNonNull, which returns an array of all Pokémon in the storage without any null elements. Added PokemonStorage#getAllNonNull, which returns an array of all Pokémon in the storage without any null elements.
- Changed PixelmonWrapper to extend Pokemon.
- Added `Lcom/pixelmonmod/pixelmon/api/pokemon/PokemonBuilder;build(Ljava/util/function/Supplier;)Lcom/pixelmonmod/pixelmon/api/pokemon/Pokemon;`
- Changed PixelmonWrapper to make a copy of the Pokemon.
- Added `PixelmonWrapper#writeChangesToOriginalPokemon` that is called every move to record persistent changes to the original Pokemon's data.
- Removed `PokemonLink`, `DelegateLink`, and `WrapperLink`.
- Added `HeldItem#postProcessDamagingAttackSubstitute`.
- Marked TripleAxel, TripleKick, and PopulationBomb as `deprecated`.
- Updated raid capture events to extend the standard capture events.
- Updated the raid API to always have a Pokémon.
- Updated raid spawning API to use Pokémon specs.
- Added SpawnReplacement Mojang datapack registry.
- Added HeldItem#onStatusRemoved and HeldItem#onGlobalStatusRemoved.
- Added `HeldItem#preventsEffectsOfWeather`.
- Added `HeldItem#onItemLost`.
- `HeldItem#cantMiss` now takes a 2nd `PixelmonWrapper` parameter.
#### Additions:
- Added new Research and Assignment feature.
- Added Research triggers.
- Added Research toasts on progress and completion.
- Added new screen for Research, as an inventory tab.
- Added internal GUI API.
- Added FXAA GUI shader.
- Added continuous bell curve for Pokémon sizes (growths).
- Added naturally spawning, rare, large or small Pokémon.
- Added the `size` Pokémon spec.
- Added healthbar below sprite in PC when a Pokémon is not a full HP.
- Added grey overlay when a fainted Pokémon is in PC.
- Added Professor Wisteria to Research, who will accompany players as they progress in their tasks.
## Pokémon:
- Added Bombirdier.
- Added Gimmighoul.
- Added Gholdengo.
- Added Wattrel.
- Added Kilowattrel.
- Added Rabsca.
- Added Rellor.
- Added Squakabilly.
- Added Klawf.
- Added Great Tusk.
- Added Iron Hands.
- Added Iron Treads.
- Added Iron Bundle.
- Added Sandy Shocks.
## Cosmetic Palettes:
- Added spirit Iron Valiant.
## Moves, Battle Items and Abilities:
- Added Ability Shield item.
- Added TM171-TM223 for all existing moves.
- Added new battle tests.
## Items:
- Added Ultra Elm Chest Boat, Ultra Ginkgo Chest Boat, Ultra Jungle Chest Boat, Blue Berry Wood Chest Boat, Green Berry Wood Chest Boat, Pink Berry Wood Chest Boat, Purple Berry Wood Chest Boat, Red Berry Wood Chest Boat and Yellow Berry Wood Chest Boat.
- Added Gimmighoul Coin.
## Sounds:
- Added new voices: Alomomola, Bunnelby, Cacnea, Cacturne, Castform, Cherubi, Comfey, Dedenne, Diancie, Flabebe, Floette, Florges, Furfrou, Gothita, Gothorita, Gothitelle, Inkay, Luvdisc, Mandibuzz, Maushold, Mawile, Morpeko, Ogerpon, Pyukumuku, Roselia, Salandit, Salazzle, Sandy Shocks, Shieldon, Shuckle, Sinistcha, Sinistea, Slurpuff, Smeargle, Snorunt, Swirlix, Swoobat, Tandemaus, Togedemaru, Vanillish, Vanillite, Vanilluxe, Vullaby, Wishiwashi, Woobat, Zigzagoon, Fezandipti, Boltund, Eldegoss, Enamorus, Greavard, Mr. Rime, Natu, Okidogi, Pincurchin, Rabsca, Rellor, Spidops, Tarountula and Xatu.
- Updated voices: Guzzlord, Kyogre, Deerling, Flamigo, Gardevoir, Hoppip, Kirlia, Shinx, Shroomish, Shaymin, Sunflora, Sunkern, Zigzagoon, Zorua, Cetoddle, Charcadet, Tinkatink, Bonsly and Tinkatuff.
## Structure:
- Added meteorite.
## Datapack:
- Added Growths as a datapack registry.
- Each Pokémon JSON now has a "mean" and a "standard deviation" defining the distribution of their size.
- Added datapack abilities for additional Size categories (growth).
- Updated all species to include `growth_data` in forms.
- Added recipes for Pixelmon Chest Boats.
- Added Recipe Book advancement for Pixelmon Chest Boats.
- Renamed `crafted_gingko_blocks` to `crafted_ginkgo_blocks` tag.
- Added the `chest_boats` tag.
- Added new interaction events: pixelmon:npc_engage, pixelmon:on_cooldown, pixelmon:set_cooldown, pixelmon:context_player, pixelmon:win_battle, pixelmon:lose_battle, pixelmon:draw_battle, pixelmon:can_battle and pixelmon:defeat_trainer.
- Added new interaction results: pixelmon:unlock_dynamax, pixelmon:close_screen, pixelmon:open_professor_dialogue, pixelmon:unlock_mega_evolution and pixelmon:delay_result.
- Added several blocks and block tags to the `mineable/axe` tag so they can be mined faster with axes.
- Added new block tags for Pixelmon furniture and Berry Wood blocks.
- Added 100-500 Gimmighoul Coins as a guaranteed drop to Gholdengo.
- Updated evolution conditions for Magneton, Qwilfish, Nosepass, Charjabug and Crawbrawler.
## Research:
- Added collection-style UI widget with ability to set sprites for a resource and offset item position.
- Added sprite colouring in Research tasks.
- Added Professor Wisteria to research updates.
- Added Mega Evolution research.
- Added Dynamax research.
- Added capture Pokémon type research.
- Added craft type research.
- Added defeat boss type research.
- Added enter dimension type research.
- Added evolve type research.
- Added harvest type research.
- Added hatch type research.
- Added active item type research.
- Added level up type research.
- Added mine type research.
- Added spin Pokéstop type research.
- Added defeat Raid type research.
- Added find structure type research.
- Added seasonal research: Christmas, Pixelmon's Birthday, New Year and Valentine's Day.
## Spawning:
- Updated Luvdisc fishing and spawn loot to remove unused items.
- Added Bombirdier to River, Lakes, and Beaches during the Day on Land and Air with an anticondition of Freezing biomes and Mountainous biomes rarely.
- Added Gimmighoul Chest form to Jungle Pyramids, Desert Pyramids, Haunted Towers, Graveyards, and Ruined Portals on Land, Indoors, and Underground at All Times.
- Added Gholdengo to Ultra Desert at All Times.
- Added Great Tusk to Small End Islands at All Times.
- Added Kilowattrel to Beaches with an anticondition of Freezing during the Day in the Air. Added chance to spawn with a group of Wattrel.
- Added Klawf to Stone Beach and Mesas on Land during the Day.
- Added Rabsca to Arid, Mesas, and Savannas on Land at All Times.
- Added Rellor to Arid, Mesas, and Savannas on Land at All Times.
- Added Sandy Shocks to Small End Islands at All Times.
- Added Squawkabilly to Jungles during the Day in the Air and on Tree Top. Added chance to spawn with a group of Squawkabilly. Some colors are rarer than others.
- Added Wattrel to Beaches with an anticondition of Freezing during the Day in the Air, Land, and Tree Top. Added chance to spawn with a group of Wattrel.
- Added Spirit palette Iron Valiant to Graveyards at Night on Land or Manmade.
- Added Iron Hands to Small End Islands on Land at All Times.
- Added Iron Treads to Small End Islands on Land at All Times.
- Updated old spawning NPCs to the new NPC system, including Chatting, Fisherman, Nurse Joy, Relearner, Shopkeeper, Trader, Trainer and Tutor.
- Added Rellor, Rabsca, Wattrel, Kilowattrel, Spidops, Tarountula, Bombirdier, Gimmighoul (chest), Great Tusk, Iron Treads, Sandy Shocks, Iron Hands, Brute Bonnet, Iron Jugulis, Iron Valiant, Iron Bundle, Roaring Moon, Squawkabilly, Finizen, Palafin, Maschiff, Mabosstiff, Farigiraf, Flamigo, Ting-Lu and Gholdengo to tiered, biome-specific raids.
- Added support for Alex' Caves spawning.
- Added support Biospherical Expansion spawning.
- Added support for Mystic's Biomes spawning.
#### Changes:
- Removed old Quest system.
- Removed old Quest screens.
- Removed functionality of the old Quest Editor wand.
- Added summary TM section for Generation 9 moves.
- Added move description scrollbar for moves with long descriptions.
- Updated Heavy Ball catch mechanics to modern calculations.
- Updated Friend Balls to their Generation 8+ friendship boost.
- Updated the Poke Checker (summary screen) to display size and the growth sprite.
- Updated the PC screen to display size and the growth sprite.
- Updated the capture method to use Generation 8 mechanics.
- Updated pre-Growth rework Pokémon stored data to include a randomly assigned Size.
- Updated summary UI in PC by swapping a Pokémon's species name for its level.
- Removed megaring mechanic being unlocked via defeating a Mega Boss, replaced by Mega Evolution Research.
- Updated Pixelmon Rug colors to match wool textures.
- Updated Revenant to block Destiny Bond if it has at least one life left.
#### Fixes:
- Fixed a crash caused by the client attempting to update server details.
- Fixed the scrollbar on TM lists rendering strangely.
- Fixed Blank TMs failing to work with Klutz Pokémon.
- Fixed nature syncing curries not working properly.
- Fixed an instance where Black Sludge could deal damage for less than it should have.
- Fixed Poké Balls failing to receive catch penalties when capturing Ultra Beasts.
- Fixed Nest Balls catch formula.
- Fixed Lure Balls failing to boost properly Pokémon caught via Fishing Rod.
- Fixed Fishing Rod not applying the chance for a Fishing mark on catch.
- Fixed Fishing Rod-spawned Pokémon having Fishing-exclusive bonuses lost on flee and subsequent rebattle.
- Fixed the drop shadow of the nickname text in the PC being set to a dark gray color.
- [21384](https://pixelmonmod.com/tracker.php?p=2&t=21384) Fixed Pokémon displaying move skills they should not have by improving code quality.
- [18939](https://pixelmonmod.com/tracker.php?p=2&t=18939) Fixed Poke Displays breaking consistency of a stored Pokémon's form and palette.
- Fixed the Pixelmon Camera failing to take pictures.
- Fixed rendering of Mega Items.
- Fixed rendering of Sableye Hat, Frosslass robe and Yukata.
- [21311](https://pixelmonmod.com/tracker.php?mode=reply&p=2&t=21311) Fixed an issue where using the Griseous Core to change Giratina's form to Origin would cause the form to be restored to Altered by other non-Griseous Orb held items.
- Fixed using a Porygon item while in creative consuming said item.
- Fixed using a Porygon item spawning on top of the player instead of on the position clicked.
- [22145](https://pixelmonmod.com/tracker.php?p=2&t=22145) [21985](https://pixelmonmod.com/tracker.php?p=2&t=21985) Fixed Paldean Blank TMs disappearing upon completion.
- Fixed Bikes eating as if they are horses.
- Fixed the PC failing to open in rare cases upon first login or world creation.
- Fixed hover and pop-up information not clearing on release in PC.
- Fixed a rare crash caused by right-clicking on an empty Pokémon slot in inventory.
- Fixed a rare client crash caused by refreshing the multiplayer menu.
- Fixed Pokébags being allowed to leave a player's inventory if the container is open.
- Fixed shiny Hero Palafin sprite.
- Fixed shiny Revavroom sprite.
- [21238](https://pixelmonmod.com/tracker.php?p=2&t=21238) Fixed Dudunsparce model and textures.
- Fixed Ultra Necrozma model.
- [19409](https://pixelmonmod.com/tracker.php?p=2&t=19409) Fixed Solrock animation.
- [18571](https://pixelmonmod.com/tracker.php?p=2&t=18571) Fixed Rocket Helmet's stray pixel in layer texture.
- Fixed shiny Iron Jugulis sprite.
- Fixed cosmetic textures not loading properly for the Witch hat, Articuno Wings and Valentine's Wings.
## Battles:
- Fixed Incinerate not being in the list of moves that can remove berries.
- Fixed Stuff Cheeks disabling improperly if the Pokémon that new Stuff Cheeks was not holding a berry.
- Fixed a bug where Pokémon afflicted by Corrosive Gas could use their items once again after they had switched out.
- Fixed a bug where it was possible to give a Pokémon a Rusted Sword or Shield via a move when Zacian or Zamazenta was on the field.
- Fixed Pokémon that stole a Life Orb with Thief not taking damage from the Life Orb at the end of the turn.
- Fixed G-Max Replenish incorrectly calculating the recovery of berries in allied battle.
- [21986](https://pixelmonmod.com/tracker.php?p=2&t=21986) Fixed waiting bug when using Flee moves against a trainer's final Pokémon.
## Language:
- Updated Traditional Chinese translation.
#### Developer:
- Added ShrineOrbFillEvent.Pre/Post.
- Added LureActivateEvent.Pre/Post.
- Added BerryEvent.Pick.
- Added ResearchStartEvent.Pre/Post.
- Added ResearchStageCompleteEvent.
- Added ResearchDiscardEvent.Pre/Post.
- Added ResearchCompleteEvent.
- Added ProgressResearchStageEvent.Pre/Post.
- Added ProgressResearchObjectiveEvent.Pre/Post.
- Added ClaimResearchStageEvent.Pre/Post.
- Added ClaimResearchObjectiveEvent.Pre/Post.
- Added RegisterScreenStylesEvent.
- Added PlayerCakeEatEvent.
- Added PlayerCraftItemsEvent.
- Removed AbandonQuestEvent.
- Removed FinishQuestEvent.
- Removed NPCInserterEvent.
- Removed QuestActionEvent.
- Removed QuestObjectiveEvent.
- Removed QuestStageEvent.
- Added HeldItem.ignoresKlutz method to allow custom held items to be used by Klutz Pokémon.
- Added PixelmonGrowths registry class.
- Added PokemonBuilder#size.
- Removed PokemonBuilder#growth.
- Added Pokemon#getSize.
- Added Pokemon#setSize.
- Updated the functionality of Pokemon#setGrowth to pick a random number in the range of that growth's defined range.
- Removed CorrosiveGas status usage.
- Removed PlayerParticipant#getTeamPokemonList in favor of BattleParticipant#getTeamPokemon.
- Added placeholders to ContextKeys.
- Added PlaceholerCollectEvent, extending support for FPAPI and PAPI.
- Implemented placeholder support in certain InteractionConditions.
#### Additions:
## Pokémon:
- Added Iron Treads.
- Added Iron Hands.
- Added Great Tusk.
- Added Wattrel.
- Added Kilowattrel.
- Added Rellor.
- Added Rabsca.
- Added Squawkabilly.
- Added Gimmighoul.
- Added Gholdengo.
- Added Sandy Shocks.
- Added Bombirdier.
- Added Klawf.
## Palettes:
- Added 'spirit' Iron Valiant.
## Items:
- Added TM171-TM223 for all existing moves.
## Sounds:
- Added new voices: Alomomola, Bunnelby, Cacnea, Cacturne, Castform, Cherubi, Comfey, Dedenne, Diancie, Flabebe, Floette, Florges, Furfrou, Gothita, Gothorita, Gothitelle, Inkay, Luvdisc, Mandibuzz, Maushold, Mawile, Morpeko, Ogerpon, Pyukumuku, Roselia, Salandit, Salazzle, Sandy Shocks, Shieldon, Shuckle, Sinistcha, Sinistea, Slurpuff, Smeargle, Snorunt, Swirlix, Swoobat, Tandemaus, Togedemaru, Vanillish, Vanillite, Vanilluxe, Vullaby, Wishiwashi, Woobat, Zigzagoon, Fezandipti, Boltund, Eldegoss, Enamorus, Greavard, Mr. Rime, Natu, Okidogi, Pincurchin, Rabsca, Rellor, Spidops, Tarountula and Xatu.
- Updated voices: Guzzlord, Kyogre, Deerling, Flamigo, Gardevoir, Hoppip, Kirlia, Shinx, Shroomish, Shaymin, Sunflora, Sunkern, Zigzagoon, Zorua, Cetoddle, Charcadet, Tinkatink, Bonsly and Tinkatuff.
## Datapack:
- Updated all species movesets to Generation 9.
- Updated all TMs to include Generation9 and DLC TMs.
- Added Gimmighoul evolution method by Linking Cord while holding an Amulet Coin.
- Added Paldean Generation 9 Blank TM to Master Poké Chest drops.
- Added Paldean TMs Chilling Water, Pounce, Trailblaze and Tera Blast to dungeon loot pools.
## Spawning:
- Updated Luvdisc fishing and spawn loot to remove unused items.
- Added Bombirdier to River, Lakes, and Beaches during the Day on Land and Air with an anticondition of Freezing biomes and Mountainous biomes rarely.
- Added Gimmighoul Chest form to Jungle Pyramids, Desert Pyramids, Haunted Towers, Graveyards, and Ruined Portals on Land, Indoors, and Underground at All Times.
- Added Gholdengo to Ultra Desert at All Times.
- Added Great Tusk to Small End Islands at All Times.
- Added Kilowattrel to Beaches with an anticondition of Freezing during the Day in the Air. Added chance to spawn with a group of Wattrel.
- Added Klawf to Stone Beach and Mesas on Land during the Day.
- Added Rabsca to Arid, Mesas, and Savannas on Land at All Times.
- Added Rellor to Arid, Mesas, and Savannas on Land at All Times.
- Added Sandy Shocks to Small End Islands at All Times.
- Added Squawkabilly to Jungles during the Day in the Air and on Tree Top. Added chance to spawn with a group of Squawkabilly. Some colors are rarer than others.
- Added Wattrel to Beaches with an anticondition of Freezing during the Day in the Air, Land, and Tree Top. Added chance to spawn with a group of Wattrel.
- Added Spirit palette Iron Valiant to Graveyards at Night on Land or Manmade.
- Added Iron Hands to Small End Islands on Land at All Times.
- Added Iron Treads to Small End Islands on Land at All Times.
- Updated Dondozo from Rivers and Lakes spawning to Oceanic biomes.
## Structures:
- Updated Abandoned Mine Shaft, Hoglin Stables Bastion, Boat, Crate Geyser, Plant Monolith, Village Butcher and Village Cartographer loot chests, removing unused items.
#### Changes:
- Improved Rainbow Sash color cycle.
- [21862](https://pixelmonmod.com/tracker.php?p=2&t=21864) Removed chunk habitation time limit on Zygarde Cells and Core spawning.
- Updated Revenant's Pressure to be twice as strong as regular Pressure.
- Updated raid drops, removing unused items.
- Updated poke drops, removing unused items.
- Updated rug colors to match the wool colors more accurately.
- Updated shiny Revavroom sprite.
- Updated 'hero' form shiny Palafin sprite.
- Added evolving method for Charjabug and Magneton by leveling them in a Mountain/Windswept Hills biome.
- Added Thunder Stone evolution for Nosepass.
- Added Ice Stone evolution for Crawbrawler.
- Removed Water Stone evolution for Hisuian Qwilfish.
- Updated the icon in taskbar and window of application to standard (non-spooky) Pixelmon icon.
#### Fixes:
- [21932](https://pixelmonmod.com/tracker.php?p=2&t=21932) [21941](https://pixelmonmod.com/tracker.php?p=2&t=21941) Fixed wild caught Pokémon changing abilities when evolving.
- Fixed vibrancy for Colored Sash and Rainbow Sash accessories.
- [21951](https://pixelmonmod.com/tracker.php?p=2&t=21951) Fixed Colored Sash color-setting.
- Fixed storage gets not being thread safe, fixing issues of MissingNo replacing Pokémon randomly.
- Fixed error in Pokemon Builder.
- [18939](https://pixelmonmod.com/tracker.php?p=2&t=18939) Fixed Poké Display not properly defaulting to original form and palette fields.
- Fixed Gastly particles overwhelming its model, now spawning behind the orb and away from its facing direction.
- [21384](https://pixelmonmod.com/tracker.php?p=2&t=21384) Fixed Pokémon having move skills they cannot use and should not have.
- Fixed the Pokédex set value setting the wrong Pokédex.
- [19409](https://pixelmonmod.com/tracker.php?p=2&t=19409) Fixed visual issue with Solrock's idle animation.
- [18571](https://pixelmonmod.com/tracker.php?p=2&t=18571) Fixed visual issue of a stray pixel in the Rocket Armor texture.
- [21475](https://pixelmonmod.com/tracker.php?p=2&t=21475) Fixed erroneous entry for a missing texture on 'ashen' Mega-Houndoom, pointing it back to its base texture.
- [13324](https://www.pixelmonmod.com/tracker.php?p=2&t=13324) Fixed Stufful's ability description being too long for the summary UI.
- [19971](https://pixelmonmod.com/tracker.php?p=2&t=19971) Fixed Hisuian Typhlosion's hitbox height.
- Fixed Beedrill's floating parameters so it's no longer on the ground's surface.
- [21475](https://pixelmonmod.com/tracker.php?p=2&t=21475) [22114](https://pixelmonmod.com/tracker.php?p=2&t=22114) Fixed temporary palette reversion when a Pokémon mega-evolves, dynamaxes, or otherwise temporarily updates it's battle form.
- Fixed an error on TCG fallback card loading.
- Fixed Blaziken's texture UV.
- [21238](https://pixelmonmod.com/tracker.php?p=2&t=21238) Fixed Dudunsparce texture.
## Battles:
- Fixed Revenant not blocking Destiny Bond from being applied to a Pokémon if it has at least one life left.
- Fixed Destiny Bond no longer sending a message twice when not applied.
- [21970](lmonmod.com/tracker.php?p=2&t=21970) Fixed Mirror Armor causing a crash in singleplayer when self-applied.
- Fixed max HP value not being recalculated after temporary level is set, fixing issues where battle rules change the Pokémon's level without updating its HP.
- [22134](https://pixelmonmod.com/tracker.php?p=2&t=22134) Fixed a rare crash caused by Ditto failing to Transform properly into non-default capable species.
#### Developer:
- Added `PokemonStorage#forEach` method, and implementations for each kind of storage.
- Updated ServerSwapPacket to send update packets for the whole storage when it ends up in its error state.
- Added Ability interface method allowsStatusOpponent.
**"There are DOZENS of us, DOZENS!"**
## Additions:
- Added the griseous core, lustrous globe, and adamant crystal
- Added origin dialga
- Added origin palkia
##### New Pokémon:
- Added Hisuian Typholosian
- Added Hisuian Sneasel
- Added Sneasler
- Added Ursaluna
- Added Kleavor
## Changes:
- Ghost Pokémon now drop Psychic essence instead of Darkness essence.
## Fixes:
- Enamorus was not marked as being a legendary Pokémon .
- Fixed the usage message for the `/setraid` command
- Fixes LoA Pokémon not showing up in the pokedex and caught Pokémon counts.
- Fixed shiny reshiram sprite
- Change Ghost pokemon to drop Psychic essence instead of Darkness essence.
##### Battle Fixes:
- Fixed NPE issues with null attacks
- Make silvally's multi attack use the type of the memory it holds while dynamaxed
- Force OHKO moves and moves that fail in a raid to use PP.
- Prevent Max Moves from having their overridePower reset while the AI tries to calculate the best move.
- Don't allow the holder of a Shell Bell to heal from damage originating from them.
- Make sure that if moveAccuracy can't miss we don't change it.
- Prevent player collecting money from Pay Day if they catch the Pokemon, flee, black out, or fight a player or raid.
- Add the Freeze effect to Freeze-Dry's json.
- Make Dynamaxed Pokemon take 10% of non-Dynamax HP damage from Life Orb.
- Prevent Pokemon from regaining health after damaging themselves.
- Make Pokemon that were switched out and then switched back in during the same turn able to use Fake Out the next turn.
- Fix recoil with Magic Guard and no recoil when missing.
- Fix HP restore berries only healing the Pokemon whose current turn it is.
- Make Substitute stop popping the Substitute user's Air Balloon.
- Add onGlobalStatusAdded method and apply it to Room Service.
- Add Helping Hand to list of moves that can't be reflected.
- Fixes multiple hit moves calculating accuracy for each hit.
- Fix default crit chance and rerolling crit chance to determine if the attack already crit.
- Fix Max and G-Max Moves not depleting pp from the original move.
- Make Dragon Energy hit the opponents at the same time.
- Fix Max Moves doing zero damage to allies in raids.
- Make Encore and Taunt subtract the turn count on the statused Pokemon's turn.
- Remove message to player saying the opponent's attack failed when it did not
- Fix the abilities that modify types so that they work in double battles.
- Prevent Pokemon immune to certain statuses being given said statuses
- Fix moves that affect all teammates so that they affect the 3rd teammate in raids.
- Fix Bolt Beak and Fishious Rend not dealing double damage to Pokemon switching in.