mirror of
https://github.com/pelican-eggs/games-standalone.git
synced 2024-11-25 20:02:35 +01:00
Merge branch 'master' into add/lavalink
This commit is contained in:
commit
ca84387336
32
README.md
32
README.md
@ -1,4 +1,4 @@
|
||||
# Parkers Pterodactyl eggs repo
|
||||
# Parkers Pterodactyl eggs repo
|
||||
|
||||
I am working on adding a large collection of public eggs for the Pterodactyl community.
|
||||
|
||||
@ -32,6 +32,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [CorpBot](/bots/discord/corpbot/) Python
|
||||
* [discord.js](bots/discord/discord.js/) Node JS generic
|
||||
* [discord.py](bots/discord/discord.py/) Python generic
|
||||
* [discordgo](bots/discord/discordgo/) golang generic
|
||||
* [fragbot](/bots/discord/fragbot/) Golang
|
||||
* [jmusicbot](/bots/discord/jmusicbot) Java
|
||||
* [parkertron](/bots/discord/parkertron/) Golang
|
||||
@ -41,25 +42,34 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [Twitch](/bots/twitch)
|
||||
* [PhantomBot](/bots/twitch/phantombot/)
|
||||
* [sogeBot](/bots/twitch/sogebot/)
|
||||
|
||||
[Other](/bots/other/)
|
||||
* [Big Brother Bot](/bots/other/bigbrotherbot)
|
||||
|
||||
* [TeamSpeak3](bots/teamspeak3)
|
||||
* [JTS3ServerMod](/bots/teamspeak3/jts3servermod/)
|
||||
|
||||
## [Database](/database/)
|
||||
### [SQL] Databases
|
||||
* [MariaDB](/database/sql/mariadb/)
|
||||
* [PostgreSQL](/database/sql/postgres/)
|
||||
|
||||
### In-Memory Databases
|
||||
[Redis](/database/redis/)
|
||||
* [Redis 5](/database/redis/redis-5)
|
||||
* [Redis 6](/database/redis/redis-6)
|
||||
|
||||
### noSQL
|
||||
* [mongoDB](/database/nosql/mongodb)
|
||||
|
||||
### SQL Databases
|
||||
* [MariaDB](/database/sql/mariadb/)
|
||||
* [PostgreSQL](/database/sql/postgres/)
|
||||
|
||||
## Voice Servers
|
||||
* [Lavalink](/voice_servers/lavalink)
|
||||
* [teaspeak](/voice_servers/teaspeak)
|
||||
|
||||
## Game Eggs
|
||||
[Among Us Impostor Server](/among_us/impostor_server)
|
||||
|
||||
[ET Legacy](/enemy_territory/etlegacy/)
|
||||
|
||||
[Factorio](/factorio/factorio/)
|
||||
@ -97,10 +107,11 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [VanillaCord](/minecraft/java/vanillacord/)
|
||||
|
||||
* [Proxies](/minecraft/proxy/) (these are for the java version of minecraft)
|
||||
* [Waterfall](/minecraft/proxy/waterfall/)
|
||||
* [TyphoonLimbo](/minecraft/proxy/typhoonlimbo/)
|
||||
* [Travertine](/minecraft/proxy/travertine/) Java
|
||||
* [Velocity](/minecraft/proxy/velocity/)
|
||||
* [Waterdog](/minecraft/proxy/waterdog/) Java/Bedrock
|
||||
* [Waterfall](/minecraft/proxy/waterfall/)
|
||||
|
||||
[OpenRA](/openra/)
|
||||
* [OpenRA Dune2000](/openra/openra_dune2000)
|
||||
@ -117,6 +128,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [Arma](/steamcmd_servers/arma/)
|
||||
* [Arma 3](/steamcmd_servers/arma/arma3/)
|
||||
* [Arma 3 HC](/steamcmd_servers/arma/arma3_headless_client/)
|
||||
* [Avorion](/steamcmd_servers/avorion/)
|
||||
* [Citadel: Forged with Fire](/steamcmd_servers/citadel)
|
||||
* [Conan Exiles](/steamcmd_servers/conan_exiles)
|
||||
* [Don't Starve](/steamcmd_servers/dont_starve)
|
||||
@ -129,11 +141,12 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [Onset](/steamcmd_servers/onset)
|
||||
* [PixARK](/steamcmd_servers/pixark/)
|
||||
* [Project Zomboid](/steamcmd_servers/project_zomboid/)
|
||||
* [Rising World](/steamcmd_servers/rising_world)
|
||||
* [Rust Staging Branch](/steamcmd_servers/rust_staging/)
|
||||
* [SCP: Secret Laboratory](/steamcmd_servers/scpsl/)
|
||||
* [dedicated](/steamcmd_servers/scpsl/dedicated/)
|
||||
* [multiadmin](/steamcmd_servers/scpsl/multiadmin/)
|
||||
* [SSoldat](/steamcmd_servers/soldat/)
|
||||
* [Soldat](/steamcmd_servers/soldat/)
|
||||
* [Starbound](/steamcmd_servers/starbound)
|
||||
* [Stationeers](/steamcmd_servers/stationeers/)
|
||||
* [Sven Co-op](/steamcmd_servers/svencoop)
|
||||
@ -141,6 +154,9 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [Unturned](/steamcmd_servers/unturned/)
|
||||
* [Unturned](/steamcmd_servers/unturned/unturned/)
|
||||
|
||||
[Teeworlds](/teeworlds/)
|
||||
* [teeworlds](/teeworlds/teeworlds/)
|
||||
|
||||
[Terraria](/terraria/)
|
||||
* [vanilla](/terraria/vanilla)
|
||||
* [tmodloader](/terraria/tmodloader)
|
||||
@ -156,3 +172,5 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
[Vintage Story](/vintage_story/vintage_story/)
|
||||
|
||||
[Xonotic](/xonotic/xonotic/)
|
||||
|
||||
[Cryofall](/cryofall/)
|
17
among_us/impostor_server/README.md
Normal file
17
among_us/impostor_server/README.md
Normal file
@ -0,0 +1,17 @@
|
||||
# Among Us - Impostor Server
|
||||
### From their [Github](https://github.com/AeonLucid/Impostor)
|
||||
|
||||
Impostor is one of the first Among Us private servers, written in C#.
|
||||
The latest version supported is 2020.9.22, both desktop and mobile.
|
||||
There are no special features at this moment, the goal is aiming to be as close as possible to the real server, for now. In a later stage, making modifications to game logic by modifying GameData packets can be looked at.
|
||||
|
||||
### Install notes
|
||||
|
||||
You MUST use Port 22023, else you can't connect
|
||||
|
||||
### Server Ports
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 22023 |
|
54
among_us/impostor_server/egg-among-us--impostor-server.json
Normal file
54
among_us/impostor_server/egg-among-us--impostor-server.json
Normal file
@ -0,0 +1,54 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-10-23T15:17:46+02:00",
|
||||
"name": "Among Us - Impostor Server",
|
||||
"author": "info@goover.de",
|
||||
"description": "Impostor is one of the first Among Us private servers, written in C#.\r\n\r\nThe latest version supported is 2020.9.22, both desktop and mobile.\r\n\r\nThere are no special features at this moment, the goal is aiming to be as close as possible to the real server, for now. In a later stage, making modifications to game logic by modifying GameData packets can be looked at.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_dotnet",
|
||||
"startup": ".\/Impostor.Server",
|
||||
"config": {
|
||||
"files": "{\r\n \"config.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"Server.PublicIp\":\"{{server.build.env.SERVER_IP}}\",\r\n \"Server.PublicPort\": \"{{server.build.default.port}}\",\r\n \"Server.ListenPort\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Matchmaker is listening on\",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\napt -y update\r\napt -y upgrade\r\napt -y --no-install-recommends install wget curl jq unzip tar redis-server file ca-certificates apt-utils\r\n\r\nexport HOME=\/mnt\/server\r\ncd $HOME\r\n\r\n## get release info and download links\r\nLATEST_RELEASE=$(curl -L -s -H 'Accept: application\/json' https:\/\/github.com\/${GITHUB_PACKAGE}\/releases\/latest)\r\nLATEST_VERSION=$(echo $LATEST_RELEASE | sed -e 's\/.*\"tag_name\":\"\\([^\"]*\\)\".*\/\\1\/')\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_LINK=\"https:\/\/github.com\/${GITHUB_PACKAGE}\/releases\/download\/$LATEST_VERSION\/$MATCH\"\r\nelse \r\n DOWNLOAD_LINK=\"https:\/\/github.com\/${GITHUB_PACKAGE}\/releases\/download\/v$VERSION\/$MATCH\"\r\nfi\r\n\r\necho $DOWNLOAD_LINK\r\nwget $DOWNLOAD_LINK\r\n\r\nunzip -o Impostor-Server-linux-x64.zip\r\nrm -fR Impostor-Server-linux-x64.zip \r\nchmod +x Impostor.Server",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "GITHUB_PACKAGE",
|
||||
"description": "GITHUB_PACKAGE",
|
||||
"env_variable": "GITHUB_PACKAGE",
|
||||
"default_value": "Impostor\/Impostor",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required"
|
||||
},
|
||||
{
|
||||
"name": "MATCH",
|
||||
"description": "Filename to Match",
|
||||
"env_variable": "MATCH",
|
||||
"default_value": "Impostor-Server-linux-x64.zip",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required"
|
||||
},
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "Version to Download.",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:30"
|
||||
}
|
||||
]
|
||||
}
|
@ -2,10 +2,6 @@
|
||||
|
||||
### Some of these bots support other services but are primarily Discord bots
|
||||
|
||||
#### Generic Discord.js bot egg
|
||||
discord.js
|
||||
A generic discord.js bot egg. Meant to pull from a repo can also be used where a user can upload the files on their own.
|
||||
|
||||
#### ATLauncher Discord Bot
|
||||
[ATLauncher/discord-bot](https://github.com/ATLauncher/discord-bot)
|
||||
Their github has all the info you need
|
||||
@ -14,6 +10,10 @@ Their github has all the info you need
|
||||
[TheBastionBot/Bastion](https://github.com/TheBastionBot/Bastion)
|
||||
Give awesome perks to your Discord server!
|
||||
|
||||
### Corpbot
|
||||
[corpnewt/CorpBot.py](https://github.com/corpnewt/CorpBot.py)
|
||||
A very clumsy python bot for discord
|
||||
|
||||
#### DiscordJS
|
||||
[discord.js](https://discord.js.org/)
|
||||
A generic discord.js egg for running discord bots.
|
||||
@ -22,23 +22,31 @@ A generic discord.js egg for running discord bots.
|
||||
[discord.py](https://discordpy.readthedocs.io/en/latest/)
|
||||
A generic discord.py egg for running discord bots.
|
||||
|
||||
#### discordgo
|
||||
[discordgo](https://github.com/bwmarrin/discordgo)
|
||||
A generic go application egg.
|
||||
|
||||
#### FragBot
|
||||
[fragforce/fragbot](https://github.com/fragforce/fragbot)
|
||||
The bot that runs as the fragforce `@Fragbot` offering looking-for-group services for now
|
||||
|
||||
#### MusicBot
|
||||
[jagrosh/MusicBot](https://github.com/jagrosh/MusicBot)
|
||||
A Discord music bot that's easy to set up and run yourself!
|
||||
|
||||
#### fragbot
|
||||
[fragforce/fragbot](https://github.com/fragforce/fragbot)
|
||||
The bot that runs as the fragforce `@Fragbot` offering looking-for-group services for now
|
||||
|
||||
#### parkertron
|
||||
[parkervcp/parkertron](https://github.com/parkervcp/parkertron)
|
||||
The bot that runs as the pterodactyl `@Support Bot`
|
||||
|
||||
#### pixelbot
|
||||
#### PixelBot
|
||||
[possatti/pixelbot](https://github.com/possatti/pixelbot)
|
||||
No longer actively developed.
|
||||
Was used to test python services.
|
||||
|
||||
### RedBot
|
||||
[Cog-Creators/Red-DiscordBot](https://github.com/Cog-Creators/Red-DiscordBot)
|
||||
A multifunction Discord bot
|
||||
|
||||
#### SinusBot
|
||||
[SinusBot](https://www.sinusbot.com/)
|
||||
Please Check their site for an in depth on the bot.
|
||||
|
@ -3,6 +3,6 @@
|
||||
A very clumsy python bot for discord
|
||||
|
||||
### Server Ports
|
||||
No ports are required to run Big Brother Bot. You can assign a random port to the bot.
|
||||
No ports are required to run CorpBot. You can assign a random port to the bot.
|
||||
|
||||
#### Mods/Plugins may require ports to be added to the server.
|
||||
|
@ -3,7 +3,7 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-07-18T23:13:34-04:00",
|
||||
"exported_at": "2020-08-13T22:04:35-04:00",
|
||||
"name": "discord.js generic",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "a generic discord js bot egg\r\n\r\nThis will clone a git repo for a bot. it defaults to master if no branch is specified.\r\n\r\nInstalls the node_modules on install. If you set user_upload then I assume you know what you are doing.",
|
||||
@ -17,7 +17,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# NodeJS Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y git make gcc g++ python python-dev libtool\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nif [[ ! ${INSTALL_REPO} = *\\.git ]]; then\r\n INSTALL_REPO=$(echo -e ${INSTALL_REPO} | sed 's:\/*$::')\r\n INSTALL_REPO=\"${INSTALL_REPO}.git\"\r\nfi\r\n\r\necho -e \"working on installing a discord.js bot from ${INSTALL_REPO}\"\r\n\r\nif [ \"${USER_UPLOAD}\" == \"true\" ] || [ \"${USER_UPLOAD}\" == \"1\" ]; then\r\n\techo -e \"assuming user knows what they are doing have a good day.\"\r\n\texit 0\r\nelse\r\n\tif [ \"$(ls -A \/mnt\/server)\" ]; then\r\n\t\techo -e \"\/mnt\/server directory is not empty.\"\r\n\t if [ -d .git ]; then\r\n\t\t\techo -e \".git directory exists\" \r\n\t\t\tif [ -f .git\/config ]; then\r\n\t\t\t\techo -e \"loading info from git config\"\r\n\t\t\t\tORIGIN=$(git config --get remote.origin.url)\r\n\t\t\telse\r\n\t\t\t\techo -e \"files found with no git config\"\r\n\t\t\t\techo -e \"closing out without touching things to not break anything\"\r\n\t\t\t\texit 10\r\n\t\t\tfi\r\n\t\tfi\r\n\t\tif [ \"${ORIGIN}\" == \"${INSTALL_REPO}\" ]; then\r\n\t\t\techo \"pulling latest from github\"\r\n\t\t\tgit pull \r\n\t\tfi\r\n\telse\r\n \techo -e \"\/mnt\/server is empty.\\ncloning files into repo\"\r\n\t\tif [ -z ${INSTALL_BRANCH} ]; then\r\n\t\t\techo -e \"assuming master branch\"\r\n\t\t\tINSTALL_BRANCH=master\r\n\t\tfi\r\n \r\n\t\techo -e \"running 'git clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .'\"\r\n\t\tgit clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .\r\n\tfi\r\nfi \r\n\r\necho \"Installing python requirements into folder\"\r\nif [[ ! -z ${NODE_PACKAGES} ]]; then\r\n \/usr\/local\/bin\/npm install ${NODE_PACKAGES}\r\nfi\r\n\r\nif [ -f \/mnt\/server\/package.json ]; then\r\n \/usr\/local\/bin\/npm install --production\r\nfi\r\n\r\necho -e \"install complete\"\r\nexit 0",
|
||||
"script": "#!\/bin\/bash\r\n# NodeJS Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y git make gcc g++ python python-dev libtool\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nif [[ ! \"${USERNAME}\" == \"\" ]]; then\r\n if [[ ! https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git = *\\.git ]]; then\r\n INSTALL_REPO=$(echo -e https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git | sed 's:\/*$::')\r\n INSTALL_REPO=\"https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git\"\r\n fi\r\n \r\n echo -e \"working on installing a discord.js bot from https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git\"\r\n \r\n if [ \"${USER_UPLOAD}\" == \"true\" ] || [ \"${USER_UPLOAD}\" == \"1\" ]; then\r\n \techo -e \"assuming user knows what they are doing have a good day.\"\r\n \texit 0\r\n else\r\n \tif [ \"$(ls -A \/mnt\/server)\" ]; then\r\n \t\techo -e \"\/mnt\/server directory is not empty.\"\r\n \t if [ -d .git ]; then\r\n \t\t\techo -e \".git directory exists\" \r\n \t\t\tif [ -f .git\/config ]; then\r\n \t\t\t\techo -e \"loading info from git config\"\r\n \t\t\t\tORIGIN=$(git config --get remote.origin.url)\r\n \t\t\telse\r\n \t\t\t\techo -e \"files found with no git config\"\r\n \t\t\t\techo -e \"closing out without touching things to not break anything\"\r\n \t\t\t\texit 10\r\n \t\t\tfi\r\n \t\tfi\r\n \t\tif [ \"${ORIGIN}\" == \"https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git\" ]; then\r\n \t\t\techo \"pulling latest from github\"\r\n \t\t\tgit pull \r\n \t\tfi\r\n \telse\r\n \techo -e \"\/mnt\/server is empty.\\ncloning files into repo\"\r\n \t\tif [ -z ${INSTALL_BRANCH} ]; then\r\n \t\t\techo -e \"assuming master branch\"\r\n \t\t\tINSTALL_BRANCH=master\r\n \t\tfi\r\n \r\n \t\techo -e \"running 'git clone --single-branch --branch ${INSTALL_BRANCH} https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git .'\"\r\n \t\tgit clone --single-branch --branch ${INSTALL_BRANCH} https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git .\r\n \tfi\r\n fi \r\nelse\r\n if [[ ! ${INSTALL_REPO} = *\\.git ]]; then\r\n INSTALL_REPO=$(echo -e ${INSTALL_REPO} | sed 's:\/*$::')\r\n INSTALL_REPO=\"${INSTALL_REPO}.git\"\r\n fi\r\n \r\n echo -e \"working on installing a discord.js bot from ${INSTALL_REPO}\"\r\n \r\n if [ \"${USER_UPLOAD}\" == \"true\" ] || [ \"${USER_UPLOAD}\" == \"1\" ]; then\r\n \techo -e \"assuming user knows what they are doing have a good day.\"\r\n \texit 0\r\n else\r\n \tif [ \"$(ls -A \/mnt\/server)\" ]; then\r\n \t\techo -e \"\/mnt\/server directory is not empty.\"\r\n \t if [ -d .git ]; then\r\n \t\t\techo -e \".git directory exists\" \r\n \t\t\tif [ -f .git\/config ]; then\r\n \t\t\t\techo -e \"loading info from git config\"\r\n \t\t\t\tORIGIN=$(git config --get remote.origin.url)\r\n \t\t\telse\r\n \t\t\t\techo -e \"files found with no git config\"\r\n \t\t\t\techo -e \"closing out without touching things to not break anything\"\r\n \t\t\t\texit 10\r\n \t\t\tfi\r\n \t\tfi\r\n \t\tif [ \"${ORIGIN}\" == \"${INSTALL_REPO}\" ]; then\r\n \t\t\techo \"pulling latest from github\"\r\n \t\t\tgit pull \r\n \t\tfi\r\n \telse\r\n \techo -e \"\/mnt\/server is empty.\\ncloning files into repo\"\r\n \t\tif [ -z ${INSTALL_BRANCH} ]; then\r\n \t\t\techo -e \"assuming master branch\"\r\n \t\t\tINSTALL_BRANCH=master\r\n \t\tfi\r\n \r\n \t\techo -e \"running 'git clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .'\"\r\n \t\tgit clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .\r\n \tfi\r\n fi \r\nfi\r\n\r\necho \"Installing python requirements into folder\"\r\nif [[ ! -z ${NODE_PACKAGES} ]]; then\r\n \/usr\/local\/bin\/npm install ${NODE_PACKAGES}\r\nfi\r\n\r\nif [ -f \/mnt\/server\/package.json ]; then\r\n \/usr\/local\/bin\/npm install --production\r\nfi\r\n\r\necho -e \"install complete\"\r\nexit 0",
|
||||
"container": "node:12-buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -25,34 +25,52 @@
|
||||
"variables": [
|
||||
{
|
||||
"name": "Install Repo",
|
||||
"description": "The git repo to clone and install the discord js bot from",
|
||||
"description": "The GitHub repo to clone and install the discord js bot from.",
|
||||
"env_variable": "INSTALL_REPO",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string|max:128"
|
||||
},
|
||||
{
|
||||
"name": "Username",
|
||||
"description": "The GitHub username. Leave this field blank if the GitHub repo is NOT a private repo.",
|
||||
"env_variable": "USERNAME",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string|max:128"
|
||||
},
|
||||
{
|
||||
"name": "Password",
|
||||
"description": "The GitHub password. Leave this field blank if the GitHub repo is NOT a private repo.",
|
||||
"env_variable": "PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string|max:128"
|
||||
},
|
||||
{
|
||||
"name": "Install Branch",
|
||||
"description": "The branch of the bot to install",
|
||||
"description": "The branch of the bot to install.",
|
||||
"env_variable": "INSTALL_BRANCH",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string|max:32"
|
||||
},
|
||||
{
|
||||
"name": "User Uploaded Files",
|
||||
"description": "Skip all the install cruft is you are just letting a user upload files.\r\n\r\n0 = false (default)\r\n1 = true",
|
||||
"description": "Skip all the install stuff if you are letting a user upload files.\r\n\r\n0 = false (default)\r\n1 = true",
|
||||
"env_variable": "USER_UPLOAD",
|
||||
"default_value": "0",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_editable": 1,
|
||||
"rules": "required|bool"
|
||||
},
|
||||
{
|
||||
"name": "Auto Update",
|
||||
"description": "When using a git repo pull the latest files on startup.",
|
||||
"description": "Pull the latest files on startup when using a GitHub repo.",
|
||||
"env_variable": "AUTO_UPDATE",
|
||||
"default_value": "0",
|
||||
"user_viewable": 1,
|
||||
@ -70,7 +88,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Additional Node packages",
|
||||
"description": "Install additional node packages.\r\n\r\nUse spaces to separate",
|
||||
"description": "Install additional node packages.\r\n\r\nUse spaces to separate.",
|
||||
"env_variable": "NODE_PACKAGES",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
@ -78,4 +96,4 @@
|
||||
"rules": "nullable|string"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-08-02T14:36:53-04:00",
|
||||
"exported_at": "2020-09-28T22:35:14-04:00",
|
||||
"name": "discord.py generic",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A Discord bot written in Python using discord.py\r\n\r\nhttps:\/\/github.com\/Ispira\/pixel-bot",
|
||||
@ -17,7 +17,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Python Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y git gcc g++ libffi-dev make\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nif [[ ! ${INSTALL_REPO} = *\\.git ]]; then\r\n INSTALL_REPO=$(echo -e ${INSTALL_REPO} | sed 's:\/*$::')\r\n INSTALL_REPO=\"${INSTALL_REPO}.git\"\r\nfi\r\n\r\necho -e \"working on installing a discord.py bot from ${INSTALL_REPO}\"\r\n\r\nif [ \"${USER_UPLOAD}\" == \"true\" ] || [ \"${USER_UPLOAD}\" == \"1\" ]; then\r\n\techo -e \"assuming user knows what they are doing have a good day.\"\r\n\texit 0\r\nelse\r\n\tif [ \"$(ls -A \/mnt\/server)\" ]; then\r\n\t\techo -e \"\/mnt\/server directory is not empty.\"\r\n\t if [ -d .git ]; then\r\n\t\t\techo -e \".git directory exists\" \r\n\t\t\tif [ -f .git\/config ]; then\r\n\t\t\t\techo -e \"loading info from git config\"\r\n\t\t\t\tORIGIN=$(git config --get remote.origin.url)\r\n\t\t\telse\r\n\t\t\t\techo -e \"files found with no git config\"\r\n\t\t\t\techo -e \"closing out without touching things to not break anything\"\r\n\t\t\t\texit 10\r\n\t\t\tfi\r\n\t\tfi\r\n\t\tif [ \"${ORIGIN}\" == \"${INSTALL_REPO}\" ]; then\r\n\t\t\techo \"pulling latest from github\"\r\n\t\t\tgit pull \r\n\t\tfi\r\n\telse\r\n \techo -e \"\/mnt\/server is empty.\\ncloning files into repo\"\r\n\t\tif [ -z ${INSTALL_BRANCH} ]; then\r\n\t\t\techo -e \"assuming master branch\"\r\n\t\t\tINSTALL_BRANCH=master\r\n\t\tfi\r\n \r\n\t\techo -e \"running 'git clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .'\"\r\n\t\tgit clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .\r\n\tfi\r\nfi \r\n\r\necho \"Installing python requirements into folder\"\r\nif [[ ! -z ${PY_PACKAGES} ]]; then\r\n pip install -U --target \/mnt\/server\/ ${PY_PACKAGES}\r\nfi\r\n\r\nif [ -f \/mnt\/server\/requirements.txt ]; then\r\n pip install -U --target \/mnt\/server\/ -r requirements.txt\r\nfi\r\n\r\necho -e \"install complete\"\r\nexit 0",
|
||||
"script": "#!\/bin\/bash\r\n# NodeJS Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y git make gcc g++ python python-dev libtool\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nif [[ ! \"${USERNAME}\" == \"\" ]]; then\r\n if [[ ! https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git = *\\.git ]]; then\r\n INSTALL_REPO=$(echo -e https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git | sed 's:\/*$::')\r\n INSTALL_REPO=\"https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git\"\r\n fi\r\n \r\n echo -e \"working on installing a discord.js bot from https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git\"\r\n \r\n if [ \"${USER_UPLOAD}\" == \"true\" ] || [ \"${USER_UPLOAD}\" == \"1\" ]; then\r\n \techo -e \"assuming user knows what they are doing have a good day.\"\r\n \texit 0\r\n else\r\n \tif [ \"$(ls -A \/mnt\/server)\" ]; then\r\n \t\techo -e \"\/mnt\/server directory is not empty.\"\r\n \t if [ -d .git ]; then\r\n \t\t\techo -e \".git directory exists\" \r\n \t\t\tif [ -f .git\/config ]; then\r\n \t\t\t\techo -e \"loading info from git config\"\r\n \t\t\t\tORIGIN=$(git config --get remote.origin.url)\r\n \t\t\telse\r\n \t\t\t\techo -e \"files found with no git config\"\r\n \t\t\t\techo -e \"closing out without touching things to not break anything\"\r\n \t\t\t\texit 10\r\n \t\t\tfi\r\n \t\tfi\r\n \t\tif [ \"${ORIGIN}\" == \"https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git\" ]; then\r\n \t\t\techo \"pulling latest from github\"\r\n \t\t\tgit pull \r\n \t\tfi\r\n \telse\r\n \techo -e \"\/mnt\/server is empty.\\ncloning files into repo\"\r\n \t\tif [ -z ${INSTALL_BRANCH} ]; then\r\n \t\t\techo -e \"assuming master branch\"\r\n \t\t\tINSTALL_BRANCH=master\r\n \t\tfi\r\n \r\n \t\techo -e \"running 'git clone --single-branch --branch ${INSTALL_BRANCH} https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git .'\"\r\n \t\tgit clone --single-branch --branch ${INSTALL_BRANCH} https:\/\/${USERNAME}:${PASSWORD}@github.com\/${INSTALL_REPO}.git .\r\n \tfi\r\n fi \r\nelse\r\n if [[ ! ${INSTALL_REPO} = *\\.git ]]; then\r\n INSTALL_REPO=$(echo -e ${INSTALL_REPO} | sed 's:\/*$::')\r\n INSTALL_REPO=\"${INSTALL_REPO}.git\"\r\n fi\r\n \r\n echo -e \"working on installing a discord.js bot from ${INSTALL_REPO}\"\r\n \r\n if [ \"${USER_UPLOAD}\" == \"true\" ] || [ \"${USER_UPLOAD}\" == \"1\" ]; then\r\n \techo -e \"assuming user knows what they are doing have a good day.\"\r\n \texit 0\r\n else\r\n \tif [ \"$(ls -A \/mnt\/server)\" ]; then\r\n \t\techo -e \"\/mnt\/server directory is not empty.\"\r\n \t if [ -d .git ]; then\r\n \t\t\techo -e \".git directory exists\" \r\n \t\t\tif [ -f .git\/config ]; then\r\n \t\t\t\techo -e \"loading info from git config\"\r\n \t\t\t\tORIGIN=$(git config --get remote.origin.url)\r\n \t\t\telse\r\n \t\t\t\techo -e \"files found with no git config\"\r\n \t\t\t\techo -e \"closing out without touching things to not break anything\"\r\n \t\t\t\texit 10\r\n \t\t\tfi\r\n \t\tfi\r\n \t\tif [ \"${ORIGIN}\" == \"${INSTALL_REPO}\" ]; then\r\n \t\t\techo \"pulling latest from github\"\r\n \t\t\tgit pull \r\n \t\tfi\r\n \telse\r\n \techo -e \"\/mnt\/server is empty.\\ncloning files into repo\"\r\n \t\tif [ -z ${INSTALL_BRANCH} ]; then\r\n \t\t\techo -e \"assuming master branch\"\r\n \t\t\tINSTALL_BRANCH=master\r\n \t\tfi\r\n \r\n \t\techo -e \"running 'git clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .'\"\r\n \t\tgit clone --single-branch --branch ${INSTALL_BRANCH} ${INSTALL_REPO} .\r\n \tfi\r\n fi \r\nfi\r\n\r\necho \"Installing python requirements into folder\"\r\nif [[ ! -z ${PY_PACKAGES} ]]; then\r\n pip install -U --target \/mnt\/server\/ ${PY_PACKAGES}\r\nfi\r\n\r\nif [ -f \/mnt\/server\/requirements.txt ]; then\r\n pip install -U --target \/mnt\/server\/ -r requirements.txt\r\nfi\r\n\r\necho -e \"install complete\"\r\nexit 0",
|
||||
"container": "python:3.8-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -25,12 +25,12 @@
|
||||
"variables": [
|
||||
{
|
||||
"name": "Install Repo",
|
||||
"description": "The git repo to clone and install the discord js bot from",
|
||||
"description": "The GitHub repo to clone and install the discord py bot from.",
|
||||
"env_variable": "INSTALL_REPO",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string"
|
||||
"rules": "nullable|string|max:128"
|
||||
},
|
||||
{
|
||||
"name": "Install Branch",
|
||||
@ -39,11 +39,11 @@
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string"
|
||||
"rules": "nullable|string|max:32"
|
||||
},
|
||||
{
|
||||
"name": "User Uploaded Files",
|
||||
"description": "Skip all the install cruft is you are just letting a user upload files.\r\n\r\n0 = false (default)\r\n1 = true",
|
||||
"description": "Skip all the install stuff if you are letting a user upload files.\r\n\r\n0 = false (default)\r\n1 = true",
|
||||
"env_variable": "USER_UPLOAD",
|
||||
"default_value": "0",
|
||||
"user_viewable": 1,
|
||||
@ -52,7 +52,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Auto Update",
|
||||
"description": "When using a git repo pull the latest files on startup.",
|
||||
"description": "Pull the latest files on startup when using a GitHub repo.",
|
||||
"env_variable": "AUTO_UPDATE",
|
||||
"default_value": "0",
|
||||
"user_viewable": 1,
|
||||
@ -76,6 +76,24 @@
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Username",
|
||||
"description": "The GitHub username. Leave this field blank if the GitHub repo is NOT a private repo.",
|
||||
"env_variable": "USERNAME",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string|max:128"
|
||||
},
|
||||
{
|
||||
"name": "Password",
|
||||
"description": "The GitHub password. Leave this field blank if the GitHub repo is NOT a private repo.",
|
||||
"env_variable": "PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string|max:128"
|
||||
}
|
||||
]
|
||||
}
|
9
bots/discord/discordgo/README.md
Normal file
9
bots/discord/discordgo/README.md
Normal file
@ -0,0 +1,9 @@
|
||||
# discordgo generic
|
||||
This egg was designed to allow a user to pull their own go discord bot from a repo.
|
||||
|
||||
The startup configs and commands may need changing to actually function properly.
|
||||
|
||||
Users cannot upload their own code as this is built to build the resulting bot.
|
||||
|
||||
`GO_PACKAGE` is the variable for the go repo i.e. `github.com/aurieh/ddg-ng`
|
||||
`EXECUTABLE` is the variable for the executable that is built i.e. `ddg-ng`
|
45
bots/discord/discordgo/egg-discordgo-generic.json
Normal file
45
bots/discord/discordgo/egg-discordgo-generic.json
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-10-11T12:12:50-04:00",
|
||||
"name": "discordgo generic",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A generic golang egg.\r\n\r\nMeant to be customized before it is used.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/${EXECUTABLE}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# golang generic package\r\n\r\n\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir -p \/mnt\/server\/\r\nfi\r\n\r\ngo get ${GO_PACKAGE}\r\n\r\ncd src\/${GO_PACKAGE}\r\n\r\ngo get\r\n\r\ngo build\r\n\r\ncp -f ${EXECUTABLE} \/mnt\/server\/",
|
||||
"container": "golang:1.15-buster",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Go Package",
|
||||
"description": "Go package to get and build",
|
||||
"env_variable": "GO_PACKAGE",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Executable",
|
||||
"description": "This is the executable from the bot build.",
|
||||
"env_variable": "EXECUTABLE",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string"
|
||||
}
|
||||
]
|
||||
}
|
8
bots/other/bigbrotherbot/README.md
Normal file
8
bots/other/bigbrotherbot/README.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Big Brother Bot
|
||||
### From their [Github](https://github.com/BigBrotherBot/big-brother-bot)
|
||||
Big Brother Bot B3 is a complete and total server administration package for online games. B3 is designed primarily to keep your server free from the derelicts of online gaming, but offers more, much more
|
||||
|
||||
### Server Ports
|
||||
No ports are required to run Big Brother Bot. You can assign a random port to the bot.
|
||||
|
||||
#### Mods/Plugins may require ports to be added to the server.
|
26
bots/other/bigbrotherbot/egg-big-brother-bot.json
Normal file
26
bots/other/bigbrotherbot/egg-big-brother-bot.json
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-05-26T08:59:34-04:00",
|
||||
"name": "Big Brother Bot",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Big Brother Bot B3 is a complete and total server administration package for online games. B3 is designed primarily to keep your server free from the derelicts of online gaming, but offers more, much more.\r\n\r\nhttps:\/\/github.com\/BigBrotherBot\/big-brother-bot",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_python-2.7",
|
||||
"startup": "python b3_run.py",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"No idea what to put here\",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# Pixel Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt -y install git\r\n\r\ncd \/mnt\/server\r\n\r\necho \"Cloning pixel-bot repo\"\r\ngit clone https:\/\/github.com\/BigBrotherBot\/big-brother-bot.git .\r\n\r\necho \"Installing python requirements into folder\"\r\npip install -U --target \/mnt\/server -r requirements.txt\r\npip install -U --target \/mnt\/server paramiko",
|
||||
"container": "python:2.7-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# PhantomBot
|
||||
# SogeBot
|
||||
### Their [Site](https://www.sogebot.xyz)
|
||||
sogBot is an actively developed open source interactive Twitch bot that provides entertainment and moderation for your channel,
|
||||
allowing you to focus on what matters the most to you - your game and your viewers.
|
||||
|
@ -3,24 +3,52 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-08-23T07:11:32+02:00",
|
||||
"exported_at": "2020-09-06T10:51:50+02:00",
|
||||
"name": "SogeBot",
|
||||
"author": "info@goover.de",
|
||||
"description": "sogeBot - Free Twitch Bot built on Node.js https:\/\/sogebot.xyz\/",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_nodejs-12",
|
||||
"startup": "npm start",
|
||||
"config": {
|
||||
"files": "{\r\n \".env\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"PORT=\": \"PORT={{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"files": "{\r\n \".env\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"PORT\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"WebPanel is available at\"\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#\/bin\/ash\r\napt -y update\r\napt -y upgrade\r\napt install -y curl unzip sqlite\r\nexport NODE_OPTIONS=--max-old-space-size=8192\r\n\r\ncd \/mnt\/server\r\n\r\n## Download latest Stable Version\r\nRELEASE_VERSION=$(curl -s \"https:\/\/api.github.com\/repos\/sogehige\/sogeBot\/releases\/latest\" | awk -F '\"' '\/tag_name\/{print $4}')\r\nDOWNLOAD_URL=https:\/\/github.com\/sogehige\/sogeBot\/releases\/download\/${RELEASE_VERSION}\/sogeBot-${RELEASE_VERSION}.zip\r\ncurl -L -o sogebot.zip ${DOWNLOAD_URL}\r\nunzip -o sogebot.zip\r\nrm sogebot.zip\r\n\r\n##Setting up new configration. Default: sqlite\r\nrm -rf \/mnt\/server\/.env\r\n\r\ncat <<EOT > \/mnt\/server\/.env\r\nTYPEORM_CONNECTION=sqlite\r\nTYPEORM_DATABASE=.\/sogebot.db\r\nPORT=20000\r\n\r\n# DON'T CHANGE ANYTHING BELOW THIS LINE\r\nTYPEORM_ENTITIES=dest\/database\/entity\/*.js\r\nTYPEORM_MIGRATIONS=dest\/database\/migration\/sqlite\/*.js\r\nTYPEORM_SUBSCRIBERS=dest\/database\/entity\/*.js\r\n\r\nTYPEORM_ENTITIES_DIR=src\/bot\/database\/entity\r\nTYPEORM_MIGRATIONS_DIR=src\/bot\/database\/migration\/sqlite\r\nTYPEORM_SUBSCRIBERS_DIR=src\/bot\/database\/entity\r\nEOT\r\n\r\nnpm install -g npm@latest\r\n\r\necho -e \"## Downloading npm components\"\r\n\/usr\/local\/bin\/npm ci\r\n\r\nexit 0",
|
||||
"script": "#\/bin\/bash\r\napt -y update\r\napt -y upgrade\r\napt install -y curl unzip sqlite jq wget\r\n#export NODE_OPTIONS=--max-old-space-size=8192\r\n\r\ncd \/mnt\/server\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 [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelse\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_LINK=$(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_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\n#echo $DOWNLOAD_LINK\r\nwget -N $DOWNLOAD_LINK\r\nunzip $MATCH-*.zip\r\nrm -fR unzip $MATCH-*.zip\r\n\r\nnpm install -g npm@latest\r\n\/usr\/local\/bin\/npm ci\r\n\r\nexit 0",
|
||||
"container": "node:12-buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
"variables": [
|
||||
{
|
||||
"name": "Github Package",
|
||||
"description": "the Github Package",
|
||||
"env_variable": "GITHUB_PACKAGE",
|
||||
"default_value": "sogehige\/sogeBot",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "Choose Version, you want to install. Default: Latest",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Filename",
|
||||
"description": "Filename",
|
||||
"env_variable": "MATCH",
|
||||
"default_value": "sogeBot",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
13
cryofall/cryofall/README.md
Normal file
13
cryofall/cryofall/README.md
Normal file
@ -0,0 +1,13 @@
|
||||
# CryoFall
|
||||
|
||||
##Minimum RAM warning
|
||||
You may want to assign a minimum of 1GB of RAM to a server.
|
||||
|
||||
##Required Server Ports
|
||||
The default is 6000 can be changed in SettingsServer.xml
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 6000 |
|
||||
|
||||
#### Plugins may require ports to be added to the server.
|
36
cryofall/cryofall/egg-cryo-fall.json
Normal file
36
cryofall/cryofall/egg-cryo-fall.json
Normal file
@ -0,0 +1,36 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-10-17T02:36:40+00:00",
|
||||
"name": "CryoFall",
|
||||
"author": "contact@zennodes.dk",
|
||||
"description": "NOTE: For now you have to change SettingsServer.xml under CryoFall_Server_v(Version)_NetCore\/Data\/SettingsServer.xml\r\n\r\nCryoFall is a sci-fi multiplayer colony simulation survival game set on a forgotten planet in a distant future.\r\n\r\nJoin the vast world of CryoFall together with other survivors to rebuild your civilization from scratch. Start with primitive technology and simple tools and use them to progress towards modern industrial might and even beyond, eventually reaching space-age technology only seen in science fiction.\r\n\r\nCryoFall can be played either as a relaxed PvE experience with no competition or as a brutal and unforgiving PvP. Make your choice and join one of many available servers with different game modes or host your own and invite your friends to join you!\r\n\r\nBuild your house or a large base together with other players. Dig wells and create farms to sustain basic needs. Build vehicles to explore the world faster. Establish basics of science, all the way from medicine and chemistry to fuel creation and even lithium extraction to create electronic devices. Cook food or prepare drinks to sell them from vending machines in your store.\r\n\r\nBuild factories to produce on an industrial scale: Weapons and defense systems, bionic implants to augment yourself, even large war machines and artillery guns to use against the biggest of opponents",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_dotnet",
|
||||
"startup": "dotnet Binaries\/Server\/CryoFall_Server.dll loadOrNew",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"[IMP] UDPServer: Socket-server listening on \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop 10 stopping server"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n#Server Files: \/mnt\/server\r\napt update\r\napt install -y curl zip 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 [ \"${VERSION}\" == \"latest\" ] || [ \"${VERSION}\" == \"\" ]; then\r\n DOWNLOAD_URL=$(curl -sSL https:\/\/wiki.atomictorch.com\/CryoFall\/Server\/Setup | grep 'SERVER DOWNLOAD' | grep -Eoi '<a [^>]+>' | grep -Eo 'href=\\\"[^\\\\\\\"]+\\\"' | grep -Eo '(http|https):\\\/\\\/[^\\\"]+' | tail -1 | cut -d'?' -f1)\r\nelse\r\n DOWNLOAD_URL=https:\/\/atomictorch.com\/Files\/CryoFall_Server_v${VERSION}_NetCore.zip\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\ncurl -L -o cryofall_server.zip ${DOWNLOAD_LINK}\r\n\r\nunzip cryofall_server.zip\r\n\r\ncp -rf CryoFall_Server*NetCore\/. \/mnt\/server\r\n\r\nrm -rf cryofall_server.zip CryoFall_Server*NetCore\/",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Game server version",
|
||||
"description": "type game server version",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,13 +1,16 @@
|
||||
# databases
|
||||
|
||||
## SQL Databases
|
||||
### [mariadb](/mariadb/)
|
||||
https://mariadb.org/
|
||||
|
||||
### [postgres](/postgres/)
|
||||
https://www.postgresql.org/
|
||||
|
||||
|
||||
## In-Memory Databases
|
||||
### [redis](/redis/)
|
||||
https://redis.io/
|
||||
https://redis.io/
|
||||
|
||||
## NoSQL
|
||||
### [mongodb](/nosql/mongodb/)
|
||||
https://www.mongodb.com/
|
||||
|
||||
## SQL Databases
|
||||
### [mariadb](/sql/mariadb/)
|
||||
https://mariadb.org/
|
||||
|
||||
### [postgres](/sql/postgres/)
|
||||
https://www.postgresql.org/
|
14
database/nosql/mongodb/README.md
Normal file
14
database/nosql/mongodb/README.md
Normal file
@ -0,0 +1,14 @@
|
||||
# mongoDB
|
||||
### From their [Website](https://www.mongodb.com/)
|
||||
MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era.
|
||||
|
||||
### Minimum RAM warning
|
||||
MongoDB requires approximately 1GB of RAM per 100.000 assets. If the system has to start swapping memory to disk, this will have a severely negative impact on performance, and should be avoided.
|
||||
|
||||
|
||||
### Server Ports
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Server | 27017 |
|
45
database/nosql/mongodb/egg-mongo-d-b.json
Normal file
45
database/nosql/mongodb/egg-mongo-d-b.json
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-09-28T23:37:49-04:00",
|
||||
"name": "MongoDB",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "MongoDB is a general purpose, document-based, distributed database built for modern application developers and for my butt era.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:db_mongo-4",
|
||||
"startup": "mongod --fork --dbpath \/home\/container\/mongodb\/ --port ${SERVER_PORT} --logpath \/home\/container\/logs\/mongo.log; until nc -z -v -w5 127.0.0.1 ${SERVER_PORT}; do echo 'Waiting for mongodb connection...'; sleep 5; done && mongo 127.0.0.1:${SERVER_PORT} && mongo --eval \"db.getSiblingDB('admin').shutdownServer()\" 127.0.0.1:${SERVER_PORT}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"child process started successfully\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "exit"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash \r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\/\r\n\r\ncp \/etc\/mongod.conf.orig \/mnt\/server\/mongod.conf\r\n\r\nmkdir mongodb logs\r\n\r\nmongod --port 27017 --dbpath \/mnt\/server\/mongodb\/ --logpath \/mnt\/server\/logs\/mongo.log --fork\r\n\r\nmongo --eval \"db.getSiblingDB('admin').createUser({user: '${MONGO_USER}', pwd: '${MONGO_USER_PASS}', roles: ['root']})\"\r\n\r\nmongo --eval \"db.getSiblingDB('admin').shutdownServer()\"",
|
||||
"container": "mongo:4-bionic",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Mongo Admin Username",
|
||||
"description": "The MongoDB Admin user",
|
||||
"env_variable": "MONGO_USER",
|
||||
"default_value": "admin",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Mongo Admin Password",
|
||||
"description": "",
|
||||
"env_variable": "MONGO_USER_PASS",
|
||||
"default_value": "aP@55word",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string"
|
||||
}
|
||||
]
|
||||
}
|
@ -3,7 +3,7 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-07-11T00:34:47-04:00",
|
||||
"exported_at": "2020-09-28T21:07:40-04:00",
|
||||
"name": "Redis-6",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams.",
|
||||
@ -17,7 +17,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# Redis Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache 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\nif [ ! -d \/mnt\/server\/redis.conf ]; then\r\n curl https:\/\/raw.githubusercontent.com\/redis\/redis\/6.0\/redis.conf -o redis.conf\r\nfi\r\n\r\nsleep 5\r\necho -e \"Install complete. Made this to not have issues.\"",
|
||||
"script": "#!\/bin\/ash\r\n# Redis Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache 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\nif [ ! -d \/mnt\/server\/redis.conf ]; then\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/database\/redis\/redis-6\/redis.conf -o redis.conf\r\nfi\r\n\r\nsleep 5\r\necho -e \"Install complete. Made this to not have issues.\"",
|
||||
"container": "alpine:3.10",
|
||||
"entrypoint": "ash"
|
||||
}
|
||||
|
1835
database/redis/redis-6/redis.conf
Normal file
1835
database/redis/redis-6/redis.conf
Normal file
File diff suppressed because it is too large
Load Diff
@ -52,7 +52,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Postgres Database",
|
||||
"description": "The postgres databas the user will have access too.",
|
||||
"description": "The postgres database the user will have access too.",
|
||||
"env_variable": "PGDATABASE",
|
||||
"default_value": "pterodactyl",
|
||||
"user_viewable": 1,
|
||||
|
File diff suppressed because one or more lines are too long
@ -3,7 +3,7 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-09-02T18:27:23-04:00",
|
||||
"exported_at": "2020-09-22T16:57:32-04:00",
|
||||
"name": "FiveM",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A new FiveM egg for the latest builds due to recent changes in FiveM",
|
||||
@ -17,7 +17,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# FiveM Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update -y\r\napt install -y tar xz-utils curl git file\r\n\r\nmkdir -p \/mnt\/server\/resources\r\n\r\ncd \/mnt\/server\r\n\r\necho \"updating citizenfx resource files\"\r\ngit clone https:\/\/github.com\/citizenfx\/cfx-server-data.git \/tmp\r\ncp -Rf \/tmp\/resources\/* resources\/ \r\n\r\nRELEASE_PAGE=$(curl -sSL https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/)\r\n\r\nif [ \"${FIVEM_VERSION}\" == \"latest\" ] || [ -z ${FIVEM_VERSION} ] ; then\r\n LATEST_RECOMMENDED=$(echo -e \"${RELEASE_PAGE}\" | grep \"LATEST RECOMMENDED\" -B1 | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1')\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${LATEST_RECOMMENDED})\r\nelse\r\n VERSION_LINK=$(echo -e \"${RELEASE_PAGE}\" | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1' | grep ${FIVEM_VERSION})\r\n if [ \"${VERSION_LINK}\" == \"\" ]; then\r\n echo -e \"defaulting to latest as the version requested was invalid.\"\r\n else\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${VERSION_LINK})\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 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\necho -e \"Running curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\"\r\n\r\ncurl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\r\n\r\necho \"Extracting fivem files\"\r\n\r\nFILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${DOWNLOAD_LINK##*\/}\r\nelse\r\n echo -e \"unknown filetype. Exiting\"\r\n exit 2 \r\nfi\r\n\r\nrm -rf ${DOWNLOAD_LINK##*\/} run.sh\r\n\r\nif [ -e server.cfg ]; then\r\n echo \"server config file exists\"\r\nelse\r\n echo \"Downloading default fivem config\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/gta\/fivem\/server.cfg >> server.cfg\r\nfi\r\n\r\nmkdir logs\/\r\n\r\necho \"install complete\"",
|
||||
"script": "#!\/bin\/ash\r\n# FiveM Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update -y\r\napt install -y tar xz-utils curl git file\r\n\r\nmkdir -p \/mnt\/server\/resources\r\n\r\ncd \/mnt\/server\r\n\r\necho \"updating citizenfx resource files\"\r\ngit clone https:\/\/github.com\/citizenfx\/cfx-server-data.git \/tmp\r\ncp -Rf \/tmp\/resources\/* resources\/ \r\n\r\nRELEASE_PAGE=$(curl -sSL https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/)\r\n\r\nif [ \"${FIVEM_VERSION}\" == \"latest\" ] || [ -z ${FIVEM_VERSION} ] ; then\r\n LATEST_RECOMMENDED=$(echo -e \"${RELEASE_PAGE}\" | grep \"LATEST RECOMMENDED\" -B1 | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1')\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${LATEST_RECOMMENDED})\r\nelse\r\n VERSION_LINK=$(echo -e \"${RELEASE_PAGE}\" | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1' | grep ${FIVEM_VERSION})\r\n if [ \"${VERSION_LINK}\" == \"\" ]; then\r\n echo -e \"defaulting to latest as the version requested was invalid.\"\r\n else\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${VERSION_LINK})\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 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\necho -e \"Running curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\"\r\n\r\ncurl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\r\n\r\necho \"Extracting fivem files\"\r\n\r\nFILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${DOWNLOAD_LINK##*\/}\r\nelse\r\n echo -e \"unknown filetype. Exiting\"\r\n exit 2 \r\nfi\r\n\r\nrm -rf ${DOWNLOAD_LINK##*\/} run.sh\r\n\r\nif [ -e server.cfg ]; then\r\n echo \"server config file exists\"\r\nelse\r\n echo \"Downloading default fivem config\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/gta\/fivem\/server.cfg >> server.cfg\r\nfi\r\n\r\nmkdir logs\/\r\n\r\necho \"install complete\"",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
|
@ -72,4 +72,4 @@ add_principal identifier.fivem:1 group.admin # add the admin to the group
|
||||
sv_endpointprivacy true
|
||||
|
||||
# enable OneSync with default configuration (required for server-side state awareness)
|
||||
onesync_enabled true
|
||||
sets onesync legacy
|
@ -25,7 +25,8 @@ It’s set in infinitely-generated worlds of wide open terrain - icy mountains,
|
||||
* [VanillaCord](/minecraft/java/vanillacord/)
|
||||
|
||||
[Proxies](/minecraft/proxy/) Minecraft Server Proxies
|
||||
* [Waterfall](/minecraft/proxy/waterfall/) Java
|
||||
* [TyphoonLimbo](/minecraft/proxy/typhoonlimbo/) Java
|
||||
* [Travertine](/minecraft/proxy/travertine/) Java
|
||||
* [Velocity](/minecraft/proxy/velocity/) Java
|
||||
* [Waterdog](/minecraft/proxy/waterdog/) Java/Bedrock
|
||||
* [Waterfall](/minecraft/proxy/waterfall/) Java
|
@ -3,14 +3,14 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-09-06T11:38:57-04:00",
|
||||
"exported_at": "2020-10-16T15:10:46+00:00",
|
||||
"name": "Vanilla Bedrock",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Bedrock Edition (also known as the Bedrock Version, Bedrock Codebase, Bedrock Engine or just Bedrock) refers to the multi-platform family of editions of Minecraft developed by Mojang AB, Microsoft Studios, 4J Studios, and SkyBox Labs. Prior to this term, as the engine originated with Pocket Edition, this entire product family was referred to as \"Pocket Edition\", \"MCPE\", or \"Pocket\/Windows 10 Edition\".",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/bedrock_server",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"server-name\": \"{{server.build.env.SERVERNAME}}\",\r\n \"gamemode\": \"{{server.build.env.GAMEMODE}}\",\r\n \"difficulty\": \"{{server.build.env.DIFFICULTY}}\",\r\n \"allow-cheats\": \"{{server.build.env.CHEATS}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Server started\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
@ -28,8 +28,8 @@
|
||||
"description": "The version of bedrock. (Ex. 1.7.0.13)\r\n\r\nDefault version is latest.",
|
||||
"env_variable": "BEDROCK_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
@ -37,9 +37,45 @@
|
||||
"description": "Dumb reasons to need this",
|
||||
"env_variable": "LD_LIBRARY_PATH",
|
||||
"default_value": ".",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "The name for the server",
|
||||
"env_variable": "SERVERNAME",
|
||||
"default_value": "Bedrock Dedicated Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:50"
|
||||
},
|
||||
{
|
||||
"name": "Gamemode",
|
||||
"description": "Allowed values: \"survival\", \"creative\", or \"adventure\"",
|
||||
"env_variable": "GAMEMODE",
|
||||
"default_value": "survival",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:survival,creative,adventure"
|
||||
},
|
||||
{
|
||||
"name": "Difficulty",
|
||||
"description": "Allowed values: \"peaceful\", \"easy\", \"normal\", or \"hard\"",
|
||||
"env_variable": "DIFFICULTY",
|
||||
"default_value": "easy",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:peaceful,easy,normal,hard"
|
||||
},
|
||||
{
|
||||
"name": "Allow cheats",
|
||||
"description": "If true then cheats like commands can be used.\r\n\r\nAllowed values: \"true\" or \"false\"",
|
||||
"env_variable": "CHEATS",
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:true,false"
|
||||
}
|
||||
]
|
||||
}
|
@ -17,7 +17,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.tx 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.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",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -33,4 +33,4 @@
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
11
minecraft/proxy/waterdog/README.md
Normal file
11
minecraft/proxy/waterdog/README.md
Normal file
@ -0,0 +1,11 @@
|
||||
# Waterdog server
|
||||
Waterdog provides native support for the Minecraft Bedrock protocols along with the existing java protocols. It is capable of using the ProtocolSupport PE encapsulation protocol over TCP, or it can use the native RakNet Bedrock protocol for traditional downstream Bedrock servers such as Nukkit, Pocketmine, Bedrock Alpha Server, MiNET, and others.
|
||||
|
||||
## Server Ports
|
||||
The minecraft server requires a single port for access (default 25565) but plugins may require extra ports to enabled for the server.
|
||||
|
||||
|
||||
| Port | default |
|
||||
|----------|---------|
|
||||
| Java | 25565 |
|
||||
| Bedrock | 19132 |
|
45
minecraft/proxy/waterdog/egg-waterdog.json
Normal file
45
minecraft/proxy/waterdog/egg-waterdog.json
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-10-15T03:54:24+00:00",
|
||||
"name": "Waterdog",
|
||||
"author": "parker@pterodactyl.io",
|
||||
"description": "Waterdog is fork of the well-known Waterfall, which is a fork of the well-known BungeeCord, server teleportation suite.",
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Listening on \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "end"
|
||||
},
|
||||
"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\n# Adding '.jar' if it isn't part of the file name\r\nif [[ \"${SERVER_JARFILE}\" == \"*\\.jar\" ]]; then\r\n echo -e \"adding.jar to server file name\"\r\n SERVER_JARFILE=\"${SERVER_JARFILE}.jar\"\r\nfi\r\n\r\nif [ -z \"${WATERDOG_VERSION}\" ] || [ \"${WATERDOG_VERSION}\" == \"latest\" ]; then\r\n echo -e \"downloading latest waterdog build\\n\"\r\n curl -sSL -o ${SERVER_JARFILE} https:\/\/ci.codemc.io\/job\/yesdog\/job\/Waterdog\/lastSuccessfulBuild\/artifact\/Waterfall-Proxy\/bootstrap\/target\/Waterdog.jar\r\nelse \r\n echo -e \"downloading waterdog build ${WATERDOG_VERSION}\\n\"\r\n curl -sSL -o ${SERVER_JARFILE} https:\/\/ci.codemc.io\/job\/yesdog\/job\/Waterdog\/${WATERDOG_VERSION}\/artifact\/Waterfall-Proxy\/bootstrap\/target\/Waterdog.jar\r\nfi\r\n\r\nif [ ! -f config.yml ]; then\r\n echo -e \"Downloading waterfall config.yml\"\r\n curl -o config.yml https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft_proxy\/waterfall\/config.yml\r\nelse\r\n echo -e \"Waterfall config.yml exists. Will not pull a new file\"\r\nfi",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Waterdog Version",
|
||||
"description": "The build to pull and install. (Ex. 1604)\r\n\r\nThis is the build number on https:\/\/jenkins.pmmp.io",
|
||||
"env_variable": "WATERDOG_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
"description": "The jar to run to",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
@ -3,11 +3,11 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-02-01T08:00:01-05:00",
|
||||
"exported_at": "2020-09-22T17:50:59-04:00",
|
||||
"name": "RedM",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A new RedM egg for the latest builds due to recent changes in RedM",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_alpine",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": "$(pwd)\/alpine\/opt\/cfx-server\/ld-musl-x86_64.so.1 --library-path \"$(pwd)\/alpine\/usr\/lib\/v8\/:$(pwd)\/alpine\/lib\/:$(pwd)\/alpine\/usr\/lib\/\" -- $(pwd)\/alpine\/opt\/cfx-server\/FXServer +set citizen_dir $(pwd)\/alpine\/opt\/cfx-server\/citizen\/ +set sv_licenseKey {{CFX_LICENSE}} +set steam_webApiKey {{STEAM_WEBAPIKEY}} +set sv_maxplayers {{MAX_PLAYERS}} +exec server.cfg +set gamename rdr3",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"endpoint_add_tcp\": \"endpoint_add_tcp \\\"0.0.0.0:{{server.build.default.port}}\\\"\",\r\n \"endpoint_add_udp\": \"endpoint_add_udp \\\"0.0.0.0:{{server.build.default.port}}\\\"\",\r\n \"sv_hostname\": \"sv_hostname \\\"{{server.build.env.SERVER_HOSTNAME}}\\\"\",\r\n \"sv_maxclients\": \"sv_maxclients {{server.build.env.MAX_PLAYERS}}\"\r\n }\r\n }\r\n}",
|
||||
@ -17,7 +17,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# CFx Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk add openssl tar xz curl wget git file --no-cache\r\n\r\nmkdir -p \/mnt\/server\/resources \/mnt\/server\/logs\/\r\n\r\ncd \/mnt\/server\r\n\r\necho \"updating citizenfx resource files\"\r\ngit clone https:\/\/github.com\/citizenfx\/cfx-server-data.git \/tmp\r\ncp -Rf \/tmp\/resources\/* resources\/ \r\n\r\nRELEASE_PAGE=$(curl -sSL https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/)\r\n\r\nif [ \"${CFX_VERSION}\" == \"latest\" ] || [ -z ${CFX_VERSION} ] ; then\r\n LATEST_RECOMMENDED=$(echo -e \"${RELEASE_PAGE}\" | grep \"LATEST RECOMMENDED\" -B1 | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1')\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${LATEST_RECOMMENDED})\r\nelse\r\n VERSION_LINK=$(echo -e \"${RELEASE_PAGE}\" | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1' | grep ${CFX_VERSION})\r\n if [ \"${VERSION_LINK}\" == \"\" ]; then\r\n echo -e \"defaulting to latest as the version requested was invalid.\"\r\n else\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${VERSION_LINK})\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 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\necho -e \"Running curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\"\r\n\r\ncurl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\r\n\r\necho \"Extracting fivem files\"\r\n\r\nFILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${DOWNLOAD_LINK##*\/}\r\nelse\r\n echo -e \"unknown filetype. Exeting\"\r\n exit 2 \r\nfi\r\n\r\nrm -rf ${DOWNLOAD_LINK##*\/} run.sh\r\n\r\nif [ -e server.cfg ]; then\r\n echo \"server config file exists\"\r\nelse\r\n echo \"Downloading default fivem config\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/gta\/fivem\/server.cfg >> server.cfg\r\nfi\r\n\r\necho \"install complete\"",
|
||||
"script": "#!\/bin\/ash\r\n# CFx Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napk add openssl tar xz curl wget git file --no-cache\r\n\r\nmkdir -p \/mnt\/server\/resources \/mnt\/server\/logs\/\r\n\r\ncd \/mnt\/server\r\n\r\necho \"updating citizenfx resource files\"\r\ngit clone https:\/\/github.com\/citizenfx\/cfx-server-data.git \/tmp\r\ncp -Rf \/tmp\/resources\/* resources\/ \r\n\r\nRELEASE_PAGE=$(curl -sSL https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/)\r\n\r\nif [ \"${CFX_VERSION}\" == \"latest\" ] || [ -z ${CFX_VERSION} ] ; then\r\n LATEST_RECOMMENDED=$(echo -e \"${RELEASE_PAGE}\" | grep \"LATEST RECOMMENDED\" -B1 | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1')\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${LATEST_RECOMMENDED})\r\nelse\r\n VERSION_LINK=$(echo -e \"${RELEASE_PAGE}\" | grep -Eo 'href=\".*\/*.tar.xz\"' | grep -Eo '\".*\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1' | grep ${CFX_VERSION})\r\n if [ \"${VERSION_LINK}\" == \"\" ]; then\r\n echo -e \"defaulting to latest as the version requested was invalid.\"\r\n else\r\n DOWNLOAD_LINK=$(echo https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/${VERSION_LINK})\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 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\necho -e \"Running curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\"\r\n\r\ncurl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\r\n\r\necho \"Extracting fivem files\"\r\n\r\nFILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${DOWNLOAD_LINK##*\/}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${DOWNLOAD_LINK##*\/}\r\nelse\r\n echo -e \"unknown filetype. Exeting\"\r\n exit 2 \r\nfi\r\n\r\nrm -rf ${DOWNLOAD_LINK##*\/} run.sh\r\n\r\nif [ -e server.cfg ]; then\r\n echo \"server config file exists\"\r\nelse\r\n echo \"Downloading default fivem config\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/gta\/fivem\/server.cfg >> server.cfg\r\nfi\r\n\r\necho \"install complete\"",
|
||||
"container": "alpine:3.10",
|
||||
"entrypoint": "ash"
|
||||
}
|
||||
@ -78,4 +78,4 @@
|
||||
"rules": "string|nullable"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
# steamcmd servers
|
||||
# steamcmd servers
|
||||
|
||||
This is a collection of servers that use steamcmd to install.
|
||||
|
||||
@ -13,6 +13,9 @@ This is a collection of servers that use steamcmd to install.
|
||||
* [arma 3](arma/arma3/)
|
||||
* [arma 3 headless](arma/arma3_headless_client/)
|
||||
|
||||
## Avorion
|
||||
[avorion](avorion/)
|
||||
|
||||
## Citadel: Forged with Fire
|
||||
[citadel](citadel/)
|
||||
|
||||
@ -43,6 +46,9 @@ This is a collection of servers that use steamcmd to install.
|
||||
## Project Zomboid
|
||||
[project_zomboid](project_zomboid/)
|
||||
|
||||
## Rising World
|
||||
[rising_world](rising_world/)
|
||||
|
||||
## Rust Staging
|
||||
[rust staging](rust_staging/)
|
||||
|
||||
|
24
steamcmd_servers/avorion/README.md
Normal file
24
steamcmd_servers/avorion/README.md
Normal file
@ -0,0 +1,24 @@
|
||||
# Avorion
|
||||
|
||||
A procedural co-op space sandbox where players can build their own space ships out of dynamically scalable blocks. Fight epic space battles, explore, mine, trade, wage wars and build your own empire to save your galaxy from being torn apart by an unknown enemy.
|
||||
|
||||
## Server Ports
|
||||
|
||||
Avorion requires 4 ports to run. Despite claiming to require 4 ports, the game port is the only one that appears to have a config option.
|
||||
|
||||
| Port | default |
|
||||
|-------------|---------|
|
||||
| Game | 27000 |
|
||||
| Query | 27003 |
|
||||
| Steam Query | 27020 |
|
||||
| Steam | 27021 |
|
||||
|
||||
Additionally the server can be configured with an RCON port. RCON will be disabled if a password is not specified.
|
||||
|
||||
| Port | default |
|
||||
|-------------|---------|
|
||||
| RCON | 27015 |
|
||||
|
||||
## RCON
|
||||
|
||||
If you plan to use RCON it currently needs to be manually configured in the server.ini file. At some point server variables will be added.
|
171
steamcmd_servers/avorion/egg-avorion.json
Normal file
171
steamcmd_servers/avorion/egg-avorion.json
Normal file
@ -0,0 +1,171 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-10-04T11:49:22-07:00",
|
||||
"name": "Avorion",
|
||||
"author": "iamkubi@gmail.com",
|
||||
"description": "A procedural co-op space sandbox where players can build their own space ships out of dynamically scalable blocks. Fight epic space battles, explore, mine, trade, wage wars and build your own empire to save your galaxy from being torn apart by an unknown enemy.",
|
||||
"image": "quay.io\/pterodactyl\/core:source",
|
||||
"startup": ".\/server.sh --galaxy-name \\\"{{GALAXY_NAME}}\\\" --admin {{ADMIN_ID}} --datapath galaxy --port {{SERVER_PORT}} --query-port {{QUERY_PORT}} --steam-master-port {{STEAM_MASTER_PORT}} --steam-query-port {{STEAM_QUERY_PORT}} --max-players {{MAX_PLAYERS}} --difficulty {{DIFFICULTY}} --collision-damage {{COLLISION_DMG}} --save-interval {{SAVE_INTERVAL}} --same-start-sector {{SAME_START_SECTOR}} --server-name \\\"{{SERVER_NAME}}\\\" --threads {{GAME_THREADS}} --listed {{SERVER_LISTED}}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Server startup complete\",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "\/stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Avorion 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\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\r\nmkdir -p \/mnt\/server\/steamcmd\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\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[[ \"$SERVER_BETA\" == \"true\" ]] && beta_arg=\"beta\" || beta_arg=\"NONE\"\r\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update ${APP_ID} -beta \"$beta_arg\" validate +exit\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so \/mnt\/server\/steamclient.so\r\nmkdir -p \/mnt\/server\/backups\r\nmkdir -p \/mnt\/server\/galaxy\/\"${GALAXY_NAME}\"\r\ncurl https:\/\/raw.githubusercontent.com\/iamkubi\/eggs\/master\/avorion\/server.ini --output \/mnt\/server\/galaxy\/\"${GALAXY_NAME}\"\/server.ini",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Galaxy Name",
|
||||
"description": "Name of the Galaxy to create",
|
||||
"env_variable": "GALAXY_NAME",
|
||||
"default_value": "Avorion",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|max:32"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "The name of the server, shown in the server list.",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "Avorion Server",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|max:64"
|
||||
},
|
||||
{
|
||||
"name": "Admin ID",
|
||||
"description": "Steam64 ID for the player to make Server Admin",
|
||||
"env_variable": "ADMIN_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Max Players",
|
||||
"description": "Maximum number of players allowed",
|
||||
"env_variable": "MAX_PLAYERS",
|
||||
"default_value": "10",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|int|max:64"
|
||||
},
|
||||
{
|
||||
"name": "Game Difficulty",
|
||||
"description": "Difficulty of the server, allowed values are: -3, -2, -1, 0, 1, 2, 3 Default: 0",
|
||||
"env_variable": "DIFFICULTY",
|
||||
"default_value": "0",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|integer|max:3|min:-3"
|
||||
},
|
||||
{
|
||||
"name": "Collision Damage",
|
||||
"description": "A multiplier for damage to colliding objects. Accepts floating-point numbers, e.g. 0.5 is 50% collision damage. 0: no damage, 1: full damage. default: 1",
|
||||
"env_variable": "COLLISION_DMG",
|
||||
"default_value": "1",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Save Interval",
|
||||
"description": "Time between automatic saves in seconds. Defaults to 300 (5 minutes).",
|
||||
"env_variable": "SAVE_INTERVAL",
|
||||
"default_value": "300",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Same Start Sector",
|
||||
"description": "Indicates if all players should start in the same sector. If false, a random empty sector on the outer rim is populated and used as the home sector for each new player.",
|
||||
"env_variable": "SAME_START_SECTOR",
|
||||
"default_value": "true",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|in:true,false"
|
||||
},
|
||||
{
|
||||
"name": "Threads",
|
||||
"description": "Number of concurrent threads that are used to update sectors. (Identical to the 'Threads' setting ingame.)",
|
||||
"env_variable": "GAME_THREADS",
|
||||
"default_value": "1",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|integer|max:20"
|
||||
},
|
||||
{
|
||||
"name": "List Publicly",
|
||||
"description": "Privacy setting. If enabled together with useSteam, the server will show up in public server lists. (Same as the ingame setting 'List Publicly')",
|
||||
"env_variable": "SERVER_LISTED",
|
||||
"default_value": "true",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|in:true,false"
|
||||
},
|
||||
{
|
||||
"name": "Enable Beta",
|
||||
"description": "Set to true to enable beta, false for stable.",
|
||||
"env_variable": "SERVER_BETA",
|
||||
"default_value": "false",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string|in:true,false"
|
||||
},
|
||||
{
|
||||
"name": "Steam App ID",
|
||||
"description": "",
|
||||
"env_variable": "APP_ID",
|
||||
"default_value": "565060",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "LD Library Path",
|
||||
"description": "",
|
||||
"env_variable": "LD_LIBRARY_PATH",
|
||||
"default_value": ".\/linux64",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Steam Master Port",
|
||||
"description": "",
|
||||
"env_variable": "STEAM_MASTER_PORT",
|
||||
"default_value": "27021",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Steam Query Port",
|
||||
"description": "",
|
||||
"env_variable": "STEAM_QUERY_PORT",
|
||||
"default_value": "27020",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Query Port",
|
||||
"description": "",
|
||||
"env_variable": "QUERY_PORT",
|
||||
"default_value": "27003",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
64
steamcmd_servers/avorion/server.ini
Normal file
64
steamcmd_servers/avorion/server.ini
Normal file
@ -0,0 +1,64 @@
|
||||
[Game]
|
||||
Seed=9gfddTsaAN
|
||||
Difficulty=0
|
||||
HardcoreEnabled=false
|
||||
InfiniteResources=false
|
||||
CollisionDamage=1
|
||||
SafePlayerInput=false
|
||||
PlayerToPlayerDamage=true
|
||||
LogoutInvincibility=true
|
||||
LogoutInvincibilityDelay=30
|
||||
DevMode=false
|
||||
ExplicitCallables=true
|
||||
BigWreckageDespawnTime=1800
|
||||
SmallWreckageDespawnTime=900
|
||||
MaximumFightersPerSectorAndPlayer=-1
|
||||
MaximumBlocksPerCraft=-1
|
||||
MaximumVolumePerShip=-1
|
||||
MaximumVolumePerStation=-1
|
||||
MaximumPlayerShips=-1
|
||||
MaximumPlayerStations=-1
|
||||
MaximumBlocksPerTurret=250
|
||||
PlayerInventorySlots=1000
|
||||
AllianceInventorySlots=1000
|
||||
Version=1.0
|
||||
sameStartSector=true
|
||||
startUpScript=data/scripts/server/server.lua
|
||||
startSectorScript=startsector
|
||||
motd=
|
||||
[System]
|
||||
saveInterval=600
|
||||
sectorUpdateTimeLimit=300
|
||||
emptySectorUpdateInterval=0.5
|
||||
workerThreads=1
|
||||
generatorThreads=2
|
||||
scriptBackgroundThreads=2
|
||||
aliveSectorsPerPlayer=5
|
||||
weakUpdate=true
|
||||
profiling=false
|
||||
sendCrashReports=true
|
||||
hangDetection=true
|
||||
backups=true
|
||||
backupsPath=/home/container/backups
|
||||
simulateHighLoadServer=false
|
||||
sendSectorDelay=2
|
||||
placeInShipOnDeathDelay=7
|
||||
[Networking]
|
||||
port=27000
|
||||
broadcastInterval=5
|
||||
isPublic=true
|
||||
isListed=false
|
||||
isAuthenticated=true
|
||||
sendStatsToAdmins=true
|
||||
useSteam=true
|
||||
rconIp=
|
||||
rconPassword=
|
||||
rconPort=27015
|
||||
[Administration]
|
||||
maxPlayers=10
|
||||
name=Avorion Server
|
||||
description=An Avorion Server
|
||||
password=
|
||||
pausable=false
|
||||
accessListMode=Blacklist
|
||||
steamIdOverride=0
|
@ -3,15 +3,15 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-07-11T08:34:24-04:00",
|
||||
"exported_at": "2020-10-24T11:25:01+00:00",
|
||||
"name": "Conan Exiles",
|
||||
"author": "brycea@terrahost.cloud",
|
||||
"description": "Conan Exiles is an open-world survival game set in the brutal lands of Conan the Barbarian. Survive in a savage world, build your kingdom, and dominate your enemies in brutal combat and epic warfare.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_wine-5",
|
||||
"startup": "xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' wine \/home\/container\/ConanSandboxServer.exe -console -log",
|
||||
"startup": "xvfb-run --auto-servernum wine \/home\/container\/ConanSandboxServer.exe -console -log -Port={{SERVER_PORT}} -QueryPort={{QUERY_PORT}}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{}",
|
||||
"startup": "{\r\n \"done\":\"Started SourceServerQueries\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
@ -28,45 +28,45 @@
|
||||
"description": "The ID corresponding to the game to download.",
|
||||
"env_variable": "SRCDS_APPID",
|
||||
"default_value": "443030",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|numeric|digits_between:1,6"
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|digits_between:1,7"
|
||||
},
|
||||
{
|
||||
"name": "XVFB Enable",
|
||||
"description": "1 or 0",
|
||||
"env_variable": "XVFB",
|
||||
"default_value": "1",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|min:0|max:1"
|
||||
},
|
||||
{
|
||||
"name": "XVFB Display Width",
|
||||
"description": "",
|
||||
"env_variable": "DISPLAY_WIDTH",
|
||||
"default_value": "640",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|numeric"
|
||||
"name": "Windows install variable",
|
||||
"description": "Required for windows applications to install with steam.\r\n\r\n1 to enable auto-updates",
|
||||
"env_variable": "WINDOWS_INSTALL",
|
||||
"default_value": "1",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|boolean"
|
||||
},
|
||||
{
|
||||
"name": "XVFB Display Height",
|
||||
"description": "",
|
||||
"env_variable": "DISPLAY_HEIGHT",
|
||||
"default_value": "480",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|numeric"
|
||||
"name": "Auto Update",
|
||||
"description": "Decide if you want to update your server",
|
||||
"env_variable": "AUTO_UPDATE",
|
||||
"default_value": "1",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|boolean"
|
||||
},
|
||||
{
|
||||
"name": "XVFB Bit Depth",
|
||||
"description": "",
|
||||
"env_variable": "DISPLAY_DEPTH",
|
||||
"default_value": "32",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|numeric"
|
||||
"name": "Query Port",
|
||||
"description": "Server Query Port",
|
||||
"env_variable": "QUERY_PORT",
|
||||
"default_value": "27015",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|max:65535"
|
||||
}
|
||||
]
|
||||
}
|
@ -3,21 +3,21 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2019-12-30T09:04:05+01:00",
|
||||
"exported_at": "2020-09-15T15:37:08+02:00",
|
||||
"name": "Eco",
|
||||
"author": "info@goover.de",
|
||||
"description": "Eco is an online world from Strange Loop Games where players must build civilization using resources from an ecosystem that can be damaged and destroyed. The world of Eco is an incredibly reactive one, and whatever any player does in the world affects the underlying ecosystem.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_mono-5-complete",
|
||||
"startup": "\/usr\/bin\/mono .\/EcoServer.exe -nogui",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_dotnet",
|
||||
"startup": "export DOTNET_BUNDLE_EXTRACT_BASE_DIR=.\/dotnet-bundle && .\/EcoServer",
|
||||
"config": {
|
||||
"files": "{\r\n \"Configs\/Network.eco\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"GameServerPort\": \"{{server.build.default.port}}\",\r\n \"WebServerPort\": \"{{server.build.env.WEB_PORT}}\",\r\n \"PublicServer\": \"{{server.build.env.PUB_SRV}}\",\r\n \"Password\": \"{{server.build.env.SRV_PWD}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Server Initialization \",\r\n \"userInteraction\": []\r\n}",
|
||||
"files": "{\r\n \"Configs\/Network.eco\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"GameServerPort\": \"{{server.build.default.port}}\",\r\n \"WebServerPort\": \"{{server.build.env.WEB_PORT}}\",\r\n \"PublicServer\": \"{{server.build.env.PUB_SRV}}\",\r\n \"Password\": \"{{server.build.env.SRV_PWD}}\",\r\n \"UPnPEnabled\": \"{{server.build.env.UPNP}}\",\r\n \"Description\": \"{{server.build.env.SRV_DES}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"[Server Initialization]... \",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "exit"
|
||||
},
|
||||
"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} +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",
|
||||
"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} +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\ncp -f $HOME\/Configs\/Network.eco.template $HOME\/Configs\/Network.eco",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -28,8 +28,8 @@
|
||||
"description": "ID",
|
||||
"env_variable": "SRCDS_APPID",
|
||||
"default_value": "739590",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|digits_between:1,6"
|
||||
},
|
||||
{
|
||||
@ -37,8 +37,8 @@
|
||||
"description": "port",
|
||||
"env_variable": "WEB_PORT",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|digits_between:1,6"
|
||||
},
|
||||
{
|
||||
@ -46,8 +46,8 @@
|
||||
"description": "Public Server = true | Private Server = false",
|
||||
"env_variable": "PUB_SRV",
|
||||
"default_value": "false",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
@ -55,9 +55,27 @@
|
||||
"description": "Password to join the Server",
|
||||
"env_variable": "SRV_PWD",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Description",
|
||||
"description": "Server Description",
|
||||
"env_variable": "SRV_DES",
|
||||
"default_value": "Hosted by Pterodactyl",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:50"
|
||||
},
|
||||
{
|
||||
"name": "UPNP",
|
||||
"description": "UPNP OFF",
|
||||
"env_variable": "UPNP",
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
@ -6,7 +6,7 @@
|
||||
"exported_at": "2020-07-12T20:06:39-04:00",
|
||||
"name": "Killing Floor 2",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "n KILLING FLOOR 2, players descend into continental Europe after it has been overrun by horrific, murderous clones called Zeds that were created by the corporation Horzine. The Zed outbreak caused by Horzine Biotech\u2019s failed experiments has quickly spread with unstoppable momentum, paralyzing the European Union. Only a month ago, the first Zed outbreak from the original KILLING FLOOR ripped through London; now the specimen clones are everywhere.",
|
||||
"description": "In KILLING FLOOR 2, players descend into continental Europe after it has been overrun by horrific, murderous clones called Zeds that were created by the corporation Horzine. The Zed outbreak caused by Horzine Biotech\u2019s failed experiments has quickly spread with unstoppable momentum, paralyzing the European Union. Only a month ago, the first Zed outbreak from the original KILLING FLOOR ripped through London; now the specimen clones are everywhere.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_source",
|
||||
"startup": "\/home\/container\/Binaries\/Win64\/KFGameSteamServer.bin.x86_64 {{MAP_NAME}}?Port={{SERVER_PORT}}?QueryPort={{QUERY_PORT}}?AdminPassword={{ADMIN_PASS}}?Difficulty={{DIFFICULTY}}$( [ \"$WEB_ADMIN\" == \"true\" ] || printf %s '??WebAdminPort={{WEB_ADMIN_PORT}}' )",
|
||||
"config": {
|
||||
|
@ -1,19 +0,0 @@
|
||||
# Killing Floor 2
|
||||
Steam Description
|
||||
In KILLING FLOOR 2, players descend into continental Europe where the outbreak caused by Horzine Biotech’s failed experiment has quickly spread and gained unstoppable momentum, essentially paralyzing the European Union— Just one month after the events in the original KILLING FLOOR, the specimen clones are everywhere and civilization is in disarray; communications have failed, governments have collapsed, and military forces have been systematically eradicated. The people of Europe know survival and self-preservation too well and lucky survivors have gone into hiding.
|
||||
|
||||
Not all have given up hope though... A group of civilians and mercenaries have banded together to combat the outbreak and established privately funded operation bases across Europe. Upon tracking specimen clone outbreaks, players will descend into zed-laden hot zones and exterminate them.
|
||||
|
||||
|
||||
### Server Ports
|
||||
Killing Floor 2 requires 2 ports with an optional 1 for web management
|
||||
|
||||
game port (default 7777)
|
||||
query port (default 27015)
|
||||
web admin (default 8080)
|
||||
|
||||
| Port | default |
|
||||
|---------|---------------|
|
||||
| Game | 7777 |
|
||||
| Query | 27015 |
|
||||
| WebAdmin| 8080 |
|
@ -1,135 +0,0 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-08-14T22:54:02-04:00",
|
||||
"name": "Killing Floor 2",
|
||||
"author": "trey@chazx.cc",
|
||||
"description": "In KILLING FLOOR 2, players descend into continental Europe after it has been overrun by horrific, murderous clones called Zeds that were created by the corporation Horzine. The Zed outbreak caused by Horzine Biotech\u2019s failed experiments has quickly spread with unstoppable momentum, paralyzing the European Union. Only a month ago, the first Zed outbreak from the original KILLING FLOOR ripped through London; now the specimen clones are everywhere.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_source",
|
||||
"startup": "\/home\/container\/Binaries\/Win64\/KFGameSteamServer.bin.x86_64 {{MAP_NAME}}?Port={{SERVER_PORT}}?QueryPort={{QUERY_PORT}}?AdminPassword={{ADMIN_PASS}}?Difficulty={{DIFFICULTY}}$( [ \"$WEB_ADMIN\" == \"true\" ] || printf %s '??WebAdminPort={{WEB_ADMIN_PORT}}' )",
|
||||
"config": {
|
||||
"files": "{\r\n \"KFGame\/Config\/KFWeb.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"IpDrv.WebServer.IpDrv.WebServer\": \"{{server.build.env.WEB_ADMIN}}\",\r\n \"IpDrv.WebServer.IpDrv.ListenPort\": \"{{server.build.env.WEB_ADMIN_PORT}}\"\r\n }\r\n },\r\n \"KFGame\/Config\/LinuxServer-KFGame.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"Engine.AccessControl.AdminPassword\": \"{{server.build.env.ADMIN_PASS}}\",\r\n \"Engine.GameReplicationInfo.ServerName\": \"{{server.build.env.SERVER_NAME}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"DevOnline: Playfab server registered with lobby ID \"\r\n}",
|
||||
"logs": "{}",
|
||||
"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\n\r\n##\r\n#\r\n# Variables\r\n# STEAM_USER, STEAM_PASS, STEAM_AUTH - Steam user setup. If a user has 2fa enabled it will most likely fail due to timeout. Leave blank for anon install.\r\n# WINDOWS_INSTALL - if it's a windows server you want to install set to 1\r\n# SRCDS_APPID - steam app id ffound here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List\r\n# EXTRA_FLAGS - when a server has extra glas for things like beta installs or updates.\r\n#\r\n##\r\n\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",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Steam Username",
|
||||
"description": "A steam username to use to install the server.\r\n\r\nOnly needed for games that need a user that owns the server",
|
||||
"env_variable": "STEAM_USER",
|
||||
"default_value": "",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Steam Password",
|
||||
"description": "Password for the Steam account to install a server.",
|
||||
"env_variable": "STEAM_PASS",
|
||||
"default_value": "",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Steam Auth",
|
||||
"description": "Will most likely time out before it gets used.",
|
||||
"env_variable": "STEAM_AUTH",
|
||||
"default_value": "",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "nullable|string|max:6"
|
||||
},
|
||||
{
|
||||
"name": "Steam Server App ID",
|
||||
"description": "The App ID for the Server",
|
||||
"env_variable": "SRCDS_APPID",
|
||||
"default_value": "232130",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Extra Flags",
|
||||
"description": "Only needed for specific situations.",
|
||||
"env_variable": "EXTRA_FLAGS",
|
||||
"default_value": "",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Map Name",
|
||||
"description": "The map to load when the server starts\r\n\r\ndefault - 'kf-bioticslab'",
|
||||
"env_variable": "MAP_NAME",
|
||||
"default_value": "kf-bioticslab",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Query Port",
|
||||
"description": "The port steam will use to query the server.",
|
||||
"env_variable": "QUERY_PORT",
|
||||
"default_value": "27015",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|numeric|max:65535"
|
||||
},
|
||||
{
|
||||
"name": "Enable WebAdmin (beta)",
|
||||
"description": "",
|
||||
"env_variable": "WEB_ADMIN",
|
||||
"default_value": "false",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|in:true,false"
|
||||
},
|
||||
{
|
||||
"name": "Admin Password",
|
||||
"description": "An admin password for the server.",
|
||||
"env_variable": "ADMIN_PASS",
|
||||
"default_value": "PleaseChangeMe",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "This is the displayed server name to all players in the server and the server browser",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "A Pterodactyl Hosted Server",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Server Difficulty",
|
||||
"description": "0 = Normal, 1 = Hard, 2 = Suicidal, 3 = Hell on Earth",
|
||||
"env_variable": "DIFFICULTY",
|
||||
"default_value": "0",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "required|numeric|max:3"
|
||||
},
|
||||
{
|
||||
"name": "Web Admin Port",
|
||||
"description": "The port the webadmin panel should use. This is a beta feature.",
|
||||
"env_variable": "WEB_ADMIN_PORT",
|
||||
"default_value": "8081",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
13
steamcmd_servers/rising_world/README.md
Normal file
13
steamcmd_servers/rising_world/README.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Rising World
|
||||
Rising World is a voxel based open-world sandbox game, featuring a procedurally generated world, playable in single and multi-player.
|
||||
|
||||
### Server Ports
|
||||
Rising World requires up to 7 ports.
|
||||
* The RCON port is optional, but is enabled by default.
|
||||
* Game ports require both TCP and UDP
|
||||
|
||||
| Port | default |
|
||||
|---------|---------------|
|
||||
| Game | 4255 - 4259 |
|
||||
| RCON | 4253 |
|
||||
| Query | 4254 |
|
90
steamcmd_servers/rising_world/egg-rising-world.json
Normal file
90
steamcmd_servers/rising_world/egg-rising-world.json
Normal file
@ -0,0 +1,90 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-10-11T07:16:29+02:00",
|
||||
"name": "Rising World",
|
||||
"author": "info@goover.de",
|
||||
"description": "Rising World is a voxel based open-world sandbox game, featuring a procedurally generated world, playable in single and multi-player.",
|
||||
"image": "quay.io\/pterodactyl\/core:java",
|
||||
"startup": "java -Xmx{{SERVER_MEMORY}}M -jar server.jar +maxplayer={{MAX_PLAYERS}} +serverport={{SERVER_PORT}} +servername=\\\"{{SERVER_NAME}}\\\" +rconport {{RCON_PORT}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"rcon_enabled\": \"true\",\r\n \"rcon_password\": \"{{server.build.env.RCON_PASSWORD}}\",\r\n \"server_password\": \"{{server.build.env.SERVER_PASSWORD}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"RISING WORLD SERVER STARTED\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "shutdown"
|
||||
},
|
||||
"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} +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\nmkdir -p \/mnt\/server\/linux64\r\ncp -v linux64\/steamclient.so ..\/linux64\/steamclient.so",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "Name of the server",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "Rising World Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:32"
|
||||
},
|
||||
{
|
||||
"name": "Max Players",
|
||||
"description": "Maximum player count for the server.",
|
||||
"env_variable": "MAX_PLAYERS",
|
||||
"default_value": "4",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|integer|max:64"
|
||||
},
|
||||
{
|
||||
"name": "RCON Port",
|
||||
"description": "Overrides the default RCON Port",
|
||||
"env_variable": "RCON_PORT",
|
||||
"default_value": "4253",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "RCON Password",
|
||||
"description": "",
|
||||
"env_variable": "RCON_PASSWORD",
|
||||
"default_value": "changeme",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "LD Library Path",
|
||||
"description": "",
|
||||
"env_variable": "LD_LIBRARY_PATH",
|
||||
"default_value": "..\/linux64",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Password",
|
||||
"description": "",
|
||||
"env_variable": "SERVER_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "SRCDS_APPID",
|
||||
"description": "",
|
||||
"env_variable": "SRCDS_APPID",
|
||||
"default_value": "339010",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
}
|
@ -3,14 +3,14 @@
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-04-24T16:03:28+02:00",
|
||||
"exported_at": "2020-10-06T16:59:53+02:00",
|
||||
"name": "Soldat",
|
||||
"author": "info@goover.de",
|
||||
"description": "Soldat is a unique 2D (side-view) multiplayer action game. It has been influenced by the best of games such as Liero, Worms, Quake, and Counter-Strike and provides a fast-paced gaming experience with tons of blood and flesh. Soldiers fight against each other in 2D battle arenas using a deadly arsenal of military weapons, across 7 default game modes. It features 18 different weapons and 60 maps to frag away on, with full support for user created content.\r\n\r\nSteam: https:\/\/store.steampowered.com\/app\/638490\/Soldat\/",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/soldatserver",
|
||||
"config": {
|
||||
"files": "{\r\n \"soldat.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"Port=\": \"Port={{server.build.default.port}}\",\r\n \"Max_Players=\": \"Max_Players={{server.build.env.MAX_PLAYERS}}\",\r\n \"Game_Password=\": \"Game_Password={{server.build.env.SRV_PWD}}\",\r\n \"Admin_Password=\": \"Admin_Password={{server.build.env.ADMIN_PASSWD}}\",\r\n \"Server_Name=\": \"Server_Name={{server.build.env.SRV_NAME}}\"\r\n }\r\n }\r\n}",
|
||||
"files": "{\r\n \"soldat.ini\": {\r\n \"parser\": \"ini\",\r\n \"find\": {\r\n \"NETWORK.Port\": \"{{server.build.default.port}}\",\r\n \"NETWORK.Max_Players\": \"{{server.build.env.MAX_PLAYERS}}\",\r\n \"NETWORK.Game_Password\": \"{{server.build.env.SRV_PWD}}\",\r\n \"NETWORK.Admin_Password\": \"{{server.build.env.ADMIN_PASSWD}}\",\r\n \"NETWORK.Server_Name\": \"{{server.build.env.SRV_NAME}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Done\",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "^C"
|
||||
@ -28,17 +28,17 @@
|
||||
"description": "Admin Password for the Server",
|
||||
"env_variable": "ADMIN_PASSWD",
|
||||
"default_value": "changeme",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Server Password",
|
||||
"description": "Password to join Server",
|
||||
"env_variable": "SRV_PWD",
|
||||
"default_value": "chageme",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"default_value": "changeme",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
@ -46,8 +46,8 @@
|
||||
"description": "Name of the Server",
|
||||
"env_variable": "SRV_NAME",
|
||||
"default_value": "MySoldatServer",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:100"
|
||||
},
|
||||
{
|
||||
@ -55,8 +55,8 @@
|
||||
"description": "Max Players can join",
|
||||
"env_variable": "MAX_PLAYERS",
|
||||
"default_value": "10",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
@ -64,8 +64,8 @@
|
||||
"description": "Steam APP ID",
|
||||
"env_variable": "SRCDS_APPID",
|
||||
"default_value": "638500",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 0,
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
}
|
||||
]
|
||||
|
16
steamcmd_servers/unturned/README.md
Normal file
16
steamcmd_servers/unturned/README.md
Normal file
@ -0,0 +1,16 @@
|
||||
# Unturned
|
||||
|
||||
Steam Description
|
||||
You're one of the few not yet turned zombie. Keeping it that way will be a challenge.
|
||||
- Go in guns blazing and attract the attention of everything, living and dead.
|
||||
- Take a subtle approach sneaking around and making use of distractions.
|
||||
- Confront and learn to counter special abilities ranging from invisibility to fire breathing to lightning attacks.
|
||||
|
||||
### Server Ports
|
||||
Rocketmod requires 3 ports to run properly.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 27015 |
|
||||
| Game +1 | 27016 |
|
||||
| Game +2 | 27017 |
|
63
steamcmd_servers/unturned/egg-unturned.json
Normal file
63
steamcmd_servers/unturned/egg-unturned.json
Normal file
@ -0,0 +1,63 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-07-12T22:04:47-04:00",
|
||||
"name": "Unturned",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Vanilla Unturned with the included RockerMod.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:debian_source",
|
||||
"startup": ".\/Unturned_Headless.x86_64 -batchmode -nographics -bind 0.0.0.0 -port {{SERVER_PORT}}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Loading level: 100%\",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"latest.log\"\r\n}",
|
||||
"stop": "shutdown"
|
||||
},
|
||||
"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\n\r\nDEBIAN_FRONTEND=noninteractive\r\n\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} +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 \/mnt\/server\/.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 \/mnt\/server\/.steam\/sdk64\/steamclient.so\r\n\r\n## Specific to Unturned\r\ncd \/mnt\/server\/\r\nln -s ..\/..\/..\/steamcmd\/linux64\/steamclient.so Unturned_Headless_Data\/Plugins\/x86_64\/steamclient.so\r\nln -s ..\/Extras\/Rocket.Unturned\/ Modules\/",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Steam App ID",
|
||||
"description": "Steam App ID require for install and startup update",
|
||||
"env_variable": "SRCDS_APPID",
|
||||
"default_value": "1110390",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "ld lib path",
|
||||
"description": "This is needed to load specific libraries",
|
||||
"env_variable": "LD_LIBRARY_PATH",
|
||||
"default_value": ".\/Unturned_Headless_Data\/Plugins\/x86_64\/",
|
||||
"user_viewable": 0,
|
||||
"user_editable": 0,
|
||||
"rules": "required|string"
|
||||
},
|
||||
{
|
||||
"name": "Steam User",
|
||||
"description": "Should be left blank for anon user",
|
||||
"env_variable": "STEAM_USER",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Steam Password",
|
||||
"description": "",
|
||||
"env_variable": "STEAM_PASS",
|
||||
"default_value": "",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,20 +1,10 @@
|
||||
# Example Server Name
|
||||
### From their [Github](https://github.com/parkervcp/eggs)
|
||||
A link to the site that you download game files from.
|
||||
The description of the server usually provided by the game/server maker.
|
||||
|
||||
### Install notes
|
||||
Due to rate limiting the console on the panel cannot keep up with the game console and the build will complete before the panel console may show it. Reloading the console will load it to the latest part of the log.
|
||||
|
||||
### Minimum RAM warning
|
||||
Minimum required memory to run the server.
|
||||
|
||||
# Teeworlds
|
||||
### From their [Site](https://www.teeworlds.com/)
|
||||
Teeworlds is a free online multiplayer game, available for all major operating systems. Battle with up to 16 players in a variety of game modes, including Team Deathmatch and Capture The Flag. You can even design your own maps
|
||||
|
||||
### Server Ports
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 8308 |
|
||||
|
||||
#### Mods/Plugins may require ports to be added to the server.
|
||||
| Game | 8303 |
|
||||
|
45
teeworlds/teeworlds/egg-teeworlds.json
Normal file
45
teeworlds/teeworlds/egg-teeworlds.json
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
},
|
||||
"exported_at": "2020-10-01T22:39:40-04:00",
|
||||
"name": "Teeworlds",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Teeworlds is a free online multiplayer game, available for all major operating systems. Battle with up to 16 players in a variety of game modes, including Team Deathmatch and Capture The Flag. You can even design your own maps!",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:base_debian",
|
||||
"startup": ".\/teeworlds_srv",
|
||||
"config": {
|
||||
"files": "{\r\n \"autoexec.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"bindaddr\": \"bindaddr 0.0.0.0\",\r\n \"sv_port\": \"sv_port {{server.build.default.port}}\",\r\n \"sv_name\": \"sv_name {{server.build.env.SERVER_NAME}}\",\r\n \"sv_motd\": \"sv_motd {{server.build.env.SERVER_MOTD}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"as master, sending heartbeats\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "## teeworlds pterodactyl installer\r\napt update\r\napt upgrade -y\r\napt install -y curl jq file\r\n\r\nGITHUB_PACKAGE=\"teeworlds\/teeworlds\"\r\nMATCH=\"linux_x86_64\"\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 [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_LINK=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelse\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_LINK=$(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_LINK=$(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 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## setting variable names for later\r\nFILE_NAME=${DOWNLOAD_LINK##*\/}\r\nFOLDER_NAME=${FILE_NAME%.tar.gz}\r\n\r\necho -e \"running 'curl -sSL ${DOWNLOAD_LINK} -o ${FILE_NAME}'\"\r\ncurl -sSL ${DOWNLOAD_LINK} -o ${FILE_NAME}\r\n\r\nFILETYPE=$(file -F ',' ${FILE_NAME} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${FILE_NAME}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${FILE_NAME}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${FILE_NAME}\r\nelse\r\n echo -e \"unknown filetype. Exiting\"\r\n # exit 2 \r\nfi\r\n\r\n## cleanup old files\r\nmv ${FOLDER_NAME}\/* .\/\r\n\r\nrm -rf ${FILE_NAME} ${FOLDER_NAME}\r\n\r\n## download default config\r\nif [ ! -f \/mnt\/server\/autoexec.cfg ]; then\r\n curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/teeworlds\/teeworlds\/autoexec.cfg > \/mnt\/server\/autoexec.cfg\r\nfi\r\n\r\n## download safe storage file\r\n## overwrites any that exists.\r\ncurl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/teeworlds\/teeworlds\/storage.cfg > \/mnt\/server\/storage.cfg\r\n\r\necho -e \"Install complete.\"",
|
||||
"container": "debian:buster-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "The Display Name for the server",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "A Pterodactyl Hosted Teeworlds Server",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string"
|
||||
},
|
||||
{
|
||||
"name": "Server MotD",
|
||||
"description": "Server Message of the Day displayed to all users.",
|
||||
"env_variable": "SERVER_MOTD",
|
||||
"default_value": "A Pterodactyl Hosted Teeworlds Server",
|
||||
"user_viewable": 1,
|
||||
"user_editable": 1,
|
||||
"rules": "nullable|string"
|
||||
}
|
||||
]
|
||||
}
|
Loading…
Reference in New Issue
Block a user