{ "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL", "meta": { "version": "PTDL_v2", "update_url": null }, "exported_at": "2024-06-01T00:17:12+00:00", "name": "SuperTuxKart", "author": "mattamn107@github.com", "uuid": "9eec81aa-b165-4233-aa30-1244c6c96e9f", "description": "Egg for hosting a SuperTuxKart Server.", "features": null, "docker_images": { "ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian" }, "file_denylist": [], "startup": ".\/bin\/supertuxkart --server-config={{CONFIG_NAME}} --lan-server={{SERVER_NAME}} --network-console --port=\"{{SERVER_PORT}}\" --difficulty={{DIFFICULTY}} --mode={{MODE}} --max-players={{MAX_PLAYERS}} --motd=\"{{MOTD}}\"", "config": { "files": "{}", "startup": "{\r\n \"done\": \"Available command:\"\r\n}", "logs": "{}", "stop": "quit" }, "scripts": { "installation": { "script": "#!\/bin\/bash\r\n\r\n# Install build tools\r\necho \"deb http:\/\/deb.debian.org\/debian bullseye-backports main\" >> \/etc\/apt\/sources.list && \\\r\napt-get update && apt-get -y full-upgrade && \\\r\n apt-get install -y build-essential cmake libbluetooth-dev libsdl2-dev \\\r\n libcurl4-openssl-dev libenet-dev libfreetype6-dev libharfbuzz-dev \\\r\n libjpeg-dev libogg-dev libopenal-dev libpng-dev \\\r\n libssl-dev libvorbis-dev libmbedtls-dev pkg-config zlib1g-dev subversion\r\n\r\nif [ ! -d \"\/mnt\/server\/stk-code\" ] && [ ! -d \"\/mnt\/server\/stk-assets\" ]; then\r\n \r\n #clone code repo\r\n git clone https:\/\/github.com\/supertuxkart\/stk-code \/mnt\/server\/stk-code\r\n \r\n #get assets\r\n svn co https:\/\/svn.code.sf.net\/p\/supertuxkart\/code\/stk-assets \/mnt\/server\/stk-assets\r\n \r\n # go into the stk-code directory\r\n cd \/mnt\/server\/stk-code\r\n \r\n # create and enter the cmake_build directory\r\n mkdir cmake_build\r\n \r\nelse\r\n\r\n #update existing stuff\r\n cd \/mnt\/server\/stk-assets\r\n svn up\r\n \r\n cd \/mnt\/server\/stk-code\r\n git pull\r\n\r\n\r\nfi\r\n\r\n#build the server\r\ncd cmake_build\r\ncmake .. -DSERVER_ONLY=ON\r\nmake\r\n\r\n#copy binary to root\/bin and make it executable\r\nmkdir \/mnt\/server\/bin\r\ncp \/mnt\/server\/stk-code\/cmake_build\/bin\/supertuxkart \/mnt\/server\/bin\/supertuxkart\r\nchmod +x \/mnt\/server\/bin\/supertuxkart\r\n\r\n#copy data folder\r\ncp -r \/mnt\/server\/stk-code\/data \/mnt\/server\/data\r\n\r\n#copy extra assets to data folder\r\ncd \/mnt\/server\/stk-assets\r\ncp -r library models music sfx textures tracks karts \/mnt\/server\/data\/\r\n\r\n# Delete repo's to save disk space.\r\n#rm -rf \/mnt\/server\/stk-code && rm -rf \/mnt\/server\/stk-assets", "container": "ghcr.io\/parkervcp\/installers:debian", "entrypoint": "bash" } }, "variables": [ { "name": "Server Name", "description": "The Name of the Server", "env_variable": "SERVER_NAME", "default_value": "Pterodactyl_Server", "user_viewable": true, "user_editable": true, "rules": "required|string|max:50", "sort": null, "field_type": "text" }, { "name": "Config File Name", "description": "Name of the Config File.", "env_variable": "CONFIG_NAME", "default_value": "config.xml", "user_viewable": true, "user_editable": true, "rules": "required|regex:\/^([\\w\\d._-]+)(\\.xml)$\/", "sort": null, "field_type": "text" }, { "name": "Mode", "description": "0 = Normal Race\r\n1 = Time Trial\r\n2 = Battle\r\n3 = Soccer\r\n4 = Follow The Leader\r\n5 = Capture the Flag", "env_variable": "MODE", "default_value": "0", "user_viewable": true, "user_editable": true, "rules": "required|string|in:0,1,2,3,4,5", "sort": null, "field_type": "text" }, { "name": "Difficulty", "description": "Speed of the carts and AI difficulty\r\n0 = Beginner\r\n1 = Intermediate\r\n2 = Expert\r\n3 = SuperTux", "env_variable": "DIFFICULTY", "default_value": "0", "user_viewable": true, "user_editable": true, "rules": "required|string|in:0,1,2,3", "sort": null, "field_type": "text" }, { "name": "Max Players", "description": "How many players can there be in the server.", "env_variable": "MAX_PLAYERS", "default_value": "8", "user_viewable": true, "user_editable": true, "rules": "required|numeric|between:1,24", "sort": null, "field_type": "text" }, { "name": "Message of the Day", "description": "Message of the Day displayed in the server.", "env_variable": "MOTD", "default_value": "", "user_viewable": true, "user_editable": true, "rules": "required|string|max:100", "sort": null, "field_type": "text" } ] }