mirror of
https://github.com/parkervcp/eggs.git
synced 2025-01-09 14:12:54 +08:00
Merge branch 'master' into add/pavlov
This commit is contained in:
commit
87a8331d01
31
README.md
31
README.md
@ -69,7 +69,11 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [TS3-Manager](/voice_servers/ts3_manager)
|
||||
|
||||
## Game Eggs
|
||||
[Among Us Impostor Server](/among_us/impostor_server)
|
||||
[Among Us - Impostor Server](/among_us/impostor_server)
|
||||
|
||||
[Among Us - CrewLink Server](/among_us/crewlink_server)
|
||||
|
||||
[Cryofall](/cryofall)
|
||||
|
||||
[ET Legacy](/enemy_territory/etlegacy)
|
||||
|
||||
@ -93,6 +97,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
[Minecraft](/minecraft)
|
||||
* [Bedrock](/minecraft/bedrock)
|
||||
* [Bedrock](/minecraft/bedrock/bedrock)
|
||||
* [gomint](/minecraft/bedrock/gomint)
|
||||
* [Nukkit](/minecraft/bedrock/nukkit)
|
||||
* [PocketMine MP](/minecraft/bedrock/pocketmine_mp)
|
||||
|
||||
@ -104,12 +109,13 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [Forge](/minecraft/java/forge)
|
||||
* [Magma](/minecraft/java/magma)
|
||||
* [Paper](/minecraft/java/paper)
|
||||
* [Spigot](/minecraft/java/spigot)
|
||||
* [SpongeForge](/minecraft/java/spongeforge)
|
||||
* [SpongeVanilla](/minecraft/java/spongevanilla)
|
||||
* [Technic](/minecraft/java/technic)
|
||||
* [Tuinity](/minecraft/java/tuinity)
|
||||
* [VanillaCord](/minecraft/java/vanillacord)
|
||||
* [Purpur](/minecraft/java/purpur)
|
||||
* [Spigot](/minecraft/java/spigot/)
|
||||
* [SpongeForge](/minecraft/java/spongeforge/)
|
||||
* [SpongeVanilla](/minecraft/java/spongevanilla/)
|
||||
* [Technic](/minecraft/java/technic/)
|
||||
* [Tuinity](/minecraft/java/tuinity/)
|
||||
* [VanillaCord](/minecraft/java/vanillacord/)
|
||||
* [Mohist](/minecraft/java/mohist)
|
||||
|
||||
* [Proxies](/minecraft/proxy) Minecraft Server Proxies
|
||||
@ -141,6 +147,8 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [Arma 3 HC](/steamcmd_servers/arma/arma3_headless_client)
|
||||
* [Arma 3 HC](/steamcmd_servers/arma/arma3_x64)
|
||||
* [Avorion](/steamcmd_servers/avorion)
|
||||
* [Assetto Corsa](/steamcmd_servers/assetto_corsa)
|
||||
* [Barotrauma](/steamcmd_servers/barotrauma)
|
||||
* [Citadel: Forged with Fire](/steamcmd_servers/citadel)
|
||||
* [Conan Exiles](/steamcmd_servers/conan_exiles)
|
||||
* [Don't Starve](/steamcmd_servers/dont_starve)
|
||||
@ -152,8 +160,9 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [Killing Floor 2](/steamcmd_servers/killingfloor2)
|
||||
* [Mordhau](/steamcmd_servers/mordhau)
|
||||
* [Onset](/steamcmd_servers/onset)
|
||||
* [PixARK](/steamcmd_servers/pixark)
|
||||
* [Project Zomboid](/steamcmd_servers/project_zomboid)
|
||||
* [PixARK](/steamcmd_servers/pixark/)
|
||||
* [Project Zomboid](/steamcmd_servers/project_zomboid/)
|
||||
* [Quake Live](/steamcmd_servers/quake_live/)
|
||||
* [Rising World](/steamcmd_servers/rising_world)
|
||||
* [Rust Staging Branch](/steamcmd_servers/rust_staging)
|
||||
* [SCP: Secret Laboratory](/steamcmd_servers/scpsl)
|
||||
@ -187,4 +196,6 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
[Xonotic](/xonotic/xonotic)
|
||||
|
||||
[Cryofall](/cryofall)
|
||||
## [Storage](/storage/)
|
||||
### S3 Storage
|
||||
* [minio](/storage/minio)
|
||||
|
7
among_us/crewlink_server/README.md
Normal file
7
among_us/crewlink_server/README.md
Normal file
@ -0,0 +1,7 @@
|
||||
# Among Us - CrewLink server
|
||||
### From their [Github](https://github.com/ottomated/CrewLink)
|
||||
|
||||
This project implements proximity voice chat in Among Us. Everyone in an Among Us lobby with this program running will be able to communicate over voice in-game, with no third-party programs required. Spatial audio ensures that you can only hear people close to you.
|
||||
|
||||
### Server Port
|
||||
Default port is 9736 but you can change to any port or domain/ip in the egg
|
82
among_us/crewlink_server/egg-crewlink-server.json
Normal file
82
among_us/crewlink_server/egg-crewlink-server.json
Normal file
@ -0,0 +1,82 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-16T20:11:55+01:00",
|
||||
"name": "Crewlink server",
|
||||
"author": "panel@oxtroit.com",
|
||||
"description": "An egg designed to allow support for Proximity Chat in Among Us using CrewLink Server",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_nodejs-12",
|
||||
"startup": "yarn start",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"<info> CrewLink Server started\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^c"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y git\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nINSTALL_REPO=\"https:\/\/github.com\/ottomated\/crewlink-server.git\"\r\necho -e Install repo set to ${INSTALL_REPO}\r\necho -e \"\/mnt\/server is empty.\\ncloning files from repo\"\r\necho -e \"running 'git clone --single-branch --branch ${BRANCH} ${INSTALL_REPO} .'\"\r\ngit clone --single-branch --branch ${BRANCH} ${INSTALL_REPO} .\r\n\r\nif [ -f \/mnt\/server\/package.json ]; then\r\n \/usr\/local\/bin\/yarn install\r\nfi\r\n\r\necho -e \"install complete\"\r\nexit 0",
|
||||
"container": "node:12-buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Github branch",
|
||||
"description": "Set this to 'devel' if you wanna run a develop server.",
|
||||
"env_variable": "BRANCH",
|
||||
"default_value": "master",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Domain",
|
||||
"description": "Domain of your server or ip of your server",
|
||||
"env_variable": "ADDRESS",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:50"
|
||||
},
|
||||
{
|
||||
"name": "Server name",
|
||||
"description": "Specifiy the name of your Crewlink server",
|
||||
"env_variable": "NAME",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:75"
|
||||
},
|
||||
{
|
||||
"name": "Use HTTPS",
|
||||
"description": "Enables https. You must place privkey.pem and fullchain.pem in your CWD.",
|
||||
"env_variable": "HTTPS",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Path to SSL",
|
||||
"description": "Alternate path to SSL certificates.",
|
||||
"env_variable": "SSLPATH",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:250"
|
||||
},
|
||||
{
|
||||
"name": "Port",
|
||||
"description": "Choose the port your server should run on",
|
||||
"env_variable": "PORT",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-04-26T14:11:30+02:00",
|
||||
"exported_at": "2020-12-16T19:18:24+02:00",
|
||||
"name": "PhantomBot",
|
||||
"author": "mail@wuffy.eu",
|
||||
"description": "PhantomBot is an actively developed open source interactive Twitch bot with a vibrant community that provides entertainment and moderation for your channel, allowing you to focus on what matters the most to you - your game and your viewers.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11",
|
||||
"startup": "java --add-opens java.base\/java.lang=ALL-UNNAMED -Djava.security.policy=config\/security -Dinteractive -Xms1m -Dfile.encoding=UTF-8 -jar PhantomBot.jar",
|
||||
"config": {
|
||||
@ -17,8 +18,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# PhantomBot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt -y --no-install-recommends install curl ca-certificates unzip\r\n\r\ncd \/tmp\r\n\r\n# Fetching last github release\r\nif [ -z \"${RELEASE_VERSION}\" ] || [ \"${RELEASE_VERSION}\" == \"master\" ]; then\r\n echo -e \"Using latest Github Master version\"\r\n DOWNLOAD_URL=https:\/\/raw.githubusercontent.com\/PhantomBot\/nightly-build\/master\/PhantomBot-nightly-lin.zip\r\nelse\r\n if [ -z \"${RELEASE_VERSION}\" ] || [ \"${RELEASE_VERSION}\" == \"latest\" ]; then\r\n echo -e \"Using latest release version\"\r\n RELEASE_VERSION=$(curl -s \"https:\/\/github.com\/PhantomBot\/PhantomBot\/releases\/latest\" | grep -o '[0-9].[0-9].[0-9]')\r\n fi\r\n DOWNLOAD_URL=https:\/\/github.com\/PhantomBot\/PhantomBot\/releases\/download\/v${RELEASE_VERSION}\/PhantomBot-${RELEASE_VERSION}.zip\r\nfi\r\n\r\n# Downloading\r\ncurl -LJO ${DOWNLOAD_URL}\r\nunzip -o PhantomBot-*.zip\r\n\r\n# Moveing unziped files into the server folder\r\ncp -f -r .\/PhantomBot-*\/* \/mnt\/server\/\r\n\r\n# Creating default config\r\nif [ ! -f \/mnt\/server\/config\/botlogin.txt ]; then\r\n echo -e \"Creating config\/botlogin.txt\"\r\n cat << EOF > \/mnt\/server\/config\/botlogin.txt\r\n #PhantomBot Configuration File\r\n #\r\n # Here is a list wiht all config values:\r\n # https:\/\/community.phantom.bot\/t\/settings-for-botlogin-txt\/78\r\n #\r\n apioauth=\r\n baseport=\r\n channel=\r\n oauth=\r\n owner=\r\n panelpassword=\r\n paneluser=\r\n user=\r\n youtubekey=\r\n discord_token=\r\nEOF\r\nfi",
|
||||
"container": "ubuntu:16.04",
|
||||
"script": "#!\/bin\/bash\r\n# PhantomBot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt -y --no-install-recommends install curl ca-certificates unzip\r\n\r\ncd \/tmp\r\n\r\n# Fetching latest github release\r\nif [ -z \"${RELEASE_VERSION}\" ] || [ \"${RELEASE_VERSION}\" == \"master\" ]; then\r\n echo -e \"Using latest Github Master version\"\r\n DOWNLOAD_URL=https:\/\/raw.githubusercontent.com\/PhantomBot\/nightly-build\/master\/PhantomBot-nightly-lin.zip\r\nelse\r\n if [ -z \"${RELEASE_VERSION}\" ] || [ \"${RELEASE_VERSION}\" == \"latest\" ]; then\r\n echo -e \"Using latest release version\"\r\n RELEASE_VERSION=$(curl -s \"https:\/\/github.com\/PhantomBot\/PhantomBot\/releases\/latest\" | grep -o '[0-9].[0-9].[0-9]')\r\n fi\r\n DOWNLOAD_URL=https:\/\/github.com\/PhantomBot\/PhantomBot\/releases\/download\/v${RELEASE_VERSION}\/PhantomBot-${RELEASE_VERSION}.zip\r\nfi\r\n\r\n# Download files\r\ncd \/mnt\/server\r\ncurl -LJO ${DOWNLOAD_URL}\r\nunzip -o PhantomBot-*.zip\r\n\r\n# Move unzipped files into the server folder\r\ncp -f -r .\/PhantomBot-*\/* \/mnt\/server\/\r\n\r\n# Creating default config\r\nif [ ! -f \/mnt\/server\/config\/botlogin.txt ]; then\r\n echo -e \"Creating config\/botlogin.txt\"\r\n cat << EOF > \/mnt\/server\/config\/botlogin.txt\r\n #PhantomBot Configuration File\r\n #\r\n # Here is a list wiht all config values:\r\n # https:\/\/community.phantom.bot\/t\/settings-for-botlogin-txt\/78\r\n #\r\n apioauth=\r\n baseport=\r\n channel=\r\n oauth=\r\n owner=\r\n panelpassword=\r\n paneluser=\r\n user=\r\n youtubekey=\r\n discord_token=\r\nEOF\r\nfi",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -28,17 +29,17 @@
|
||||
"description": "latest = Latest Stable\r\nmaster = latest Github",
|
||||
"env_variable": "RELEASE_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:9"
|
||||
},
|
||||
{
|
||||
"name": "Twitch Channel Name",
|
||||
"description": "Please enter the bot's Twitch username",
|
||||
"description": "Enter the Twitch channel name where the bot will connect to",
|
||||
"env_variable": "CHANNEL_NAME",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:26"
|
||||
},
|
||||
{
|
||||
@ -46,8 +47,8 @@
|
||||
"description": "",
|
||||
"env_variable": "CHANNEL_OWNER",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:26"
|
||||
},
|
||||
{
|
||||
@ -55,8 +56,8 @@
|
||||
"description": "Please note, this OAuth token needs to be generated while you're logged in into the bot's Twitch account.\r\nIf you're not logged in as the bot, please go to https:\/\/twitch.tv\/ and login as the bot.\r\nGet the bot's OAuth token here: https:\/\/twitchapps.com\/tmi\/",
|
||||
"env_variable": "BOT_OAUTH_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64"
|
||||
},
|
||||
{
|
||||
@ -64,8 +65,8 @@
|
||||
"description": "Please note, this OAuth token needs to be generated while you're logged in into your caster account.\r\nIf you're not logged in as the caster, please go to https:\/\/twitch.tv\/ and login as the caster.\r\nGet the your OAuth token here: https:\/\/phantombot.tv\/oauth\/",
|
||||
"env_variable": "USER_OAUTH_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64"
|
||||
},
|
||||
{
|
||||
@ -73,8 +74,8 @@
|
||||
"description": "Please enter the bot's Twitch username",
|
||||
"env_variable": "BOT_TWITCH_USERNAME",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:26"
|
||||
},
|
||||
{
|
||||
@ -82,8 +83,8 @@
|
||||
"description": "Please enter a custom username for the web panel",
|
||||
"env_variable": "WEBPANEL_USERNAME",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64"
|
||||
},
|
||||
{
|
||||
@ -91,8 +92,8 @@
|
||||
"description": "Please enter a custom password for the web panel",
|
||||
"env_variable": "WEBPANEL_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:2000"
|
||||
},
|
||||
{
|
||||
@ -100,8 +101,8 @@
|
||||
"description": "https:\/\/community.phantom.bot\/t\/acquire-youtube-api-key\/222",
|
||||
"env_variable": "YOUTUBE_API_KEY",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "max:64"
|
||||
},
|
||||
{
|
||||
@ -109,8 +110,8 @@
|
||||
"description": "https:\/\/community.phantom.bot\/t\/discord-integration-setup\/64",
|
||||
"env_variable": "DISCORD_BOT_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "max:64"
|
||||
}
|
||||
]
|
||||
|
@ -8,7 +8,7 @@
|
||||
"author": "unknown@unknown.com",
|
||||
"description": "Mindustry is a hybrid tower-defense sandbox factory game. Create elaborate supply chains of conveyor belts to feed ammo into your turrets, produce materials to use for building, and defend your structures from waves of enemies.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar server-release.jar port {{SERVER_PORT}},name {{SERVER_NAME}},host {{MAPNAME}}",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar server-release.jar config port {{SERVER_PORT}},config name {{SERVER_NAME}},host {{MAPNAME}}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Server loaded. \"\r\n}",
|
||||
|
@ -4,6 +4,10 @@
|
||||
[Minecraft Bedrock Server](https://minecraft.net/en-us/download/server/bedrock/)
|
||||
The official Minecraft Bedrock (Formerly Minecraft Pocket Edition) server.
|
||||
|
||||
#### gomint
|
||||
[Gomint Bedrock Server](https://github.com/gomint/gomint)
|
||||
Easy-to-use, highly configurable Minecraft Bedrock Edition
server software with the ability to sustain in a low-resource environment.
|
||||
|
||||
#### Nukkit
|
||||
[Nukkit GitHub](https://github.com/Nukkit/Nukkit)
|
||||
Nukkit is a Nuclear-Powered Server Software For Minecraft: Pocket Edition
|
||||
|
11
minecraft/bedrock/gomint/README.md
Normal file
11
minecraft/bedrock/gomint/README.md
Normal file
@ -0,0 +1,11 @@
|
||||
# gomint
|
||||
|
||||
Easy-to-use, highly configurable Minecraft Bedrock Edition
server software with the ability to sustain in a low-resource environment.
|
||||
|
||||
### Server Ports
|
||||
|
||||
Bedrock server require a single port (default 19132)
|
||||
|
||||
| Port | default |
|
||||
|---------|----------|
|
||||
| Game | 19132 |
|
27
minecraft/bedrock/gomint/egg-go-mint.json
Normal file
27
minecraft/bedrock/gomint/egg-go-mint.json
Normal file
@ -0,0 +1,27 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-12T16:14:47+00:00",
|
||||
"name": "GoMint",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A performant and stable Minecraft server software for the Bedrock Edition that comes with a modern API and support for Java 11 LTS.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11",
|
||||
"startup": "java --add-opens java.base\/java.nio=io.netty.common --add-exports java.base\/jdk.internal.misc=io.netty.common -p modules -m gomint.server\/io.gomint.server.Bootstrap",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.yml\": {\r\n \"parser\": \"yml\",\r\n \"find\": {\r\n \"listener.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\":\"Done in \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#! \/bin\/bash\r\n\r\nGITHUB_PACKAGE=gomint\/gomint\r\nVERSION=latest\r\nMATCH=modules\r\n\r\napt update\r\napt install -y curl jq file unzip\r\n\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir -p \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z \"${GITHUB_USER}\" ] && [ -z \"${GITHUB_OAUTH_TOKEN}\" ] ; then\r\n echo -e \"using anon api call\"\r\nelse\r\n echo -e \"user and oauth token set\"\r\n alias curl='curl -u ${GITHUB_USER}:${GITHUB_OAUTH_TOKEN} '\r\nfi\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\")\r\n\r\nif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" != \"Not Found\" ] && [[ -z \"${VERSION}\" || \"${VERSION}\" == \"latest\" ]]; then\r\n echo -e \"grabbing latest version\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -m 1 -i ${MATCH})\r\nelif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" == \"Not Found\" ]; then\r\n ## emergency fallback if latest isn't found\r\n ## grabs the latest release even it it's a pre-release\r\n echo -e \"grabbing latest pre-release\"\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r '.[0].assets[].browser_download_url' | grep -m 1 -i ${MATCH})\r\nelse\r\n echo -e \"grabbing version $VERSION\"\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -m 1 -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n VALIDATED_URL=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\ncurl -sSL -o ${VALIDATED_URL##*\/} ${VALIDATED_URL}\r\n\r\nFILETYPE=$(file -F ',' ${VALIDATED_URL##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${VALIDATED_URL##*\/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${VALIDATED_URL##*\/} -d modules\/\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${VALIDATED_URL##*\/}\r\nelse\r\n echo -e \"unknown filetype. Exiting\"\r\n # exit 2 \r\nfi\r\n\r\nrm ${VALIDATED_URL##*\/}\r\n\r\nif [ ! -f server.yml ]; then\r\n curl -sSL -o server.yml https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/bedrock\/gomint\/server.yml\r\nfi",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
}
|
4
minecraft/bedrock/gomint/server.yml
Normal file
4
minecraft/bedrock/gomint/server.yml
Normal file
@ -0,0 +1,4 @@
|
||||
# The host and port to bind the server to
|
||||
listener:
|
||||
port: 19132
|
||||
ip: 0.0.0.0
|
@ -3,11 +3,12 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-07-14T22:15:06-04:00",
|
||||
"exported_at": "2020-12-24T13:08:36+01:00",
|
||||
"name": "PocketmineMP",
|
||||
"author": "info@swisscrafting.ch",
|
||||
"description": "Pocketmine Egg\r\nby onekintaro from swisscrafting.ch\r\nwith the nice help from #eggs Channel on Pterodactyl-Discord :)",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_ubuntu",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/bin\/php7\/bin\/php .\/PocketMine-MP.phar --no-wizard --disable-ansi",
|
||||
"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}",
|
||||
@ -17,7 +18,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y curl\r\n\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir \/mnt\/server\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\necho -e \"\\n downloading pocketmine MP build ${PMMP_VERSION}\"\r\nif [ -z \"$PMMP_VERSION\" ] || [ \"$PMMP_VERSION\" == \"latest\" ]; then\r\n curl -sSL -o PocketMine-MP.phar https:\/\/jenkins.pmmp.io\/job\/PocketMine-MP\/Stable\/artifact\/PocketMine-MP.phar\r\nelse \r\n curl -sSL -o PocketMine-MP.phar https:\/\/jenkins.pmmp.io\/job\/PocketMine-MP\/${PMMP_VERSION}\/artifact\/PocketMine-MP.phar\r\nfi\r\n\r\necho -e \"\\n downloading latest php7.3 build from pocketmine\"\r\ncurl -sSL -o php.binary.tar.gz https:\/\/jenkins.pmmp.io\/job\/PHP-7.3-Linux-x86_64\/lastSuccessfulBuild\/artifact\/PHP_Linux-x86_64.tar.gz\r\n\r\necho -e \"\\n getting default server.properties\"\r\ncurl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/bedrock\/pocketmine_mp\/server.properties > server.properties\r\n\r\necho -e \"\\n unpacking php7 binaries\"\r\ntar -xzvf php.binary.tar.gz\r\n\r\necho -e \"\\n removing pvp7 packages\"\r\nrm -rf \/mnt\/server\/php.binary.tar.gz\r\n\r\necho -e \"\\n creating files and folders\"\r\ntouch banned-ips.txt banned-players.txt ops.txt white-list.txt server.log\r\nmkdir -p players worlds plugins resource_packs",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y curl\r\n\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir \/mnt\/server\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\necho -e \"\\n downloading pocketmine MP build ${PMMP_VERSION}\"\r\nif [ -z \"$PMMP_VERSION\" ] || [ \"$PMMP_VERSION\" == \"latest\" ]; then\r\n curl -sSL -o PocketMine-MP.phar https:\/\/jenkins.pmmp.io\/job\/PocketMine-MP\/Stable\/artifact\/PocketMine-MP.phar\r\nelse \r\n curl -sSL -o PocketMine-MP.phar https:\/\/jenkins.pmmp.io\/job\/PocketMine-MP\/${PMMP_VERSION}\/artifact\/PocketMine-MP.phar\r\nfi\r\n\r\necho -e \"\\n downloading latest php7.4 build from pocketmine\"\r\ncurl -sSL -o php.binary.tar.gz https:\/\/jenkins.pmmp.io\/job\/PHP-7.4-Linux-x86_64\/lastSuccessfulBuild\/artifact\/PHP_Linux-x86_64.tar.gz\r\n\r\necho -e \"\\n getting default server.properties\"\r\ncurl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/bedrock\/pocketmine_mp\/server.properties > server.properties\r\n\r\necho -e \"\\n unpacking php7 binaries\"\r\ntar -xzvf php.binary.tar.gz\r\n\r\necho -e \"\\n removing pvp7 packages\"\r\nrm -rf \/mnt\/server\/php.binary.tar.gz\r\n\r\necho -e \"\\n creating files and folders\"\r\ntouch banned-ips.txt banned-players.txt ops.txt white-list.txt server.log\r\nmkdir -p players worlds plugins resource_packs",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -28,9 +29,9 @@
|
||||
"description": "The build to pull and install. (Ex. 1604)\r\n\r\nThis is the build number on https:\/\/jenkins.pmmp.io",
|
||||
"env_variable": "PMMP_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -24,13 +24,7 @@ This is a direct fork of the default forge service
|
||||
A generic service to pull forge mod packs from the curseforge site.
|
||||
|
||||
## FTB Packs
|
||||
[FTB](https://www.feed-the-beast.com/modpacks)
|
||||
A generic service to pull forge mod packs from the FTB site.
|
||||
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 Modpacks through modpacks.ch](https://api.modpacks.ch)
|
||||
[FTB Modpacks](https://api.modpacks.ch)
|
||||
A generic service to pull FTB modpacks from api.modpacks.ch.
|
||||
There are 2 ways to install a server through this service.
|
||||
The first method only requires you to know the modpacks name and version.
|
||||
@ -51,10 +45,7 @@ The second method requires you to know the id for both the modpack and version i
|
||||
**NOTE**
|
||||
**Not all FTB packs come with a server.properties file, due to this the server.properties file
|
||||
may not get updated with the correct ip address and port at first launch.
|
||||
Please restart the server after first launch to fix this.**
|
||||
|
||||
[FTB Revelation](https://www.feed-the-beast.com/projects/ftb-revelation)
|
||||
Revelation is a general all-purpose modpack with optimal FPS, server performance and stability.
|
||||
Please restart the server after first launch to fix this.**
|
||||
|
||||
## Magma
|
||||
[Magma](https://magmafoundation.org/)
|
||||
@ -97,4 +88,4 @@ Fork of Paper aimed at improving server performance at high playercounts.
|
||||
|
||||
## Mohist
|
||||
Fork of Spigot focused on performance optimizations.
|
||||
[Mohist Github](https://github.com/Mohist-Community)
|
||||
[Mohist Github](https://github.com/Mohist-Community)
|
||||
|
@ -3,21 +3,22 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-12-14T12:24:30-05:00",
|
||||
"exported_at": "2020-12-08T17:25:20-08:00",
|
||||
"name": "Cuberite",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A lightweight, fast and extensible game server for Minecraft",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/Cuberite",
|
||||
"config": {
|
||||
"files": "{\r\n \"settings.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"Server.Ports\": \"{{server.build.default.port}}\",\r\n \"Server.Description\": \"{{server.build.env.SERV_DESC}}\"\r\n }\r\n },\r\n \"webadmin.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"User:admin.Password\": \"{{server.build.env.ADMIN_PASS}}\",\r\n \"WebAdmin.Ports\":\"{{server.build.env.WEB_PORT}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Startup complete \"\r\n}",
|
||||
"files": "{\r\n \"settings.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"Server.Ports\": \"{{server.build.default.port}}\",\r\n \"Server.Description\": \"{{server.build.env.SERV_DESC}}\"\r\n }\r\n },\r\n \"webadmin.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"User:admin.Password\": \"{{server.build.env.ADMIN_PASS}}\",\r\n \"WebAdmin.Ports\": \"{{server.build.env.WEB_PORT}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Startup complete\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# Cuberite\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y wget\r\n\r\ncd \/mnt\/server\r\n\r\nwget https:\/\/download.cuberite.org\/linux-x86_64\/Cuberite.tar.gz\r\n\r\ntar --strip-components=1 -xf Cuberite.tar.gz",
|
||||
"script": "#!\/bin\/ash\r\n# Cuberite\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y wget\r\n\r\ncd \/mnt\/server\r\n\r\nwget https:\/\/download.cuberite.org\/linux-x86_64\/Cuberite.tar.gz\r\n\r\ntar -xzf Cuberite.tar.gz",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -28,8 +29,8 @@
|
||||
"description": "Server Description",
|
||||
"env_variable": "SERV_DESC",
|
||||
"default_value": "Cuberite on Pterodactyl!",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
@ -37,8 +38,8 @@
|
||||
"description": "The password for the webadmin panel 'admin' user",
|
||||
"env_variable": "ADMIN_PASS",
|
||||
"default_value": "ChangeMe",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
@ -46,9 +47,9 @@
|
||||
"description": "Port for the cuberite webadmin panel.",
|
||||
"env_variable": "WEB_PORT",
|
||||
"default_value": "8080",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|integer|between:1,65535"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -3,14 +3,12 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-11-10T04:10:30-05:00",
|
||||
"exported_at": "2020-12-06T19:54:35-08:00",
|
||||
"name": "Fabric",
|
||||
"author": "accounts@bofanodes.io",
|
||||
"description": "Fabric is a modular modding toolchain targeting Minecraft 1.14 and above, including snapshots.",
|
||||
"features": [
|
||||
"eula"
|
||||
],
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11",
|
||||
"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 }\r\n }\r\n}",
|
||||
@ -20,7 +18,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Fabric MC Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl jq unzip dos2unix wget\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\nif [ -z \"$FABRIC_VERSION\" ] || [ \"$FABRIC_VERSION\" == \"latest\" ]; then\r\nFABRIC_VERSION=$(curl https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/ | grep -Po '(?<=href=\")[^\"]*' | sort -h | tail -1 | sed 's,\/,,g')\r\nwget https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/$FABRIC_VERSION\/fabric-installer-$FABRIC_VERSION.jar\r\nelse\r\nwget https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/$FABRIC_VERSION\/fabric-installer-$FABRIC_VERSION.jar\r\nfi\r\njava -jar fabric-installer-$FABRIC_VERSION.jar server -downloadMinecraft\r\necho -e \"Install Complete\"", "container": "openjdk:8-jdk-slim",
|
||||
"script": "#!\/bin\/bash\r\n# Fabric MC Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl jq unzip dos2unix wget\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\nif [ -z \"$FABRIC_VERSION\" ] || [ \"$FABRIC_VERSION\" == \"latest\" ]; then\r\nFABRIC_VERSION=$(curl https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/ | grep -Po '(?<=href=\")[^\"]*' | sort -h | tail -1 | sed 's,\/,,g')\r\nwget https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/$FABRIC_VERSION\/fabric-installer-$FABRIC_VERSION.jar\r\nelse\r\nwget https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/$FABRIC_VERSION\/fabric-installer-$FABRIC_VERSION.jar\r\nfi\r\njava -jar fabric-installer-$FABRIC_VERSION.jar server -downloadMinecraft\r\necho -e \"Install Complete\"",
|
||||
"container": "openjdk:11-jdk-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -44,4 +43,4 @@
|
||||
"rules": "required|string|between:3,15"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-03-08T20:35:40-04:00",
|
||||
"exported_at": "2020-12-12T16:29:02+00:00",
|
||||
"name": "Feather",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "An experimental Minecraft server implementation written in Rust.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/feather-server",
|
||||
"config": {
|
||||
@ -17,7 +18,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/usr\/bin\/env bash\r\napt update\r\napt install -y curl\r\n\r\nget_latest_release() {\r\n curl -sSL \"https:\/\/api.github.com\/repos\/$1\/releases\/latest\" |\r\n grep '\"tag_name\":' |\r\n sed -E 's\/.*\"([^\"]+)\".*\/\\1\/'\r\n}\r\n\r\nPACKAGE=\"feather-rs\/feather\"\r\nVERSION=`get_latest_release \"${PACKAGE}\"`\r\necho \"Latest version=${VERSION}\"\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -sSLo feather.tar.gz https:\/\/github.com\/caelunshun\/feather\/releases\/download\/${VERSION}\/feather-${VERSION}-linux.tar.gz\r\n\r\ntar --strip-components=1 -xzvf feather.tar.gz\r\n\r\nrm feather.tar.gz",
|
||||
"script": "#! \/bin\/bash\r\n\r\nGITHUB_PACKAGE=feather-rs\/feather\r\nMATCH=linux\r\n\r\napt update\r\napt install -y curl jq file unzip\r\n\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir -p \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z \"${GITHUB_USER}\" ] && [ -z \"${GITHUB_OAUTH_TOKEN}\" ] ; then\r\n echo -e \"using anon api call\"\r\nelse\r\n echo -e \"user and oauth token set\"\r\n alias curl='curl -u ${GITHUB_USER}:${GITHUB_OAUTH_TOKEN} '\r\nfi\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\")\r\n\r\nif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" != \"Not Found\" ] && [[ -z \"${VERSION}\" || \"${VERSION}\" == \"latest\" ]]; then\r\n echo -e \"grabbing latest version\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" == \"Not Found\" ]; then\r\n ## emergency fallback if latest isn't found\r\n ## grabs the latest release even it it's a pre-release\r\n echo -e \"grabbing latest pre-release\"\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r '.[0].assets[].browser_download_url' | grep -i ${MATCH})\r\nelse\r\n echo -e \"grabbing version $VERSION\"\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n VALIDATED_URL=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\ncurl -sSL -o ${VALIDATED_URL##*\/} ${VALIDATED_URL}\r\n\r\nFILETYPE=$(file -F ',' ${VALIDATED_URL##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${VALIDATED_URL##*\/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${VALIDATED_URL##*\/}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${VALIDATED_URL##*\/}\r\nelse\r\n echo -e \"unknown filetype. Exiting\"\r\n # exit 2 \r\nfi\r\n\r\nrm ${VALIDATED_URL##*\/}\r\n\r\nchmod +x feather-server",
|
||||
"container": "debian:stable-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -28,8 +29,8 @@
|
||||
"description": "Do you want the installer to generate a world you you?",
|
||||
"env_variable": "GEN_WORLD",
|
||||
"default_value": "0",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|boolean"
|
||||
}
|
||||
]
|
||||
|
@ -1,28 +1,21 @@
|
||||
# Configuration for the Feather server.
|
||||
|
||||
# Most of the options here are unimplented and have no effect.
|
||||
# Those that are unimplemted have been labeled so.
|
||||
# Many of the options here are unimplemented and have no effect.
|
||||
# Those that are unimplemented have been labeled so.
|
||||
|
||||
[io]
|
||||
# Packets with a size more than or equal to this value will be sent compressed.
|
||||
# Compressing packets reduces bandwidth usage but increases CPU activity.
|
||||
compression_threshold = 256
|
||||
# The number of worker threads used for asynchronous IO.
|
||||
# Set to the number of cores on your CPU for optimal performance.
|
||||
io_worker_threads = 8
|
||||
|
||||
[proxy]
|
||||
# IP forwarding using either "bungee" (BungeeCord/Waterfall/Travertine) or "velocity" (Velocity)
|
||||
proxy_mode = "none" # Unimplemented
|
||||
|
||||
[server]
|
||||
online_mode = true
|
||||
motd = "A Feather server"
|
||||
max_players = 16
|
||||
default_gamemode = "survival"
|
||||
default_gamemode = "creative"
|
||||
difficulty = "none" # Unimplemented
|
||||
view_distance = 6
|
||||
address = "127.0.0.1"
|
||||
address = "0.0.0.0"
|
||||
port = 25565
|
||||
|
||||
[gameplay]
|
||||
@ -44,4 +37,26 @@ level = "debug"
|
||||
# upon joining. Set this to an empty string to disable.
|
||||
url = ""
|
||||
# Optional SHA1 hash of the resource pack file.
|
||||
hash = ""
|
||||
hash = ""
|
||||
|
||||
[world]
|
||||
# The name of the directory containing the world.
|
||||
name = "world"
|
||||
# The generator to use if the world does not exist.
|
||||
# Implemented values are: default, flat
|
||||
generator = "default"
|
||||
# The seed to use if the world does not exist.
|
||||
# Leaving this value empty will generate a random seed.
|
||||
# If this value is not a valid integer (i64), the string
|
||||
# will be converted using a hash function.
|
||||
seed = ""
|
||||
# Interval at which to save modified chunks.
|
||||
save_interval = "1min"
|
||||
|
||||
[proxy]
|
||||
# Select the IP forwarding mode that is used by proxies like BungeeCord or Velocity.
|
||||
# Valid values are
|
||||
# - "None" - for usage without a proxy
|
||||
# - "BungeeCord" - for BungeeCord/Waterfall/Travertine
|
||||
# - "Velocity" - for Velocity style proxies (unimplemented)
|
||||
proxy_mode = "None"
|
@ -2,9 +2,9 @@
|
||||
|
||||
### This is a generic egg for curseforge modpacks
|
||||
|
||||
You will need to give it a modpack ID. The ID for sevtech-ages is `268208` for example.
|
||||
You will need to give it a modpack ID. The ID for BOFA mods is `375152` for example.
|
||||
This can be found on the modpack page in the `About Project` section in the upper right corner.
|
||||
|
||||
This will grabe the latest release when the version is set to latest.
|
||||
This will grab the latest release when the version is set to latest.
|
||||
|
||||
It "should" grab versions of the pack based on the modpack version numbers
|
||||
It "should" grab versions of the pack based on the modpack version numbers
|
||||
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-08-12T08:19:04-04:00",
|
||||
"exported_at": "2020-12-07T11:33:04-05:00",
|
||||
"name": "Curseforge Generic",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A generic egg for a forge modpack",
|
||||
"features": null,
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar server.jar",
|
||||
"config": {
|
||||
@ -25,11 +26,11 @@
|
||||
"variables": [
|
||||
{
|
||||
"name": "modpack project ID",
|
||||
"description": "The modpack project ID from the curseforge site on the pack page.\r\n\r\n(Ex. https:\/\/minecraft.curseforge.com\/projects\/sevtech-ages ID is 268208)",
|
||||
"description": "The modpack project ID from the curseforge site on the pack page.\r\n\r\n(Ex. https:\/\/www.curseforge.com\/minecraft\/modpacks\/bofa-mods ID is 375152)",
|
||||
"env_variable": "MODPACK_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
@ -37,9 +38,9 @@
|
||||
"description": "Version of the modpack to use.",
|
||||
"env_variable": "MODPACK_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-06-01T21:19:06-04:00",
|
||||
"exported_at": "2020-12-06T19:03:10-08: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.",
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -28,17 +29,17 @@
|
||||
"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,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
},
|
||||
{
|
||||
"name": "Forge version",
|
||||
"name": "Minecraft Version",
|
||||
"description": "The version of minecraft you want to install for.\r\n\r\nLeaving latest will install the latest recommended version.",
|
||||
"env_variable": "MC_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:9"
|
||||
},
|
||||
{
|
||||
@ -46,8 +47,8 @@
|
||||
"description": "The type of server jar to download from forge.\r\n\r\nValid types are \"recommended\" and \"latest\".",
|
||||
"env_variable": "BUILD_TYPE",
|
||||
"default_value": "recommended",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
@ -55,9 +56,9 @@
|
||||
"description": "Gets an exact version.\r\n\r\nEx. 1.15.2-31.2.4\r\n\r\nOverrides MC_VERSION and BUILD_TYPE. If it fails to download the server files it will fail to install.",
|
||||
"env_variable": "FORGE_VERSION",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
31
minecraft/java/ftb/README.md
Normal file
31
minecraft/java/ftb/README.md
Normal file
@ -0,0 +1,31 @@
|
||||
## FTB Modpacks
|
||||
A generic service to pull FTB modpacks from api.modpacks.ch.
|
||||
There are 2 ways to install a server through this service.
|
||||
The first method only requires you to know the modpacks name and version.
|
||||
The second method requires you to know the id for both the modpack and version in the api.
|
||||
|
||||
**Method 1 (Recommended)**
|
||||
- FTB_SEARCH_TERM: the modpack name to query for, must be at least 4 characters long.
|
||||
EX: for FTB: Interactions you would do "interactions".
|
||||
- FTB_VERSION_STRING: the string version that you want to install.
|
||||
EX: for FTB: Interactions 2.0.2, you would put "2.0.2".
|
||||
|
||||
**Method 2**
|
||||
- FTB_MODPACK_ID: the id that directs to the modpack in the api.
|
||||
EX: for FTB: Interactions the id would be "5". https://api.modpacks.ch/public/modpack/5
|
||||
- FTB_MODPACK_VERSION_ID: the version id in the api.
|
||||
EX: for FTB: Interactions 2.0.2 the id is "86". https://api.modpacks.ch/public/modpack/5/86
|
||||
|
||||
**NOTE**
|
||||
**Not all FTB packs come with a server.properties file, due to this the server.properties file
|
||||
may not get updated with the correct ip address and port at first launch.
|
||||
Please restart the server after first launch to fix this.**
|
||||
|
||||
## Server Ports
|
||||
The minecraft server requires a single port for access (default 25565) but some plugins may require extra ports to enabled for the server.
|
||||
|
||||
|
||||
| Port | default |
|
||||
|-------|---------|
|
||||
| Game | 25565 |
|
||||
|
@ -12,4 +12,9 @@ The minecraft server requires a single port for access (default 25565) but plugi
|
||||
|
||||
## Server Specific
|
||||
|
||||
Limited to version 1.12.2 (1.16.4 cannot run headless as of 12/6/2020)
|
||||
### Supported versions:
|
||||
- 1.16.4 series build 132+
|
||||
- 1.12.x series
|
||||
- 1.7.x series build 13+
|
||||
|
||||
Requires changing Minecraft_Version variable on each new Minecraft version release.
|
@ -3,7 +3,7 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-06T02:04:44-08:00",
|
||||
"exported_at": "2020-12-13T18:26:08-08:00",
|
||||
"name": "Mohist",
|
||||
"author": "alex.chang-lam@protonmail.com",
|
||||
"description": "Spigot fork with performance optimizations.",
|
||||
@ -18,34 +18,43 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Mohistmc Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napt update\r\napt install -y curl\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -sSL \"https:\/\/mohistmc.com\/api\/${MINECRAFT_VERSION}\/${BUILD_NUMBER}\/download\" -o ${SERVER_JARFILE}",
|
||||
"script": "#!\/bin\/bash\r\n# Mohist Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl\r\n\r\n#Go into main direction\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir \/mnt\/server\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\nif [ ! -z ${BUILD_VERSION} ]; then\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_VERSION}\/download\r\nelse\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_TYPE}\/download\r\nfi\r\n\r\n#Downloading jars\r\necho -e \"Download link is ${DOWNLOAD_LINK}\"\r\necho -e \"Downloading build version ${BUILD_VERSION}\"\r\nif [ ! -z \"${DOWNLOAD_LINK}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}-server.jar; then\r\n echo -e \"Download link is valid.\"\r\n else\r\n echo -e \"Link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\ncurl -s -o server.jar -sS ${DOWNLOAD_LINK}\r\n\r\n#Checking if downloaded jars exist\r\nif [ ! -f .\/server.jar ]; then\r\n echo \"!!! Error downloading build version ${BUILD_VERSION} !!!\"\r\n exit\r\nfi",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
"description": "The name of the jarfile to run the server with.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Minecraft Version",
|
||||
"description": "The version of minecraft to download. \r\n\r\nInvalid versions will default to 1.12.2.",
|
||||
"env_variable": "MINECRAFT_VERSION",
|
||||
"default_value": "1.12.2",
|
||||
"description": "The version of Minecraft to download.",
|
||||
"env_variable": "MC_VERSION",
|
||||
"default_value": "1.16.4",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Build Number",
|
||||
"description": "Optional: \r\nThe build number for the Mohist release. Overrides Build Type.",
|
||||
"env_variable": "BUILD_VERSION",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
},
|
||||
{
|
||||
"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": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Build Number",
|
||||
"description": "The build number for the Mohist release.\r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.",
|
||||
"env_variable": "BUILD_NUMBER",
|
||||
"name": "Build Type",
|
||||
"description": "The type of server jar to download from Mohist.\r\n\r\nValid types are \"recommended\" and \"latest\".",
|
||||
"env_variable": "BUILD_TYPE",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
|
@ -3,11 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-04T12:08:20-05:00",
|
||||
"exported_at": "2020-12-06T18:34:01-08:00",
|
||||
"name": "Paper",
|
||||
"author": "parker@pterodactyl.io",
|
||||
"description": "High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies.",
|
||||
"features": null,
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
|
5
minecraft/java/purpur/README.md
Normal file
5
minecraft/java/purpur/README.md
Normal file
@ -0,0 +1,5 @@
|
||||
# Purpur
|
||||
|
||||
Purpur is a fork of Paper and Tuinity which provides new configuration options.
|
||||
|
||||
See https://github.com/pl3xgaming/purpur for additional information.
|
57
minecraft/java/purpur/egg-purpur.json
Normal file
57
minecraft/java/purpur/egg-purpur.json
Normal file
@ -0,0 +1,57 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-13T23:35:58-05:00",
|
||||
"name": "Purpur",
|
||||
"author": "purpur@birdflop.com",
|
||||
"description": "Fork of Paper and Tuinity providing new configuration options.",
|
||||
"features": [
|
||||
"eula"
|
||||
],
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -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 \"server-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": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Purpur Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napt update\r\napt install -y curl jq\r\n\r\nVER_EXISTS=`curl -s https:\/\/purpur.pl3x.net\/api\/v1\/purpur | jq -r --arg VERSION $MINECRAFT_VERSION '.versions[] | contains($VERSION)' | grep true`\r\nLATEST_PURPUR_VERSION=`curl -s https:\/\/purpur.pl3x.net\/api\/v1\/purpur | jq -r '.versions' | jq -r '.[0]'`\r\n\r\nif [ \"${VER_EXISTS}\" == \"true\" ]; then\r\n echo -e \"Version is valid. Using version ${MINECRAFT_VERSION}\"\r\nelse\r\n echo -e \"Using the latest Purpur version\"\r\n MINECRAFT_VERSION=${LATEST_PURPUR_VERSION}\r\nfi\r\n\r\nBUILD_EXISTS=`curl -s https:\/\/purpur.pl3x.net\/api\/v1\/purpur\/${MINECRAFT_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds.all[] | contains($BUILD)' | grep true`\r\nLATEST_PURPUR_BUILD=`curl -s https:\/\/purpur.pl3x.net\/api\/v1\/purpur\/${MINECRAFT_VERSION} | jq -r '.builds.latest'`\r\n\r\nif [ \"${BUILD_EXISTS}\" == \"true\" ] || [ ${BUILD_NUMBER} == \"latest\" ]; then\r\n echo -e \"Build is valid. Using version ${BUILD_NUMBER}\"\r\nelse\r\n echo -e \"Using the latest Purpur build\"\r\n BUILD_NUMBER=${LATEST_PURPUR_BUILD}\r\nfi\r\n\r\necho \"Version being downloaded\"\r\necho -e \"MC Version: ${MINECRAFT_VERSION}\"\r\necho -e \"Build: ${BUILD_NUMBER}\"\r\nDOWNLOAD_URL=https:\/\/purpur.pl3x.net\/api\/v1\/purpur\/${MINECRAFT_VERSION}\/${BUILD_NUMBER}\/download \r\n\r\n\r\ncd \/mnt\/server\r\n\r\necho -e \"running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\r\n\r\nif [ -f ${SERVER_JARFILE} ]; then\r\n mv ${SERVER_JARFILE} ${SERVER_JARFILE}.old\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n\r\nif [ ! -f server.properties ]; then\r\n echo -e \"Downloading MC server.properties\"\r\n curl -sSL -o server.properties https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/java\/server.properties\r\nfi",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Minecraft Version",
|
||||
"description": "The version of Minecraft to download. \r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.",
|
||||
"env_variable": "MINECRAFT_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
"description": "The name of the .jar file to run the server with.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/|max:80"
|
||||
},
|
||||
{
|
||||
"name": "Build Number",
|
||||
"description": "The build number for the Purpur release.\r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.",
|
||||
"env_variable": "BUILD_NUMBER",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-03-29T13:00:51-04:00",
|
||||
"exported_at": "2020-12-06T19:20:29-08:00",
|
||||
"name": "Spigot",
|
||||
"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.",
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-8-jre",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -28,8 +29,8 @@
|
||||
"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,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
},
|
||||
{
|
||||
@ -37,8 +38,8 @@
|
||||
"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": 0,
|
||||
"user_editable": 0,
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
@ -46,8 +47,8 @@
|
||||
"description": "The version of Spigot to download (using the --rev tag). Use \"latest\" for latest.",
|
||||
"env_variable": "DL_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|between:3,7"
|
||||
}
|
||||
]
|
||||
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-12-11T01:44:03+03:00",
|
||||
"exported_at": "2020-12-06T18:50:01-08:00",
|
||||
"name": "SpongeForge",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A community-driven open source Minecraft: Java Edition modding platform.",
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -28,8 +29,8 @@
|
||||
"description": "Example 1.12.2-2825-7.1.6\r\n\r\nIf the version fails it defaults to recommended",
|
||||
"env_variable": "SF_VERSION",
|
||||
"default_value": "recommended",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
@ -37,8 +38,8 @@
|
||||
"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,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
}
|
||||
]
|
||||
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-09-13T21:18:48-04:00",
|
||||
"exported_at": "2020-12-06T18:49:56-08:00",
|
||||
"name": "SpongeVanilla",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "SpongeVanilla is the implementation of the Sponge API on top of Vanilla Minecraft.",
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -28,8 +29,8 @@
|
||||
"description": "Example 1.12.2-7.1.6\r\n\r\nIf the version fails it defaults to recommended",
|
||||
"env_variable": "SV_VERSION",
|
||||
"default_value": "recommended",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
@ -37,8 +38,8 @@
|
||||
"description": "The name of the Jarfile to use when running Mod.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
}
|
||||
]
|
||||
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-03-27T00:25:53-04:00",
|
||||
"exported_at": "2020-12-06T18:58:35-08:00",
|
||||
"name": "Tuinity",
|
||||
"author": "unknown@unknown.com",
|
||||
"description": "Fork of Paper aimed at improving server performance at high playercounts.",
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-11",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -28,9 +29,9 @@
|
||||
"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,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-06-06T09:33:27-04:00",
|
||||
"exported_at": "2020-12-06T18:58:33-08:00",
|
||||
"name": "VanillaCord",
|
||||
"author": "support@pterodactyl.io",
|
||||
"description": "Minecraft is a game about placing blocks and going on adventures. Explore randomly generated worlds and build amazing things from the simplest of homes to the grandest of castles. Play in Creative Mode with unlimited resources or mine deep in Survival Mode, crafting weapons and armor to fend off dangerous mobs. Do all this alone or with friends.\r\n\r\nVanillaCord adds support for BungeeCord's ip_forward setting.",
|
||||
"features": ["eula"],
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -28,8 +29,8 @@
|
||||
"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,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
},
|
||||
{
|
||||
@ -37,9 +38,9 @@
|
||||
"description": "The version of Minecraft Vanilla to install. Use \"latest\" to install the latest version.",
|
||||
"env_variable": "VANILLA_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|between:3,15"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -3,21 +3,22 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-07-14T20:36:29-04:00",
|
||||
"exported_at": "2020-11-22T01:50:29-05:00",
|
||||
"name": "Velocity",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility.",
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_openjdk-15-hotspot",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"velocity.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"bind = \": \"bind = \\\"0.0.0.0:{{server.build.default.port}}\\\"\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Done (\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "shutdown"
|
||||
"stop": "end"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache curl\r\n\r\nmkdir -p \/mnt\/server\/\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z ${VELOCITY_VERSION} ] || [ ${VELOCITY_VERSION} == \"latest\" ]; then\r\n\tVELOCITY_VERSION=\/lastStableBuild\r\nfi\r\n\r\necho -e \"Getting download link\"\r\nDOWNLOAD_ENDPOINT=$(curl https:\/\/ci.velocitypowered.com\/job\/velocity\/${VELOCITY_VERSION}\/ | grep -Eo 'href=\"[^\\\"]+\"' | grep -vE \"view|fingerprint\" | grep \".jar\" | sed -n 's\/.*href=\"\\([^\"]*\\).*\/\\1\/p')\r\nDOWNLOAD_LINK=https:\/\/ci.velocitypowered.com\/job\/velocity\/lastStableBuild\/${DOWNLOAD_ENDPOINT}\r\n\r\necho -e \"Downloading ${DOWNLOAD_LINK}\"\r\ncurl ${DOWNLOAD_LINK} -o ${SERVER_JARFILE}\r\n\r\nif [ -f velocity.toml ]; then\r\n echo -e \"velocity config file exists\"\r\nelse\r\n echo -e \"downloading velocity config file.\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/proxy\/proxy\/velocity\/velocity.toml -o velocity.toml\r\nfi\r\n\r\necho -e \"install complete\"",
|
||||
"script": "#!\/bin\/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache curl\r\n\r\nmkdir -p \/mnt\/server\/\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z ${VELOCITY_VERSION} ] || [ ${VELOCITY_VERSION} == \"latest\" ]; then\r\n\tVELOCITY_VERSION=\"latest\"\r\nfi\r\n\r\necho -e \"Getting download link\"\r\nDOWNLOAD_LINK=https:\/\/versions.velocitypowered.com\/download\/${VELOCITY_VERSION}\r\n\r\necho -e \"Downloading ${DOWNLOAD_LINK}\"\r\ncurl ${DOWNLOAD_LINK} -o ${SERVER_JARFILE}\r\n\r\nif [ -f velocity.toml ]; then\r\n echo -e \"velocity config file exists\"\r\nelse\r\n echo -e \"downloading velocity config file.\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/proxy\/java\/velocity\/velocity.toml -o velocity.toml\r\nfi\r\n\r\necho -e \"install complete\"",
|
||||
"container": "alpine:3.10",
|
||||
"entrypoint": "ash"
|
||||
}
|
||||
@ -25,21 +26,21 @@
|
||||
"variables": [
|
||||
{
|
||||
"name": "Velocity Version",
|
||||
"description": "The Velocity Proxy version to download.\r\n\r\nset to 'latest ' the download the last stable build.",
|
||||
"description": "The Velocity Proxy version to download.\r\n\r\nSet to 'latest ' the download the last stable build.\r\nSet to '1.1.x-SNAPSHOT' to get the latest dev build.",
|
||||
"env_variable": "VELOCITY_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
"description": "Server Jar File name",
|
||||
"description": "Server Jarfile, by default this is set to 'velocity.jar'.\r\nSet it to otherwise if you wish to have a different jarfile name.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "velocity.jar",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
@ -1,106 +1,135 @@
|
||||
# Config version. Do not change this
|
||||
config-version = "1.0"
|
||||
|
||||
# What port should the proxy be bound to? By default, we'll bind to all addresses on port 25577.
|
||||
bind = "0.0.0.0:25577"
|
||||
|
||||
# What should be the MOTD? This gets displayed when the player adds your server to
|
||||
# their server list. Legacy color codes and JSON are accepted.
|
||||
motd = "&3A Velocity Server"
|
||||
|
||||
# What should we display for the maximum number of players? (Velocity does not support a cap
|
||||
# on the number of players online.)
|
||||
show-max-players = 500
|
||||
|
||||
# Should we authenticate players with Mojang? By default, this is on.
|
||||
online-mode = true
|
||||
|
||||
# If client's ISP/AS sent from this proxy is different from the one from Mojang's
|
||||
# authentication server, the player is kicked. This disallows some VPN and proxy
|
||||
# connections but is a weak form of protection.
|
||||
prevent-client-proxy-connections = false
|
||||
# Should we forward IP addresses and other data to backend servers?
|
||||
# Available options:
|
||||
# - "none": No forwarding will be done. All players will appear to be connecting from the
|
||||
# proxy and will have offline-mode UUIDs.
|
||||
# - "legacy": Forward player IPs and UUIDs in a BungeeCord-compatible format. Use this if
|
||||
# you run servers using Minecraft 1.12 or lower.
|
||||
# - "modern": Forward player IPs and UUIDs as part of the login process using Velocity's
|
||||
# native forwarding. Only applicable for Minecraft 1.13 or higher.
|
||||
player-info-forwarding-mode = "NONE"
|
||||
|
||||
# If you are using modern IP forwarding, configure an unique secret here.
|
||||
forwarding-secret = "FrP42MxySW6Y"
|
||||
|
||||
# - "none": No forwarding will be done. All players will appear to be connecting
|
||||
# from the proxy and will have offline-mode UUIDs.
|
||||
# - "legacy": Forward player IPs and UUIDs in a BungeeCord-compatible format. Use this
|
||||
# if you run servers using Minecraft 1.12 or lower.
|
||||
# - "bungeeguard": Forward player IPs and UUIDs in a format supported by the BungeeGuard
|
||||
# plugin. Use this if you run servers using Minecraft 1.12 or lower, and are
|
||||
# unable to implement network level firewalling (on a shared host).
|
||||
# - "modern": Forward player IPs and UUIDs as part of the login process using
|
||||
# Velocity's native forwarding. Only applicable for Minecraft 1.13 or higher.
|
||||
player-info-forwarding-mode = "legacy"
|
||||
# If you are using modern or BungeeGuard IP forwarding, configure an unique secret here.
|
||||
forwarding-secret = ""
|
||||
# Announce whether or not your server supports Forge. If you run a modded server, we
|
||||
# suggest turning this on.
|
||||
#
|
||||
# If your network runs one modpack consistently, consider using ping-passthrough = "mods"
|
||||
# instead for a nicer display in the server list.
|
||||
announce-forge = false
|
||||
# If enabled (default is false) and the proxy is in online mode, Velocity will kick
|
||||
# any existing player who is online if a duplicate connection attempt is made.
|
||||
kick-existing-players = false
|
||||
# Should Velocity pass server list ping requests to a backend server?
|
||||
# Available options:
|
||||
# - "disabled": No pass-through will be done. The velocity.toml and server-icon.png
|
||||
# will determine the initial server list ping response.
|
||||
# - "mods": Passes only the mod list from your backend server into the response.
|
||||
# The first server in your try list (or forced host) with a mod list will be
|
||||
# used. If no backend servers can be contacted, Velocity won't display any
|
||||
# mod information.
|
||||
# - "description": Uses the description and mod list from the backend server. The first
|
||||
# server in the try (or forced host) list that responds is used for the
|
||||
# description and mod list.
|
||||
# - "all": Uses the backend server's response as the proxy response. The Velocity
|
||||
# configuration is used if no servers could be contacted.
|
||||
ping-passthrough = "DISABLED"
|
||||
|
||||
[servers]
|
||||
# Configure your servers here. Each key represents the server's name, and the value
|
||||
# represents the IP address of the server to connect to.
|
||||
lobby = "127.0.0.1:30066"
|
||||
minigames = "127.0.0.1:30068"
|
||||
factions = "127.0.0.1:30067"
|
||||
|
||||
# In what order we should try servers when a player logs in or is kicked from aserver.
|
||||
try = [
|
||||
"lobby"
|
||||
]
|
||||
# Configure your servers here. Each key represents the server's name, and the value
|
||||
# represents the IP address of the server to connect to.
|
||||
lobby = "127.0.0.1:30066"
|
||||
minigames = "127.0.0.1:30068"
|
||||
# In what order we should try servers when a player logs in or is kicked from aserver.
|
||||
try = ["lobby"]
|
||||
factions = "127.0.0.1:30067"
|
||||
|
||||
[forced-hosts]
|
||||
# Configure your forced hosts here.
|
||||
"minigames.example.com" = [
|
||||
"minigames"
|
||||
]
|
||||
"lobby.example.com" = [
|
||||
"lobby"
|
||||
]
|
||||
"factions.example.com" = [
|
||||
"factions"
|
||||
]
|
||||
"minigames.example.com" = ["minigames"]
|
||||
# Configure your forced hosts here.
|
||||
"lobby.example.com" = ["lobby"]
|
||||
"factions.example.com" = ["factions"]
|
||||
|
||||
[advanced]
|
||||
# How large a Minecraft packet has to be before we compress it. Setting this to zero will
|
||||
# compress all packets, and setting it to -1 will disable compression entirely.
|
||||
compression-threshold = 256
|
||||
|
||||
# How much compression should be done (from 0-9). The default is -1, which uses the
|
||||
# default level of 6.
|
||||
compression-level = -1
|
||||
|
||||
# How fast (in milliseconds) are clients allowed to connect after the last connection? By
|
||||
# default, this is three seconds. Disable this by setting this to 0.
|
||||
login-ratelimit = 3000
|
||||
|
||||
# Specify a custom timeout for connection timeouts here. The default is five seconds.
|
||||
connection-timeout = 5000
|
||||
|
||||
# Specify a read timeout for connections here. The default is 30 seconds.
|
||||
read-timeout = 30000
|
||||
|
||||
# Enables compatibility with HAProxy.
|
||||
proxy-protocol = false
|
||||
# Specify a custom timeout for connection timeouts here. The default is five seconds.
|
||||
connection-timeout = 5000
|
||||
# Enables BungeeCord plugin messaging channel support on Velocity.
|
||||
bungee-plugin-message-channel = true
|
||||
# Specify a read timeout for connections here. The default is 30 seconds.
|
||||
read-timeout = 30000
|
||||
# Enables compatibility with HAProxy.
|
||||
proxy-protocol = false
|
||||
# Enables TCP fast open support on the proxy. Requires the proxy to run on Linux.
|
||||
tcp-fast-open = true
|
||||
# Shows ping requests to the proxy from clients.
|
||||
show-ping-requests = false
|
||||
# By default, Velocity will attempt to gracefully handle situations where the user unexpectedly
|
||||
# loses connection to the server without an explicit disconnect message by attempting to fall the
|
||||
# user back, except in the case of read timeouts. BungeeCord will disconnect the user instead. You
|
||||
# can disable this setting to use the BungeeCord behavior.
|
||||
failover-on-unexpected-server-disconnect = true
|
||||
# How much compression should be done (from 0-9). The default is -1, which uses the
|
||||
# default level of 6.
|
||||
compression-level = -1
|
||||
# Declares the proxy commands to 1.13+ clients.
|
||||
announce-proxy-commands = true
|
||||
# Enables the logging of commands
|
||||
log-command-executions = false
|
||||
# How large a Minecraft packet has to be before we compress it. Setting this to zero will
|
||||
# compress all packets, and setting it to -1 will disable compression entirely.
|
||||
compression-threshold = 256
|
||||
# How fast (in milliseconds) are clients allowed to connect after the last connection? By
|
||||
# default, this is three seconds. Disable this by setting this to 0.
|
||||
login-ratelimit = 3000
|
||||
|
||||
[query]
|
||||
# Whether to enable responding to GameSpy 4 query responses or not.
|
||||
enabled = false
|
||||
|
||||
# If query is enabled, on what port should the query protocol listen on?
|
||||
port = 25577
|
||||
|
||||
# This is the map name that is reported to the query services.
|
||||
map = "Velocity"
|
||||
|
||||
# Whether plugins should be shown in query response by default or not
|
||||
show-plugins = false
|
||||
# If query is enabled, on what port should the query protocol listen on?
|
||||
port = 25577
|
||||
# Whether plugins should be shown in query response by default or not
|
||||
show-plugins = false
|
||||
# This is the map name that is reported to the query services.
|
||||
map = "Velocity"
|
||||
# Whether to enable responding to GameSpy 4 query responses or not.
|
||||
enabled = false
|
||||
|
||||
[metrics]
|
||||
# Whether metrics will be reported to bStats (https://bstats.org).
|
||||
# bStats collects some basic information, like how many people use Velocity and their
|
||||
# player count. We recommend keeping bStats enabled, but if you're not comfortable with
|
||||
# this, you can turn this setting off. There is no performance penalty associated with
|
||||
# having metrics enabled, and data sent to bStats can't identify your server.
|
||||
enabled = true
|
||||
|
||||
# A unique, anonymous ID to identify this proxy with.
|
||||
id = "b12f2e77-133c-4a5f-b288-d8833be3dc4d"
|
||||
|
||||
log-failure = false
|
||||
# A unique, anonymous ID to identify this proxy with.
|
||||
id = ""
|
||||
log-failure = false
|
||||
# Whether metrics will be reported to bStats (https://bstats.org).
|
||||
# bStats collects some basic information, like how many people use Velocity and their
|
||||
# player count. We recommend keeping bStats enabled, but if you're not comfortable with
|
||||
# this, you can turn this setting off. There is no performance penalty associated with
|
||||
# having metrics enabled, and data sent to bStats can't identify your server.
|
||||
enabled = false
|
||||
|
||||
# Legacy color codes and JSON are accepted in all messages.
|
||||
[messages]
|
||||
generic-connection-error = "&cAn internal error occurred in your connection."
|
||||
already-connected = "&cYou are already connected to this proxy!"
|
||||
online-mode-only = "&cThis server only accepts connections from online-mode clients.\n\n&7Did you change your username? Sign out of Minecraft, sign back in, and try again."
|
||||
# Prefix when the player is disconnected from a server.
|
||||
# First argument '%s': the server name
|
||||
disconnect-prefix = "&cCan't connect to %s: "
|
||||
no-available-servers = "&cThere are no available servers."
|
||||
# Prefix when the player gets kicked from a server.
|
||||
# First argument '%s': the server name
|
||||
kick-prefix = "&cKicked from %s: "
|
||||
moved-to-new-server-prefix = "&cThe server you were on kicked you: "
|
@ -1,4 +1,4 @@
|
||||
# steamcmd servers
|
||||
# steamcmd servers
|
||||
|
||||
This is a collection of servers that use steamcmd to install.
|
||||
|
||||
@ -16,6 +16,12 @@ This is a collection of servers that use steamcmd to install.
|
||||
## Avorion
|
||||
[avorion](avorion/)
|
||||
|
||||
## Assetto Corsa
|
||||
[assetto_corsa](assetto_corsa/)
|
||||
|
||||
## Barotrauma
|
||||
[barotrauma](barotrauma/)
|
||||
|
||||
## Citadel: Forged with Fire
|
||||
[citadel](citadel/)
|
||||
|
||||
@ -49,6 +55,9 @@ This is a collection of servers that use steamcmd to install.
|
||||
## Project Zomboid
|
||||
[project_zomboid](project_zomboid/)
|
||||
|
||||
## Quake Live
|
||||
[Quake Live](quake_live/)
|
||||
|
||||
## Rising World
|
||||
[rising_world](rising_world/)
|
||||
|
||||
@ -79,6 +88,9 @@ This is a collection of servers that use steamcmd to install.
|
||||
## Team Fortress 2 Classic
|
||||
[Team Fortress 2 Classic](team_fortress_2_classic)
|
||||
|
||||
## The Forest
|
||||
[The Forest](the_forest)
|
||||
|
||||
## Tower Unite
|
||||
[Tower Unite](tower_unite)
|
||||
|
||||
|
12
steamcmd_servers/assetto_corsa/README.md
Normal file
12
steamcmd_servers/assetto_corsa/README.md
Normal file
@ -0,0 +1,12 @@
|
||||
# Assetto Corsa
|
||||
|
||||
Assetto Corsa is a sim racing video game developed by the Italian video game developer Kunos Simulazioni. It is designed with an emphasis on a realistic racing experience with support for extensive customization and moddability.
|
||||
|
||||
## Server Ports
|
||||
|
||||
Asseto Corsa requires two ports, game port is UDP and WEB HTTP port is TCP.
|
||||
|
||||
| Port | default |
|
||||
|-------------|---------|
|
||||
| Game | 9600 |
|
||||
| HTTP | 8081 |
|
91
steamcmd_servers/assetto_corsa/egg-assetto-corsa.json
Normal file
91
steamcmd_servers/assetto_corsa/egg-assetto-corsa.json
Normal file
@ -0,0 +1,91 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-14T03:20:46+02:00",
|
||||
"name": "Assetto Corsa",
|
||||
"author": "admin@softwarenoob.com",
|
||||
"description": "Assetto Corsa (Italian for \"Race Setup\") is a sim racing video game developed by the Italian video game developer Kunos Simulazioni. It is designed with an emphasis on a realistic racing experience with support for extensive customization and moddability",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu_source",
|
||||
"startup": ".\/acServer",
|
||||
"config": {
|
||||
"files": "{\r\n \"cfg\/server_cfg.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"NAME\": \"NAME={{server.build.env.HOSTNAME}}\",\r\n \"PASSWORD\": \"PASSWORD={{server.build.env.PASSWORD}}\",\r\n \"ADMIN_PASSWORD\": \"ADMIN_PASSWORD={{server.build.env.ADM_PASSWORD}}\",\r\n \"UDP_PORT\": \"UDP_PORT={{server.build.default.port}}\",\r\n \"TCP_PORT\": \"TCP_PORT={{server.build.default.port}}\",\r\n \"HTTP_PORT\": \"HTTP_PORT={{server.build.env.HTTP_PORT}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Server started\"\r\n}",
|
||||
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"Downloading the game as Steam user ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +@sSteamCmdForcePlatformType windows +force_install_dir \/mnt\/server +app_update 302550 ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\nif [ \"${STEAM_USER}\" == \"anonymous\" ]; then\r\n echo -e \"ERROR - STEAM USER NOT SET\\n\"\r\n echo -e \"Steam account must have the dedicated server in his library in order to install and host the game\\n\"\r\n echo -e \"You must configure Steam account in the server startup variables, after that reinstall the server\\n\"\r\nfi",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Steam Username",
|
||||
"description": "A steam username of an account that owns the game is required",
|
||||
"env_variable": "STEAM_USER",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Steam Password",
|
||||
"description": "Steam User Password",
|
||||
"env_variable": "STEAM_PASS",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Steam Auth Code",
|
||||
"description": "Steam Auth Code required if the Steam Account is using Steam Auth",
|
||||
"env_variable": "STEAM_AUTH",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "Name of the server",
|
||||
"env_variable": "HOSTNAME",
|
||||
"default_value": "Pterodactyl Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:45"
|
||||
},
|
||||
{
|
||||
"name": "Server Password",
|
||||
"description": "If enabled players must enter the password to join the server",
|
||||
"env_variable": "PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:40"
|
||||
},
|
||||
{
|
||||
"name": "Admin Password",
|
||||
"description": "Used to login as server administrator, type \/help in-game for more",
|
||||
"env_variable": "ADMIN_PASSWORD",
|
||||
"default_value": "4yRWj5vqr6zD",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:40"
|
||||
},
|
||||
{
|
||||
"name": "HTTP Port",
|
||||
"description": "HTTP Port",
|
||||
"env_variable": "HTTP_PORT",
|
||||
"default_value": "8081",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
26
steamcmd_servers/barotrauma/README.md
Normal file
26
steamcmd_servers/barotrauma/README.md
Normal file
@ -0,0 +1,26 @@
|
||||
# Barotrauma
|
||||
### From their [Steam Description](https://store.steampowered.com/app/602960/Barotrauma/)
|
||||
Barotrauma is a 2D co-op survival horror submarine simulator, inspired by games like FTL: Faster Than Light, Rimworld, Dwarf Fortress and Space Station 13. It’s a Sci-Fi game that combines ragdoll physics and alien sea monsters with teamwork and existential fear.
|
||||
|
||||
|
||||
### Server Ports
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|------------|---------|
|
||||
| Game Port | 27015 |
|
||||
| Query Port | 27016 |
|
||||
|
||||
**WARNING
|
||||
You must edit the port and server settings in serversettings.xml file or your server will not work!**
|
||||
|
||||
### No console
|
||||
Barotrauma server does not currently have server console, it will just spam random messages. You have to add yourself as admin and type commands in-game. Admin file is located at Data/clientpermissions.xml, example config is below.
|
||||
|
||||
```<?xml version="1.0" encoding="utf-8"?>
|
||||
<ClientPermissions>
|
||||
<Client
|
||||
name="YOUR INGAME NAME HERE"
|
||||
steamid="YOUR STEAM64ID here"
|
||||
preset="Admin" />
|
||||
</ClientPermissions>
|
27
steamcmd_servers/barotrauma/egg-barotrauma.json
Normal file
27
steamcmd_servers/barotrauma/egg-barotrauma.json
Normal file
@ -0,0 +1,27 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-14T04:12:32+02:00",
|
||||
"name": "Barotrauma",
|
||||
"author": "admin@softwarenoob.com",
|
||||
"description": "Barotrauma is a 2D co-op survival horror submarine simulator, inspired by games like FTL: Faster Than Light, Rimworld, Dwarf Fortress and Space Station 13. It\u2019s a Sci-Fi game that combines ragdoll physics and alien sea monsters with teamwork and existential fear.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu_source",
|
||||
"startup": ".\/DedicatedServer -batchmode",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Server started\"\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"latest.log\"\r\n}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'debian:buster-slim'\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\r\nSRCDS_APPID=1026340\r\n\r\n## just in case someone removed the defaults.\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\n\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
}
|
@ -2,7 +2,7 @@
|
||||
game_mode = survival
|
||||
max_players = 10
|
||||
pvp = false
|
||||
pause_when_empty = false
|
||||
pause_when_empty = true
|
||||
|
||||
[NETWORK]
|
||||
cluster_name = Pterodactyl Test Server
|
||||
@ -20,4 +20,4 @@ shard_enabled = true
|
||||
bind_ip = 127.0.0.1
|
||||
master_ip = 127.0.0.1
|
||||
master_port = 11001
|
||||
cluster_key = dst
|
||||
cluster_key = dst
|
||||
|
@ -3,11 +3,12 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-10-24T00:00:15-04:00",
|
||||
"exported_at": "2021-01-01T18:31:11+02:00",
|
||||
"name": "PixARK",
|
||||
"author": "hello@venatus.digital",
|
||||
"description": "A simple Docker container with Wine to run PixARK using Pterodactyl Panel",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:wine-source",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu_wine-source",
|
||||
"startup": "wine64 .\/ShooterGame\/Binaries\/Win64\/PixARKServer.exe CubeWorld_Light?listen?MaxPlayers={{MAX_PLAYERS}}?Port={{SERVER_PORT}}?QueryPort={{QPORT}}?RCONPort={{RCPORT}}?ServerPassword={{ARK_PASSWORD}}?ServerAdminPassword={{ARK_ADMIN_PASSWORD}}?CULTUREFORCOOKING=en -NoBattlEye -CubePort={{CUBEPORT}} -cubeworld=world -nosteamclient -NoHangDetection -game -server -log",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
@ -17,7 +18,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# PixARK: Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\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\/steamcmd\r\n\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\n\r\nexport HOME=\/mnt\/server\r\n\/mnt\/server\/steamcmd\/steamcmd.sh +@sSteamCmdForcePlatformType windows +login anonymous +force_install_dir \/mnt\/server +app_update {{SRCDS_APPID}} +quit",
|
||||
"script": "#!\/bin\/bash\r\n# PixARK: Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends --no-install-suggests install curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +@sSteamCmdForcePlatformType windows +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} +quit",
|
||||
"container": "ubuntu:latest",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -28,8 +29,8 @@
|
||||
"description": "If specified, players must provide this password to join the server.",
|
||||
"env_variable": "ARK_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|alpha_dash|between:1,100"
|
||||
},
|
||||
{
|
||||
@ -37,8 +38,8 @@
|
||||
"description": "If specified, players must provide this password (via the in-game console) to gain access to administrator commands on the server.",
|
||||
"env_variable": "ARK_ADMIN_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|alpha_dash|between:1,100"
|
||||
},
|
||||
{
|
||||
@ -46,8 +47,8 @@
|
||||
"description": "Specifies the maximum number of players that can play on the server simultaneously.",
|
||||
"env_variable": "MAX_PLAYERS",
|
||||
"default_value": "10",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|digits_between:1,4"
|
||||
},
|
||||
{
|
||||
@ -55,8 +56,8 @@
|
||||
"description": "The port assigned for use as query port",
|
||||
"env_variable": "QPORT",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|digits_between:1,5"
|
||||
},
|
||||
{
|
||||
@ -64,8 +65,8 @@
|
||||
"description": "The port assigned for use as RCON port",
|
||||
"env_variable": "RCPORT",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|digits_between:1,5"
|
||||
},
|
||||
{
|
||||
@ -73,8 +74,8 @@
|
||||
"description": "The port to be used for terrain",
|
||||
"env_variable": "CUBEPORT",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|digits_between:1,5"
|
||||
},
|
||||
{
|
||||
@ -82,9 +83,9 @@
|
||||
"description": "PixARK Source App ID",
|
||||
"env_variable": "SRCDS_APPID",
|
||||
"default_value": "824360",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
16
steamcmd_servers/quake_live/README.md
Normal file
16
steamcmd_servers/quake_live/README.md
Normal file
@ -0,0 +1,16 @@
|
||||
# Quake Live
|
||||
A first-person shooter video game by id Software. It is an updated version of Quake III Arena that was originally designed
|
||||
as a free-to-play game launched via a web browser plug-in. On September 17, 2014, the game was re-launched as a standalone
|
||||
title on Steam.
|
||||
|
||||
Quake Live was previously a free-to-play game, with subscription options offering additional arenas, game types and game
|
||||
server options. As of October 27, 2015, the game is no longer free and must be purchased, and the subscription options
|
||||
were dropped.
|
||||
|
||||
### Server Ports
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|---------|-----------|
|
||||
| Game | 27960 UDP |
|
||||
| Stats | 27960 TCP |
|
73
steamcmd_servers/quake_live/egg-quake-live.json
Normal file
73
steamcmd_servers/quake_live/egg-quake-live.json
Normal file
@ -0,0 +1,73 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-11-20T13:09:52+01:00",
|
||||
"name": "Quake Live",
|
||||
"author": "patz.michael@gmail.com",
|
||||
"description": "Quake Live is a first-person shooter video game by id Software. It is an updated version of Quake III Arena that was originally designed as a free-to-play game launched via a web browser plug-in. On September 17, 2014, the game was re-launched as a standalone title on Steam.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu_source",
|
||||
"startup": ".\/qzeroded.x64 +set net_port \"{{SERVER_PORT}}\" +set sv_hostname \"{{SERVER_NAME}}\" +set sv_serverType \"{{SERVER_TYPE}}\" +set g_password \"{{PASSWORD}}\" +sv_fps \"{{FPS}}\"",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"zmq stats and rcon passwords updated\",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "quit"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Quake Live Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates libstdc++6 libz1\r\n\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\/steamcmd \/mnt\/server\/logs\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\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 349090 +quit\r\n\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so",
|
||||
"container": "ubuntu:18.04",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "ld lib path",
|
||||
"description": "",
|
||||
"env_variable": "LD_LIBRARY_PATH",
|
||||
"default_value": ".\/linux64",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "The Name that will show up in the Serverbrowser",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "A Quake Live Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:70"
|
||||
},
|
||||
{
|
||||
"name": "Server Type",
|
||||
"description": "0 = Offline, 1 = LAN, 2 = Internet",
|
||||
"env_variable": "SERVER_TYPE",
|
||||
"default_value": "2",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|max:2"
|
||||
},
|
||||
{
|
||||
"name": "Server Password",
|
||||
"description": "Set a server-wide password, and stop all users from connecting without it",
|
||||
"env_variable": "PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "FPS",
|
||||
"description": "Change how many frames the server runs per second. WARNING: Has not been tested extensively, and will have a direct impact on CPU and network usage!",
|
||||
"env_variable": "FPS",
|
||||
"default_value": "40",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric"
|
||||
}
|
||||
]
|
||||
}
|
@ -23,7 +23,7 @@ Ports required to run the server.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game and Quary | 28015 UDP |
|
||||
| Game and Query | 28015 UDP |
|
||||
| RCON | 28016 TCP |
|
||||
|
||||
### Information about server updates can be found [here](https://steamdb.info/app/258550/depots/?branch=staging)
|
||||
|
20
steamcmd_servers/the_forest/README.md
Normal file
20
steamcmd_servers/the_forest/README.md
Normal file
@ -0,0 +1,20 @@
|
||||
## The Forest
|
||||
As the lone survivor of a passenger jet crash, you find yourself in a mysterious forest battling to stay alive against a society of cannibalistic mutants.
|
||||
Build, explore, survive in this terrifying first-person survival horror simulator.
|
||||
|
||||
|
||||
|
||||
**NOTE**
|
||||
This server requires a Steam Token
|
||||
You can generate the token on steam at https://steamcommunity.com/dev/managegameservers
|
||||
|
||||
## Server Ports
|
||||
The forest server requires three ports for access Server port (Default), Steam port (8766), Query Port (27016) but some plugins may require extra ports to enabled for the server.
|
||||
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Server | any |
|
||||
| Steam | 8766 |
|
||||
| Query | 27016 |
|
||||
|
109
steamcmd_servers/the_forest/egg-the-forest.json
Normal file
109
steamcmd_servers/the_forest/egg-the-forest.json
Normal file
@ -0,0 +1,109 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-14T01:03:24+02:00",
|
||||
"name": "The Forest",
|
||||
"author": "admin@softwarenoob.com",
|
||||
"description": "As the lone survivor of a passenger jet crash, you find yourself in a mysterious forest battling to stay alive against a society of cannibalistic mutants. Build, explore, survive in this terrifying first-person survival horror simulator.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu_wine-xvfb",
|
||||
"startup": ".\/start.sh -serverip {{SERVER_IP}}:{{QUERY_PORT} -serversteamport {{STEAM_PORT}} -servergameport {{SERVER_PORT}} -serverqueryport {{QUERY_PORT}} -servername \"{{SERVER_NAME}}\" -serverplayers {{MAX_PLAYERS}} -difficulty {{SERVER_DIFFICULTY}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"\/TheForestDedicatedServer_Data\/forest\/config\/config.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"serverIP\": \"serverIP {{server.build.default.ip}}:{{server.build.env.QUERY_PORT}}\",\r\n \"serverSteamPort\": \"serverSteamPort {{server.build.env.STEAM_PORT}}\",\r\n \"serverGamePort\": \"serverGamePort {{server.build.default.port}}\",\r\n \"serverName\": \"serverName {{server.build.env.SERVER_NAME}}\",\r\n \"serverPlayers\": \"serverPlayers {{server.build.env.MAX_PLAYERS}}\",\r\n \"serverPassword\": \"serverPassword {{server.build.env.SERVER_PASS}}\",\r\n \"serverPasswordAdmin\": \"serverPasswordAdmin {{server.build.env.ADMIN_PASS}}\",\r\n \"serverSteamAccount\": \"serverSteamAccount {{server.build.env.STEAM_ACC}}\",\r\n \"difficulty\": \"difficulty {{server.build.env.SERVER_DIFFICULTY}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Game autosave started\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Installation Script\r\n#\r\n# Install dependencies\r\napt update\r\napt -y --no-install-recommends install curl unzip libstdc++6 lib32gcc1 ca-certificates\r\n\r\n\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## Install game using steamcmd\r\n.\/steamcmd.sh +login anonymous +@sSteamCmdForcePlatformType windows +force_install_dir \/mnt\/server +app_update ${APPID} ${EXTRA_FLAGS} validate +quit\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n## Configure wine and server startup config\r\nmkdir -p \/home\/container\/.wine64\r\necho \"#!\/bin\/sh\r\nexport WINEARCH=win64\r\nexport WINEPREFIX=\/home\/container\/.wine64\r\nxvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' wine64 \/home\/container\/TheForestDedicatedServer.exe -batchmode -nographics -nosteamclient -savefolderpath \/home\/container\/TheForestDedicatedServer_Data -configfilepath \/home\/container\/TheForestDedicatedServer_Data\/forest\/config\/config.cfg |grep -v 'RenderTexture.Create failed: format unsupported - 2.'\" > \/mnt\/server\/start.sh\r\nchmod +x \/mnt\/server\/start.sh",
|
||||
"container": "ubuntu:18.04",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "APP ID",
|
||||
"description": "The ID corresponding to the game to download.",
|
||||
"env_variable": "APPID",
|
||||
"default_value": "556450",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|digits_between:1,6"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "Name of the server, appears in Steam browser.",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "Pterodactyl Forest Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64"
|
||||
},
|
||||
{
|
||||
"name": "Steam Port",
|
||||
"description": "Steam port",
|
||||
"env_variable": "STEAM_PORT",
|
||||
"default_value": "8766",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Query Port",
|
||||
"description": "Query port, this port is also used for connecting to the server",
|
||||
"env_variable": "QUERY_PORT",
|
||||
"default_value": "27016",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Max Players",
|
||||
"description": "Server player cap",
|
||||
"env_variable": "MAX_PLAYERS",
|
||||
"default_value": "10",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Difficulty",
|
||||
"description": "Server difficulty setting, Peaceful, Normal or Hard.",
|
||||
"env_variable": "SERVER_DIFFICULTY",
|
||||
"default_value": "Normal",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:Peaceful,Normal,Hard"
|
||||
},
|
||||
{
|
||||
"name": "Steam Account Token",
|
||||
"description": "The Steam Account Token is required for the server to save player progress. Use APP ID 242760 for the token generation. \r\n\r\nYou can generate the token on steam at https:\/\/steamcommunity.com\/dev\/managegameservers",
|
||||
"env_variable": "STEAM_ACC",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Server Password",
|
||||
"description": "Password protects the server if set, any player must enter the password to join",
|
||||
"env_variable": "SERVER_PASS",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Admin Password",
|
||||
"description": "A password that will be used to gain admin access to the server in-game",
|
||||
"env_variable": "ADMIN_PASS",
|
||||
"default_value": "cHanGetHePaSwWord",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
@ -17,7 +17,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'debian:buster-slim'\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n# Creating needed default files for the game\r\ncd \/mnt\/server\/garrysmod\/lua\/autorun\/server\r\necho '\r\n-- Docs: https:\/\/wiki.garrysmod.com\/page\/resource\/AddWorkshop\r\n-- Place the ID of the workshop addon you want to be downloaded to people who join your server, not the collection ID\r\n-- Use https:\/\/beta.configcreator.com\/create\/gmod\/resources.lua to easily create a list based on your collection ID\r\n\r\nresource.AddWorkshop( \"\" )\r\n' > workshop.lua\r\n\r\ncd \/mnt\/server\/garrysmod\/cfg\r\necho '\r\n\/\/ Please do not set RCon in here, use the startup parameters.\r\n\r\nhostname\t\t\"New Gmod Server\"\r\nsv_password\t\t\"\"\r\nsv_loadingurl \"\"\r\n\r\n\/\/ Steam Server List Settings\r\nsv_region \"255\"\r\nsv_lan \"0\"\r\nsv_max_queries_sec_global \"30000\"\r\nsv_max_queries_window \"45\"\r\nsv_max_queries_sec \"5\"\r\n\r\n\/\/ Server Limits\r\nsbox_maxprops\t\t100\r\nsbox_maxragdolls\t5\r\nsbox_maxnpcs\t\t10\r\nsbox_maxballoons\t10\r\nsbox_maxeffects\t\t10\r\nsbox_maxdynamite\t10\r\nsbox_maxlamps\t\t10\r\nsbox_maxthrusters\t10\r\nsbox_maxwheels\t\t10\r\nsbox_maxhoverballs\t10\r\nsbox_maxvehicles\t20\r\nsbox_maxbuttons\t\t10\r\nsbox_maxsents\t\t20\r\nsbox_maxemitters\t5\r\nsbox_godmode\t\t0\r\nsbox_noclip\t\t 0\r\n\r\n\/\/ Network Settings - Please keep these set to default.\r\n\r\nsv_minrate\t\t75000\r\nsv_maxrate\t\t0\r\ngmod_physiterations\t2\r\nnet_splitpacket_maxrate\t45000\r\ndecalfrequency\t\t12 \r\n\r\n\/\/ Execute Ban Files - Please do not edit\r\nexec banned_ip.cfg \r\nexec banned_user.cfg \r\n\r\n\/\/ Add custom lines under here\r\n' > server.cfg",
|
||||
"script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n# Image to install with is 'debian:buster-slim'\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n echo -e \"steam user is not set.\\n\"\r\n echo -e \"Using anonymous user.\\n\"\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n# Creating needed default files for the game\r\ncd \/mnt\/server\/garrysmod\/lua\/autorun\/server\r\necho '\r\n-- Docs: https:\/\/wiki.facepunch.com\/gmod\/resource.AddWorkshop\r\n-- Place the ID of the workshop addon you want to be downloaded to people who join your server, not the collection ID\r\n-- Use https:\/\/beta.configcreator.com\/create\/gmod\/resources.lua to easily create a list based on your collection ID\r\n\r\nresource.AddWorkshop( \"\" )\r\n' > workshop.lua\r\n\r\ncd \/mnt\/server\/garrysmod\/cfg\r\necho '\r\n\/\/ Please do not set RCon in here, use the startup parameters.\r\n\r\nhostname\t\t\"New Gmod Server\"\r\nsv_password\t\t\"\"\r\nsv_loadingurl \"\"\r\n\r\n\/\/ Steam Server List Settings\r\nsv_region \"255\"\r\nsv_lan \"0\"\r\nsv_max_queries_sec_global \"30000\"\r\nsv_max_queries_window \"45\"\r\nsv_max_queries_sec \"5\"\r\n\r\n\/\/ Server Limits\r\nsbox_maxprops\t\t100\r\nsbox_maxragdolls\t5\r\nsbox_maxnpcs\t\t10\r\nsbox_maxballoons\t10\r\nsbox_maxeffects\t\t10\r\nsbox_maxdynamite\t10\r\nsbox_maxlamps\t\t10\r\nsbox_maxthrusters\t10\r\nsbox_maxwheels\t\t10\r\nsbox_maxhoverballs\t10\r\nsbox_maxvehicles\t20\r\nsbox_maxbuttons\t\t10\r\nsbox_maxsents\t\t20\r\nsbox_maxemitters\t5\r\nsbox_godmode\t\t0\r\nsbox_noclip\t\t 0\r\n\r\n\/\/ Network Settings - Please keep these set to default.\r\n\r\nsv_minrate\t\t75000\r\nsv_maxrate\t\t0\r\ngmod_physiterations\t2\r\nnet_splitpacket_maxrate\t45000\r\ndecalfrequency\t\t12 \r\n\r\n\/\/ Execute Ban Files - Please do not edit\r\nexec banned_ip.cfg \r\nexec banned_user.cfg \r\n\r\n\/\/ Add custom lines under here\r\n' > server.cfg",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -87,4 +87,4 @@
|
||||
"rules": "required|integer|max:100"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
22
storage/minio/README.md
Normal file
22
storage/minio/README.md
Normal file
@ -0,0 +1,22 @@
|
||||
# minio s3
|
||||
|
||||
## Features
|
||||
Auto generate keys on server creation bypassing default minio keys
|
||||
|
||||
|
||||
Automatic Key rotation using "rotate" startup feature
|
||||
|
||||
## Auto Rotate
|
||||
It's possible to rotate your keys by changing the startup option to "rotate"
|
||||
|
||||
|
||||
Once this is changed restart your server and it will automatically move your current keys to old and create your new keys
|
||||
|
||||
|
||||
Be sure to change your startup back to "normal" once you have started your server using "rotate". This will ensure that you don't accidentally rotate your keys twice
|
||||
|
||||
## Known Issues
|
||||
|
||||
Double encryption may occur if you manually manipulate files in the keys directory
|
||||
|
||||
#### Key rotation is handled automatically, DO NOT manually delete files in keys directory
|
37
storage/minio/egg-minio-s3.json
Normal file
37
storage/minio/egg-minio-s3.json
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-12-14T05:29:26+02:00",
|
||||
"name": "Minio S3",
|
||||
"author": "accounts@bofanodes.io",
|
||||
"description": "MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu",
|
||||
"startup": ".\/minio.sh",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"guide\"\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#\r\n#\r\napt update\r\napt install -y wget\r\ncd \/mnt\/server\r\nwget https:\/\/dl.min.io\/server\/minio\/release\/linux-amd64\/minio\r\nchmod +x minio\r\nmkdir data\r\nmkdir keys\r\n\r\nwget https:\/\/github.com\/\/parkervcp\/eggs\/raw\/master\/storage\/minio\/minio.sh\r\nchmod +x minio.sh\r\nexport MINIO_ACCESS_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_ACCESS_KEY > keys\/key.txt\r\nexport MINIO_SECRET_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_SECRET_KEY > keys\/secret.txt\r\necho done",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Startup Type",
|
||||
"description": "normal or rotate",
|
||||
"env_variable": "STARTUP_TYPE",
|
||||
"default_value": "normal",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:normal,rotate"
|
||||
}
|
||||
]
|
||||
}
|
56
storage/minio/minio.sh
Normal file
56
storage/minio/minio.sh
Normal file
@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
##################################
|
||||
echo Starting up....
|
||||
echo "Startup Type: $STARTUP_TYPE"
|
||||
if [ -f "keys/key.txt" ]; then
|
||||
echo "Key file detected..."
|
||||
export MINIO_ACCESS_KEY=`cat keys/key.txt`
|
||||
else
|
||||
echo minioadmin > keys/key.txt
|
||||
echo "No key file detected...Preparing First Time Boot"
|
||||
fi
|
||||
if [ -f "keys/secret.txt" ]; then
|
||||
echo "Secret file detected..."
|
||||
export MINIO_SECRET_KEY=`cat keys/secret.txt`
|
||||
else
|
||||
echo minioadmin > keys/secret.txt
|
||||
echo "No secret file detected...Preparing First Time Boot"
|
||||
fi
|
||||
if [ -f "keys/oldsecret.txt" ]; then
|
||||
echo "Old secret file detected..."
|
||||
export MINIO_SECRET_KEY_OLD=`cat keys/oldsecret.txt`
|
||||
fi
|
||||
if [ -f "keys/oldkey.txt" ]; then
|
||||
echo "Old key file detected..."
|
||||
export MINIO_ACCESS_KEY_OLD=`cat keys/oldkey.txt`
|
||||
fi
|
||||
if [ -f "keys/justrotated.txt" ]; then
|
||||
echo "Previous key rotation detected...."
|
||||
echo "Clearing the Lanes...."
|
||||
unset MINIO_ACCESS_KEY_OLD
|
||||
unset MINIO_SECRET_KEY_OLD
|
||||
STARTUP_TYPE=normal
|
||||
rm keys/justrotated.txt
|
||||
rm keys/oldsecret.txt
|
||||
rm keys/oldkey.txt
|
||||
fi
|
||||
##########################################
|
||||
if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "rotate" ]; then
|
||||
touch keys/justrotated.txt
|
||||
export MINIO_ACCESS_KEY_OLD=$MINIO_ACCESS_KEY
|
||||
echo $MINIO_ACCESS_KEY_OLD > keys/oldkey.txt
|
||||
export MINIO_SECRET_KEY_OLD=$MINIO_SECRET_KEY
|
||||
echo $MINIO_SECRET_KEY_OLD > keys/oldsecret.txt
|
||||
export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
|
||||
echo $MINIO_ACCESS_KEY > keys/key.txt
|
||||
export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
|
||||
echo $MINIO_SECRET_KEY > keys/secret.txt
|
||||
echo Your New Access Key is: $MINIO_ACCESS_KEY
|
||||
echo Your New Secret Key is: $MINIO_SECRET_KEY
|
||||
echo Your Old Access Key is: $MINIO_ACCESS_KEY_OLD
|
||||
echo Your Old Access Key is: $MINIO_SECRET_KEY_OLD
|
||||
echo Booting...
|
||||
./minio server data --address 0.0.0.0:$SERVER_PORT
|
||||
else
|
||||
./minio server data --address 0.0.0.0:$SERVER_PORT
|
||||
fi
|
@ -3,10 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-03-28T13:50:13-04:00",
|
||||
"exported_at": "2020-12-13T16:59:05+01:00",
|
||||
"name": "TeaSpeak",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "TeaSpeak is a free to use client and server software for VoIP communication.\r\n\r\nIts the ideal deal software for everyone who is annoyed about limits and restrictions.",
|
||||
"features": null,
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/TeaSpeakServer --property:binding.query.port={{QUERY_PORT}} --property:binding.file.port={{FILE_PORT}} --property:voice.default_port={{SERVER_PORT}}",
|
||||
"config": {
|
||||
@ -17,7 +18,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n \r\n## install required packages\r\napt update\r\napt upgrade -y\r\napt install curl -y\r\n\r\n## make and change to directory\r\nmkdir \/mnt\/server\r\ncd \/mnt\/server\/\r\n\r\n## get download link\r\nif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/latest).tar.gz\")\r\nelse\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-${VERSION}.tar.gz\")\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\n## download files\r\necho -e \"running: curl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\r\n\r\n## unpack files\r\necho -e \"unpacking files\"\r\ntar xzvf teaspeak.tar.gz\r\n\r\necho -e \"install complete\"",
|
||||
"script": "#!\/bin\/bash\r\n \r\n## install required packages\r\napt update\r\napt upgrade -y\r\napt install curl -y\r\n\r\n## make and change to directory\r\nmkdir \/mnt\/server\r\ncd \/mnt\/server\/\r\n\r\n## get download link\r\nif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/latest).tar.gz\")\r\nelif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"nightly\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/latest).tar.gz\")\r\nelse\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-${VERSION}.tar.gz\")\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\n## download files\r\necho -e \"running: curl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\r\n\r\n## unpack files\r\necho -e \"unpacking files\"\r\ntar xzvf teaspeak.tar.gz\r\n\r\necho -e \"install complete\"",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -28,8 +29,8 @@
|
||||
"description": "The query port for TeaSpeak",
|
||||
"env_variable": "QUERY_PORT",
|
||||
"default_value": "10101",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|max:65535"
|
||||
},
|
||||
{
|
||||
@ -37,8 +38,8 @@
|
||||
"description": "The TeaSpeak File Transfer Port",
|
||||
"env_variable": "FILE_PORT",
|
||||
"default_value": "30303",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|max:65535"
|
||||
},
|
||||
{
|
||||
@ -46,8 +47,8 @@
|
||||
"description": "The TeaSpeak Server MOTD",
|
||||
"env_variable": "SERVER_MOTD",
|
||||
"default_value": "TeaSpeak\\n\\rHosted on pterodactyl!",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:128"
|
||||
},
|
||||
{
|
||||
@ -55,8 +56,8 @@
|
||||
"description": "Don't touch this if you want the server to start",
|
||||
"env_variable": "LD_LIBRARY_PATH",
|
||||
"default_value": ".\/libs\/",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
@ -64,17 +65,17 @@
|
||||
"description": "Don't touch this if you want the server to start",
|
||||
"env_variable": "LD_PRELOAD",
|
||||
"default_value": ".\/libs\/libjemalloc.so.2",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Teaspeak Version",
|
||||
"description": "What version of teaspeak to install",
|
||||
"description": "What version of teaspeak to install: latest = latest stable ; nightly = latest nightly",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user