Pixelmon
Pixelmon adds many aspects of the Pokémon into Minecraft, including the Pokémon themselves, battling, trading, and breeding. Pixelmon also includes an assortment of new items, including prominent items like Poké Balls and TMs, new resources like bauxite ore and Apricorns, and new decorative blocks like chairs and clocks.
830.6k
256
Adventure
Decoration
World Generation
Compatibility
Minecraft: Java Edition
1.20.1–1.20.2
1.16.5
1.12.2
Platforms
Forge
Supported environments
90% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
Licensed ARR
Published 2 years ago
Updated 2 weeks ago
Changelog
"1.20.2 (Alpha 7)"
- The Java requirement for 1.20.2 is Java 17. This will come shipped with most launchers. For manual installation, you may need to install a later JRE.
- The minimum Forge version for this update is 48.1.0 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.
Additions:
- Added Health Mochi.
- Added Muscle Mochi.
- Added Resist Mochi.
- Added Genius Mochi.
- Added Swift Mochi.
- Added Fresh-Start Mochi.
- Added Red Nectar.
- Added Yellow Nectar.
- Added Purple Nectar.
- Added Pink Nectar.
- Added Metal Alloy.
Pokémon:
- Added Pikachu Libre.
- Added Tarountula.
- Added Spidops.
- Added Finizen.
- Added Palafin.
- Added Palafin 'Hero'.
- Added Roaring Moon.
- Added Wo-Chien.
- Added Ting-Lu.
- Added Miraidon.
- Added Koraidon.
Cosmetic Palettes:
- Added Spring palettes: Sprigatito, Floragato and Meowscarada.
- Added Summer palettes: Sprigatito, Floragato and Meowscarada.
- Added Autumn palettes: Sprigatito, Floragato and Meowscarada.
- Added Winter palettes: Sprigatito, Floragato and Meowscarada.
Moves, Battle Items and Abilities:
- Added Fairy Feather.
<details> <summary>Click to view new battle tests</summary>
- Added Ancient Power tests. - Added Make it Rain tests. - Added Fairy Feather tests. - Added Burning Bulwark tests for Z/Max moves, Unseen Fist and Feint. - Added Baneful Bunker tests. - Added Crafty Shield tests. - Added Endure tests. - Added King's Shield tests. - Added Mat Block tests. - Added Max Guard tests. - Added Obstruct tests. - Added Quick Guard tests. - Added Silk Trap tests. - Added Spiky Shield tests. - Added Wide Guard tests. - Added Toxic Debris tests. </details>
Spawning:
- Added Sprigatito, Floragato and Meowscarada 'Spring' to Flowery biomes.
- Added Sprigatito, Floragato and Meowscarada 'Summer' to Forest biomes.
- Added Sprigatito, Floragato and Meowscarada 'Autumn' to Taiga biomes.
- Added Sprigatito, Floragato and Meowscarada 'Winter' to Freezing Forest biomes.
- Added Finizen to Ocean, Deep Ocean, Warm Ocean, Lukewarm Ocean, Deep Lukewarm Ocean during the Day. Added chance to spawn with a group of Finizen.
- Added Palafin to Ocean, Deep Ocean, Warm Ocean, Lukewarm Ocean, Deep Lukewarm Ocean during the Day. Added guaranteed chance to spawn with a group of Finizen.
- Added Koraidon to Small End Islands during the Day on Land.
- Added Miraidon to Small End Islands during the Day on Land.
- Added Roaring Moon to Small End Islands on Land.
- Added Ting-Lu to Taigas at Night on Land.
- Added Wo-Chien to Swamps at Night on Land.
- Added Tarountula to All Forests on Land and in Tree Top during Day.
- Added Spidops to All Forests on Land and in Tree Top during Day.
- Added new biomes to the Raid spawning parameters.
- Added recently added Pokémon as valid Raid spawns.
Datapack:
- Added the "pixelmon:swimming" model predicate.
- Added the "flying_or_swimming" property to the RidingModelPredicate to dictate a riding model that only displays when the Pokemon is either flying or swimming but also being ridden.
- Updated the flying model predicate checks.
- Added "partial" spawn-replacement.
- Added Finizen and Palafin as spawn replacements to dolphins.
- Added "bypass" and "field" move flags.
Changes:
- Reworked the PC display:
- Removed the "release bin":
- To release Pokemon from your PC you now right-click it and press the "release" button.
- Added a "hot key" tool bar, and removed the sprites on the bottom right of the screen:
- The toolbar is now click-able rather than being just hot keys.
- The toolbar will also tell you the hot key when you hover over it.
- Added multi-box view mode:
- You can now view, and modify, 18 boxes at once.
- Right-clicking a box picks it up, allowing for quick swapping of boxes.
- Press TAB to enter this screen, or use the button in the tool bar.
- Press TAB a second time to exit, or use the button in the tool bar again.
- If you're holding a Pokemon and press TAB then you will still be holding that Pokemon (or multiple Pokemon) in the multi-select mode, allowing you to quickly move them from one box to another one.
- If you use the arrow keys you can move around the boxes on the screen.
- If you hold control and use the arrow keys you can move along 18 boxes.
- Added multi-select mode:
- This mode allows you to pick up multiple Pokemon at a time by selecting an area in the box.
- You can enter this by pressing the Q key, or using the button on the hot bar.
- Pressing the Q key a second time will put you in held item mode.
- Finally, pressing the Q key a third time will return you to standard interaction mode in the PC.
- If you click and then drag you will select all the Pokemon in the area you create.
- If you hold control and then click Pokemon it will select the individual pokemon you select.
- Pressing control + a will select the whole box
- Added held item mode:
- This mode allows you to quickly and easily move held items between Pokemon.
- You can enter this by pressing the Q key twice, or using the button on the hotbar.
- You exit this mode by pressing the Q key again.
- Shift clicking a Pokemon wit a held item adds the item to inventory, if possible.
- Added an "Advanced Search" menu:
- You can access this screen by pressing the S key, or using the search button on the hot bar, and then pressing the search button to the right of the search box.
- This mode gives you some verbose filter options
- Added a "sort box" option:
- This is not bound to a key by default but is accessible via the hotbar.
- This allows you to sort the current box you're looking at by two types (expandable via sidemod) .
- Dex
- Shiny
- Added the ability to undo operations in the PC:
- You do this using the key bind:
control + z
.
- You do this using the key bind:
- Added the ability to re-do operations in the PC:
- You do this using the key bind:
control + y
.
- You do this using the key bind:
- Added two panels displaying information about the Pokemon you're currently holding your mouse over:
- The left display shows:
- Species
- PokéBall
- Sprite
- Form
- Palette
- Moves
- Type Icon(s)
- Held Item Sprite
- The right display shows:
- A stat hexagon with the EVs
- A stat hexagon with the IVs
- The IV numbers
- Ability
- Nature
- Growth
- Ribbons
- The left display shows:
- Added key bind: a to go to the previous page.
- Added key bind: d to go to the next page.
- Added key bind: control + tab to alternate between boxes.
- Added
pc_sorting_logic_type
registry for adding custom sorting type logic. - Allows you to open other player's PCs using
/pc
. - Allows offline PC access via
/pc
. - Updated the PC command to allow opening other player's PCs.
- Updated the PC command to allow opening offline player's PCs.
- Removed the "release bin":
- Added first person POV in battles:
- Pressing "F1" during battle will toggle the visibility of the battle UI.
- The
toggleBattleUserInterface
key cycles between 50% transparency of the background, 100% transparency of the background, showing only the HP of the Pokemon, and completely hiding the battle UI.
- The
- Pressing "F5" during battle will toggle the battle perspective.
- The
toggleBattlePerspective
key cycles between the 3rd person Battle Camera POV, 1st person Player Model's POV, and the 1st person POV of the Player's Pokemon.- The POV state is remembered after battles, so you can stay in 1st Person mode without having to keep re-enabling it.
- The
- Pressing "R" allows the player to move freely outside of the battle while the Pokemon stay in the battle.
- Attempting to retrieve the Pokemon that is in the battle will re-enter the player into the battle.
- The player can send out other Pokemon, but they can't start another battle.
- If the player gets beyond a maximum distance from the battle, the battle will end. The player and any teammates will be designated as having forfeited.
- The default value is 30 blocks and can be set in the config with the
max-distance-players-can-move-away-from-battles
value. - 10 blocks before the player reaches that point, a message will pop up on the hotbar warning the player and a vignette will appear that fades the player's screen deeper into orange.
- This setting can be edited in the config via the
min-distance-before-warning-vignette
value.
- This setting can be edited in the config via the
- The default value is 30 blocks and can be set in the config with the
- Battles now have a Battle Rule that can deny allowing players to move about freely during a battle.
- An On/Off button has been added to the Battle Rules menu to adjust this.
- There are also 4 config options in the Battle Config to allow/deny players this:
players-can-move-during-pv-p-battles
for battles with at least 1 player on each team (defaults to true)players-can-move-during-wild-battles
for battle with at least 1 Wild Pokemon on a team (defaults to true)players-can-move-during-trainer-battles
for battle with at least 1 NPC Trainer on a team (defaults to true)players-can-move-during-raid-battles
for Max Raid Den battles (defaults to false)
- The buttons to activate the above features have been added as key binds to Minecraft's Controls->Key Binds menu so that the default key bind can be changed.
- Pressing "F1" during battle will toggle the visibility of the battle UI.
<details> <summary>Click to view safeguards against new POV battle mode</summary>
- Using the Poke Editor or a PC will forfeit the battle while in 1st person POV battle mode.
- Using a PC is disabled while in 1st person POV battle mode.
- Using a Healer or Nurse Joy is disabled while in 1st person POV battle mode.
- Trying to learn moves from a NPC Relearner or Move Tutor is disabled.
- Trying to trade with an NPC Trader or interact with a Trade Machine is disabled while in 1st person POV battle mode.
- Raid Dens are disabled from interaction while in 1st person POV battle mode.
- Poke Displays, Day Cares, Cloning Machines, retrieving the Pokemon from a Fossil Machine, Zygarde Reassembly Units, and TCG Arenas are disabled while in 1st person POV battle mode.
- Changing a Rotom's form through furniture is disabled while in 1st person POV battle mode.
- Using items on Pokemon is disabled to prevent evolving, form changing, leveling up, or increasing the strength of your other Pokemon while in 1st person POV battle mode.
- The Explode move skill is disabled while in 1st person POV battle mode.
- The Heal move skill is disabled while in 1st person POV battle mode.
- Trainers can no longer be edited by NPC Editors while in 1st person POV battle mode.
- The
/pc
command is disabled while in 1st person POV battle mode.
</details>
- Added validation to the EV & IV text editor widgets so that you are no longer guessing as to what values you can and cannot put in there:
- This prevents any value that is not an integer in the EV/IV text boxes.
- This prevents any value not in the range 0 < x < 31 for the IV text boxes (sets text to red).
- This prevents any value not in the range 0 < x < 252 in the EV text boxes (sets text to red).
- It validates the EV value and if you've reached the max IV count (510) then it prevents input (sets text to red).
- Changed the Camera item to no longer require Film to take pictures while in creative mode.
- Updated battle logs to include the AI's top decisions on what action it'll take per turn recorded.
- Removed the max party level check from the player's spawning to allow higher level parties to have Pokémon spawns in the world.
Config:
- Split
config.yml
into multiple files in order to make changing config options easier:afk_handler.json
debug.yml
drops.yml
healing.yml
ore_color.yml
outside_effects.yml
riding.yml
pokedollars.yml
pokerus.yml
server_discord.yml
tms.yml
- Split the
spawning.yml
config into multiple files so that it is easier to navigate the spawning config options, moving sub-configs into/config/pixelmon/spawning
:boss.yml
general.yml
legendary.yml
level_distance.yml
meltan.yml
poke_loot.yml
pokestop.yml
ultra_space.yml
wild.yml
Fixes:
- 21743 Fixed a client crash caused by using Mojang's random source.
- 21740 Fixed the Arc Chalice not producing Arceus with plates.
- Fixed the PokéDisplay's animations not working.
- Fixed the Zygarde Cells not disappearing after a configurable amount of time.
- 21689 Fixed server hang caused by bee replacement logic by using a method that does not generate new chunks.
- Fixed dark background rendering over the trainer card.
- 21704 Fixed a client crashed caused by client-side balances being null.
- Fixed Pixelmon Spawners picking moves inappropriate to the spawn's level.
- Fixed bosses from Pixelmon Spawners not having shader highlighting.
- Fixed Pixelmon Spawners not persisting settings across launches.
- Fixed Blank TMs to account for tag existence for 00 moves.
- 21180 Fixed the fishing hook entity sending the wrong type of entity add packet to the client.
- Fixed a crash caused by Pokéballs going through End and Nether portals.
- Fixed the Pokémon sprite not rendering in the Reassembly Unit's menu.
- Fixed the level and HP values not rendering in the Reassembly Unit's menu.
- Fixed the Reassembly Unit's buttons rendering as bright white instead of matching the style of the rest of the menu.
- Fixed camera's using up Film while in creative mode.
- 21485 Fixed the override textures not working for statues.
- 21610 Fixed animation type fly not being settable on statues.
- Fixed permission checks not working.
- 20210Fixed TMs/TRs failing to drop when rewarded from a Raid.
- Fixed the description for the wiki command when getting evolution info on Primeape and Tandemaus.
- Fixed the background of cards in the TCG Card Compendium not rendering when the mouse was not hovered over them.
- Fixed the HP, name, weakness and resistance text, ability name, ability description, and other certain effect descriptions not rendering above the background of a hovered card while using the Card Compendium.
- Fixed the Celebi quest failing to give a Gold Hourglass as a reward.
- Fixed crafting PC quests failing to work with any PC, now defaulting to red PCs.
- Fixed crafting Healer quests failing to work with any Healer, now defaulting to red Healers.
- Fixed Pokémon cries failing to play properly.
- Fixed the TCG Cards for the Full Heal, Potion, Super Potion, Revive, and Max Revive having their illustration missing.
- Fixed Poké Display to stop sending previously stored Pokémon to the PC if party is full when swapping Pokémon.
- Fixed the flying persistent goal still moving the entities up and down during battle causing the camera to glitch.
- Fixed the z-level issues when rendering items in the PC screen.
- Fixed the Pokédisplay packet erroring when modifying a display.
- Fixed the animate button in the Pokédisplay not functioning.
- Fixed the Pokédisplay update packet being abusable to edit any display anywhere.
- Fixed Charmander's model sitting below the ground level.
- Fixed the break particles on the Pokédisplay.
- Fixed the break particles on the cloning machine, adding the SMD texture back.
Battles:
- 21724 Fixed the battle rules screen not rendering properly.
- 21724 Fixed pressing the battle rules button causing a client disconnect.
- 21350 Fixed Ancient Power boosting stats before doing damage.
- 21348 Fixed Make it Rain reducing special attack on unsuccessful attacks.
- Fixed Shield Dust and Covert Cloak preventing Ancient Power boosts.
- Fixed PP-Up not boosting PP until all 3 have been used.
- Fixed Hyperspace Fury being usable by Pokémon other than Hoopa-Unbound.
- Fixed Hyperspace Fury and Hyperspace Hole not changing into each other on Hoopa form change.
- Fixed Pickpocket stealing Protective Pads.
- Fixed Baneful Bulwark, King's Shield, Obstruct, Silk Trap, and Spiky Shield inflicting effects on Protective Pads and Long Reach Pokémon.
- Fixed Gear Up, Magnetic Flux, and Flower Shield to not bypass Max Guard.
- Fixed damaging Z-moves and Max Moves being reduced by incorrect Protect types (Quick Guard, Crafty Shield, Wide Guard, etc).
- Fixed damaging Z-moves and Max Moves being fully blocked by Mat Block.
- Fixed Feint not removing non-base and non-team enemy Protect variants.
- Fixed Feint not removing allied removable Protect variants.
- Fixed Feint not resetting protect count.
- Fixed Protect moves blocking allied Feint moves.
- Fixed Protect moves failing to block non-max moves from a Dynamax’d user.
- Fixed Quick Guard only blocking moves with a base priority.
- Fixed Quick Guard not blocking Z-status moves with an increased priority.
- Fixed Obstruct blocking Status moves.
- Fixed Wide Guard not blocking spread status moves.
- Fixed Wide Guard not blocking Expanding Force on Psychic Terrain.
- Fixed Crafty Shield not resetting repeated Protect chance.
- Fixed Mat Block blocking Feint/Vanish effects.
- Fixed Judgement Legend Plate Dynamax move erroring in console.
- 21224 Fixed Purifying Salt not ignoring Mold Breaker and Mycellium Might.
- 21347 Fixed Toxic Debris not ignoring Mold Breaker.
- 21347 Fixed Toxic Debris not placing a correct layer of Toxic Spikes on opponents when hit by an ally.
- 21347 Fixed hazards not applying additional layers correctly in Doubles.
- 21073Fixed Rising Voltage boosting power inappropriately.
- Fixed Gravity reducing evasion instead of boosting move accuracy.
- Fixed a Raid opponent's max moves being restored to 0 power after use.
- Fixed Aurora Veil and Gear Up to be hitsAll moves.
Developer:
- Added
PokemonStorage#open
.- This hides the track, and initialize, calls to simplify opening another player's PC.
- This will also retrieve all the Pokemon from the world for the player's party.
- This also means you don't need NetworkHelper calls in code anymore, or the OpenScreenPacket.
- Added
PokemonStorage#encode
andPokemonStorage#decode
.- Used for sending the storage to the client.
- Added
PlayerCloseStorageEvent
.- This is called when the player closes a Storage UI on the client.
- Added
PlayerPartyStorage#getOpenStorage
andPlayerPartyStorage#setOpenStorage
.- This dictates what storage the packets, sent by the player to the server, will interact with.
- Removed
PokemonStorage#getFile
.- This made no sense in this abstract class as it is possible to implement a storage adapter type for non-flatfile storage.
- I have added an interface
FlatFileStorageSaveAdapter
which has a function to convert the PokemonStorage to a File in the same way. - Subsequently the methods to calculate the File location of a Storage are now found in
NBTStorageSaveAdapter
.
- Removed public access to
PokemonStorage#uuid
.- Changed to a getter
PokemonStorage#getUniqueId
.
- Changed to a getter
- Added
StorageType
registry and changedClientStorageManager#storedPCs
.- The storage type contains data on how to construct the storage type from a UUID.
- This allows us to store more than just PCs in the client cache allowing for other types of UIs (such as a party view).
- The StorageType is not server side-mod capable as it is also required on the client.
- There is a getter for this in the Storage class which is
PokemonStorage#getStorageType
returning aResourceLocation
representing the key of the type in the registry.
- Refactored the
ClientInitializePCPacket
toClientInitializeStoragePacket
.- This is inline with the above mentioned changed for
StorageType
allowing us to initialize any storage from the server to the client's cache.
- This is inline with the above mentioned changed for
- Added
PokemonStorage#initialize
.- This sends the above packet, and means you don't have to make messy
NetworkHelper
calls anywhere anymore.
- This sends the above packet, and means you don't have to make messy
- Removed
StorageProxy#initializePCForPlayer
andStorageManager#initializePCForPlayer
.- Both of the above have been replaced with the
PokemonStorage#initialize
method and are abstract from PCs specifically.
- Both of the above have been replaced with the
- Changed
PokemonStorage#shouldSendUpdates
to be protected and added getters/setters for it. - Removed
PokemonStorage#notifyListener
.- It appears this was initially intended as a refactor for
PokemonStorage#notifyListeners
to keep that function clean. Except it appears that it was mistaken and was used erroneously in a bunch of places. - You should now only use
PokemonStorage#notifyListeners
.
- It appears this was initially intended as a refactor for
- Removed unused function
PokemonStorage#doWithoutSendingUpdates
. - Removed unused function
PokemonStorage#retrieveAll
.- This only makes sense on the
PartyStorage
specifically and was lazily being used on the abstract level.
- This only makes sense on the
- Added
StorageProxy#invalidateCache
andStorageManager#invalidateCache
for removing a PokemonStorage from the cached storages.- This is useful if you wish to:
- Force a reload of an online player's file.
- Remove the cached value of an offline player's storage.
- This is useful if you wish to:
- Added
PokemonStorage#track
,PokemonStorage#untrack
,PokemonStorage#isTracking
, andPokemonStorage#trackingPlayers
.- These functions add the player given to the list of players tracking the storage's changes.
- This allows multiple people to view, and edit, a storage simultaneously inline with Minecraft's chests/containers.
- It is important to untrack the storage if you do not wish for the client to continue receiving updates after they are done with a PC that is not their own.
- Added
IStatStore#canSet
. - Updated the default value of the No Crits battle rule to false/not present.
- Updated new packets to add the ability of opening other player's PCs.
- Added
IStatStore#reset
. - Registered all permissions through Forge.
- Added
PlayerHelper#registerPermission
to bypass the unnecessary GatherPermissionsEvent. - BREAKING CHANGE: Deprecated HyperDrill move effect, which no longer works. Use "bypass" move flag instead.
- Added
EffectBase#canHitMultipleTargets
to support moves that are conditionally single or multi-target. - Added
ProtectVariation#canBeRemoved
to allow new Protect variants to resist Feint. - Added
ProtectVariation#protectVariationBlocksAttack
to allow new Protect variations to filter what they block. - Added
ProtectVariation#applyProtectionEffect
to allow new Protect variations to add an effect when blocking attacks. - Added “bypass” move flag, for moves that cannot be stopped by Protect while targeting that Pokémon.
- Added “field” move flag, for moves that change the field without targeting the Pokémon on it.
- Added constructor to OreColor sub-class so Configurate can construct it.
Files
Metadata
Release channel
BetaVersion number
9.2.8Loaders
Game versions
1.20.2Downloads
28501Publication date
June 9, 2024 at 7:07 PMPublisher
Pixelmon
Owner