-
Notifications
You must be signed in to change notification settings - Fork 0
Proto
Sent when the player opens a code chest.
| Field | Type | Label | Description |
|---|---|---|---|
| reference | ChestReference |
Sent when the player switches modes.
| Field | Type | Label | Description |
|---|---|---|---|
| mode | PlayerMode |
Sent as a response to a C2SCodeOperation message, error is true if the operation failed (see each operation for details), template is not empty only if a get operation succeeded.
| Field | Type | Label | Description |
|---|---|---|---|
| error | S2CCodeOperationResult.Error | ||
| template | string |
Sent as a response to a C2SMultiCodeOperations message, contains the results of all operations requested.
| Field | Type | Label | Description |
|---|---|---|---|
| results | S2CCodeOperationResult | repeated |
Sent when the player joins a plot. The plot name is a serialized Minecraft component.
| Field | Type | Label | Description |
|---|---|---|---|
| id | int32 | ||
| name | string | ||
| owner_name | string | ||
| owner_uuid | string | ||
| plot_size | int32 | ||
| build_region | Region | ||
| code_region | Region | ||
| spawn_pos | APILocation | ||
| is_owner | bool | ||
| is_developer | bool | ||
| is_builder | bool | ||
| tags | PlotTag | repeated | |
| handle | string | ||
| players | S2CPlotInfo.PlotPlayer | repeated |
Represents a player in a plot.
| Field | Type | Label | Description |
|---|---|---|---|
| user_name | string | ||
| user_uuid | string | ||
| is_owner | bool | ||
| is_developer | bool | ||
| is_builder | bool | ||
| mode | PlayerMode |
Sent when a line starter is added or removed from the plot, requires the player to have developer permissions on the plot.
| Field | Type | Label | Description |
|---|---|---|---|
| line_starter | CodeLineStarter | ||
| action | S2CPlotLineStarterUpdate.Action |
Sent when the player joins a plot, requires the player to have developer permissions on the plot.
| Field | Type | Label | Description |
|---|---|---|---|
| line_starter | CodeLineStarter | repeated |
Sent when the plot finishes a lag measurement, requires the player to have developer permissions on the plot, and be profiling the plot.
| Field | Type | Label | Description |
|---|---|---|---|
| cpu_usage | int32 |
Represents an error that occurred while performing a code operation.
| Name | Number | Description |
|---|---|---|
| NONE | 0 | |
| NO_PERMISSION | 1 | |
| NO_LOCATION | 2 | |
| INVALID_LOCATION | 3 | |
| NO_ACTION | 4 | |
| ACTION_NOT_FOUND | 5 | |
| NO_LOCATION_OR_TEMPLATE | 6 | |
| INVALID_LOCATION_OR_TEMPLATE | 7 | |
| TEMPLATE_NOT_FIT | 8 | |
| INVALID_TEMPLATE | 10 | |
| INTERNAL_ERROR | 9 | |
| NO_OPERATION | 11 |
Represents an action performed on a line starter.
| Name | Number | Description |
|---|---|---|
| ADD | 0 | |
| CHANGE | 1 | |
| REMOVE | 2 |
Sent as a response to a C2SHandshakeRequest message.
| Field | Type | Label | Description |
|---|---|---|---|
| error | S2CHandshakeResponse.Error | ||
| success | S2CHandshakeResponse.Success |
Contains connection metadata after a successful handshake.
| Field | Type | Label | Description |
|---|---|---|---|
| server_info | ServerInfo |
Sent after the player joins the server with their currency and permission information.
| Field | Type | Label | Description |
|---|---|---|---|
| currency | PlayerCurrency | ||
| permissions | PlayerPermissions |
Sent when the player joins the server.
| Field | Type | Label | Description |
|---|---|---|---|
| is_active | bool | ||
| active_booster | S2CServerBooster.ActiveBooster | optional |
Represents an active booster.
| Field | Type | Label | Description |
|---|---|---|---|
| tipped | bool | ||
| multiplier | int32 | ||
| time_remaining | int64 | ||
| user_name | string | ||
| user_uuid | string |
| Name | Number | Description |
|---|---|---|
| NONE | 0 | |
| INVALID_PROTOCOL | 1 | |
| INCOMPATIBLE_PROTOCOL | 2 | |
| ALREADY_CONNECTED | 3 | |
| NOT_APPLICABLE | 4 |
Represents a reference to an action and its arguments, sent when the player opens a code chest and bundled in other messages. Display text is serialized as Minecraft components.
| Field | Type | Label | Description |
|---|---|---|---|
| material | string | ||
| name | string | ||
| description | string | repeated | |
| additional_info | ChestReference.Note | repeated | |
| tags | int32 | optional | |
| arguments | ChestReference.Argument | repeated | |
| return_values | ChestReference.ReturnValue | repeated | |
| cancellable | bool | optional | |
| cancelled_automatically | bool | optional |
Represents an argument for the chest.
| Field | Type | Label | Description |
|---|---|---|---|
| type | ChestReference.Value | ||
| plural | bool | ||
| optional | bool | ||
| description | string | repeated | |
| notes | ChestReference.Note | repeated |
Represents a note in the notes field of an action icon.
| Field | Type | Label | Description |
|---|---|---|---|
| note | string | repeated |
Represents a return value of an action.
| Field | Type | Label | Description |
|---|---|---|---|
| standard_value | ChestReference.ReturnValue.Standard | ||
| simple_value | ChestReference.ReturnValue.Simple |
A simple return value, which only contains a text field.
| Field | Type | Label | Description |
|---|---|---|---|
| text | string |
A standard return value, which contains the value and descriptions fields.
| Field | Type | Label | Description |
|---|---|---|---|
| value_type | ChestReference.Value | ||
| descriptions | string | repeated |
Represents a value type.
| Name | Number | Description |
|---|---|---|
| ANY_TYPE | 0 | |
| VARIABLE | 1 | |
| NUMBER | 2 | |
| TEXT | 3 | |
| COMPONENT | 4 | |
| LOCATION | 5 | |
| VECTOR | 6 | |
| LIST | 7 | |
| DICT | 8 | |
| POTION | 9 | |
| PARTICLE | 10 | |
| SOUND | 11 | |
| SPAWN_EGG | 12 | |
| PROJECTILE | 13 | |
| VEHICLE | 14 | |
| ENTITY_TYPE | 15 | |
| BLOCK | 16 | |
| BLOCK_TAG | 17 | |
| ITEM | 18 | |
| BYTE | 19 | |
| NONE | 20 |
Represents the player's currency information. Ticket bundle names are serialized Minecraft components.
| Field | Type | Label | Description |
|---|---|---|---|
| tokens | int32 | ||
| tickets | int32 | ||
| ticket_bundles | PlayerCurrency.TicketBundle | repeated | |
| sparks | int32 |
Represents an unclaimed ticket bundle.
| Field | Type | Label | Description |
|---|---|---|---|
| event_name | string | ||
| prize_name | string | ||
| ticket_amount | int32 |
Represents the player's permissions, admins will have all permissions set to their highest level.
| Field | Type | Label | Description |
|---|---|---|---|
| donor | int32 | ||
| vip | int32 | ||
| qa | int32 | ||
| youtuber | int32 | ||
| support | int32 | ||
| moderation | int32 | ||
| admin | int32 |
Represents a code line starter in the plot.
| Field | Type | Label | Description |
|---|---|---|---|
| location | APILocation | ||
| chest | ChestReference | optional |
Represents a cuboid region in the world.
| Field | Type | Label | Description |
|---|---|---|---|
| min | APILocation | ||
| max | APILocation |
Represents a tag, also known as a category, a plot can have.
| Name | Number | Description |
|---|---|---|
| ARCADE | 0 | |
| VERSUS | 1 | |
| COMBAT | 2 | |
| PARKOUR | 3 | |
| ADVENTURE | 4 | |
| ROLEPLAY | 5 | |
| STRATEGY | 6 | |
| PUZZLE | 7 | |
| TRIVIA | 8 | |
| RESOURCES | 9 | |
| ELIMINATION | 10 | |
| CREATION | 11 | |
| MISCELLANEOUS | 12 |
Represents information about the server.
| Field | Type | Label | Description |
|---|---|---|---|
| protocol_version | string | ||
| bungee_name | string | ||
| patch_version | string | ||
| server_type | ServerInfo.DFServerType |
Represents a server type.
| Name | Number | Description |
|---|---|---|
| MAIN | 0 | |
| BETA | 1 | |
| DEV | 2 | |
| PUBLIC_TEST | 3 | |
| PUBLIC_EVENT | 4 | |
| LOCAL_DEV | 5 | |
| PRIVATE | 6 |
Represents a location.
| Field | Type | Label | Description |
|---|---|---|---|
| x | double | ||
| y | double | ||
| z | double | ||
| pitch | float | ||
| yaw | float |
Represents a code template.
| Field | Type | Label | Description |
|---|---|---|---|
| json | string | ||
| data | string |
Represents a line starter type.
| Name | Number | Description |
|---|---|---|
| EVENT | 0 | |
| FUNCTION | 2 | |
| PROCESS | 3 |
Represents a player's mode.
| Name | Number | Description |
|---|---|---|
| PLAY | 0 | |
| BUILD | 1 | |
| DEV | 2 | |
| CODE_STALK | 3 | |
| VERIFY | 4 | |
| VANISH | 5 | |
| IDLE | 6 |
Teleports the player to the specified location, the player must be building or coding, and the location will be clamped to the plot boundaries.
| Field | Type | Label | Description |
|---|---|---|---|
| location | APILocation |
Requests to execute a code operation. An S2CCodeOperationResult message will be sent as a response, the relevant field will be set depending on the operation requested.
| Field | Type | Label | Description |
|---|---|---|---|
| get_by_location | GetByLocationOperation | ||
| get_by_block | GetByBlockOperation | ||
| place | PlaceOperation | ||
| delete_by_location | DeleteByLocationOperation | ||
| delete_by_block | DeleteByBlockOperation | ||
| replace_by_location | ReplaceByLocationOperation | ||
| replace_by_block | ReplaceByBlockOperation |
Requests to execute multiple code operations in one message. An S2CMultiCodeOperationResult message will be sent as a response, containing the results of all operations requested.
| Field | Type | Label | Description |
|---|---|---|---|
| operations | C2SCodeOperation | repeated |
Requests to delete the code block with the given line starter type and action name, requires the player to have developer permissions on the plot, and that the code block exists.
| Field | Type | Label | Description |
|---|---|---|---|
| type | LineStarterBlock | ||
| action | string |
Requests to delete the code block at the given location, requires the player to have developer permissions on the plot, and the location being a valid line starter.
| Field | Type | Label | Description |
|---|---|---|---|
| location | APILocation |
Requests to get the template for the given line starter type and action name, requires the player to have developer permissions on the plot, and that the code block exists.
| Field | Type | Label | Description |
|---|---|---|---|
| type | LineStarterBlock | ||
| action | string |
Requests to get the template for the code block at the given location, if the location is a line starter, the entire line will be returned, otherwise only the code block will be returned, requires the player to have developer permissions on the plot, and the location being a valid line starter.
| Field | Type | Label | Description |
|---|---|---|---|
| location | APILocation |
Requests to place a template at the given location, requires the player to have developer permissions on the plot, the location being a valid line starter, and that the template will not override any blocks nor exit the plot bounds.
| Field | Type | Label | Description |
|---|---|---|---|
| location | APILocation | ||
| template | Template |
Requests to replace the code block with the given line starter type and action name with the given template, requires the player to have developer permissions on the plot, and that the code block exists, and that the template will not override any blocks nor exit the plot bounds (except for the blocks being replaced).
| Field | Type | Label | Description |
|---|---|---|---|
| type | LineStarterBlock | ||
| action | string | ||
| template | Template |
Requests to replace the code block at the given location with the given template, requires the player to have developer permissions on the plot, the location being a valid line starter, and that the template will not override any blocks nor exit the plot bounds (except for the blocks being replaced).
| Field | Type | Label | Description |
|---|---|---|---|
| location | APILocation | ||
| template | Template |
Notifies the server you are interested in receiving ModAPI messages. The client sends this during the configuration stage. This must be sent before any ModAPI messages are sent by the client. A S2CHandshakeResponse message will be sent in response.
| Field | Type | Label | Description |
|---|---|---|---|
| protocol_version | string |
Warning
This repository is a work in progress, packets may be changed, added, and removed at any time, and this repository may go unmaintained for long periods of time. No promises are made.