Last active
January 15, 2026 12:32
-
-
Save shimizu-izumi/177d62c75b7322c2a09d3cadedca1acc to your computer and use it in GitHub Desktop.
JSON schema file for Hytale plugin manifests
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "title": "Hytale Plugin Manifest", | |
| "type": "object", | |
| "properties": { | |
| "Group": { | |
| "type": "string", | |
| "description": "Group name, e.g. the author's circle/company" | |
| }, | |
| "Name": { | |
| "type": "string" | |
| }, | |
| "Description": { | |
| "type": "string" | |
| }, | |
| "Version": { | |
| "$ref": "#/$defs/SemverRange" | |
| }, | |
| "Authors": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "#/$defs/AuthorInfo" | |
| }, | |
| "uniqueItems": true | |
| }, | |
| "Website": { | |
| "type": "string", | |
| "format": "uri" | |
| }, | |
| "Main": { | |
| "type": "string", | |
| "description": "Full qualified package path to main class, e.g. org.example.ExamplePlugin", | |
| "pattern": "^(?:[a-z][a-z0-9]*\\.)+[A-Z][A-Za-z0-9]*$", | |
| }, | |
| "ServerVersion": { | |
| "type": "string", | |
| "description": "Hytale server version compatible with the plugin", | |
| "default": "*" | |
| }, | |
| "Dependencies": { | |
| "$ref": "#/$defs/DependencyInfo" | |
| }, | |
| "OptionalDependencies": { | |
| "$ref": "#/$defs/DependencyInfo" | |
| }, | |
| "LoadBefore": { | |
| "$ref": "#/$defs/DependencyInfo" | |
| }, | |
| "SubPlugins": { | |
| "type": "array", | |
| "items": { | |
| "$ref": "#" | |
| }, | |
| "uniqueItems": true | |
| }, | |
| "DisabledByDefault": { | |
| "type": "boolean", | |
| "default": false | |
| }, | |
| "IncludesAssetPack": { | |
| "type": "boolean", | |
| "default": false | |
| } | |
| }, | |
| "required": [ | |
| "Group", | |
| "Name", | |
| "Version", | |
| "Authors", | |
| "Main", | |
| "ServerVersion" | |
| ], | |
| "additionalProperties": false, | |
| "$defs": { | |
| "AuthorInfo": { | |
| "type": "object", | |
| "properties": { | |
| "Name": { | |
| "type": "string" | |
| }, | |
| "Email": { | |
| "type": "string", | |
| "format": "email" | |
| }, | |
| "Url": { | |
| "type": "string", | |
| "format": "uri" | |
| } | |
| }, | |
| "required": [ | |
| "Name" | |
| ], | |
| "additionalProperties": false | |
| }, | |
| "DependencyInfo": { | |
| "type": "object", | |
| "properties": { | |
| "^[A-Za-z0-9_.-]+:[A-Za-z0-9_.-]+$": { | |
| "$ref": "#/$defs/SemverRange" | |
| } | |
| }, | |
| "additionalProperties": false | |
| }, | |
| "SemverRange": { | |
| "type": "string", | |
| "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$" | |
| } | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment