How to add Custom Pokémobs to Pokécube - Thutmose/Pokecube GitHub Wiki

How to add new Pokémobs to Pokécube, using only resource packs.

Step 1: Prepare a basic resource pack.

Here is a sample pack:

Adding New Mobs

The most important thing to have in the packs, are the _mobs_.<json/xml> (database file) to define the new pokedex entries to add, only 1 of these is needed per pack, but you may use multiple if you wish, even if the pack needs to have multiple locations to put the rest of the files.

For formatting your _mobs_.json correctly, here is documentation on the json format used for the database: Json Database for Pokecube.

If you are adding a form for an existing pokemob, you only need to define the parts of the entry which are different from the base, as the rest will be copied over. Required values are pokedex number (to know who the base is, or who this new mob is) and name.

Step 2: Make the additional files you are going to add.

After you have made the database file, you need to make the textures, models, and xml files for your mob. If you are adding an additional form, which just has a re-texture of the base, then for the models and xml files, you use the ones found here: Pokecube-Models with a minor change to the XML which will be mentioned below.

All files should be named entirely english lowercase, any capital letters in the file name will prevent them from being loaded correctly.

Model Files.

Model files need to be either x3d or tbl format. x3d can be exported from blender, and for best results, should be exported such that the model is standing on the plane, and has -Y forward and Z up. Other positions and orientations will also work. tbl files are the save files from Tabula, if you use one of these, you can also include animations made in tabula, just ensure that they are named one of the following: "idle, flying, walking, sleeping".

These model files then need to go in the corresponding model file directory.

If the model is a form of an existing pokemob, then it should be placed in assets/pokecube_mobs/gen_<#>/entity/models, where gen_<#> is the folder that contains the model of the base form in Pokecube-Models.

If the model is a new pokemob entirely, then it should be placed in assets/pokecube_ml/entity/models.

Texture Files.

These should be a .png texture, and should be placed in the same place as the model, but /textures instead of /models. If your mob has a shiny form, the shiny texture should be named identically with an s at the end.

XML Files.

The XML files are used for defining animations, ridden offsets, and particle effects, as well as custom textures for mobs. Here is an example xml for additional forms of an existing mob, that use the same model:

<?xml version="1.0" encoding="UTF-8"?>
<ModelAnimator version="0.1">
	<model name="">
        <phase name="global" rotation="1,0,0,0" offset="0,0,0" scale="0.65"/>
        <metadata headAxis="1" headCap="-40,40"/>
        <phase name="quadWalk" leftHind="leg2" rightHind="leg1" leftFront="leg4" rightFront="leg3" duration="10"/>        
        <customTex default="Bulbasaur">
            <forme name="Bulbasaur Red" tex="Bulbasaur Red"/>
            <forme name="Bulbasaur Blue" tex="Bulbasaur Blue"/>
            <forme name="Bulbasaur Yellow" tex="Bulbasaur Yellow"/>
        </customTex> 
	</model>
    <details>
        <RIDDENOFFSET>0.8</RIDDENOFFSET>
    </details>
</ModelAnimator>

If your mob is an alternate form, and uses the same model, then you will need to include the model for the base form, as well as the xml from the base form (found in Pokecube-Models).

Then you need to add the customTex file, and format it as you see above, that is an example for bulbasaur, where the custom textures are "bulbasaur red.png", "bulbasaur blue.png" and "bulbasaur yellow.png".

Lang file.

To prevent the mobs from being called "pkmn.<name>.name" you need to make a custom lang file and include it in the resource pack. The provided template pack has an example of this.

Step 3: assembling your resource pack.

Once you have all the needed files, you should place them in their corresponding locations, then make the zip for the resource file, and place it in the resourcepacks folder for minecraft. If you are doing this for a server, you will need to make the resourcepacks folder first, then place it in there.

⚠️ **GitHub.com Fallback** ⚠️