diff --git a/database/seeds/EggSeeder.php b/database/seeds/EggSeeder.php index 3c5b96fc6..4f5915a2d 100644 --- a/database/seeds/EggSeeder.php +++ b/database/seeds/EggSeeder.php @@ -82,6 +82,7 @@ class EggSeeder extends Seeder 'Minecraft', 'Source Engine', 'Voice Servers', + 'Rust', ]); } diff --git a/database/seeds/NestSeeder.php b/database/seeds/NestSeeder.php index 99239daf1..38b221846 100644 --- a/database/seeds/NestSeeder.php +++ b/database/seeds/NestSeeder.php @@ -44,6 +44,7 @@ class NestSeeder extends Seeder $this->createMinecraftNest(array_get($items, 'Minecraft')); $this->createSourceEngineNest(array_get($items, 'Source Engine')); $this->createVoiceServersNest(array_get($items, 'Voice Servers')); + $this->createRustNest(array_get($items, 'Rust')); } /** @@ -81,7 +82,7 @@ class NestSeeder extends Seeder } /** - * Create the Source Engine Games nest to be used later on. + * Create the Voice Servers nest to be used later on. * * @param array|null $nest * @@ -96,4 +97,21 @@ class NestSeeder extends Seeder ], 'support@pterodactyl.io'); } } + + /** + * Create the Rust nest to be used later on. + * + * @param array|null $nest + * + * @throws \Pterodactyl\Exceptions\Model\DataValidationException + */ + private function createRustNest(array $nest = null) + { + if (is_null($nest)) { + $this->creationService->handle([ + 'name' => 'Rust', + 'description' => 'Rust - A game where you must fight to survive.', + ], 'support@pterodactyl.io'); + } + } } diff --git a/database/seeds/eggs/rust/egg-rust.json b/database/seeds/eggs/rust/egg-rust.json new file mode 100644 index 000000000..c3d4901f7 --- /dev/null +++ b/database/seeds/eggs/rust/egg-rust.json @@ -0,0 +1,135 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2017-11-05T20:51:45-05:00", + "name": "Rust", + "author": "support@pterodactyl.io", + "description": "The only aim in Rust is to survive. To do this you will need to overcome struggles such as hunger, thirst and cold. Build a fire. Build a shelter. Kill animals for meat. Protect yourself from other players, and kill them for meat. Create alliances with other players and form a town. Do whatever it takes to survive.", + "image": "quay.io\/pterodactyl\/core:rust", + "startup": ".\/RustDedicated -batchmode +server.port {{SERVER_PORT}} +server.identity \"rust\" +rcon.port {{RCON_PORT}} +rcon.web true +server.hostname \\\"{{HOSTNAME}}\\\" +server.level \\\"{{LEVEL}}\\\" +server.description \\\"{{DESCRIPTION}}\\\" +server.url \\\"{{SERVER_URL}}\\\" +server.headerimage \\\"{{SERVER_IMG}}\\\" +server.worldsize \\\"{{WORLD_SIZE}}\\\" +server.seed \\\"{{WORLD_SEED}}\\\" +server.maxplayers {{MAX_PLAYERS}} +rcon.password \\\"{{RCON_PASS}}\\\" {{ADDITIONAL_ARGS}}", + "config": { + "files": "{}", + "startup": "{\r\n \"done\": \"Server startup complete\",\r\n \"userInteraction\": []\r\n}", + "logs": "{\r\n \"custom\": false,\r\n \"location\": \"latest.log\"\r\n}", + "stop": "quit" + }, + "scripts": { + "installation": { + "script": "apt update\r\napt -y --no-install-recommends install curl unzip lib32gcc1 ca-certificates\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\r\n\r\nmkdir -p \/mnt\/server\/steam\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steam\r\ncd \/mnt\/server\/steam\r\nchown -R root:root \/mnt\r\n\r\nexport HOME=\/mnt\/server\r\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update 258550 +quit\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v \/mnt\/server\/steam\/linux32\/steamclient.so \/mnt\/server\/.steam\/sdk32\/steamclient.so", + "container": "ubuntu:16.04", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Server Name", + "description": "The name of your server in the public server list.", + "env_variable": "HOSTNAME", + "default_value": "A Rust Server", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:40" + }, + { + "name": "OxideMod", + "description": "Set whether you want the server to use and auto update OxideMod or not. Valid options are \"1\" for true and \"0\" for false.", + "env_variable": "OXIDE", + "default_value": "false", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|boolean" + }, + { + "name": "Level", + "description": "The world file for Rust to use.", + "env_variable": "LEVEL", + "default_value": "Procedural Map", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:20" + }, + { + "name": "Description", + "description": "The description under your server title. Commonly used for rules & info. Use \\n for newlines.", + "env_variable": "DESCRIPTION", + "default_value": "Powered by Pterodactyl", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string" + }, + { + "name": "URL", + "description": "The URL for your server. This is what comes up when clicking the \"Visit Website\" button.", + "env_variable": "SERVER_URL", + "default_value": "http:\/\/pterodactyl.io", + "user_viewable": 1, + "user_editable": 1, + "rules": "present|url" + }, + { + "name": "World Size", + "description": "The world size for a procedural map.", + "env_variable": "WORLD_SIZE", + "default_value": "3000", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|integer" + }, + { + "name": "World Seed", + "description": "The seed for a procedural map.", + "env_variable": "WORLD_SEED", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "present" + }, + { + "name": "Max Players", + "description": "The maximum amount of players allowed in the server at once.", + "env_variable": "MAX_PLAYERS", + "default_value": "40", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|integer" + }, + { + "name": "Server Image", + "description": "The header image for the top of your server listing.", + "env_variable": "SERVER_IMG", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "present|url" + }, + { + "name": "RCON Port", + "description": "Port for RCON connections.", + "env_variable": "RCON_PORT", + "default_value": "8401", + "user_viewable": 1, + "user_editable": 0, + "rules": "required|integer" + }, + { + "name": "RCON Password", + "description": "RCON access password.", + "env_variable": "RCON_PASS", + "default_value": "CHANGEME", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:64" + }, + { + "name": "Additional Arguments", + "description": "Add additional startup parameters to the server.", + "env_variable": "ADDITIONAL_ARGS", + "default_value": "", + "user_viewable": 1, + "user_editable": 1, + "rules": "present" + } + ] +}