"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.
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
. - Added the ability to re-do operations in the PC:
- You do this using the key bind:
control + y
. - 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
- 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.
- 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. - 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. - 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 themin-distance-before-warning-vignette
value. - 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.
* The
- 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.
- 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.
- 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.