Join our discord
In partnership with NodeCraft Logo NodeCraft

You are not logged in! Create an account or login to contribute! Log in here!

Custom textures

From Pixelmon Wiki

The Custom Textures feature is for mapmakers and server admins who want to add custom textures to Pokémon or Statues via resource packs in a similar way that Pixelmon adds Special textures. Check out this page on how to create a resource pack to get started.

Custom textures are loaded from assets/pixelmon/textures/pokemon/custom-%value%/ Where %value% is a string value loaded from the nbt tag "CustomTexture" of a Pokémon or a Statue. These folders are to be made in your resource pack.

The "CustomTexture" nbt tag's value must be lowercase, but can otherwise be anything you like. For example, if you have a Ivysaur with the CustomTexture nbt tag value of "shadow" then the full texture path will be assets/pixelmon/textures/pokemon/custom-shadow/ivysaur.png. Or if you have a shiny Tyranitar with the CustomTexture tag value of "ghost" then the full path of the texture would be assets/pixelmon/textures/pokemon/custom-ghost/shinytyranitar.png.

Once your textures are loaded and the resource pack is enabled, to use this feature, you can use the Pokémon spec customtexture to give/spawn a Pokémon with the texture, use an NBTEditor, a sidemod or the /entitydata command.

For example, to use the Pokémon spec customtexture, you would do /pokespawn Zapdos customtexture:galaxy. This command would spawn a Zapdos with the custom texture galaxy.

Another example would be /entitydata @e[type=pixelmon:pixelmon,name=Ivysaur] {CustomTexture:"shadow"}. This command will change every Ivysaur out of its Poké Ball to the custom texture "shadow", placed in the example above.

Loading a Custom Texture with NBTEdit

Step Example
Create your custom textures and load them into a resource pack as specified above.

Download NBTEdit and put it in your mods folder.

Create the Pokémon or Statue you want to apply the custom texture to.
While looking at the Pokémon/Statue you want to apply the texture to, type in the chat the command /nbtedit. A GUI will pop up.
Select ROOT then select the icon in the top left labelled String.
Click the icon in the top left labelled Edit. In the box that says Name input CustomTexture. In the box that says Value input the name that you put after custom- for the folder your custom texture is in.
Select Save and then Save in the bottom left. You will now have your custom texture applied to that Pokémon/Statue.

Adding in Natural Custom Texture spawns

It is possible to make Pokémon with custom textures naturally spawn without overriding their default spawns via External JSON files. Once the external spawning files are enabled, navigate to the pixelmon/spawning/default/standard folder. Here, you will want to edit the desired Pokémon's spawning file with a text editor.

Adding in an additional spawning set is simple, as you will be basically cloning the first spawning set and adding an extra spec. An example has been made for creating a new spawning set for a Galaxy-Textured Bulbasaur.


As you can see, Bulbasaur's original file has been cloned and added in underneath the original, but with an extra line. Essentially the name field is removed, and the Pokémon's name is incorporated in to the spec line, along with the custom texture Pokémon spec.

Below is another example to show the format for adding a natural spawn to a Pokémon that also has a regional form, such as Ponyta.


In this example, we can see Kanto Ponyta's set has been duplicated and added at the end of the file. This essentially adds a custom textured Kanto Ponyta spawn to the world without overriding Kanto and Galarian Ponyta's spawning. If instead you wish to make a custom textured Galarian Ponyta spawn, simple replace form:0 in the spec line with form:2. The sets can be duplicated again to make both a custom textured Kanto and Galarian Ponyta spawn naturally.

As with any JSON file editing, always validate your files with a JSON validator, such as this one.

Special note to server owners

This feature was added in Pixelmon Mod 6.2.0 without a fallback implementation, though it was later changed to show the base skin instead if anything goes wrong.

If you have people capable of making or editing textures, please consider volunteering their time or skills to help the Pixelmon mod. The less the core team has to do the more they can work on development of the mod.

© 2014 - 2020 Pixelmon Mod