mirror of
https://github.com/NATroutter/egg-hytale.git
synced 2026-03-01 11:21:13 +03:00
264 lines
14 KiB
JSON
264 lines
14 KiB
JSON
{
|
|
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
|
"meta": {
|
|
"version": "PTDL_v2",
|
|
"update_url": "https:\/\/raw.githubusercontent.com\/NATroutter\/egg-hytale\/refs\/heads\/main\/egg-hytale.pterodactyl.json"
|
|
},
|
|
"exported_at": "2026-01-15T12:29:34+02:00",
|
|
"name": "Hytale",
|
|
"author": "contact@natroutter.fi",
|
|
"description": "Hytale is a block-based sandbox game that blends creative building with RPG adventure. Explore procedurally generated worlds filled with unique biomes, dungeons, and creatures. Build anything from simple homes to grand castles, craft items, and battle monsters. Create custom content with built-in modding tools, host your own servers, and shape the experience with plugins and mods. Play solo or with friends in a world designed for both creation and exploration.\r\n\r\nCredits:\r\n- Made by NATroutter\r\n- https:\/\/natroutter.fi\r\n- https:\/\/github.com\/NATroutter",
|
|
"features": [
|
|
"java_version"
|
|
],
|
|
"docker_images": {
|
|
"Hytale": "ghcr.io\/natroutter\/egg-hytale:latest"
|
|
},
|
|
"file_denylist": [],
|
|
"startup": ".\/start.sh",
|
|
"config": {
|
|
"files": "{}",
|
|
"startup": "{\r\n \"done\": \"Hytale Server Booted!\"\r\n}",
|
|
"logs": "{}",
|
|
"stop": "stop"
|
|
},
|
|
"scripts": {
|
|
"installation": {
|
|
"script": "#!\/bin\/bash\r\nset -e\r\n\r\nDOWNLOAD_URL=\"https:\/\/downloader.hytale.com\/hytale-downloader.zip\"\r\nDOWNLOAD_FILE=\"hytale-downloader.zip\"\r\n\r\nARCH=\"$(uname -m)\"\r\n\r\necho \"Platform: ${ARCH}\"\r\necho \"Installing base dependencies...\"\r\n\r\napt update\r\napt install -y curl unzip jq\r\n\r\n# ARM-only setup for running amd64 downloader\r\nif [ \"${ARCH}\" = \"aarch64\" ]; then\r\n echo \"ARM64 detected, enabling amd64 emulation with QEMU...\"\r\n\r\n apt install -y qemu-user-static\r\n\r\n dpkg --add-architecture amd64 || true\r\n apt update || true\r\n apt install -y libc6:amd64 || true\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\necho \"Starting Hytale downloader installation...\"\r\necho \"Downloading hytale-downloader.zip...\"\r\n\r\ncurl -L -o \"${DOWNLOAD_FILE}\" \"${DOWNLOAD_URL}\"\r\nif [ $? -ne 0 ]; then\r\n echo \"Error: Failed to download ${DOWNLOAD_URL}\"\r\n exit 1\r\nfi\r\n\r\necho \"Extracting ${DOWNLOAD_FILE}...\"\r\nunzip -o \"${DOWNLOAD_FILE}\"\r\nif [ $? -ne 0 ]; then\r\n echo \"Error: Failed to extract ${DOWNLOAD_FILE}\"\r\n exit 1\r\nfi\r\n\r\necho \"Cleaning up...\"\r\nrm -f \"${DOWNLOAD_FILE}\" QUICKSTART.md hytale-downloader-windows-amd64.exe\r\n\r\nchmod +x .\/hytale-downloader-linux-amd64\r\n\r\n# ARM wrapper setup\r\nif [ \"${ARCH}\" = \"aarch64\" ]; then\r\n echo \"Setting up QEMU wrapper for amd64 downloader...\"\r\n\r\n cp \/usr\/bin\/qemu-x86_64-static .\/qemu-x86_64-static\r\n\r\n cat > .\/hytale-downloader-linux-arm64 << 'EOF'\r\n#!\/bin\/bash\r\nset -e\r\n\r\nREAL_BIN=\"\/home\/container\/hytale-downloader-linux-amd64\"\r\nQEMU_LOCAL=\"\/home\/container\/qemu-x86_64-static\"\r\n\r\nif [ -x \"$QEMU_LOCAL\" ]; then\r\n exec \"$QEMU_LOCAL\" \"$REAL_BIN\" \"$@\"\r\nelse\r\n exec \/usr\/bin\/qemu-x86_64-static \"$REAL_BIN\" \"$@\"\r\nfi\r\nEOF\r\n\r\n chmod +x .\/hytale-downloader-linux-arm64\r\nfi\r\n\r\n# Create version file\r\nif [ ! -f \"\/mnt\/server\/version.txt\" ]; then\r\n echo \"Creating version check file...\"\r\n touch \/mnt\/server\/version.txt\r\n chmod 666 \/mnt\/server\/version.txt\r\nfi\r\n\r\n# Create auth cache file\r\nif [ ! -f \"\/mnt\/server\/.hytale-auth-tokens.json\" ]; then\r\n echo \"Creating auth cache file...\"\r\n touch \/mnt\/server\/.hytale-auth-tokens.json\r\n chmod 666 \/mnt\/server\/.hytale-auth-tokens.json\r\nfi\r\n\r\necho \"Installation complete!\"",
|
|
"container": "ghcr.io\/pelican-eggs\/installers:debian",
|
|
"entrypoint": "bash"
|
|
}
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "Accept Early Plugins",
|
|
"description": "Acknowledge that loading early plugins is unsupported and may cause stability issues",
|
|
"env_variable": "ACCEPT_EARLY_PLUGINS",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Allow Self Operator",
|
|
"description": "Allows players to give themselves operator (admin) permissions using the \/op command. Use with caution, as this grants full control over the server.",
|
|
"env_variable": "ALLOW_OP",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Asset Pack",
|
|
"description": "The asset pack used by the server, containing all game items, textures, models, and other visual resources.",
|
|
"env_variable": "ASSET_PACK",
|
|
"default_value": "Assets.zip",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string|regex:\/^\\s*([\\w._-]+)\\.zip\\s*$\/",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Auth Mode",
|
|
"description": "Authentication mode",
|
|
"env_variable": "AUTH_MODE",
|
|
"default_value": "AUTHENTICATED",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string|in:AUTHENTICATED,OFFLINE,INSECURE",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Automatic Update",
|
|
"description": "Update the hytale server automaticly",
|
|
"env_variable": "AUTOMATIC_UPDATE",
|
|
"default_value": "1",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Backup Frequency",
|
|
"description": "Backup interval in minutes",
|
|
"env_variable": "BACKUP_FREQUENCY",
|
|
"default_value": "30",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|integer|min:1",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Disable Sentry Crash Reporting",
|
|
"description": "Important: Disable Sentry during active plugin development.\r\n\r\nHytale use Sentry to track crashes. Disable it to avoid submitting your development errors",
|
|
"env_variable": "DISABLE_SENTRY",
|
|
"default_value": "1",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Enable Backups",
|
|
"description": "Enable automatic backups",
|
|
"env_variable": "ENABLE_BACKUPS",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "JVM Arguments",
|
|
"description": "Additional Java Virtual Machine arguments for advanced configuration.\r\n\r\nWarning: Improper JVM settings can lead to poor performance, crashes, or failure to start. Only modify if you understand what these parameters do.",
|
|
"env_variable": "JVM_ARGS",
|
|
"default_value": "-XX:+UseG1GC -XX:+UseCompactObjectHeaders -XX:+UseStringDeduplication",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Leverage Ahead-Of-Time Cache",
|
|
"description": "The server ships with a pre-trained AOT cache (HytaleServer.aot) that improves boot times by skipping JIT warmup. See https:\/\/openjdk.org\/jeps\/514",
|
|
"env_variable": "LEVERAGE_AHEAD_OF_TIME_CACHE",
|
|
"default_value": "1",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Game Profile (username)",
|
|
"description": "Specify which Hytale profile should be used for server authentication.\r\n\r\nHow to find your profile username:\r\n1. Visit https:\/\/accounts.hytale.com\/\r\n2. Click \"Game Profiles\" in the left side menu\r\n3. Copy the username of the profile you want to use\r\n4. Paste it into this field\r\n\r\nLeave empty to use your default\/first profile automatically.",
|
|
"env_variable": "GAME_PROFILE",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Patchline",
|
|
"description": "What release channel you want to use",
|
|
"env_variable": "PATCHLINE",
|
|
"default_value": "release",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Memory overhead",
|
|
"description": "The amount of RAM (in MB) kept aside for the system so the server doesn\u2019t use everything. Java will get the rest.",
|
|
"env_variable": "MEMORY_OVERHEAD",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|integer|min:0",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Maximum Backups",
|
|
"description": "The maximum number of backups to keep. When this limit is reached, the oldest backups will be deleted automatically.",
|
|
"env_variable": "MAXIMUM_BACKUPS",
|
|
"default_value": "5",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|integer|min:1",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Boot commands",
|
|
"description": "Comma-separated commands to run on server start (executed synchronously in order)",
|
|
"env_variable": "BOOT_COMMANDS",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Force network flush",
|
|
"description": "Forces the server to immediately send all pending network data to clients, bypassing normal buffering. This can reduce delays for critical updates but may slightly increase network usage.",
|
|
"env_variable": "FORCE_NETWORK_FLUSH",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Event Debug",
|
|
"description": "Enables detailed logging of server events for debugging purposes. Useful for troubleshooting issues or tracking event behavior, but may produce a lot of output.",
|
|
"env_variable": "EVENT_DEBUG",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Logger Level",
|
|
"description": "Sets the logging level for specific components. Use a comma-separated list in the format LoggerName:LEVEL (for example, com.example:INFO) to control how much detail is logged.",
|
|
"env_variable": "LOGGER_LEVEL",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Validate world generation",
|
|
"description": "Causes the server to exit with an error code if default world gen is invalid. Leave empty to skip validation.",
|
|
"env_variable": "VALIDATE_WORLD_GENERATION",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Validate prefabs",
|
|
"description": "Forces the server to stop and exit with an error if any specified prefab types are invalid. Provide a comma-separated list of prefab categories (e.g. PHYSICS,BLOCKS,BLOCK_STATES,ENTITIES,BLOCK_FILLER) to check. Leave empty to skip validation.",
|
|
"env_variable": "VALIDATE_PREFABS",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Validate Assets",
|
|
"description": "Causes the server to exit with an error code if assets are invalid. Leave empty to skip validation.",
|
|
"env_variable": "VALIDATE_ASSETS",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Enable Source Query Support",
|
|
"description": "Adds the Source Query integration so your server can answer A2S queries such as server name, player count, and status.",
|
|
"env_variable": "ENABLE_SOURCE_QUERY_SUPPORT",
|
|
"default_value": "0",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Source Query Listening Port",
|
|
"description": "Specifies the port used by the Source Query service to handle A2S requests. This must be separate from the main game port. By default, it is set to the game port plus one.",
|
|
"env_variable": "QUERY_PORT",
|
|
"default_value": "5021",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|integer|between:1,65535",
|
|
"field_type": "text"
|
|
}
|
|
]
|
|
} |