Power JSON Format

This is the format of a JSON file describing a power. Powers are used to give functionality to origins.

Power files need to be placed inside the powers folder within your namespace.

Depending on the chosen type, power JSONs have more required and optional fields. See the corresponding power type page for a description of what those fields are.

Fields

Field Type Default Description
type Identifier The namespace and ID of the desired Power Type.
name String optional The display name of the power. Can be a literal string or a translation key.
description String optional The description of the power. Can be a literal string or a translation key.
hidden Boolean false If set to true, this power will not be displayed in the power list of the origin.
condition Entity Condition optional If set, this power will only be active when the player with this power fulfills the condition.
loading_priority Integer 0 Specifies when this power is loaded. Higher numbers mean it's loaded later, which means it will override those with lower loading priorities which share the same ID.
badges Array of Badges optional If set, it will display icon(s) after the name of the power.

Examples

{
    "type": "origins:active_self",
    "entity_action": {
        "type": "origins:execute_command",
        "command": "tellraw @a {\"text\": \"Hello world!\", \"color\": \"green\"}"
    },
    "name": "Hello World!",
    "description": "A power that announces a 'Hello world!' message to everyone in the server.",
    "badges": [
        {
            "sprite": "minecraft:textures/item/diamond.png",
            "text": "Ooh, shiny!"
        }
    ]
}

This example will print a green-colored 'Hello world!' message to all currently online players once activated.