Skip to content

Instantly share code, notes, and snippets.

@Dinnerbone
Last active October 1, 2023 17:08
Show Gist options
  • Star 20 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Dinnerbone/7370a2846953eee2d8fc64514fb76de8 to your computer and use it in GitHub Desktop.
Save Dinnerbone/7370a2846953eee2d8fc64514fb76de8 to your computer and use it in GitHub Desktop.

A "node" is an element that looks like this:

{
    "type": "root|literal|argument",
    "parser": "", // only applicable if type is argument
    "properties": {}, // only applicable if type is argument, defaults to empty object
    "executable": true, // default if not specified is false, meaning it isn't a runnable command by itself
    "children": {}, // default if not specified is {}, meaning no children
    "redirect": [] // default if not specified is null, meaning no redirect
}

A redirect is a path to another node in the tree. ["foo", "bar", "baz"] means "find the child named foo of the root, then the child of that named bar, then the child of that named baz".

Every element of children is another node, which itself may have more children.

A literal type means "I expect the literal name of this node", and has no properties.

An argument type means it's dynamically parsed, using parser (and any optional properties)

{
"type": "root",
"children": {
"advancement": {
"type": "literal",
"children": {
"grant": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"everything": {
"type": "literal",
"executable": true
},
"from": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
},
"only": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"children": {
"criterion": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"executable": true
}
},
"executable": true
}
}
},
"through": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
},
"until": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
}
}
}
}
},
"revoke": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"everything": {
"type": "literal",
"executable": true
},
"from": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
},
"only": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"children": {
"criterion": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"executable": true
}
},
"executable": true
}
}
},
"through": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
},
"until": {
"type": "literal",
"children": {
"advancement": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
}
}
}
}
}
}
},
"ban": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:game_profile",
"children": {
"reason": {
"type": "argument",
"parser": "minecraft:message",
"executable": true
}
},
"executable": true
}
}
},
"ban-ip": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"children": {
"reason": {
"type": "argument",
"parser": "minecraft:message",
"executable": true
}
},
"executable": true
}
}
},
"banlist": {
"type": "literal",
"children": {
"ips": {
"type": "literal",
"executable": true
},
"players": {
"type": "literal",
"executable": true
}
},
"executable": true
},
"blockdata": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"nbt": {
"type": "argument",
"parser": "minecraft:nbt",
"executable": true
}
},
"executable": true
}
}
},
"clear": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"item": {
"type": "argument",
"parser": "minecraft:item",
"children": {
"maxCount": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
},
"clone": {
"type": "literal",
"children": {
"begin": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"end": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"destination": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"filtered": {
"type": "literal",
"children": {
"filter": {
"type": "argument",
"parser": "minecraft:block",
"children": {
"force": {
"type": "literal",
"executable": true
},
"move": {
"type": "literal",
"executable": true
},
"normal": {
"type": "literal",
"executable": true
}
},
"executable": true
}
}
},
"masked": {
"type": "literal",
"children": {
"force": {
"type": "literal",
"executable": true
},
"move": {
"type": "literal",
"executable": true
},
"normal": {
"type": "literal",
"executable": true
}
},
"executable": true
},
"replace": {
"type": "literal",
"children": {
"force": {
"type": "literal",
"executable": true
},
"move": {
"type": "literal",
"executable": true
},
"normal": {
"type": "literal",
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
}
}
}
}
},
"data": {
"type": "literal",
"children": {
"get": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"entity": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "entities"
},
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
}
}
},
"merge": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"nbt": {
"type": "argument",
"parser": "minecraft:nbt",
"executable": true
}
}
}
}
},
"entity": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "entities"
},
"children": {
"nbt": {
"type": "argument",
"parser": "minecraft:nbt",
"executable": true
}
}
}
}
}
}
},
"remove": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"executable": true
}
}
}
}
},
"entity": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "entities"
},
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"executable": true
}
}
}
}
}
}
}
}
},
"datapack": {
"type": "literal",
"children": {
"disable": {
"type": "literal",
"children": {
"name": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "phrase"
},
"executable": true
}
}
},
"enable": {
"type": "literal",
"children": {
"name": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "phrase"
},
"children": {
"after": {
"type": "literal",
"children": {
"existing": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "phrase"
},
"executable": true
}
}
},
"before": {
"type": "literal",
"children": {
"existing": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "phrase"
},
"executable": true
}
}
},
"first": {
"type": "literal",
"executable": true
},
"last": {
"type": "literal",
"executable": true
}
},
"executable": true
}
}
},
"list": {
"type": "literal",
"children": {
"available": {
"type": "literal",
"executable": true
},
"enabled": {
"type": "literal",
"executable": true
}
},
"executable": true
}
}
},
"debug": {
"type": "literal",
"children": {
"start": {
"type": "literal",
"executable": true
},
"stop": {
"type": "literal",
"executable": true
}
}
},
"defaultgamemode": {
"type": "literal",
"children": {
"adventure": {
"type": "literal",
"executable": true
},
"creative": {
"type": "literal",
"executable": true
},
"spectator": {
"type": "literal",
"executable": true
},
"survival": {
"type": "literal",
"executable": true
}
}
},
"deop": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:game_profile",
"executable": true
}
}
},
"difficulty": {
"type": "literal",
"children": {
"easy": {
"type": "literal",
"executable": true
},
"hard": {
"type": "literal",
"executable": true
},
"normal": {
"type": "literal",
"executable": true
},
"peaceful": {
"type": "literal",
"executable": true
}
},
"executable": true
},
"effect": {
"type": "literal",
"children": {
"clear": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"children": {
"effect": {
"type": "argument",
"parser": "minecraft:mob_effect",
"executable": true
}
},
"executable": true
}
}
},
"give": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"children": {
"effect": {
"type": "argument",
"parser": "minecraft:mob_effect",
"children": {
"seconds": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 1,
"max": 1000000
},
"children": {
"amplifier": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0,
"max": 255
},
"children": {
"hideParticles": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
}
}
}
}
},
"execute": {
"type": "literal",
"children": {
"align": {
"type": "literal",
"children": {
"axes": {
"type": "argument",
"parser": "minecraft:swizzle",
"redirect": [
"execute"
]
}
}
},
"as": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"redirect": [
"execute"
]
}
}
},
"at": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"redirect": [
"execute"
]
}
}
},
"if": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"block": {
"type": "argument",
"parser": "minecraft:block",
"redirect": [
"execute"
]
}
}
}
}
},
"blocks": {
"type": "literal",
"children": {
"start": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"end": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"destination": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"all": {
"type": "literal",
"executable": true,
"redirect": [
"execute"
]
},
"masked": {
"type": "literal",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
},
"entity": {
"type": "literal",
"children": {
"entities": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"executable": true,
"redirect": [
"execute"
]
}
}
},
"score": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"targetObjective": {
"type": "argument",
"parser": "minecraft:objective",
"children": {
"<": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
"<=": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
"=": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
">": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
">=": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
}
}
}
}
},
"offset": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"redirect": [
"execute"
]
}
}
},
"run": {
"type": "literal"
},
"store": {
"type": "literal",
"children": {
"result": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"children": {
"byte": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"double": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"float": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"int": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"long": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"short": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
},
"entity": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "entities"
},
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"children": {
"byte": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"double": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"float": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"int": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"long": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"short": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
},
"score": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"redirect": [
"execute"
]
}
}
}
}
}
}
},
"success": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"children": {
"byte": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"double": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"float": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"int": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"long": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"short": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
},
"entity": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "entities"
},
"children": {
"path": {
"type": "argument",
"parser": "minecraft:nbt_path",
"children": {
"byte": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"double": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"float": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"int": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"long": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
},
"short": {
"type": "literal",
"children": {
"scale": {
"type": "argument",
"parser": "brigadier:float",
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
},
"score": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
},
"unless": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"block": {
"type": "argument",
"parser": "minecraft:block",
"redirect": [
"execute"
]
}
}
}
}
},
"blocks": {
"type": "literal",
"children": {
"start": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"end": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"destination": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"all": {
"type": "literal",
"executable": true,
"redirect": [
"execute"
]
},
"masked": {
"type": "literal",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
},
"entity": {
"type": "literal",
"children": {
"entities": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"executable": true,
"redirect": [
"execute"
]
}
}
},
"score": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"targetObjective": {
"type": "argument",
"parser": "minecraft:objective",
"children": {
"<": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
"<=": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
"=": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
">": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
},
">=": {
"type": "literal",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true,
"redirect": [
"execute"
]
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
"experience": {
"type": "literal",
"children": {
"add": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"amount": {
"type": "argument",
"parser": "brigadier:integer",
"children": {
"levels": {
"type": "literal",
"executable": true
},
"points": {
"type": "literal",
"executable": true
}
},
"executable": true
}
}
}
}
},
"query": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "players"
},
"children": {
"levels": {
"type": "literal",
"executable": true
},
"points": {
"type": "literal",
"executable": true
}
}
}
}
},
"set": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"amount": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"children": {
"levels": {
"type": "literal",
"executable": true
},
"points": {
"type": "literal",
"executable": true
}
},
"executable": true
}
}
}
}
}
}
},
"fill": {
"type": "literal",
"children": {
"from": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"to": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"block": {
"type": "argument",
"parser": "minecraft:block",
"children": {
"destroy": {
"type": "literal",
"executable": true
},
"hollow": {
"type": "literal",
"executable": true
},
"keep": {
"type": "literal",
"executable": true
},
"outline": {
"type": "literal",
"executable": true
},
"replace": {
"type": "literal",
"children": {
"filter": {
"type": "argument",
"parser": "minecraft:block",
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
}
}
}
}
},
"function": {
"type": "literal",
"children": {
"name": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
},
"gamemode": {
"type": "literal",
"children": {
"adventure": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"executable": true
}
},
"executable": true
},
"creative": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"executable": true
}
},
"executable": true
},
"spectator": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"executable": true
}
},
"executable": true
},
"survival": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"executable": true
}
},
"executable": true
}
}
},
"gamerule": {
"type": "literal",
"children": {
"announceAdvancements": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"commandBlockOutput": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"disableElytraMovementCheck": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doDaylightCycle": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doEntityDrops": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doFireTick": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doLimitedCrafting": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doMobLoot": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doMobSpawning": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doTileDrops": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"doWeatherCycle": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"gameLoopFunction": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"keepInventory": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"logAdminCommands": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"maxCommandChainLength": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:integer",
"executable": true
}
},
"executable": true
},
"maxEntityCramming": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:integer",
"executable": true
}
},
"executable": true
},
"mobGriefing": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"naturalRegeneration": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"randomTickSpeed": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:integer",
"executable": true
}
},
"executable": true
},
"reducedDebugInfo": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"sendCommandFeedback": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"showDeathMessages": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
},
"spawnRadius": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:integer",
"executable": true
}
},
"executable": true
},
"spectatorsGenerateChunks": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
},
"executable": true
}
}
},
"give": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"item": {
"type": "argument",
"parser": "minecraft:item",
"children": {
"count": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
},
"executable": true
}
}
}
}
},
"help": {
"type": "literal",
"children": {
"command": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "greedy"
},
"executable": true
}
},
"executable": true
},
"kick": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"reason": {
"type": "argument",
"parser": "minecraft:message",
"executable": true
}
},
"executable": true
}
}
},
"kill": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"executable": true
}
}
},
"list": {
"type": "literal",
"executable": true
},
"locate": {
"type": "literal",
"children": {
"EndCity": {
"type": "literal",
"executable": true
},
"Fortress": {
"type": "literal",
"executable": true
},
"Mansion": {
"type": "literal",
"executable": true
},
"Mineshaft": {
"type": "literal",
"executable": true
},
"Monument": {
"type": "literal",
"executable": true
},
"Stronghold": {
"type": "literal",
"executable": true
},
"Temple": {
"type": "literal",
"executable": true
},
"Village": {
"type": "literal",
"executable": true
}
}
},
"me": {
"type": "literal",
"children": {
"action": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "greedy"
},
"executable": true
}
}
},
"msg": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"message": {
"type": "argument",
"parser": "minecraft:message",
"executable": true
}
}
}
}
},
"op": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:game_profile",
"executable": true
}
}
},
"pardon": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:game_profile",
"executable": true
}
}
},
"pardon-ip": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"executable": true
}
}
},
"particle": {
"type": "literal",
"children": {
"name": {
"type": "argument",
"parser": "minecraft:particle",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"delta": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"speed": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"children": {
"count": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"children": {
"force": {
"type": "literal",
"children": {
"viewers": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"executable": true
}
},
"executable": true
},
"normal": {
"type": "literal",
"children": {
"viewers": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
}
}
}
}
}
},
"executable": true
}
}
},
"playsound": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"children": {
"ambient": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"block": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"hostile": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"master": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"music": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"neutral": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"player": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"record": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"voice": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"weather": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"volume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"pitch": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 2.0
},
"children": {
"minVolume": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0,
"max": 1.0
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
}
}
}
}
},
"publish": {
"type": "literal",
"children": {
"port": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0,
"max": 65535
},
"executable": true
}
},
"executable": true
},
"recipe": {
"type": "literal",
"children": {
"give": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"*": {
"type": "literal",
"executable": true
},
"recipe": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
}
}
},
"take": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"*": {
"type": "literal",
"executable": true
},
"recipe": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
}
}
}
}
},
"reload": {
"type": "literal",
"executable": true
},
"replaceitem": {
"type": "literal",
"children": {
"block": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"slot": {
"type": "argument",
"parser": "minecraft:item_slot",
"children": {
"item": {
"type": "argument",
"parser": "minecraft:item",
"children": {
"count": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 1,
"max": 64
},
"executable": true
}
},
"executable": true
}
}
}
}
}
}
},
"entity": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"children": {
"slot": {
"type": "argument",
"parser": "minecraft:item_slot",
"children": {
"item": {
"type": "argument",
"parser": "minecraft:item",
"children": {
"count": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 1,
"max": 64
},
"executable": true
}
},
"executable": true
}
}
}
}
}
}
}
}
},
"save-all": {
"type": "literal",
"children": {
"flush": {
"type": "literal",
"executable": true
}
},
"executable": true
},
"save-off": {
"type": "literal",
"executable": true
},
"save-on": {
"type": "literal",
"executable": true
},
"say": {
"type": "literal",
"children": {
"message": {
"type": "argument",
"parser": "minecraft:message",
"executable": true
}
}
},
"scoreboard": {
"type": "literal",
"children": {
"objectives": {
"type": "literal",
"children": {
"add": {
"type": "literal",
"children": {
"objective": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"children": {
"criteria": {
"type": "argument",
"parser": "minecraft:objective_criteria",
"children": {
"displayName": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "greedy"
},
"executable": true
}
},
"executable": true
}
}
}
}
},
"list": {
"type": "literal",
"executable": true
},
"remove": {
"type": "literal",
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true
}
}
},
"setdisplay": {
"type": "literal",
"children": {
"slot": {
"type": "argument",
"parser": "minecraft:scoreboard_slot",
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true
}
},
"executable": true
}
}
}
}
},
"players": {
"type": "literal",
"children": {
"add": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"children": {
"score": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 1
},
"executable": true
}
}
}
}
}
}
},
"enable": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true
}
}
}
}
},
"get": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true
}
}
}
}
},
"list": {
"type": "literal",
"children": {
"target": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "single"
},
"executable": true
}
},
"executable": true
},
"operation": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"targetObjective": {
"type": "argument",
"parser": "minecraft:objective",
"children": {
"operation": {
"type": "argument",
"parser": "minecraft:operation",
"children": {
"source": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"sourceObjective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true
}
}
}
}
}
}
}
}
}
}
},
"remove": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"children": {
"score": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 1
},
"executable": true
}
}
}
}
}
}
},
"reset": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"executable": true
}
},
"executable": true
}
}
},
"set": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"children": {
"score": {
"type": "argument",
"parser": "brigadier:integer",
"executable": true
}
}
}
}
}
}
}
}
}
}
},
"seed": {
"type": "literal",
"executable": true
},
"setblock": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"children": {
"block": {
"type": "argument",
"parser": "minecraft:block",
"children": {
"destroy": {
"type": "literal",
"executable": true
},
"keep": {
"type": "literal",
"executable": true
},
"replace": {
"type": "literal",
"executable": true
}
},
"executable": true
}
}
}
}
},
"setidletimeout": {
"type": "literal",
"children": {
"seconds": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
}
},
"setworldspawn": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"executable": true
}
},
"executable": true
},
"spawnpoint": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:block_pos",
"executable": true
}
},
"executable": true
}
},
"executable": true
},
"spreadplayers": {
"type": "literal",
"children": {
"center": {
"type": "argument",
"parser": "minecraft:vec2",
"children": {
"spreadDistance": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"children": {
"maxRange": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 1.0
},
"children": {
"respectTeams": {
"type": "argument",
"parser": "brigadier:bool",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"executable": true
}
}
}
}
}
}
}
}
}
}
},
"stop": {
"type": "literal",
"executable": true
},
"stopsound": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"*": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
}
},
"ambient": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"block": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"hostile": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"master": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"music": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"neutral": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"player": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"record": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"voice": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
},
"weather": {
"type": "literal",
"children": {
"sound": {
"type": "argument",
"parser": "minecraft:resource_location",
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"summon": {
"type": "literal",
"children": {
"entity": {
"type": "argument",
"parser": "minecraft:resource_location",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"nbt": {
"type": "argument",
"parser": "minecraft:nbt",
"executable": true
}
},
"executable": true
}
},
"executable": true
}
}
},
"tag": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"children": {
"add": {
"type": "literal",
"children": {
"name": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"executable": true
}
}
},
"list": {
"type": "literal",
"executable": true
},
"remove": {
"type": "literal",
"children": {
"name": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"executable": true
}
}
}
}
}
}
},
"team": {
"type": "literal",
"children": {
"add": {
"type": "literal",
"children": {
"team": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "word"
},
"children": {
"displayName": {
"type": "argument",
"parser": "brigadier:string",
"properties": {
"type": "greedy"
},
"executable": true
}
},
"executable": true
}
}
},
"empty": {
"type": "literal",
"children": {
"team": {
"type": "argument",
"parser": "minecraft:team",
"executable": true
}
}
},
"join": {
"type": "literal",
"children": {
"team": {
"type": "argument",
"parser": "minecraft:team",
"children": {
"members": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"executable": true
}
},
"executable": true
}
}
},
"leave": {
"type": "literal",
"children": {
"members": {
"type": "argument",
"parser": "minecraft:score_holder",
"properties": {
"has_wildcard": false,
"amount": "multiple"
},
"executable": true
}
}
},
"list": {
"type": "literal",
"children": {
"team": {
"type": "argument",
"parser": "minecraft:team",
"executable": true
}
},
"executable": true
},
"option": {
"type": "literal",
"children": {
"team": {
"type": "argument",
"parser": "minecraft:team",
"children": {
"collisionRule": {
"type": "literal",
"children": {
"always": {
"type": "literal",
"executable": true
},
"never": {
"type": "literal",
"executable": true
},
"pushOtherTeams": {
"type": "literal",
"executable": true
},
"pushOwnTeam": {
"type": "literal",
"executable": true
}
}
},
"color": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "minecraft:color",
"executable": true
}
}
},
"deathMessageVisibility": {
"type": "literal",
"children": {
"always": {
"type": "literal",
"executable": true
},
"hideForOtherTeams": {
"type": "literal",
"executable": true
},
"hideForOwnTeam": {
"type": "literal",
"executable": true
},
"never": {
"type": "literal",
"executable": true
}
}
},
"friendlyfire": {
"type": "literal",
"children": {
"allowed": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
}
},
"nametagVisibility": {
"type": "literal",
"children": {
"always": {
"type": "literal",
"executable": true
},
"hideForOtherTeams": {
"type": "literal",
"executable": true
},
"hideForOwnTeam": {
"type": "literal",
"executable": true
},
"never": {
"type": "literal",
"executable": true
}
}
},
"seeFriendlyInvisibles": {
"type": "literal",
"children": {
"allowed": {
"type": "argument",
"parser": "brigadier:bool",
"executable": true
}
}
}
}
}
}
},
"remove": {
"type": "literal",
"children": {
"team": {
"type": "argument",
"parser": "minecraft:team",
"executable": true
}
}
}
}
},
"teleport": {
"type": "literal",
"children": {
"destination": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "entities"
},
"executable": true
},
"location": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"rotation": {
"type": "argument",
"parser": "minecraft:rotation",
"executable": true
}
},
"executable": true
},
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "entities"
},
"children": {
"destination": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "single",
"type": "entities"
},
"executable": true
},
"location": {
"type": "argument",
"parser": "minecraft:vec3",
"children": {
"rotation": {
"type": "argument",
"parser": "minecraft:rotation",
"executable": true
}
},
"executable": true
}
}
}
}
},
"tell": {
"type": "literal",
"redirect": [
"msg"
]
},
"tellraw": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"message": {
"type": "argument",
"parser": "minecraft:component",
"executable": true
}
}
}
}
},
"time": {
"type": "literal",
"children": {
"add": {
"type": "literal",
"children": {
"time": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
}
},
"query": {
"type": "literal",
"children": {
"day": {
"type": "literal",
"executable": true
},
"daytime": {
"type": "literal",
"executable": true
},
"gametime": {
"type": "literal",
"executable": true
}
}
},
"set": {
"type": "literal",
"children": {
"day": {
"type": "literal",
"executable": true
},
"night": {
"type": "literal",
"executable": true
},
"time": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
}
}
}
},
"title": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:entity",
"properties": {
"amount": "multiple",
"type": "players"
},
"children": {
"actionbar": {
"type": "literal",
"children": {
"title": {
"type": "argument",
"parser": "minecraft:component",
"executable": true
}
}
},
"clear": {
"type": "literal",
"executable": true
},
"reset": {
"type": "literal",
"executable": true
},
"subtitle": {
"type": "literal",
"children": {
"title": {
"type": "argument",
"parser": "minecraft:component",
"executable": true
}
}
},
"times": {
"type": "literal",
"children": {
"fadeIn": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"children": {
"stay": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"children": {
"fadeOut": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
}
}
}
}
}
},
"title": {
"type": "literal",
"children": {
"title": {
"type": "argument",
"parser": "minecraft:component",
"executable": true
}
}
}
}
}
}
},
"tp": {
"type": "literal",
"redirect": [
"teleport"
]
},
"trigger": {
"type": "literal",
"children": {
"objective": {
"type": "argument",
"parser": "minecraft:objective",
"children": {
"add": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:integer",
"executable": true
}
}
},
"set": {
"type": "literal",
"children": {
"value": {
"type": "argument",
"parser": "brigadier:integer",
"executable": true
}
}
}
},
"executable": true
}
}
},
"w": {
"type": "literal",
"redirect": [
"msg"
]
},
"weather": {
"type": "literal",
"children": {
"clear": {
"type": "literal",
"children": {
"duration": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0,
"max": 1000000
},
"executable": true
}
},
"executable": true
},
"rain": {
"type": "literal",
"children": {
"duration": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0,
"max": 1000000
},
"executable": true
}
},
"executable": true
},
"thunder": {
"type": "literal",
"children": {
"duration": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0,
"max": 1000000
},
"executable": true
}
},
"executable": true
}
}
},
"whitelist": {
"type": "literal",
"children": {
"add": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:game_profile",
"executable": true
}
}
},
"list": {
"type": "literal",
"executable": true
},
"off": {
"type": "literal",
"executable": true
},
"on": {
"type": "literal",
"executable": true
},
"reload": {
"type": "literal",
"executable": true
},
"remove": {
"type": "literal",
"children": {
"targets": {
"type": "argument",
"parser": "minecraft:game_profile",
"executable": true
}
}
}
}
},
"worldborder": {
"type": "literal",
"children": {
"add": {
"type": "literal",
"children": {
"distance": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": -60000000,
"max": 60000000
},
"children": {
"time": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
},
"executable": true
}
}
},
"center": {
"type": "literal",
"children": {
"pos": {
"type": "argument",
"parser": "minecraft:vec2",
"executable": true
}
}
},
"damage": {
"type": "literal",
"children": {
"amount": {
"type": "literal",
"children": {
"damagePerBlock": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"executable": true
}
}
},
"buffer": {
"type": "literal",
"children": {
"distance": {
"type": "argument",
"parser": "brigadier:float",
"properties": {
"min": 0.0
},
"executable": true
}
}
}
}
},
"get": {
"type": "literal",
"executable": true
},
"set": {
"type": "literal",
"children": {
"distance": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": -60000000,
"max": 60000000
},
"children": {
"time": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
},
"executable": true
}
}
},
"warning": {
"type": "literal",
"children": {
"distance": {
"type": "literal",
"children": {
"distance": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
}
},
"time": {
"type": "literal",
"children": {
"time": {
"type": "argument",
"parser": "brigadier:integer",
"properties": {
"min": 0
},
"executable": true
}
}
}
}
}
}
},
"xp": {
"type": "literal",
"redirect": [
"experience"
]
}
}
}
@ryantheleach
Copy link

Wishlist:

Regex argument parser with regex as property?
String argument with quoted property, allows spaces in strings with arguments after?
Ability for server to say not only what tab completes are available, but which tree branch is active? For disambiguation of seemingly identical arguments to the client?
Ability for greedy string to override usage text? E.g. as a server side fallback?

@justblender
Copy link

I'm sorry, but I have to say this — this looks terrible.

@ryantheleach
Copy link

What part? It's not actually going to be json. It's just a representation of in memory class structure? I've spent a decent amount of time picking it apart, and apart from my wishlist listed above it seems pretty rock solid. @justblender

@Dinnerbone
Copy link
Author

@justblender this is a generated file that the game doesn't read in any way, intended for 3rd party editors to use to see our command tree. Can you explain why this is a bad format for that, and how it can look better?

@ryantheleach quoted string are "type": "brigadier:string", "properties": {"type": "phrase"}. Word means "up to the next space", phrase is "an unquoted word or quoted string", and greedy is "everything from this point to the end of input".

Regex string is on my todo list, the other ones I'm not sure I can guarantee right now.

@Yurihaia
Copy link

What does "properties" do?

@Dinnerbone
Copy link
Author

@MrYurihi it's passed to the parser, so it may change how the node is parsed in some way. For example, brigadier:int can accept a min/max in properties. Or minecraft:entity may use it to decide if it should allow more than one entity.

@NeunEinser
Copy link

NeunEinser commented Nov 15, 2017

This looks pretty nice already. It's good to have an official in depth description of command syntax.
I'm kind of missing permissions, tho. Say you want to write a command parser for functions. Commands like /ban are probably not going to be allowed in functions. It would be nice if we could filter these out.

It would also be nice to have a list of valid parsers, a description, and valid properties for the specific parser, including default values.
The description might be anything from a small sentence to json tree similar to this on. Especially for minecraft:entity, it might be good to describe the selector arguments similarly, tho.
Also, I know that for minecraft:particle it is mostly literals of valid particle ids, but some ids might have additional arguments as it looks like. E.g. blockdust expects a block: minecraft:blockdust minecraft:stone, without a block id, the blockdust particle isn't actually valid. I don't know if there are more special cases where similar things apply, but that's also a reason I would like a better description for the parsers.

@wrenger
Copy link

wrenger commented Nov 19, 2017

Is there a redirection missing in execute/run that points back to the root?
But anyway nice work. Currently I'm figuring out if I can use it for a vs code completion provider extension :)

Ps, a list of all items, blocks, mob_effects, particles... for the related parsers would be nice...

@ryantheleach
Copy link

ryantheleach commented Nov 20, 2017

@NeunEinser that's a whole other kettle of fish. At the moment I thought Vanilla only really had a concept of 'op level'

I'm happy to have a vague description of parsers at this point, it encourages discourse which will shape this to how the community needs, agree about something as complex as particles though.

@Levertion
Copy link

Levertion commented Dec 3, 2017

Is "minecraft:message" the same as "brigadier:string", "type":"greedy"?
Possibly more questions coming at some point too. Is this the best place to ask?

@Kroppeb
Copy link

Kroppeb commented Dec 7, 2017

@Dinnerbone Questions:

  • Is there a difference between "vec_2" and "rotation"? both allow any float right?
  • Why do the execute if score comparators (< <= = > >=) not use a parser like minecraft:operation

@Yurihaia
Copy link

Maybe make a property that tells the parser what type of resource location it is, IE function, block (this would be for external auto-completion)

@Chrisstar56
Copy link

@Dinnerbone Could you publish an updated version now that the command changes are mostly finished?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment