Pixelmon Team Editor¶
Lets players open Pixelmon's Pokemon Editor without Creative mode, and keeps an editor item in their hotbar. Built for the events battle arena, where players are in Adventure mode.
What it does¶
Pixelmon's pixelmon:pokemon_editor item only opens in Creative mode. In Adventure it silently
does nothing. This mod fixes that for players who have permission:
- Right-click the editor item to open your team in the Pokemon Editor. Works whether you are looking at the air or at a block.
/pokeeditoropens the same screen, for keybinds, menu buttons, or a lost item.- Gives the item in a set hotbar slot on login and respawn. It never gives a second one, and leaves it where you put it if you moved it.
- Stops the item being dropped.
- Never forfeits your battle. Pixelmon forfeits a battle if you open the editor mid-battle. This mod refuses to open instead and shows Pixelmon's "can't change party in battle" message.
- Locks borrowed teams. While a player has a temporary team (a draft or tournament roster),
the editor will not open and any edit or delete sent from the client is refused, with
Your team is locked while a tournament or draft party is active.
Server-side only. Players install nothing.
How players use it¶
- Right-click the Pokemon Editor in your hotbar (or type
/pokeeditor). - Edit your Pokemon in Pixelmon's editor screen and save.
You cannot open it during a battle, or while you are using a draft or tournament team.
Staff guide¶
The permission is Pixelmon's own node, pixelmon.pokemoneditor.use. It is off by default,
so grant it in LuckPerms to the group that should use the editor, for example:
/lp group default permission set pixelmon.pokemoneditor.use true server=events
Pixelmon must also allow editors: allow-pokemon-editors: true in config/pixelmon/items.yml.
Ops (level 2+) skip the permission check entirely. Test as a non-op.
Configuration¶
config/pixelmonteameditor-common.toml. Values are read at boot. Restart after changing them.
| Key | Default | Meaning |
|---|---|---|
right_click_opens |
true |
Right-click opens the editor. With false, only /pokeeditor works |
give_on_join |
true |
Give the item on login and respawn |
hotbar_slot |
0 |
Slot 0 to 8 (0 is leftmost). If taken, the first free slot is used |
prevent_dropping |
true |
Stop players dropping the item |
Data and storage¶
None. The mod saves nothing.
Troubleshooting¶
| Symptom | Cause | Fix |
|---|---|---|
| Right-click does nothing, no message | Player lacks pixelmon.pokemoneditor.use, or allow-pokemon-editors is false |
Grant the node. Check items.yml. Test as a non-op |
| Works for staff but not players | Staff are op and skip the check | Grant the node to the players' group |
| "Your team is locked..." | The player has a draft or tournament team | Expected until the event ends |
| Editor will not open in battle | By design | Finish the battle first |
| Players have two editors | Should not happen; the mod checks the whole inventory | Check for another plugin giving the item |
Boot lines that show it loaded:
Pixelmon Team Editor active: pokemon_editor works without Creative mode
Registered /pokeeditor
Maintainer notes¶
- Pixelmon's
PokemonEditorItem.use()checksplayer.isCreative()and the permission, and still returnsSUCCESSeither way, so the failure is silent. Only the open step checks Creative. The packets that save edits (UpdatePlayerPokemonPacket,DeletePokemonPacket) check only the permission. So the mod re-does just the open step, minus the Creative check, behind the same permission. A player who can open the screen is exactly a player whose edits are accepted. - Pixelmon's permission check is
allow-pokemon-editorspluspixelmon.pokemoneditor.use. The node is registered by Pixelmon with a default offalse. Looking up an unregistered node throws, so this mod loadsAFTERPixelmon. - Both
RightClickItemandRightClickBlockare handled, because right-clicking while facing a nearby block fires only the second. On a flat arena floor that is most clicks. - Two mixins (
UpdatePlayerPokemonPacketMixin,DeletePokemonPacketMixin) cancel client edits and deletes while the party is in temporary mode. Without them, a player with the editor could rewrite a drafted team one Pokemon at a time, because Pixelmon does not check whose party it is. - Deploy bundle, traps and acceptance tests:
manual_uploads/2026-09-01-events-arena-setup/in the ops repo.
Building¶
JAVA_HOME="$(/usr/libexec/java_home -v 21)" ./gradlew clean build
pixelmon_jar in gradle.properties must point at the same Pixelmon version the server runs. The
build fails if that jar is missing, instead of quietly compiling against stubs.
Full command, permission and config tables: Reference.