Merge pull request #1 from parkervcp/master

Upgrade
This commit is contained in:
Exonical 2018-04-08 01:51:52 -04:00 committed by GitHub
commit baf6ae9d05
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
22 changed files with 723 additions and 38 deletions

15
.github/issue_template.md vendored Normal file
View File

@ -0,0 +1,15 @@
Please fill out the information bellow and remove from the line up
---------------
Panel Version: (version number)
Daemon Version: (version number)
New Service: (yes/no) (Is this a request for a new service?)
Service: (minecraft/factorio/etc)
Modified: (yes/no) (did you add or change things, this includes startup configs/install scripts/variables)
Expected Behavior:
Actual Behavior:
Steps to Reproduce: (Step by step what to do to cause the issue)
If this is a request for a new service then you can add info here like links to the site where the server files can be found. If it is a steamcmd game have you looked at the custom source engine service yet?

View File

@ -2,12 +2,12 @@
## General rules
1. Keep it simple.
1. Keep it simple.
We don't need 8 miles of install script
2. Keep it Small.
2. Keep it Small.
Only use what is absolutely needed.
3. Try to stay in the stock containers.
If you need something in a container PR it to [my container repo](https://github.com/parkervcp/Containers) where I can review and pull up to the main repo.
3. Try to stay in the stock containers.
If you need something in a container PR it to [my image repo](https://github.com/parkervcp/images) where I can review and pull up to the main repo.
## Step 1.
#### Be aware of the pterodactyl install process.
@ -38,4 +38,4 @@ This is to maintain a clean repo that others can pull and be fully aware of what
## Step 3.
#### Don't be afraid to submit PR's to the egg repo.
I dont bite. I will work with you on the egg and the required things to run it.
I dont bite. I will work with you on the egg and the required things to run it.

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-23T19:29:30-05:00",
"exported_at": "2018-03-27T09:16:37-04:00",
"name": "Factorio",
"author": "parker@parkervcp.com",
"description": "The vanilla Factorio server.\r\n\r\nhttps:\/\/www.factorio.com\/",
@ -11,13 +11,13 @@
"startup": ".\/bin\/x64\/factorio --port {{SERVER_PORT}} --start-server {{SAVE_NAME}}.zip",
"config": {
"files": "{\r\n \"data\/server-settings.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"game_password\": \"{{server.build.env.SERVER_PASS}}\",\r\n \"max_players\": \"{{server.build.env.MAX_SLOTS}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Type 'help' for a list of commands\",\r\n \"userInteraction\": []\r\n}",
"startup": "{\r\n \"done\": \"InGame\",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"factorio-current.log\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Factorio Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk add --no-cache curl tar xz\r\n\r\nlatest_stable=`curl https:\/\/updater.factorio.com\/get-available-versions | grep stable | grep -o -E '([0-9]\\.[0-9][0-9]\\.[0-9][0-9]|[0-9]\\.[0-9][0-9]\\.[0-9])'`\r\nlatest_experimental=`curl https:\/\/updater.factorio.com\/get-available-versions | grep to | grep -o -E '([0-9]\\.[0-9][0-9]\\.[0-9][0-9]|[0-9]\\.[0-9][0-9]\\.[0-9])' | tail -1`\r\n\r\nif [ -z \"${FACTORIO_VERSION}\" ] || [ \"${FACTORIO_VERSION}\" == \"latest\" ]; then\r\n DL_VERSION=$latest_stable\r\nelif [ \"${FACTORIO_VERSION}\" == \"experimental\"]; then\r\n DL_VERSION=$latest_experimental\r\nelse\r\n DL_VERSION=${FACTORIO_VERSION}\r\nfi\r\n\r\necho \"\\n running 'curl -L https:\/\/www.factorio.com\/get-download\/${DL_VERSION}\/headless\/linux64 -o factorio-${DL_VERSION}.tar.gz' \\n\"\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -L https:\/\/www.factorio.com\/get-download\/${DL_VERSION}\/headless\/linux64 -o factorio-${DL_VERSION}.tar.gz\r\n\r\ntar -xf factorio-${DL_VERSION}.tar.gz --strip-components=1 -C \/mnt\/server\r\n\r\nrm factorio-${DL_VERSION}.tar.gz\r\n\r\nmv data\/map-gen-settings.example.json data\/map-gen-settings.json\r\nmv data\/server-settings.example.json data\/server-settings.json\r\n\r\n.\/bin\/x64\/factorio --create ${SAVE_NAME}",
"script": "#!\/bin\/ash\r\n# Factorio Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk add --no-cache curl tar xz\r\n\r\nlatest_stable=`curl https:\/\/updater.factorio.com\/get-available-versions | grep stable | grep -o -E '([0-9]\\.[0-9][0-9]\\.[0-9][0-9]|[0-9]\\.[0-9][0-9]\\.[0-9])'`\r\nlatest_experimental=`curl https:\/\/www.factorio.com\/download-headless\/experimental | grep -m 1 -o -E '([0-9]\\.[0-9][0-9]\\.[0-9][0-9]|[0-9]\\.[0-9][0-9]\\.[0-9])'`\r\n\r\nif [ -z \"${FACTORIO_VERSION}\" ] || [ \"${FACTORIO_VERSION}\" == \"latest\" ]; then\r\n DL_VERSION=$latest_stable\r\nelif [ \"${FACTORIO_VERSION}\" == \"experimental\" ]; then\r\n DL_VERSION=$latest_experimental\r\nelse\r\n DL_VERSION=${FACTORIO_VERSION}\r\nfi\r\n\r\necho -e \"\\n running 'curl -L https:\/\/www.factorio.com\/get-download\/${DL_VERSION}\/headless\/linux64 -o factorio-${DL_VERSION}.tar.gz' \\n\"\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -L https:\/\/www.factorio.com\/get-download\/${DL_VERSION}\/headless\/linux64 -o factorio-${DL_VERSION}.tar.gz\r\n\r\ntar -xf factorio-${DL_VERSION}.tar.gz --strip-components=1 -C \/mnt\/server\r\n\r\nrm factorio-${DL_VERSION}.tar.gz\r\n\r\nif [ -e data\/map-gen-settings.json ]; then\r\n echo \"map-gen exists\"\r\nelse\r\n echo \"copying map-gen default settings\"\r\n mv data\/map-gen-settings.example.json data\/map-gen-settings.json\r\nfi\r\n\r\nif [ -e data\/server-settings.json ]; then\r\n echo \"server settings exists\"\r\nelse\r\n echo \"copying server default settings\"\r\n mv data\/server-settings.example.json data\/server-settings.json\r\nfi\r\n\r\nif [ -e map-settings.json ]; then\r\n echo \"map settings exists\"\r\nelse\r\n echo \"copying map default settings\"\r\n mv data\/map-settings.example.json data\/map-settings.json\r\nfi\r\n\r\nif [ -e ${SAVE_NAME}.zip ]; then\r\n echo \"save file exists\"\r\nelse\r\n .\/bin\/x64\/factorio --create ${SAVE_NAME}\r\n chmod o+w ${SAVE_NAME}.zip\r\nfi",
"container": "frolvlad\/alpine-glibc",
"entrypoint": "ash"
}

View File

@ -3,52 +3,34 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-13T23:23:06-05:00",
"exported_at": "2018-03-26T13:04:05-04:00",
"name": "FiveM",
"author": "parker@parkervcp.com",
"description": "The FiveM multiplayer server on Pterodactyl.",
"image": "quay.io\/pterodactyl\/core:glibc",
"startup": ".\/cfx-server\/FXServer +exec server.cfg +set sv_licenseKey {{FIVEM_LICENSE}} +set citizen_dir \/home\/container\/cfx-server\/citizen",
"config": {
"files": "{\r\n \"server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"endpoint_add_tcp\": \"endpoint_add_tcp \\\"0.0.0.0:{{server.build.default.port}}\\\"\",\r\n \"endpoint_add_udp\": \"endpoint_add_udp \\\"0.0.0.0:{{server.build.default.port}}\\\"\",\r\n \"sv_hostname\": \"sv_hostname \\\"{{server.build.env.HOSTNAME}}\\\"\",\r\n \"sv_maxclients\": \"sv_maxclients {{server.build.env.MAX_CLIENTS}}\",\r\n \"sv_licenseKey\": \"sv_licenseKey {{server.build.env.FIVEM_LICENSE}}\"\r\n }\r\n }\r\n}",
"files": "{\r\n \"server_data\/server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"endpoint_add_tcp\": \"endpoint_add_tcp \\\"0.0.0.0:{{server.build.default.port}}\\\"\",\r\n \"endpoint_add_udp\": \"endpoint_add_udp \\\"0.0.0.0:{{server.build.default.port}}\\\"\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Server license key authentication succeeded. Welcome!\"\r\n}",
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# FiveM Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\n## Only download if a path is provided, otherwise continue.\r\napk add openssl tar xz curl git --no-cache\r\n\r\ngit clone https:\/\/github.com\/citizenfx\/cfx-server-data.git \/mnt\/server\/\r\n\r\ncd \/mnt\/server\r\n\r\nwget https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/446-8a058b67e5f11677c380a330f677e768e2b2a705\/fx.tar.xz\r\n\r\ntar xf fx.tar.xz alpine\/opt\/\r\n\r\nmv alpine\/opt\/cfx-server\/ .\/\r\n\r\nchmod +x .\/cfx-server\/FXServer\r\n\r\nrm -rf fx.tar.xz alpine\/\r\n\r\ncurl https:\/\/hastebin.com\/raw\/lawubemuhe >> server.cfg",
"script": "#!\/bin\/ash\r\n# FiveM Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\n## Only download if a path is provided, otherwise continue.\r\napk add openssl tar xz curl git --no-cache\r\n\r\necho \"cloning citizenfx files\"\r\n\r\ngit clone https:\/\/github.com\/citizenfx\/cfx-server-data.git \/mnt\/server\/\r\n\r\ncd \/mnt\/server\r\n\r\necho \"Downloading the latest fivem server files\"\r\nlatest_fivem_url=`curl https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/ | tail -3 | head -1 | cut -d'\"' -f2`\r\n\r\necho -e \"pulling files from https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${latest_fivem_url}fx.tar.xz\"\r\nwget https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${latest_fivem_url}fx.tar.xz\r\n\r\necho \"Extracting fivem files\"\r\n\r\ntar xf fx.tar.xz alpine\/opt\/\r\n\r\nmv alpine\/opt\/cfx-server\/ .\/\r\n\r\nchmod +x .\/cfx-server\/FXServer\r\n\r\nrm -rf fx.tar.xz alpine\/\r\n\r\necho \"Downloading default fivem config\"\r\n\r\ncurl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/GTA\/FiveM\/server.cfg >> server.cfg",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Server License Key",
"description": "Key is required to start the service. Get your keys at https://keymaster.fivem.net",
"name": "fivem license",
"description": "Required to start the service. Get your keys at https:\/\/keymaster.fivem.net\/",
"env_variable": "FIVEM_LICENSE",
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:32"
},
{
"name": "Hostname",
"description": "The name of your server as it appears in the server list.",
"env_variable": "HOSTNAME",
"default_value": "My FX Server",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:64"
},
{
"name": "Max Players",
"description": "Maximum amount of players at one time.",
"env_variable": "MAX_CLIENTS",
"default_value": "31",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|numeric|max:31"
}
]
}
}

26
GTA/SA-MP/egg-sa-mp.json Normal file
View File

@ -0,0 +1,26 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-25T21:32:57+02:00",
"name": "SA-MP",
"author": "bl4ckspr4y@protonmail.com",
"description": "SA-MP is a free Massively Multiplayer Online game mod for the PC version of Rockstar Games Grand Theft Auto: San Andreas (tm).",
"image": "quay.io\/parkervcp\/pterodactyl-images:samp",
"startup": ".\/samp03svr",
"config": {
"files": "{\r\n \"server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"port\": \"port {{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Started server on port: \",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"samp.log\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\napt -y update\r\napt -y --no-install-recommends install curl unzip lib32gcc1 ca-certificates\r\n\r\ncd \/tmp\r\ncurl -sSL -o samp.tar.gz http:\/\/files.sa-mp.com\/samp037svr_R2-1.tar.gz\r\n\r\nmkdir -p \/mnt\/server\r\ntar -xzvf samp.tar.gz -C \/mnt\/server\/\r\ncp -r \/mnt\/server\/samp03\/* \/mnt\/server\r\nrm -rf \/mnt\/server\/samp03\/\r\ncd \/mnt\/server\r\nsed -i '3d' \/mnt\/server\/server.cfg\r\necho \"rcon_password changemeplease\" >> \/mnt\/server\/server.cfg\r\n\r\nchown -R root:root \/mnt\r\n\r\nexport HOME=\/mnt\/server",
"container": "ubuntu:16.04",
"entrypoint": "bash"
}
},
"variables": []
}

21
LICENSE Normal file
View File

@ -0,0 +1,21 @@
MIT
Copyright (c) 2015 - 2017 Dane Everitt <dane@daneeveritt.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -0,0 +1,54 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-01T08:34:01-05:00",
"name": "Nukkit",
"author": "parker@parkervcp.com",
"description": "Nukkit is a Nuclear-Powered Server Software For Minecraft: Pocket Edition\r\n\r\nhttps:\/\/nukkit.io\/",
"image": "quay.io\/pterodactyl\/core:java-glibc",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Nukkit Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk add --no-cache curl openssl\r\n\r\ncd \/mnt\/server\r\n\r\n## Only download if a path is provided, otherwise continue.\r\nif [ ! -z \"${DL_PATH}\" ]; then\r\n MODIFIED_DOWNLOAD=`eval echo $(echo ${DL_PATH} | sed -e 's\/{{\/${\/g' -e 's\/}}\/}\/g')`\r\n wget ${MODIFIED_DOWNLOAD} -O ${SERVER_JARFILE}\r\nelif [ -z \"${NUKKIT_VERSION}\" ] || [ \"${NUKKIT_VERSION}\" == \"latest\" ]; then\r\n wget http:\/\/ci.mengcraft.com:8080\/job\/nukkit\/lastSuccessfulBuild\/artifact\/target\/nukkit-1.0-SNAPSHOT.jar -O ${SERVER_JARFILE}\r\nelse\r\n wget http:\/\/ci.mengcraft.com:8080\/job\/nukkit\/${NUKKIT_VERSION}\/artifact\/target\/nukkit-1.0-SNAPSHOT.jar -O ${SERVER_JARFILE}\r\nfi\r\n\r\nwget https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/Minecraft%20PE\/nukkit\/nukkit.yml",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Server Jar File",
"description": "The name of the server jarfile to run the server with.",
"env_variable": "SERVER_JARFILE",
"default_value": "server.jar",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
},
{
"name": "Download Path",
"description": "A URL to use to download Spigot rather than building it on the server. This is not user viewable. Use <code>{{DL_VERSION}}<\/code> in the URL to automatically insert the assigned version into the URL. If you do not enter a URL Spigot will build directly in the container (this will fail on low memory containers).",
"env_variable": "DL_PATH",
"default_value": "",
"user_viewable": 1,
"user_editable": 0,
"rules": "nullable|string"
},
{
"name": "nukkit version",
"description": "The version of Nukkitt to download (using the --rev tag). Use \"latest\" for latest.",
"env_variable": "NUKKIT_VERSION",
"default_value": "latest",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -0,0 +1,45 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-10T00:36:18-06:00",
"name": "Waterfall",
"author": "hostmaster@waterfallgaming.net",
"description": "Waterfall is a fork of the well-known BungeeCord server teleportation suite.",
"image": "quay.io\/pterodactyl\/core:java",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"config": {
"files": "{\r\n \"config.yml\": {\r\n \"parser\": \"yaml\",\r\n \"find\": {\r\n \"listeners[0].query_enabled\": true,\r\n \"listeners[0].query_port\": \"{{server.build.default.port}}\",\r\n \"listeners[0].host\": \"0.0.0.0:{{server.build.default.port}}\",\r\n \"servers.*.address\": {\r\n \"127.0.0.1\": \"{{config.docker.interface}}\",\r\n \"localhost\": \"{{config.docker.interface}}\"\r\n }\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Listening on \",\r\n \"userInteraction\": [\r\n \"Listening on \/0.0.0.0:25577\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"proxy.log.0\"\r\n}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Waterfall Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl\r\n\r\ncd \/mnt\/server\r\n\r\nif [ -z \"${WATERFALL_VERSION}\" ] || [ \"${WATERFALL_VERSION}\" == \"latest\" ]; then\r\n WATERFALL_VERSION=\"lastStableBuild\"\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} https:\/\/ci.destroystokyo.com\/job\/Waterfall\/${WATERFALL_VERSION}\/artifact\/Waterfall-Proxy\/bootstrap\/target\/Waterfall.jar",
"container": "alpine:3.4",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Waterfall Version",
"description": "The version of Waterfall to download and use.",
"env_variable": "WATERFALL_VERSION",
"default_value": "latest",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|alpha_num|between:1,6"
},
{
"name": "Waterfall Jar File",
"description": "The name of the Jarfile to use when running Waterfall.",
"env_variable": "SERVER_JARFILE",
"default_value": "waterfall.jar",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
}
]
}

View File

@ -0,0 +1,37 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-26T20:41:27-05:00",
"name": "Blightfall",
"author": "aevum@decess.us",
"description": "Blightfall is a combination modpack and adventure map about surviving on an alien planet. It uses magic mods and tech mods to create a novel gameplay experience. Can you survive on a world completely covered by Thaumcraft taint?\r\n\r\nhttps:\/\/www.technicpack.net\/modpack\/blightfall.592618",
"image": "quay.io\/pterodactyl\/core:java",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar Blightfall.jar",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Forge Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -sS http:\/\/servers.technicpack.net\/Technic\/servers\/blightfall\/Blightfall_Server_v$MODPACK_VERSION.zip -o Blightfall_$MODPACK_VERSION.zip\r\n\r\nunzip Blightfall_$MODPACK_VERSION.zip\r\n\r\nrm -rf Blightfall_$MODPACK_VERSION.zip",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Modpack Version",
"description": "Version of the modpack to use",
"env_variable": "MODPACK_VERSION",
"default_value": "2.1.5",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -0,0 +1,81 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-04-02T17:20:55-04:00",
"name": "Feed the Beast",
"author": "aevum@decess.us",
"description": "Egg to handle all official FTB Modpacks",
"image": "quay.io\/pterodactyl\/core:java",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar FTBserver-*.jar",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\",\r\n \"level-name\": \"{{server.build.env.LEVEL_NAME}}\",\r\n \"level-seed\": \"{{server.build.env.LEVEL_SEED}}\",\r\n \"max-players\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"motd\": \"{{server.build.env.MOTD}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Generic FTB Server Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# MODPACK_VERSION = version of the modpack, set in variables\r\n# i.e MODPACK_VERSION=1.5.0\r\n# MODPACK_URL = url base of the pack, set in variables, hardcoded\r\n# i.e https:\/\/www.feed-the-beast.com\/projects\/ftb-revelation\/files\r\n# MODPACK_URL=ftb-revelation\r\n\r\napk add curl --no-cache\r\n\r\n## Correcting for bad variables\r\nGETPACK=$(echo ${MODPACK_URL} | cut -d \"\/\" -f 5 )\r\necho -e \"\\n The pack being downloaded is $GETPACK \\n\"\r\n\r\n## Getting the Base URL\r\nBASEURL=https:\/\/www.feed-the-beast.com\/projects\/${GETPACK}\/files\r\necho \"The base URL is ${BASEURL}\"\r\n\r\n## This is meant to get the pack ID that is unique and not exactly clear \r\n\r\n\r\nif [ -z \"${MODPACK_VERSION}\" ] || [ \"${MODPACK_VERSION}\" == \"latest\" ]; then\r\n ID=`curl -sl ${BASEURL} | grep -i -A9 'title=\"release\"' | grep -i -o 'href=\".*\"' | cut -d \"\/\" -f5 | sed s\/\\\"\/\/g`\r\n echo \"ID: ${ID}\"\r\nelse \r\n ID=`curl -sl ${BASEURL} | grep -i -A9 \"${MODPACK_VERSION}\" | grep -m1 -oE 'href=\"[^\\\"]+\"' | cut -d \"\/\" -f5 | grep -oE [0-9]+`\r\n echo \"ID: ${ID}\"\r\nfi\r\n\r\nSECONDURL=${BASEURL}\/${ID}\r\necho \"SECONDURL: ${SECONDURL}\"\r\n\r\nGOOD_ID=`curl -sl ${SECONDURL} | grep -i server | grep -Eo 'href=\"[^\\\"]+\"' | grep -o -E \"[0-9]+\" | tail -1`\r\necho \"GOOD_ID: ${GOOD_ID}\"\r\n\r\nDL_URL=${BASEURL}\/${GOOD_ID}\/download\r\necho \"Download_URL: ${DL_URL}\"\r\n\r\ncd \/mnt\/server\r\n\r\necho \"Executing curl -L ${DL_URL} -o $GETPACK.zip\"\r\ncurl -L ${DL_URL} -o $GETPACK.zip\r\n\r\nunzip ${GETPACK}.zip\r\n\r\nrm -rf ${GETPACK}.zip\r\n\r\necho \"Running FTBInstall.sh\"\r\n\r\nsh .\/FTBInstall.sh",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Modpack URL Name",
"description": "Name of the modpack as referenced in URL's on feed-the-beast.com\r\ni.e\r\nhttps:\/\/www.feed-the-beast.com\/projects\/<MODPACK_URL>",
"env_variable": "MODPACK_URL",
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|regex:([a-z-0-9]+$)"
},
{
"name": "Modpack Version",
"description": "Version of the modpack to use.",
"env_variable": "MODPACK_VERSION",
"default_value": "latest",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
},
{
"name": "Level Seed",
"description": "Optional specified level seed for map generation",
"env_variable": "LEVEL_SEED",
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "nullable|string|max:40"
},
{
"name": "Max Players",
"description": "Max # of players on the server",
"env_variable": "MAX_PLAYERS",
"default_value": "20",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|integer|max:100"
},
{
"name": "Level Name",
"description": "Name of the world save",
"env_variable": "LEVEL_NAME",
"default_value": "world",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|alpha_dash|max:20"
},
{
"name": "MOTD",
"description": "Message to appear when viewing the server in browser and on login",
"env_variable": "MOTD",
"default_value": "A Minecraft Server",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -0,0 +1,45 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-19T01:01:29-04:00",
"name": "Forge-Enhanced",
"author": "parker@parkervcp.com",
"description": "Minecraft Forge Server. Minecraft Forge is a modding API (Application Programming Interface), which makes it easier to create mods, and also make sure mods are compatible with each other.",
"image": "quay.io\/pterodactyl\/core:java",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Forge Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl\r\n\r\nif [ -z \"$MC_VERSION\" ] || [ \"$MC_VERSION\" == \"latest\" ]; then\r\n FORGE_URL=http:\/\/files.minecraftforge.net\/maven\/net\/minecraftforge\/forge\/\r\nelse\r\n FORGE_URL=http:\/\/files.minecraftforge.net\/maven\/net\/minecraftforge\/forge\/index_$MC_VERSION.html\r\nfi\r\n\r\n echo \"MC version is $MC_VERSION\"\r\n echo \"Forge URL is $FORGE_URL\"\r\n\r\nGET_VERSIONS=$(curl -sl $FORGE_URL | grep -A1 Recommended | grep -o -E '[0-9]+\\.[0-9]+\\.[0-9]+ - [0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+')\r\nLATEST_VERSION=$(echo $GET_VERSIONS | sed 's\/ \/\/g')\r\n\r\necho \"full forge versions to download is $LATEST_VERSION\"\r\n\r\ncd \/mnt\/server\r\n\r\necho \"getting installer from 'http:\/\/files.minecraftforge.net\/maven\/net\/minecraftforge\/forge\/$MC_VERSION\/forge-$LATEST_VERSION-installer.jar'\"\r\ncurl -sS http:\/\/files.minecraftforge.net\/maven\/net\/minecraftforge\/forge\/$LATEST_VERSION\/forge-$LATEST_VERSION-installer.jar -o installer.jar\r\necho \"getting universal jar from 'http:\/\/files.minecraftforge.net\/maven\/net\/minecraftforge\/forge\/$LATEST_VERSION\/forge-$LATEST_VERSION-universal.jar'\"\r\ncurl -sS http:\/\/files.minecraftforge.net\/maven\/net\/minecraftforge\/forge\/$LATEST_VERSION\/forge-$LATEST_VERSION-universal.jar -o server.jar\r\n\r\njava -jar installer.jar --installServer\r\nrm -rf installer.jar",
"container": "frolvlad\/alpine-oraclejdk8:cleaned",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Server Jar File",
"description": "The name of the Jarfile to use when running Forge Mod.",
"env_variable": "SERVER_JARFILE",
"default_value": "server.jar",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
},
{
"name": "Forge Version",
"description": "The version of minecraft you want to download forge for.\r\n\r\nExample 1.7.10",
"env_variable": "MC_VERSION",
"default_value": "latest",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -0,0 +1,36 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-26T23:48:51-05:00",
"name": "FTB Revelation",
"author": "aevum@decess.us",
"description": "Revelation is a general all-purpose pack that is designed for solo play as well as small and medium population servers. This pack contains a mix of magic, tech and exploration mods, and is the largest pack ever built and released by the Feed The Beast Team.",
"image": "quay.io\/pterodactyl\/core:java",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar FTBserver-*.jar",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Forge Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl --no-cache\r\n\r\nBASEURL=https:\/\/www.feed-the-beast.com\/projects\/ftb-revelation\/files\r\nPATTERN=\"(projects\\\/ftb-revelation\\\/files\\\/\\d{7,})\"\r\nID=`curl -sl ${BASEURL}| grep -A2 ${MODPACK_VERSION} | grep -oE \"${PATTERN}\"`\r\nSECONDURL=https:\/\/www.feed-the-beast.com\/${ID}\r\nGOOD_ID=`curl -sl ${SECONDURL} | grep -B2 Server_${MODPACK_VERSION}.zip | grep -oE \"${PATTERN}\"`\r\n\r\nDL_URL=https:\/\/www.feed-the-beast.com\/${GOOD_ID}\/download\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -L ${DL_URL} -o ftbrevelations-${MODPACK_VERSION}.zip\r\n\r\nunzip ftbrevelations-${MODPACK_VERSION}.zip\r\n\r\nrm -rf ftbrevelations-${MODPACK_VERSION}.zip\r\n\r\nsh .\/FTBInstall.sh",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Modpack Version",
"description": "Version of the modpack to use",
"env_variable": "MODPACK_VERSION",
"default_value": "1.6.0",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -0,0 +1,36 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-26T20:41:41-05:00",
"name": "Hexxit",
"author": "aevum@decess.us",
"description": "Gear up and set forth on a campaign worthy of legend, for Hexxit has been unearthed! Dark dungeons, towering spires, weathered ruins and musty tomes lay before you. Lay claim to riches or create your own artifacts, tame beasts and carve out your own story in endless wonder. Alone or with friends, adventure awaits in Hexxit.\r\n\r\nHexxit is a new collection of mods for Minecraft that put adventure above all else, in the style of old Dungeons and Dragons campaigns. Exploration is interesting, the dangers are greater and the sense of satisfaction of clearing out a dungeon is intense. The modlist is full of quality content from some very talented individuals. Be sure to head over to the donate page and show your appreciation!\r\n\r\nhttps:\/\/www.technicpack.net\/modpack\/hexxit.552552",
"image": "quay.io\/pterodactyl\/core:java",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar Hexxit.jar",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Forge Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -sS http:\/\/servers.technicpack.net\/Technic\/servers\/hexxit\/Hexxit_Server_v$MODPACK_VERSION.zip -o Hexxit_$MODPACK_VERSION.zip\r\n\r\nunzip Hexxit_$MODPACK_VERSION.zip\r\n\r\nrm -rf Hexxit_$MODPACK_VERSION.zip",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Modpack Version",
"description": "Version of the modpack to use",
"env_variable": "MODPACK_VERSION",
"default_value": "1.0.10",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -0,0 +1,45 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-10T00:30:35-06:00",
"name": "Paper Spigot",
"author": "hostmaster@waterfallgaming.net",
"description": "High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies.",
"image": "quay.io\/pterodactyl\/core:java-glibc",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Paper Spigot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl\r\n\r\ncd \/mnt\/server\r\n\r\nif [ -z \"${DL_VERSION}\" ] || [ \"${DL_VERSION}\" == \"latest\" ]; then\r\n DL_VERSION=\"lastSuccessfulBuild\"\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} https:\/\/ci.destroystokyo.com\/job\/Paper\/${DL_VERSION}\/artifact\/paperclip.jar",
"container": "alpine:3.4",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Server Jar File",
"description": "The name of the server jarfile to run the server with.",
"env_variable": "SERVER_JARFILE",
"default_value": "server.jar",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
},
{
"name": "PaperSpigot Version",
"description": "The version of PaperSpigot to download, Use \"latest\" for latest.",
"env_variable": "DL_VERSION",
"default_value": "latest",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|between:3,7"
}
]
}

View File

@ -3,8 +3,8 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-15T16:00:42-05:00",
"name": "Spigot",
"exported_at": "2018-02-25T12:20:22-05:00",
"name": "Spigot-Enhanced",
"author": "support@pterodactyl.io",
"description": "Spigot is the most widely-used modded Minecraft server software in the world. It powers many of the top Minecraft server networks around to ensure they can cope with their huge player base and ensure the satisfaction of their players. Spigot works by reducing and eliminating many causes of lag, as well as adding in handy features and settings that help make your job of server administration easier.",
"image": "quay.io\/pterodactyl\/core:java-glibc",

View File

@ -0,0 +1,45 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-10T00:34:01-06:00",
"name": "Taco Spigot",
"author": "hostmaster@waterfallgaming.net",
"description": "A even-higher higher performance PaperSpigot fork that adds new features.",
"image": "quay.io\/pterodactyl\/core:java-glibc",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Taco Spigot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl\r\n\r\ncd \/mnt\/server\r\n\r\nif [ -z \"${DL_VERSION}\" ] || [ \"${DL_VERSION}\" == \"latest\" ]; then\r\n DL_VERSION=\"lastSuccessfulBuild\"\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} https:\/\/ci.techcable.net\/job\/TacoSpigot\/${DL_VERSION}\/artifact\/build\/TacoSpigot.jar",
"container": "alpine:3.4",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Server Jar File",
"description": "The name of the server jarfile to run the server with.",
"env_variable": "SERVER_JARFILE",
"default_value": "server.jar",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
},
{
"name": "TacoSpigot Version",
"description": "The version of TacoSpigot to download, Use \"latest\" for latest.",
"env_variable": "DL_VERSION",
"default_value": "latest",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|between:3,7"
}
]
}

View File

@ -0,0 +1,36 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-02-26T20:41:35-05:00",
"name": "Tekkit Legends",
"author": "aevum@decess.us",
"description": "The ancient power of Tekkits past return in this legendary pack! Wield the philosopher's stone, ride the rails, breed the bees, and much, much more! This pack will remind you of what you've always loved about Tekkit, while bringing you new mods to discover and enjoy!\r\n\r\nhttps:\/\/www.technicpack.net\/modpack\/tekkit-legends.735902",
"image": "quay.io\/pterodactyl\/core:java",
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar TekkitLegends.jar",
"config": {
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "stop"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Forge Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk update\r\napk add curl\r\n\r\ncd \/mnt\/server\r\n\r\nhttp:\/\/servers.technicpack.net\/Technic\/servers\/tekkit-legends\/Tekkit_Legends_Server_v1.1.1.zip\r\ncurl -sS http:\/\/servers.technicpack.net\/Technic\/servers\/tekkit-legends\/Tekkit_Legends_Server_v$MODPACK_VERSION.zip -o TekkitLegends_$MODPACK_VERSION.zip\r\n\r\nunzip TekkitLegends_$MODPACK_VERSION.zip\r\n\r\nrm -rf TekkitLegends_$MODPACK_VERSION.zip",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Modpack Version",
"description": "Version of the modpack to use",
"env_variable": "MODPACK_VERSION",
"default_value": "1.1.1",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -13,10 +13,14 @@ If you are submitting PR's try and keep names and titles the same.
#### Please read the HOWTO.md as it container important information.
## Game Eggs
### GTA
#### FiveM
The [FiveM](https://fivem.net/) GTA 5 dedicated server
#### SA:MP
The [SA:MP](https://www.sa-mp.com/) GTA San Andreas dedicated server
### Factorio
#### factorio
The [Factorio](https://factorio.com/) dedicated server
@ -27,16 +31,59 @@ The [tShock](https://tshock.co) modded server.
- This requires a minimum of 1g (1024m) to actually create a map. This will get OOM if you have less.
### Minecraft
#### Spigot
#### Spigot Enhanced
This is a direct fork of the default spigot service with the added benefit of being able to build the spigot jar.
- (It's noted that building the jar is intensive and time consuming)
#### Forge Enhanced
This is a direct fork of the default forge service
- Has a version detection fix for "latest"
#### FTB Packs
##### Feed The Beast - generic
[FTB](https://www.feed-the-beast.com/modpacks)
Generic egg to handle any standard FTB modpack.
Supply values to 2 variables to use
- MODPACK_URL: from the url to the pack https://www.feed-the-beast.com/projects/{MODPACK_URL}
- MODPACK_VERSION: version of the modpack to install
##### FTB Revelation
[FTB Revelation](https://www.feed-the-beast.com/projects/ftb-revelation)
#### Tekkit Packs
##### Hexxit
[Hexxit](https://www.technicpack.net/modpack/hexxit.552552)
##### Blightfall
[Blightfall](https://www.technicpack.net/modpack/blightfall.592618)
##### Tekkit-Legends
[Tekkit Legends](https://www.technicpack.net/modpack/tekkit-legends.735902)
### Minecraft PE
#### Nukkit
The [Nukkit](https://nukkit.io/) Minecraft PE server
### Squad
#### Squad Dedicated
The [Squad](https://joinsquad.com/) official dedicated server
### Xonotic
#### xonotic
The [xonotic](http://www.xonotic.org/) dedicated server.
- Disk space needs to be
The [xonotic](http://www.xonotic.org/) official dedicated server.
- Disk space needs to be at least 1 gig for the full package.
## Bot Eggs
### Discord
#### ATLBot
The [ATLauncher Bot](https://github.com/ATLauncher/discord-bot/)
The [ATLauncher Bot](https://github.com/ATLauncher/discord-bot/)
#### parkertron
My own stupid chat bot [parkertron](https://github.com/parkervcp/parkertron)
- Currently runs as the SupportBot in the pterodactyl discord server.
#### pixel-bot
[pixel-bot](https://github.com/Ispira/pixel-bot)
- More of a reason/way to test a python container.
#### Sinusbot
TS3 and Discord music bot. [sinusbot](https://www.sinusbot.com/)

View File

@ -0,0 +1,36 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-27T15:39:54+02:00",
"name": "Sinusbot",
"author": "ki2007@damw.eu",
"description": "Musicbot for Discord and Teamspeak.",
"image": "quay.io\/parkervcp\/pterodactyl-images:sinusbot",
"startup": ".\/sinusbot --override-password=\"${OVERRIDE_PASSWORD}\"",
"config": {
"files": "{\r\n \"config.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"ListenPort\": \"ListenPort = {{server.build.default.port}}\",\r\n \"ListenHost\": \"ListenHost = \\\"0.0.0.0\\\"\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Initialization complete\",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# Sinusbot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends install ca-certificates bzip2 wget tar\r\napt -q clean all\r\n\r\n#Create needed directories\r\nmkdir -p \/mnt\/server\/TeamSpeak3-Client-linux_amd64\/plugins\r\nmkdir \/mnt\/server\/youtube-dl\r\n\r\ncd \/mnt\/server\r\n\r\n#Download Sinusbot\r\nwget -qO - https:\/\/www.sinusbot.com\/pre\/sinusbot-0.13.37-f7e9ece.tar.bz2 | tar xj\r\n\r\n#Install Sinusbot\r\nchmod +x sinusbot\r\ncp config.ini.dist config.ini\r\nsed -i \"s|^TS3Path.*|TS3Path = \\\"\/home\/container\/TeamSpeak3-Client-linux_amd64\/ts3client_linux_amd64\\\"|g\" config.ini\r\necho 'YoutubeDLPath = \"\/home\/container\/youtube-dl\/youtube-dl\"' >> config.ini\r\n#cp scripts scripts_org\r\n\r\n#Install Sinusbot plugin\r\ncp plugin\/libsoundbot_plugin.so TeamSpeak3-Client-linux_amd64\/plugins\r\n\r\n#Download TeamSpeak Client\r\nTSVERSION=$(wget -q -O - http:\/\/dl.4players.de\/ts\/releases\/ | grep -Po '(?<=href=\")[0-9]+(\\.[0-9]+){2,3}(?=\/\")' | sort -Vr | head -1)\r\nwget -q \"http:\/\/dl.4players.de\/ts\/releases\/$TSVERSION\/TeamSpeak3-Client-linux_amd64-$TSVERSION.run\"\r\n\r\n# Install TeamSpeak Client\r\nchmod +x TeamSpeak3-Client-linux_amd64-$TSVERSION.run\r\n.\/TeamSpeak3-Client-linux_amd64-$TSVERSION.run --tar xfv -C TeamSpeak3-Client-linux_amd64\r\nrm TeamSpeak3-Client-linux_amd64-$TSVERSION.run\r\n# Remove glx-integration lib\r\nrm TeamSpeak3-Client-linux_amd64\/xcbglintegrations\/libqxcb-glx-integration.so\r\n\r\n#Download youtube-dl\r\ncd \/mnt\/server\/youtube-dl\r\nwget -q https:\/\/yt-dl.org\/downloads\/latest\/youtube-dl\r\nchmod a+rx youtube-dl",
"container": "ubuntu:16.04",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Password",
"description": "Password for admin account.",
"env_variable": "OVERRIDE_PASSWORD",
"default_value": "CHANGEME",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
}
]
}

View File

@ -0,0 +1,26 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-21T23:58:08-04:00",
"name": "parkertron",
"author": "parker@parkervcp.com",
"description": "The stupid chatbot parkertron by Parkervcp.\r\n\r\nhttps:\/\/github.com\/parkervcp\/parkertron",
"image": "quay.io\/parkervcp\/pterodactyl-images:parkertron",
"startup": ".\/parkertron",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"Discord service connected\"\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# parkertron Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nexport GOPATH=$HOME\/go\r\nexport PATH=$GOROOT\/bin:$GOPATH\/bin:$PATH\r\n\r\ncd\r\n\r\nmkdir -p go\/bin go\/src\r\n\r\napk add --no-cache --update go git curl lua-stdlib lua musl-dev g++ libc-dev tesseract-ocr tesseract-ocr-dev\r\n\r\necho \"installing dep for golang dependancies\"\r\n\r\ncurl https:\/\/raw.githubusercontent.com\/golang\/dep\/master\/install.sh | sh\r\n\r\ncd go\/src\/\r\n\r\necho \"pulling the parkertron pterodactyl branch\"\r\n\r\ngit clone -b pterodactyl https:\/\/github.com\/parkervcp\/parkertron.git\r\n\r\ncd parkertron\/\r\n\r\ndep ensure\r\n\r\necho \"building parkertron\"\r\n\r\ngo build \r\n\r\necho \"build complete copying parkertron and example configs over\"\r\n\r\ncp parkertron \/mnt\/server\/\r\ncp -r configs\/ \/mnt\/server\/\r\n\r\necho \"Install complete. If you watched this. Congrats.\"",
"container": "alpine:3.7",
"entrypoint": "ash"
}
},
"variables": []
}

View File

@ -0,0 +1,72 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-03-27T08:57:41-04:00",
"name": "pixel-bot",
"author": "parker@parkervcp.com",
"description": "A Discord bot written in Python using discord.py\r\n\r\nhttps:\/\/github.com\/Ispira\/pixel-bot",
"image": "quay.io\/parkervcp\/pterodactyl-images:python3",
"startup": "python bot.py",
"config": {
"files": "{\r\n \"config\/config.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"owner\": \"{{server.build.env.OWNER_UID}}\",\r\n \"token\": \"{{server.build.env.BOT_TOKEN}}\",\r\n \"bot_name\": \"{{server.build.env.BOT_NAME}}\",\r\n \"log_file\": \"latest.log\"\r\n }\r\n },\r\n \"plugins\/settings\/imgur.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"client_id\": \"{{server.build.env.IMGUR_KEY}}\",\r\n \"client_secret\": \"{{server.build.env.IMGUR_SECRET}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Logged in as\",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\r\n# Factorio Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk add --no-cache git gcc g++ libffi-dev make\r\n\r\ncd \/mnt\/server\r\n\r\necho \"Cloning pixel-bot repo\"\r\ngit clone https:\/\/github.com\/Ispira\/pixel-bot.git .\r\n\r\necho \"Installing python requirements into folder\"\r\npip install -U --target $(pwd) discord imgurpython xkcd pynacl",
"container": "python:3.6-alpine3.7",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Owner Discord UID",
"description": "The Discord UID of the bot owner.",
"env_variable": "OWNER_UID",
"default_value": "copy from discord",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:32"
},
{
"name": "Discord Bot Token",
"description": "Get the app token from https:\/\/discordapp.com\/developers\/applications\/me",
"env_variable": "BOT_TOKEN",
"default_value": "get from discord developers",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:64"
},
{
"name": "Bot Name",
"description": "The name that you want set for the bot",
"env_variable": "BOT_NAME",
"default_value": "Ispyra",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|string|max:20"
},
{
"name": "Imgur API ID",
"description": "Add your Imgur API client_id if you want. \r\n\r\nhttps:\/\/api.imgur.com\/oauth2\/addclient",
"env_variable": "IMGUR_KEY",
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "nullable|string|max:64"
},
{
"name": "Imgur Secret",
"description": "Add your Imgur API client_secret if you want. \r\n\r\nhttps:\/\/api.imgur.com\/oauth2\/addclient",
"env_variable": "IMGUR_SECRET",
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "nullable|string|max:20"
}
]
}