This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| ixe:json:start [2025/01/17 16:30] – Switched to description list format. Fireswamp | ixe:json:start [2025/02/14 14:57] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | A unit is defined by a json file. Below is a list of all json tags that can be used. | + | A unit is defined by a JSON file. Below is a list of all JSON tags that can be used. |
| - | A guide for how to use these json tags to create a unit can be found [[ixe: | + | A guide for how to use these JSON tags to create a unit can be found [[ixe: |
| ===== Unit Tags ===== | ===== Unit Tags ===== | ||
| Line 9: | Line 9: | ||
| :When true, the unit remains in the inventory at an amount of " | :When true, the unit remains in the inventory at an amount of " | ||
| ? | ? | ||
| - | :When true, this unit will not appear | + | :When true, this unit will not appear |
| ?maxammo (float) | ?maxammo (float) | ||
| :The max energy ammo for the unit. | :The max energy ammo for the unit. | ||
| ?ammo (float) | ?ammo (float) | ||
| - | :The starting | + | :The starting |
| ?maxcammo (float) | ?maxcammo (float) | ||
| - | :The max AC ammo for the unit. | + | :The max anticreeper |
| ?cammo (float) | ?cammo (float) | ||
| - | :The starting | + | :The starting |
| ?isportal (bool) | ?isportal (bool) | ||
| :When true, this unit acts as a portal for packets. | :When true, this unit acts as a portal for packets. | ||
| Line 29: | Line 29: | ||
| :Whether or not a unit is selectable by the player. | :Whether or not a unit is selectable by the player. | ||
| ?movable (bool) | ?movable (bool) | ||
| - | :Whether or not a unit can be moved by the player. In this instance, it means dematerialization based movement. | + | :Whether or not a unit can be moved by the player. In this instance, it means dematerialization-based movement |
| ?movelayer (int) | ?movelayer (int) | ||
| :Used for legality of placement for movable units. When units are in different move layers, they do not collide and can be stacked. | :Used for legality of placement for movable units. When units are in different move layers, they do not collide and can be stacked. | ||
| ?hasphysics (bool) | ?hasphysics (bool) | ||
| - | :When true, the unit is controlled by the physics engine. | + | :When true, the unit is controlled by the physics engine. This means it will collide with sand and other physics-having units, and be affected by gravity. |
| ? | ? | ||
| - | :When the unit has physics, this controls the rigid body constraints. The int is treated as a bit field with bit 0 meaning to freeze x-axis motion, bit 1 meaning to freeze y-axis motion, and bit 2 meaning to freeze rotation. | + | :When the unit has physics, this controls the rigid body constraints. The int is treated as a bit field with bit 0 meaning to freeze x-axis motion, bit 1 meaning to freeze y-axis motion, and bit 2 meaning to freeze rotation. |
| + | * 0 = no constraints | ||
| + | * 1 = can't move horizontally | ||
| + | * 2 = can't move vertically | ||
| + | * 3 = can't move in any direction | ||
| + | | ||
| + | * 5 = can't rotate or move horizontally | ||
| + | * 6 = can't rotate or move vertically | ||
| + | * 7 = can't rotate or move in any direction | ||
| ? | ? | ||
| :The scale at which gravity affects the unit when the unit has physics enabled. 1 is the default. | :The scale at which gravity affects the unit when the unit has physics enabled. 1 is the default. | ||
| Line 41: | Line 49: | ||
| :How a unit rotates/ | :How a unit rotates/ | ||
| ? | ? | ||
| - | :When true, the unit will auto destroy when the pixel count is too low. The "DeadFraction" is the maximum allowed amount of dead pixels. | + | :When true, the unit will auto destroy when the pixel count is too low. The "deadfraction" is the maximum allowed amount of dead pixels. |
| ? | ? | ||
| :A fraction (0 to 1 range) that specifies the maximum dead pixel amount allowed on a unit before it self destructs, when destroyonhealth is true. | :A fraction (0 to 1 range) that specifies the maximum dead pixel amount allowed on a unit before it self destructs, when destroyonhealth is true. | ||
| ? | ? | ||
| - | :An optional health that can be used to track damage on a unit. Not related to the pixel count. | + | :An optional health that can be used to track damage on a unit. Not related to the pixel count. |
| ? | ? | ||
| :The max optional health. | :The max optional health. | ||
| ? | ? | ||
| - | :The regeneration rate of the optional health | + | :The regeneration rate of internalhealth |
| ? | ? | ||
| - | :The damage that occurs to the optional health | + | :The damage that occurs to internalhealth per game update |
| ? | ? | ||
| - | :The damage that occurs to the optional health | + | :The damage that occurs to internalhealth per game update |
| ? | ? | ||
| - | :The damage that occurs to the optional health | + | :The damage that occurs to internalhealth per game update |
| ? | ? | ||
| :When true, enemy units like phantoms and bots will ignore this unit. | :When true, enemy units like phantoms and bots will ignore this unit. | ||
| ? | ? | ||
| - | :When true, a dark ray will damage the unit. | + | :When true, dark rays will damage the unit. |
| ? | ? | ||
| :When true, exploding sand will damage the unit. | :When true, exploding sand will damage the unit. | ||
| Line 69: | Line 77: | ||
| :When true, the unit acts as an IXE core objective. | :When true, the unit acts as an IXE core objective. | ||
| ? | ? | ||
| - | :The cell range to look for an anchor point. When non-zero, the unit will attempt to anchor itself to land in this range. If not fould, placement of the unit will be illegal. | + | :The cell range to look for an anchor point. When non-zero, the unit will attempt to anchor itself to land in this range. If not found, placement of the unit will be illegal. |
| ? | ? | ||
| :The distance an anchor will attempt to maintain between the anchor and the anchor cell. | :The distance an anchor will attempt to maintain between the anchor and the anchor cell. | ||
| Line 77: | Line 85: | ||
| :When true, the unit can manage the mouse drawn move paths. Used by the spirit ship, for instance. | :When true, the unit can manage the mouse drawn move paths. Used by the spirit ship, for instance. | ||
| ? | ? | ||
| - | :When true, the player can destroy | + | :When true, the player can order the unit to self-destruct. |
| ? | ? | ||
| :When true, the player can toggle the build supply for the unit. | :When true, the player can toggle the build supply for the unit. | ||
| Line 85: | Line 93: | ||
| :When true, a physics controlled unit will not collide with other units. | :When true, a physics controlled unit will not collide with other units. | ||
| ?autoammo (float) | ?autoammo (float) | ||
| - | :The amount of ammo to automatically add to the unit each game frame. | + | :The amount of ammo the unit regenerates |
| ?autocammo (float) | ?autocammo (float) | ||
| - | :The amount of AC ammo to automatically add to the unit each game frame. | + | :The amount of anticreeper |
| ? | ? | ||
| - | :The game frame ammo request rate. Default is 6. | + | :The time (in game updates) between |
| ? | ? | ||
| - | :The game frame AC ammo request rate. Default is 6. | + | :The time (in game updates) between |
| ?ammosupply (bool) | ?ammosupply (bool) | ||
| - | :When false, the unit won't request ammo or AC ammo. Defaults to true. | + | :When false, the unit won't request ammo or anticreeper |
| ? | ? | ||
| :The game objective type for the unit. The types are: 0 = NONE, 1 = IXE_CORE, 2 = INHIBITOR, 3 = ITEM, 4 = EMITTER, 5 = CREEPER, 6 = SPECIAL, 7 = MISSION | :The game objective type for the unit. The types are: 0 = NONE, 1 = IXE_CORE, 2 = INHIBITOR, 3 = ITEM, 4 = EMITTER, 5 = CREEPER, 6 = SPECIAL, 7 = MISSION | ||
| ? | ? | ||
| - | :Similar to autoAmmo, except added in the late game update. | + | :Similar to autoammo, except added in the late game update. |
| ? | ? | ||
| - | :The type of physics ' | + | :The type of physics ' |
| ? | ? | ||
| :The name of another unit type to destroy when this unit is destroyed. | :The name of another unit type to destroy when this unit is destroyed. | ||
| Line 121: | Line 129: | ||
| :Whether the part should rotate when the part is flipped. | :Whether the part should rotate when the part is flipped. | ||
| ?isbuilt (bool) | ?isbuilt (bool) | ||
| - | :If the part should be built already. | + | :If the part should be fully built upon unit spawn. |
| ? | ? | ||
| :If creeper damages the part. | :If creeper damages the part. | ||
| ?acdamages (bool) | ?acdamages (bool) | ||
| - | :If AC damages the part. | + | :If anticreeper |
| ?botdamages (bool) | ?botdamages (bool) | ||
| - | :If bots damages | + | :If bots damage |
| ? | ? | ||
| :The maximum amount of energy the unit can store for energy dispatch. | :The maximum amount of energy the unit can store for energy dispatch. | ||
| ? | ? | ||
| - | :An array of three values for energy production. Min production | + | :An array of three values for energy production. Min is the minimum |
| ? | ? | ||
| :If the part causes digitalis to grow. | :If the part causes digitalis to grow. | ||
| Line 137: | Line 145: | ||
| :The rate at which creeper damages each pixel of a part. Default is 10000. | :The rate at which creeper damages each pixel of a part. Default is 10000. | ||
| ?damageheal (int) | ?damageheal (int) | ||
| - | :The rate at whcih part pixels heal when damaged and not under creeper. Default is 10000. | + | :The rate at which part pixels heal when damaged and not under creeper. Default is 10000. |
| ? | ? | ||
| :The game updates it takes to regrow a part pixel. Default is 500. | :The game updates it takes to regrow a part pixel. Default is 500. | ||
| Line 143: | Line 151: | ||
| :Whether sand damages the pixels of this part. | :Whether sand damages the pixels of this part. | ||
| ? | ? | ||
| - | :If Sand Particles | + | :If sand particles |
| ? | ? | ||
| :When true, a unit with a show_range will always show the range with a range circle. | :When true, a unit with a show_range will always show the range with a range circle. | ||
| Line 149: | Line 157: | ||
| :The range to reveal FOW (fog of war). | :The range to reveal FOW (fog of war). | ||
| ? | ? | ||
| - | :For physics controlled units, the unit will be frozen if this is true and the part is over blocking | + | :For physics controlled units, the unit will be frozen if this is true and the part is over any sand that blocks movement. |
| ? | ? | ||
| - | :For physics controlled units will apply a force upwards when over a sand that is a liquid. | + | :For physics controlled units, this will apply a force upwards when over a sand that is a liquid. |
| ? | ? | ||
| :The physics drag for the whole unit when this part is over a liquid sand. | :The physics drag for the whole unit when this part is over a liquid sand. | ||
| Line 157: | Line 165: | ||
| :The default drag on the whole unit. | :The default drag on the whole unit. | ||
| ? | ? | ||
| - | :The layer that determins | + | :The layer that determines |
| ? | ? | ||
| :The upgrade gems awarded when the part is destroyed with destroy actions enabled. | :The upgrade gems awarded when the part is destroyed with destroy actions enabled. | ||
| ?collider {" | ?collider {" | ||
| - | :The physics collider for the part. The type can be " | + | :The physics collider for the part. The type can be " |
| ?image (string) | ?image (string) | ||
| - | :The path name for the image to use for the parts pixels. | + | :The path name for the image to use for the part' |
| ?pivot [float, | ?pivot [float, | ||
| - | :The pivot for the part. 0.5,0.5 is the center. | + | :The pivot for the part. [0.5,0.5] is the center. |
| ? | ? | ||
| - | :The visual sorting order used for the parts pixels. | + | :The visual sorting order used for the part' |
| ? | ? | ||
| - | :The exclusion mask for the parts collider. | + | :The exclusion mask for the part' |
| ?scale [float, | ?scale [float, | ||
| - | :The x,y, scale of the part. | + | :The x,y scale of the part. |
| ?anim (string) | ?anim (string) | ||
| :The path to an image that contains frames of an animation. | :The path to an image that contains frames of an animation. | ||
| Line 177: | Line 185: | ||
| :A list of RPL scripts to attach to the part. Each {script} consists of a " | :A list of RPL scripts to attach to the part. Each {script} consists of a " | ||
| ? | ? | ||
| - | :A list of controllers to attach to the part. Each {controller} consists of a " | + | :A list of controllers to attach to the part. Each {controller} consists of a " |
| ?parts [{part}, | ?parts [{part}, | ||
| :A list of sub parts. Each {part} consists of a " | :A list of sub parts. Each {part} consists of a " | ||