diff --git a/squad/squad/egg-squad.json b/squad/squad/egg-squad.json index a8735ce7..64730158 100644 --- a/squad/squad/egg-squad.json +++ b/squad/squad/egg-squad.json @@ -3,22 +3,22 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2018-02-21T13:00:36-05:00", + "exported_at": "2019-10-08T08:47:08-04:00", "name": "Squad", "author": "brycea@rapidnetworks.org", "description": "Squad is a 50 vs 50 multiplayer first-person shooter that aims to capture combat realism through communication and teamplay. Major features include vehicle-based combined arms gameplay, large scale environments, base building, and integrated positional VoIP for proximity talking & radio.", "image": "quay.io\/pterodactyl\/core:source", - "startup": ".\/SquadServer.sh Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}}", + "startup": "\/home\/container\/SquadGame\/Binaries\/Linux\/SquadGameServer SquadGame Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}}", "config": { - "files": "{}", - "startup": "{\r\n \"done\": \"LogInit:Display: Starting Game.\",\r\n \"userInteraction\": []\r\n}", + "files": "{\r\n \"SquadGame\/ServerConfig\/Server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"ServerName\": \"ServerName=\\\"{{server.build.env.servername}}\\\"\",\r\n \"MaxPlayers\": \"MaxPlayers={{server.build.env.maxplayers}}\",\r\n \"AllowTeamChanges\": \"AllowTeamChanges={{server.build.env.allowteamchange}}\",\r\n \"ShouldAdvertise\": \"ShouldAdvertise={{server.build.env.advertise}}\",\r\n \"NumReservedSlots\": \"NumReservedSlots={{server.build.env.reservedslots}}\",\r\n \"PreventTeamChangeIfUnbalanced\": \"PreventTeamChangeIfUnbalanced={{server.build.env.ptciu}}\",\r\n \"EnforceTeamBalance\": \"EnforceTeamBalance={{server.build.env.teambal}}\",\r\n \"RecordDemos\": \"RecordDemos={{server.build.env.recorddemos}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Engine Initialization\",\r\n \"userInteraction\": []\r\n}", "logs": "{\r\n \"custom\": false,\r\n \"location\": \"latest.log\"\r\n}", "stop": "^C" }, "scripts": { "installation": { - "script": "apt update\r\napt -y --no-install-recommends install curl unzip libstdc++6 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 403240 +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", + "script": "#!\/bin\/bash\r\n## install required packages to install squad\r\napt update\r\napt -y --no-install-recommends install curl unzip libstdc++6 lib32gcc1 ca-certificates\r\n\r\n## install steamcmd\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\r\nmkdir -p \/mnt\/server\/steam\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steam\r\ncd \/mnt\/server\/steam\r\n\r\n## needs to be used for steamcmd to operate correctly\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install squad\r\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} +quit\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\n\r\ncp -v \/mnt\/server\/steam\/linux32\/steamclient.so \/mnt\/server\/.steam\/sdk32\/steamclient.so\r\n\r\nchmod +x \/mnt\/server\/SquadGame\/Binaries\/Linux\/SquadGameServer", + "container": "ubuntu:18.04", "entrypoint": "bash" } }, @@ -31,6 +31,96 @@ "user_viewable": 1, "user_editable": 1, "rules": "required|numeric" + }, + { + "name": "ld lib path", + "description": "this is needed for some reason", + "env_variable": "LD_LIBRARY_PATH", + "default_value": "\/home\/container\/linux64\/", + "user_viewable": 0, + "user_editable": 0, + "rules": "required|string" + }, + { + "name": "Game ID", + "description": "The ID corresponding to the game to download and run using SRCDS.", + "env_variable": "SRCDS_APPID", + "default_value": "403240", + "user_viewable": 0, + "user_editable": 0, + "rules": "required|string|max:20" + }, + { + "name": "Server Name", + "description": "The name for the server in the server list", + "env_variable": "servername", + "default_value": "Squad Server", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string|max:30" + }, + { + "name": "Max Players", + "description": "Sets the maximum number of players.", + "env_variable": "maxplayers", + "default_value": "80", + "user_viewable": 1, + "user_editable": 1, + "rules": "required" + }, + { + "name": "Allow Team Change", + "description": "Allow players to change teams ( true \/ false )", + "env_variable": "allowteamchange", + "default_value": "true", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string" + }, + { + "name": "Advertise Server", + "description": "Have the server report to the public server list ( true \/ false )", + "env_variable": "advertise", + "default_value": "true", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string" + }, + { + "name": "Reserved Slows", + "description": "The number of reserved slots for admins \/ mods", + "env_variable": "reservedslots", + "default_value": "0", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string" + }, + { + "name": "Prevent Team Change If Unbalanced", + "description": "This will prevent players from changing teams if they're already unbalanced ( true \/ false )", + "env_variable": "ptciu", + "default_value": "true", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string" + }, + { + "name": "Enforce Team Balance", + "description": "This will FORCE team balance if the teams are too uneven ( true \/ false )", + "env_variable": "teambal", + "default_value": "true", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string" + }, + { + "name": "Record Demos", + "description": "This will record demos of the players ( true \/ false )", + "env_variable": "recorddemos", + "default_value": "true", + "user_viewable": 1, + "user_editable": 1, + "rules": "required|string" } ] } \ No newline at end of file