Skip to content

BlockTexturesV2

You can have a maximum of 255 indexes.

json
"BlockTexturesV2": [
    {
        // Note: optional, used to describe an index
        // Name: optional if HSL/HSLA/RGB/RGBA is set, name of texture; list of textures is below. Not setting a Name is fine
        //  when a color field is set.
        // Index: Determines which index in MagicaVoxel corresponds to this texture.
        // Offset: Per-axis offset for the texture. Used to align things like crate textures and Railway train textures.

        // HSL/RGB/RGBA: optional if Name is set, used to color a texture. Soltrium HSL: [ 0.5444, 1, 0.48 ]. Recommended to
        //  use RGB for flat textures and RGBA for glass.

        // Attributes: explosive, light-fade, light-on-brightness, floating, invincible, transparent, ice, meteor (unused)
        //
        // explosive: Block explodes if damaged; uses ExplosionRadius as the radius. Can be detonated by blocks with the conductor attribute.
        // light-fade: Fades the light instead of immediately removing light.
        // light-on-brightness: brightness is the brightness of the light. <1.0 is recommended.
        // floating: allows index and anything attached to float.
        // invincible: makes index impossible to break.
        // transparent: makes index transparent. use RGBA to control how translucent it is.
        // ice: adds a distortion effect when looking through index.
        // meteor: unused, was previously used in Salvage for the meteor.

        // ExplosionRadius: The radius of the explosion, in blocks. This is only used when the `explosive` attribute is set.
        // Bloom: 0.0-1.0.
        // Health: Block health; integer 0-255.
        // Armour: Probably damage*armour.
        // Damage: Amount of damage given to any player standing on the index. If set, 1 is always used in official maps.
        //  Non-negative integer.
        "Note": "Example texture",
        "Name": "concrete",
        "Offset": [ 0, 0, 0 ],
        "Index": 1,
        "HSL": [ 0.0, 0.0, 0.0 ],
        "Attributes": "",
        "ExplosionRadius": 0,
        "Bloom": 1.0,
        "Health": 8,
        "Armour": 0.3,
        "Damage": 1
    }
],

Examples

White light

json
{
    "Note": "White light",
    "Index": 1,
    "Attributes": "light-on",
    "RGB": [255, 255, 255],
    "Bloom": 1
}

Soltrium

json
{
    "Note": "Explosive soltrium",
    "Index": 1,
    "Attributes": "explosive light-fade",
    "HSL": [ 0.5444, 1, 0.48 ],
    "Bloom": 1
}

Glass

json
{
    "Note": "Glass",
    "Index": 1,
    "Attributes": "transparent conductor",
    "RGB": [ 133, 184, 235 ]
}

Railway/Reactor lasers

json
{
	"Note": "Laser",
	"Index": 1,
	"HSL": [0.45, 0.4, 0.8],
	"Bloom": 1,
	"Damage": 1
}

Crude 17x4 "Soltricoz" sign using the cratesoltec texture. You may need to adjust the Offset

json
{
	"Note": "Soltricoz sign",
	"Index": 1,
	"Name": "cratesoltec",
	"Size": 47,
	"Offset": [ 23, 12, 0 ],
	"HSL": [ 0.45, 0.6, 0.4 ],
	"Health": 50,
	"Bloom": 0.2,
	"Attributes": "light-on-0.0001 conductor"
}

Multiplayer attributes

The server sends multiple attributes which were previously undocumented.

json
    // Default: No clue what this does. Might be if the index is in some form of master index pallete that Rocket uses?
    // ReceivedFromServer: Probably for loading maps if you have them saved to disk.
    // LayerID: No idea.
    // SideDirection: Probably the same as TopDirection. Defaults to up.
    // Custom: No clue what it does as well. Defaults to false.
{
    "Default": false,
    "ReceivedFromServer": true,
    "LayerID": 255,
    "SideDirection": "up",
	"Custom": false,
}

Textures list

Textures list

Made with ❤ by the Sector's Edge community