Skip to content
MrJohz edited this page Oct 2, 2014 · 15 revisions

InfiniTiC

Because sometimes just going extra isn't going far enough...

How do I make a new material?

Materials are defined by JSON files. These files can be anywhere under the config/infinitic directory, including in subdirectories if you want to organise your files more easily that way. Currently, one file can only define one material.

What should a material file look like?

{
    // This will be used as the name of the materials and liquid.
    // Defaults recipes will be added based on ores/ingots/blocks/dusts
    // registered in the oredict based on this name.
    "name": "adamantium",

    // This block will be shown whenever something is being smelted.
    // It is *required*!  (`renderblockMeta` is not, however, and defaults
    // to 0.)
    // (N.B. TiC has two blocks for ores being smelted and ingots/blocks
    // being smelted - InfiniTiC doesn't.  Yet.)
    "renderblock": "simpleores:adamantium_ore",
    "renderblockMeta": 0,

    // Smelting recipes will be added for all of the items listed in the
    // whitelist automatically.  If there is a block and ingot, casting
    // recipes will be added for the first block and ingot specified.
    "whitelist": {
        // These items will be capitalised and prepended with "ore",
        // "ingot" etc, and recipes will be added for all items registered in
        // the ore dictionary under those names.
        "oreDict": ["adamantite"],

        // ingots  and dust will smelt to one ingot's worth of liquid.
        // Items are registered in minetweaker style
        // (modid:itemname[:optional_damagevalue] or ore:oredictname).
        "ingot": ["ore:ingotAdamantine"],
        "dust": ["simpleores:adamantium_dust"],

        // Blocks will smelt to nine ingot's worth of liquid.
        "block": [],

        // Ores will smelt to two ingot's worth of liquid.
        "ore": []
    },

    // The blacklist will prevent a recipe that would be added
    // by the `name` and `whitelist` combo above from being
    // added to the smeltery.  Note that while this object
    // can have all of the same keys as the `whitelist` object,
    // neither of them need to use all of the keys.
    "blacklist": {
        "oreDict": ["adamantiodic_material"],
        "ore": ["simpleores:adamantium_ore"]
    },

    // The data values that the tool will have.
    // See https://gist.github.com/bonii-xx/e46f9d9e81e29d796b1b
    // for a rough idea of what these mean.  Note, however,
    // that a positive `stonebound` value gives a tool the 
    // stonebound effect, but a negative one will give the tool
    // a jagged effect.
    "toolData": {
        "ID": 23,
        "harvestLevel": 3,
        "durability": 43,
        "miningspeed": 5,
        "attack": 8,
        "handleModifier": 2.5,
        "reinforced": 3,
        "stonebound": 0.1,
        // This is used to define the colour of the tool,
        // and also the colour of the liquid.
        "color": "#3B5323"
    },

    // The name of the material in various languages.
    // InfiniTiC currently assumes that the material, 
    // the liquid, and the tool will all have the same name.
    "localizations": [
        ["en_US", "Adamantium"]
    ]
}
Clone this wiki locally