mirror of
https://github.com/parkervcp/eggs.git
synced 2024-11-25 23:33:00 +08:00
Merge branch 'master' into add/eugenServers
This commit is contained in:
commit
916d12d525
11
.github/pull_request_template.md
vendored
11
.github/pull_request_template.md
vendored
@ -4,7 +4,7 @@
|
||||
|
||||
## Checklist for all submissions
|
||||
|
||||
<!-- insert X into the brackets to mark it as done. You can click preview to make the links appear clickable. -->
|
||||
<!-- insert X into the brackets to mark it as done (i.e. [x]). You can click preview to make the links appear clickable. -->
|
||||
|
||||
* [ ] Have you followed the guidelines in our [Contributing document](https://github.com/parkervcp/eggs/blob/master/CONTRIBUTING.md)?
|
||||
* [ ] Have you checked to ensure there aren't other open [Pull Requests](../pulls) for the same update/change?
|
||||
@ -12,6 +12,12 @@
|
||||
* [ ] Did you branch your changes and PR from that branch and not from your master branch?
|
||||
* If not, why?:
|
||||
|
||||
<!-- If this is an egg update fill these out -->
|
||||
|
||||
* [ ] You verify that the start command applied does not use a shell script
|
||||
* [ ] If some script is needed then it is part of a current yolk or a PR to add one
|
||||
* [ ] The egg was exported from the panel
|
||||
|
||||
<!-- You can erase the new egg submission template if you're not adding a completely new egg -->
|
||||
|
||||
## New egg Submissions
|
||||
@ -22,3 +28,6 @@
|
||||
* [ ] Did you PR the necessary changes to make it work?
|
||||
3. [ ] Have you added the egg to the main README.md and any other README files in subdirectories of the egg (e.g /game_eggs) according to the alphabetical order?
|
||||
4. [ ] Have you added a unique README.md for the egg you are adding according to the alphabetical order?
|
||||
5. [ ] You verify that the start command applied does not use a shell script
|
||||
* [ ] If some script is needed then it is part of a current yolk or a PR to add one
|
||||
6. [ ] The egg was exported from the panel
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,3 +2,4 @@
|
||||
node_modules/
|
||||
.vuepress/*
|
||||
.vscode
|
||||
.idea
|
@ -4,17 +4,25 @@ You can contribute by either creating a new pull request or testing [existing pu
|
||||
|
||||
## General rules for eggs
|
||||
|
||||
1. Keep it simple.
|
||||
1. Don't be afraid to submit PR's to the egg repo.
|
||||
I don't bite. I will work with you on the egg and the required things to run it. Feel free to open a draft PR if you don't quite have the egg finished yet by yourself.
|
||||
|
||||
2. Keep it secure.
|
||||
No start scripts that a user can edit.
|
||||
If a start script is needed it should be part of a yolk.
|
||||
|
||||
3. Keep it simple.
|
||||
We don't need 8 miles of the install script.
|
||||
|
||||
2. Keep it small.
|
||||
Only use what is absolutely needed. The [Yolks install images](https://github.com/parkervcp/yolks#installation-images) already contain the most basic packages that speeds up the installation process.
|
||||
4. Keep it small.
|
||||
Only use what is absolutely needed. The [yolks install images](https://github.com/parkervcp/yolks#installation-images) already contain the most basic packages that speeds up the installation process.
|
||||
|
||||
3. Use the stock images.
|
||||
5. Use the stock images.
|
||||
If you need something in an image, open a PR in [my yolks repo](https://github.com/parkervcp/yolks) where it can be reviewed and built. Self-hosted or third-party images won't be accepted for security reasons.
|
||||
|
||||
4. Don't be afraid to submit PR's to the egg repo.
|
||||
I don't bite. I will work with you on the egg and the required things to run it. Feel free to open a draft PR if you don't quite have the egg finished yet by yourself.
|
||||
6. Export eggs from the panel
|
||||
We ask that you use the panel to manage and export eggs.
|
||||
This keeps the egg format correctly
|
||||
|
||||
### Sources for working on a new egg
|
||||
|
||||
@ -52,9 +60,9 @@ The Pterodactyl install process is fairly simple once you know it.
|
||||
|
||||
### Testing
|
||||
|
||||
Make sure your install process is rock solid as I will be testing eggs before they ever hit my repo.
|
||||
Make sure your install process is rock solid as eggs will be tested before they are merged.
|
||||
|
||||
I will make suggestions and changes at will.
|
||||
Suggestions and changes will be made at will.
|
||||
This is to maintain a clean repo that others can pull and be fully aware of what is being done.
|
||||
|
||||
## Step 3
|
||||
|
96
README.md
96
README.md
@ -28,15 +28,19 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
**Note:** these are actual Discord bot eggs, NOT language eggs. The old language eggs (discord-js-generic, discord-py-generic, etc) have been moved to the [generic languages section](#generic-languages).
|
||||
|
||||
* [Aoede](/bots/discord/aoede) Rust
|
||||
* [ATL Bot](/bots/discord/atlbot) Node JS
|
||||
* [Bastion](/bots/discord/bastion) Node JS
|
||||
* [CorpBot](/bots/discord/corpbot) Python
|
||||
* [Dynamica](/bots/discord/dynamica) Node JS
|
||||
* [fragbot](/bots/discord/fragbot) Golang
|
||||
* [Game Server Watcher](/bots/discord/game-server-watcher) Node JS
|
||||
* [JMusicBot](/bots/discord/jmusicbot) Java
|
||||
* [Muse](/bots/discord/muse) Node JS
|
||||
* [parkertron](/bots/discord/parkertron) Golang
|
||||
* [pixel-bot](/bots/discord/pixelbot) Python
|
||||
* [Redbot](/bots/discord/redbot) Python
|
||||
* [Ree6](/bots/discord/ree6) Java
|
||||
* [SinusBot](/bots/discord/sinusbot)
|
||||
|
||||
[Other](/bots/other)
|
||||
@ -54,12 +58,15 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
## [Generic Languages](/generic)
|
||||
|
||||
* [C#](/generic/c%23/)
|
||||
* [elixir](/generic/elixir/)
|
||||
* [dart](/generic/dart/)
|
||||
* [deno](/generic/deno/)
|
||||
* [golang](/generic/golang/)
|
||||
* [java](/generic/java/)
|
||||
* [lua](/generic/lua/)
|
||||
* [nodejs](/generic/nodejs/)
|
||||
* [bun](/generic/bun/)
|
||||
* [nodemon](/generic/nodemon/)
|
||||
* [python](/generic/python/)
|
||||
* [rust](/generic/rust/)
|
||||
@ -112,17 +119,27 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [MCGalaxy](game_eggs/classicube/mcgalaxy)
|
||||
|
||||
[Clone Hero](game_eggs/clone_hero)
|
||||
|
||||
[Eugen games](game_eggs/eugen)
|
||||
* [Steel Division 2](game_eggs/eugen/steel-division-2)
|
||||
* [Wargame: Red Dragon](game_eggs/eugen/wargame-red-dragon)
|
||||
* [Wargame: Red Dragon - patched](game_eggs/eugen/wargame-red-dragon-patched)
|
||||
[CS2D](game_eggs/cs2d)
|
||||
|
||||
[Cube Engine](cubeengine)
|
||||
|
||||
* [AssaultCube](cubeengine/assaultcube)
|
||||
* [Cube 2: Sauerbraten](cubeengine/cube2)
|
||||
|
||||
[DDRaceNetwork](game_eggs/ddracenetwork)
|
||||
|
||||
[Doom](game_eggs/doom)
|
||||
* [Zandronum](game_eggs/doom/zandronum)
|
||||
|
||||
[ET Legacy](game_eggs/enemy_territory/etlegacy)
|
||||
|
||||
[Eugen games](game_eggs/eugen)
|
||||
* [Steel Division 2](game_eggs/eugen/steel-division-2)
|
||||
* [Wargame: Red Dragon](game_eggs/eugen/wargame-red-dragon)
|
||||
* [Wargame: Red Dragon - patched](game_eggs/eugen/wargame-red-dragon-patched)
|
||||
*
|
||||
[FTL: Tachyon](game_eggs/ftl/tachyon)
|
||||
|
||||
[Factorio](game_eggs/factorio)
|
||||
@ -142,42 +159,48 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* GTA SA
|
||||
* [Multi Theft Auto](game_eggs/gta/mtasa)
|
||||
* [SA-MP](game_eggs/gta/samp)
|
||||
* [OpenMp](game_eggs/gta/openmp)
|
||||
|
||||
* GTA
|
||||
* [GTAC](game_eggs/gta/gtac)
|
||||
|
||||
[Hogwarp](game_eggs/hogwarp)
|
||||
|
||||
[Kerbal Space Program](game_eggs/ksp)
|
||||
|
||||
[League Sandbox](game_eggs/leaguesandbox)
|
||||
|
||||
[Los Angeles Crimes](game_eggs/losangelescrimes)
|
||||
|
||||
[Mindustry](game_eggs/mindustry)
|
||||
|
||||
* [Mindustry](game_eggs/mindustry/mindustry)
|
||||
|
||||
[Minetest](game_eggs/minetest) (including MTG)
|
||||
|
||||
* [Minetest](game_eggs/minetest/minetest)
|
||||
|
||||
[Minecraft](game_eggs/minecraft)
|
||||
|
||||
* [Bedrock](game_eggs/minecraft/bedrock) Servers for Bedrock Minecraft (Windows 10, mobile, console)
|
||||
* [Bedrock](game_eggs/minecraft/bedrock) Servers for Bedrock Minecraft (Windows, mobile, console)
|
||||
* [Bedrock](game_eggs/minecraft/bedrock/bedrock)
|
||||
* [gomint](game_eggs/minecraft/bedrock/gomint)
|
||||
* [LiteLoaderBDS](game_eggs/bedrock/LiteLoader-bedrock)
|
||||
* [Nukkit](game_eggs/minecraft/bedrock/nukkit)
|
||||
* [PocketMine MP](game_eggs/minecraft/bedrock/pocketmine_mp)
|
||||
* [PowerNukkitX](game_eggs/minecraft/bedrock/PowerNukkitX)
|
||||
|
||||
* [Java](game_eggs/minecraft/java) Servers for Java Minecraft
|
||||
* [CurseForge](game_eggs/minecraft/java/curseforge)
|
||||
* [Cuberite](game_eggs/minecraft/java/cuberite)
|
||||
* [Fabric](game_eggs/minecraft/java/fabric)
|
||||
* [Feather](game_eggs/minecraft/java/feather)
|
||||
* [Feed The Beast](game_eggs/minecraft/java/ftb)
|
||||
* [Forge](game_eggs/minecraft/java/forge)
|
||||
* [Glowstone](game_eggs/minecraft/java/glowstone)
|
||||
* [Limbo](game_eggs/minecraft/java/limbo)
|
||||
* [Magma](game_eggs/minecraft/java/magma)
|
||||
* [Modrinth](game_eggs/minecraft/java/modrinth)
|
||||
* [Mohist](game_eggs/minecraft/java/mohist)
|
||||
* [NanoLimbo](/game_eggs/minecraft/java/nanolimbo)
|
||||
* [NanoLimbo](game_eggs/minecraft/java/nanolimbo)
|
||||
* [Paper](game_eggs/minecraft/java/paper)
|
||||
* [Folia](game_eggs/minecraft/java/folia)
|
||||
* [Purpur](game_eggs/minecraft/java/purpur)
|
||||
* [Spigot](game_eggs/minecraft/java/spigot)
|
||||
* [SpongeForge](game_eggs/minecraft/java/spongeforge)
|
||||
@ -190,7 +213,6 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [Proxies](game_eggs/minecraft/proxy) Minecraft Server Proxies
|
||||
* [Java](game_eggs/minecraft/proxy/java)
|
||||
* [FlameCord](game_eggs/minecraft/proxy/java/flamecord)
|
||||
* [Travertine](game_eggs/minecraft/proxy/java/travertine)
|
||||
* [Velocity](game_eggs/minecraft/proxy/java/velocity)
|
||||
* [Waterfall](game_eggs/minecraft/proxy/java/waterfall)
|
||||
@ -214,46 +236,70 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [RedM](game_eggs/rdr/redm)
|
||||
|
||||
[Spacestation 14](game_eggs/spacestation_14)
|
||||
|
||||
[Rimworld](game_eggs/rimworld)
|
||||
|
||||
* [Open World](game_eggs/rimworld/open_world)
|
||||
|
||||
[SteamCMD Servers](game_eggs/steamcmd_servers) These eggs use SteamCMD to install
|
||||
|
||||
* [7 Days to Die](game_eggs/steamcmd_servers/7_days_to_die)
|
||||
* [ARK: Survival Ascended](game_eggs/steamcmd_servers/ark_survival_ascended)
|
||||
* [ARK: Survival Evolved](game_eggs/steamcmd_servers/ark_survival_evolved)
|
||||
* [Arma](game_eggs/steamcmd_servers/arma)
|
||||
* [Arma 3](game_eggs/steamcmd_servers/arma/arma3)
|
||||
* [Arma Reforger](game_eggs/steamcmd_servers/arma/arma_reforger)
|
||||
* [Assetto Corsa](game_eggs/steamcmd_servers/assetto_corsa)
|
||||
* [Astro Colony](game_eggs/steamcmd_servers/astro_colony)
|
||||
* [Astroneer](game_eggs/steamcmd_servers/astroneer)
|
||||
* [Avorion](game_eggs/steamcmd_servers/avorion)
|
||||
* [Barotrauma](game_eggs/steamcmd_servers/barotrauma)
|
||||
* [BATTALION: Legacy](game_eggs/steamcmd_servers/battalion_legacy)
|
||||
* [Black Mesa](game_eggs/steamcmd_servers/black_mesa)
|
||||
* [Citadel: Forged with Fire](game_eggs/steamcmd_servers/citadel)
|
||||
* [Colony Survival](game_eggs/steamcmd_servers/colony_survival)
|
||||
* [Conan Exiles](game_eggs/steamcmd_servers/conan_exiles)
|
||||
* [Core Keeper](game_eggs/steamcmd_servers/core_keeper)
|
||||
* [Counter-Strike](game_eggs/steamcmd_servers/counter_strike/)
|
||||
* [Counter-Strike: Source](game_eggs/steamcmd_servers/counter_strike/counter_strike_source/)
|
||||
* [Craftopia](game_eggs/steamcmd_servers/craftopia)
|
||||
* [Cryofall](game_eggs/steamcmd_servers/cryofall)
|
||||
* [DayZ (Experimental)](game_eggs/steamcmd_servers/dayz-experimental)
|
||||
* [Don't Starve Together](game_eggs/steamcmd_servers/dont_starve)
|
||||
* [ECO](game_eggs/steamcmd_servers/eco)
|
||||
* [Empyrion - Galactic Survival](game_eggs/steamcmd_servers/empyrion)
|
||||
* [Fistful of Frags](game_eggs/steamcmd_servers/fof)
|
||||
* [Frozen Flame](game_eggs/steamcmd_servers/frozen_flame)
|
||||
* [Ground Branch](game_eggs/steamcmd_servers/ground_branch)
|
||||
* [HLDS Server](game_eggs/steamcmd_servers/hlds_server)
|
||||
* [HLDS Vanilla](game_eggs/steamcmd_servers/hlds_server/vanilla)
|
||||
* [ReHLDS](game_eggs/steamcmd_servers/hlds_server/rehlds)
|
||||
* [Holdfast: Nations At War](game_eggs/steamcmd_servers/holdfast)
|
||||
* [HumanitZ](game_eggs/steamcmd_servers/humanitz)
|
||||
* [Hurtworld](game_eggs/steamcmd_servers/hurtworld)
|
||||
* [Icarus](game_eggs/steamcmd_servers/icarus)
|
||||
* [Insurgency: Sandstorm](game_eggs/steamcmd_servers/insurgency_sandstorm)
|
||||
* [iosoccer](game_eggs/steamcmd_servers/iosoccer)
|
||||
* [Killing Floor 2](game_eggs/steamcmd_servers/killing_floor_2)
|
||||
* [Left 4 Dead](game_eggs/steamcmd_servers/left4dead)
|
||||
* [Left 4 Dead 2](game_eggs/steamcmd_servers/left4dead_2)
|
||||
* [Modiverse](game_eggs/steamcmd_servers/modiverse)
|
||||
* [Mordhau](game_eggs/steamcmd_servers/mordhau)
|
||||
* [Mount & Blade II: Bannerlord](game_eggs/steamcmd_servers/mount_blade_II_bannerlord)
|
||||
* [Neos VR](game_eggs/steamcmd_servers/neosvr)
|
||||
* [No More Room in Hell](game_eggs/steamcmd_servers/nmrih)
|
||||
* [No One Survived](game_eggs/steamcmd_servers/no_one_survived)
|
||||
* [Onset](game_eggs/steamcmd_servers/onset)
|
||||
* [Open Fortress](game_eggs/steamcmd_servers/open_fortress)
|
||||
* [Operation Harsh Doorstop](game_eggs/steamcmd_servers/operation_harsh_doorstop)
|
||||
* [Pavlov VR](game_eggs/steamcmd_servers/pavlov_vr)
|
||||
* [PixARK](game_eggs/steamcmd_servers/pixark)
|
||||
* [Portal Knights](game_eggs/steamcmd_servers/portal_knights)
|
||||
* [Post Scriptum](game_eggs/steamcmd_servers/post_scriptum)
|
||||
* [Project Zomboid](game_eggs/steamcmd_servers/project_zomboid)
|
||||
* [Quake Live](game_eggs/steamcmd_servers/quake_live)
|
||||
* [Resonite](game_eggs/steamcmd_servers/resonite)
|
||||
* [Rising World](game_eggs/steamcmd_servers/rising_world)
|
||||
* [Risk Of Rain 2](game_eggs/steamcmd_servers/risk_of_rain_2)
|
||||
* [Rust](game_eggs/steamcmd_servers/rust)
|
||||
@ -264,18 +310,22 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [SCP: Secret Laboratory](game_eggs/steamcmd_servers/scpsl)
|
||||
* [dedicated](game_eggs/steamcmd_servers/scpsl/dedicated)
|
||||
* [exiled](game_eggs/steamcmd_servers/scpsl/exiled)
|
||||
* [multiadmin](game_eggs/steamcmd_servers/scpsl/multiadmin)
|
||||
* [Soldat](game_eggs/steamcmd_servers/soldat)
|
||||
* [Sons of the Forest](game_eggs/steamcmd_servers/sonsoftheforest)
|
||||
* [Space Engineers](game_eggs/steamcmd_servers/space_engineers)
|
||||
* [default](game_eggs/steamcmd_servers/space_engineers/default)
|
||||
* [torch](game_eggs/steamcmd_servers/space_engineers/torch)
|
||||
* [Squad](game_eggs/steamcmd_servers/squad)
|
||||
* [Starbound](game_eggs/steamcmd_servers/starbound)
|
||||
* [Stationeers](game_eggs/steamcmd_servers/stationeers)
|
||||
* [Stationeers Vanilla](game_eggs/steamcmd_servers/stationeers/stationeers_vanilla)
|
||||
* [Stationeers BepInEx](game_eggs/steamcmd_servers/stationeers/stationeers_bepinex)
|
||||
* [Stormworks: Build and Rescue](game_eggs/steamcmd_servers/stormworks)
|
||||
* [Subnautica: Nitrox Mod](game_eggs/steamcmd_servers/subnautica_nitrox_mod)
|
||||
* [Sven Co-op](game_eggs/steamcmd_servers/svencoop)
|
||||
* [Swords 'n Magic and Stuff](game_eggs/steamcmd_servers/swords_'n_Magic_and_Stuff)
|
||||
* [The Forest](game_eggs/steamcmd_servers/the_forest)
|
||||
* [The Front](game_eggs/steamcmd_servers/thefront)
|
||||
* [The Isle](game_eggs/steamcmd_servers/the_isle)
|
||||
* [Evrima](game_eggs/steamcmd_servers/the_isle/evrima)
|
||||
* [Team Fortress 2 Classic](game_eggs/steamcmd_servers/team_fortress_2_classic)
|
||||
@ -285,10 +335,14 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
* [Euro Truck Simulator 2](game_eggs/steamcmd_servers/truck-simulator/euro-truck-simulator2/)
|
||||
* [Unturned](game_eggs/steamcmd_servers/unturned)
|
||||
* [V Rising](game_eggs/steamcmd_servers/v_rising)
|
||||
* [V Rising Vanilla](game_eggs/steamcmd_servers/v_rising/v_rising_vanilla)
|
||||
* [V Rising BepInex](game_eggs/steamcmd_servers/v_rising/v_rising_bepinex)
|
||||
* [Valheim](game_eggs/steamcmd_servers/valheim)
|
||||
* [Valheim Vanilla](game_eggs/steamcmd_servers/valheim/valheim_vanilla)
|
||||
* [Valheim BepInEx](game_eggs/steamcmd_servers/valheim/valheim_bepinex)
|
||||
* [Valheim Plus Mod](game_eggs/steamcmd_servers/valheim/valheim_plus)
|
||||
|
||||
|
||||
[Teeworlds](game_eggs/teeworlds)
|
||||
|
||||
* [Teeworlds](game_eggs/teeworlds/teeworlds)
|
||||
@ -312,6 +366,8 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
[Xonotic](game_eggs/xonotic/xonotic)
|
||||
|
||||
[YuzuEmu](game_eggs/yuzu-emu)
|
||||
|
||||
[FoundryVTT](game_eggs/FoundryVTT)
|
||||
|
||||
## [Monitoring](/monitoring/)
|
||||
@ -330,6 +386,10 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [minio](/storage/minio)
|
||||
|
||||
### SFTP Storage Share ("Empty Egg")
|
||||
|
||||
* [SFTP Storage Share](/storage/sftp_storage_share)
|
||||
|
||||
## [Software](/software/)
|
||||
|
||||
### Code Server
|
||||
@ -340,6 +400,10 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [Elasticsearch](/software/elasticsearch)
|
||||
|
||||
### Folding@Home
|
||||
|
||||
* [Folding@Home](/software/foldingathome)
|
||||
|
||||
### Gitea
|
||||
|
||||
* [Gitea](/software/gitea)
|
||||
@ -356,6 +420,10 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [languagetool](/software/languagetool)
|
||||
|
||||
### Meilisearch
|
||||
|
||||
* [Meilisearch](/software/meilisearch)
|
||||
|
||||
### Owncast
|
||||
|
||||
* [owncast](/software/owncast)
|
||||
@ -368,6 +436,10 @@ If you are reading this it looks like you are looking to add an egg to your serv
|
||||
|
||||
* [Reposilite](/software/reposilite)
|
||||
|
||||
### Uptime Kuma
|
||||
|
||||
* [Uptime Kuma](/software/uptime-kuma)
|
||||
|
||||
### Yarr
|
||||
|
||||
* [yarr](/software/yarr)
|
||||
|
@ -2,6 +2,11 @@
|
||||
|
||||
## Some of these bots support other services but are primarily Discord bots
|
||||
|
||||
### [Aoede](aoede)
|
||||
|
||||
[codetheweb/aoede](https://github.com/codetheweb/aoede)
|
||||
🎧 a self-hosted Spotify → Discord music bot
|
||||
|
||||
### [ATLauncher Discord Bot](atlbot)
|
||||
|
||||
[ATLauncher/discord-bot](https://github.com/ATLauncher/discord-bot)
|
||||
@ -22,11 +27,21 @@ A very clumsy python bot for discord
|
||||
[fragforce/fragbot](https://github.com/fragforce/fragbot)
|
||||
The bot that runs as the fragforce `@Fragbot` offering looking-for-group services for now
|
||||
|
||||
### [Game Server Watcher](game-server-watcher)
|
||||
|
||||
[a-sync/game-server-watcher](https://github.com/a-sync/game-server-watcher)
|
||||
A simple discord/telegram/slack bot that can be hosted on a free service to monitor your game servers and players in style. 😎
|
||||
|
||||
### [JMusicBot](jmusicbot)
|
||||
|
||||
[jagrosh/MusicBot](https://github.com/jagrosh/MusicBot)
|
||||
A Discord music bot that's easy to set up and run yourself!
|
||||
|
||||
### [Muse](muse)
|
||||
|
||||
[codetheweb/muse](https://github.com/codetheweb/muse)
|
||||
🎧 a self-hosted midwestern Discord music bot that doesn't suck
|
||||
|
||||
### [parkertron](parkertron)
|
||||
|
||||
[parkervcp/parkertron](https://github.com/parkervcp/parkertron)
|
||||
@ -43,6 +58,11 @@ Was used to test python services.
|
||||
[Cog-Creators/Red-DiscordBot](https://github.com/Cog-Creators/Red-DiscordBot)
|
||||
A multifunction Discord bot
|
||||
|
||||
### [Ree6](ree6)
|
||||
|
||||
[Ree6-Applications](https://github.com/Ree6-Applications/Ree6)
|
||||
All-in-one, open source and 100% free Discord Bot!
|
||||
|
||||
### [SinusBot](sinusbot)
|
||||
|
||||
[SinusBot](https://www.sinusbot.com/)
|
||||
|
28
bots/discord/aoede/README.md
Normal file
28
bots/discord/aoede/README.md
Normal file
@ -0,0 +1,28 @@
|
||||
# Aoede
|
||||
|
||||
### Authors / Contributors
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<a href="https://github.com/cleme29">
|
||||
<img src="https://avatars.githubusercontent.com/u/8092733" width="50px;" alt=""/><br /><sub><b>cleme29</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=cleme29" title="Codes">💻</a>
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=cleme29" title="Maintains">🔨</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<!-- markdownlint-enable -->
|
||||
<!-- prettier-ignore-end -->
|
||||
Special thanks to Red-Thirten for providing most of the installation script and to TubaApollo & QuintenQVD0 for the Muse egg that helped build most of this one !
|
||||
|
||||
## Their [Github](https://github.com/codetheweb/aoede)
|
||||
|
||||
Aoede is a Discord music bot that directly streams from Spotify to Discord. The only interface is Spotify itself.
|
||||
|
||||
## Server Ports
|
||||
|
||||
There are no ports required for the Aoede bot
|
92
bots/discord/aoede/egg-aoede.json
Normal file
92
bots/discord/aoede/egg-aoede.json
Normal file
@ -0,0 +1,92 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-12-12T20:05:05+00:00",
|
||||
"name": "Aoede",
|
||||
"author": "contact@bldy.ovh",
|
||||
"description": "Aoede is a Discord music bot that directly streams from Spotify to Discord. The only interface is Spotify itself.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:ubuntu": "ghcr.io\/parkervcp\/yolks:ubuntu"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/aoede",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Invite me with\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "## Credits: Red-Thirten (https:\/\/github.com\/lilkingjr1) for providing most of the installation script\r\n## Credits to TubaApollo & QuintenQVD0 for the Muse egg that helped build most of this one\r\napt-get update\r\napt-get install git curl jq cmake -y -qq\r\n\r\nGITHUB_PACKAGE=\"codetheweb\/aoede\"\r\n\r\n# Find GitHub download URL for Muse for specified version\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_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tarball_url')\r\n else\r\n echo -e \"Could not find version \\\"${VERSION}\\\" of Muse. Defaulting to latest release...\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\r\n fi\r\nfi\r\n\r\n# Download Aoede from GitHub & Extract\r\ncd \/mnt\/server\r\necho -e \"Downloading Aoede from GitHub...\"\r\ncurl -L ${DOWNLOAD_URL} -o aoede.tar.gz\r\necho -e \"Extracting Aoede from tarball...\"\r\ntar -xvzf aoede.tar.gz --strip-components=1\r\nrm aoede.tar.gz\r\n\r\n# Verify and clean up Aoede installation\r\nif [ ! -f Cargo.toml ]; then\r\n echo -e \"\\nFailed to download release: ${DOWNLOAD_URL}\\n\"\r\n exit 1\r\nfi\r\nrm -rf .dockerignore Dockerfile .gitignore .github\/\r\ncargo build --release\r\nmv target\/release\/aoede .\r\ncargo clean\r\n\r\n\r\necho -e \"\\nAoede Successfully Installed!\"",
|
||||
"container": "rust:1.74-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Token",
|
||||
"description": "Discord Bot Token",
|
||||
"env_variable": "DISCORD_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Username",
|
||||
"description": "Spotify Username",
|
||||
"env_variable": "SPOTIFY_USERNAME",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Password",
|
||||
"description": "Spotify Password",
|
||||
"env_variable": "SPOTIFY_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Discord User ID",
|
||||
"description": "Discord user ID of the user you want Aoede to follow",
|
||||
"env_variable": "DISCORD_USER_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Autoplay",
|
||||
"description": "Autoplay similar songs when your music ends \r\nValue : true\/false",
|
||||
"env_variable": "SPOTIFY_BOT_AUTOPLAY",
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:true,false",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "Specify a version, for example: \"v0.7.0\"\r\nFor the latest version, type \"latest\"",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -4,9 +4,6 @@
|
||||
|
||||
Bastion is a multi-purpose Discord Bot that can help you automate most tasks in your server, from administration and moderation to keeping the members active through various incentives, games and other fun activities.
|
||||
|
||||
## Install notes
|
||||
|
||||
There will be a tar error on first install. You can safly ignore this.
|
||||
|
||||
## Running the bot
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-12-15T16:23:16+01:00",
|
||||
"exported_at": "2023-03-29T10:33:50+02:00",
|
||||
"name": "Bastion",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Bastion is a multi-purpose Discord Bot that can help you automate most tasks in your server, from administration and moderation to keeping the members active through various incentives, games and other fun activities",
|
||||
@ -22,7 +22,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Bastion Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n## Move to install folder\r\napt update\r\napt install -y build-essential libtool python git tar\r\n\r\nmkdir -p \/mnt\/server\/\r\ncd \/mnt\/server\/\r\n\r\nif [ -d \"\/mnt\/server\/mongodb\" ]\r\nthen\r\n cd \/mnt\/server\/\r\n echo \"backing up mongodb\"\r\n REINSTALL=true\r\n tar -czf mongodb_backup.tar.gz mongodb\/\r\n mv mongodb_backup.tar.gz \/tmp\r\nfi\r\n\r\ntar -czf mongodb_back.tar.gz mongodb\/\r\nmv mongodb_back.tar.gz \/tmp\r\n\r\ncd \/mnt\/server\r\nrm -rf * .git\/ .github\/ .env.example .eslintrc.yml .gitattributes .gitignore .npm\/\r\n\r\n\r\n## Clone repo\r\necho \"cloning Bastion bot\"\r\ngit clone -q --depth 1 https:\/\/github.com\/TheBastionBot\/Bastion.git .\/\r\n\r\necho \"npm install --no-package-lock\"\r\nnpm install --no-package-lock\r\necho \"npm run build\"\r\nnpm run build\r\n\r\n## Move config files.\r\nmv settings.example.yaml settings.yaml\r\nrm bastion.cmd .env.example bastion.sh\r\n\r\n\r\nmkdir mongodb\/\r\nif [ \"$REINSTALL\" == \"true\" ]\r\nthen\r\n cd \/mnt\/server\r\n echo \"reinstall\"\r\n mv \/tmp\/mongodb_backup.tar.gz \/mnt\/server\r\n tar xf mongodb_backup.tar.gz\r\n rm mongodb_backup.tar.gz\r\nelse\r\n echo \"fresh install\"\r\nfi\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"script": "#!\/bin\/bash\r\n# Bastion Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n## Move to install folder\r\napt update\r\napt install -y build-essential libtool python3 git tar\r\n\r\n\r\nmkdir -p \/mnt\/server\/\r\ncd \/mnt\/server\/\r\n\r\nif [ -d \"\/mnt\/server\/mongodb\" ]\r\nthen\r\n cd \/mnt\/server\/\r\n echo \"backing up mongodb\"\r\n REINSTALL=true\r\n tar -czf mongodb_backup.tar.gz mongodb\/\r\n mv mongodb_backup.tar.gz \/tmp\r\nfi\r\n\r\ncd \/mnt\/server\r\nrm -rf * .git\/ .github\/ .env.example .eslintrc.yml .gitattributes .gitignore .npm\/\r\n\r\n\r\n## Clone repo\r\necho \"cloning Bastion bot\"\r\ngit clone -q --depth 1 https:\/\/github.com\/TheBastionBot\/Bastion.git .\/\r\n\r\necho \"updating npm\"\r\nnpm install -g npm@latest\r\necho \"npm install --no-package-lock\"\r\nnpm install --no-package-lock\r\necho \"npm run build\"\r\nnpm run build\r\n\r\n## Move config files.\r\nmv settings.example.yaml settings.yaml\r\nrm -rf bastion.cmd .env.example bastion.sh scrips\/\r\n\r\n\r\nmkdir -p mongodb\/\r\nif [ \"$REINSTALL\" == \"true\" ]\r\nthen\r\n cd \/mnt\/server\r\n echo \"reinstall\"\r\n mv \/tmp\/mongodb_backup.tar.gz \/mnt\/server\r\n tar xf mongodb_backup.tar.gz\r\n rm mongodb_backup.tar.gz\r\nelse\r\n echo \"fresh install\"\r\nfi\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "node:18-bullseye",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -31,7 +31,7 @@
|
||||
{
|
||||
"name": "Bot Token",
|
||||
"description": "The Bot Token you get from https:\/\/discordapp.com\/developers\/applications\/",
|
||||
"env_variable": "TESSERACT_BOT_TOKEN",
|
||||
"env_variable": "BOT_TOKEN",
|
||||
"default_value": "GETABOTTOKEN",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
@ -41,7 +41,7 @@
|
||||
{
|
||||
"name": "Bot Client ID",
|
||||
"description": "The Bot ID you get from https:\/\/discordapp.com\/developers\/applications\/",
|
||||
"env_variable": "TESSERACT_BOT_ID",
|
||||
"env_variable": "BOT_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
@ -51,7 +51,7 @@
|
||||
{
|
||||
"name": "Mongo URL",
|
||||
"description": "use `mongodb:\/\/127.0.0.1:27017\/bastion` for using the build in mongodb server",
|
||||
"env_variable": "TESSERACT_MONGO_URI",
|
||||
"env_variable": "MONGO_URI",
|
||||
"default_value": "mongodb:\/\/127.0.0.1:27017\/bastion",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
@ -81,7 +81,7 @@
|
||||
{
|
||||
"name": "Safe Mode",
|
||||
"description": "When enabled, this disables usage of unsafe commands like `exec` and `eval`.",
|
||||
"env_variable": "TESSERACT_UNSAFE_MODE",
|
||||
"env_variable": "UNSAFE_MODE",
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
|
@ -1,5 +1,8 @@
|
||||
# Dynamica
|
||||
|
||||
### Their [Github](https://github.com/dynamicabot/dynamica)
|
||||
## Their [Github](https://github.com/dynamicabot/dynamica-v2)
|
||||
|
||||
This is a discord bot for dynamically managing voice channels.
|
||||
An easy-to-use dynamic voice channel bot.
|
||||
|
||||
## Port
|
||||
You will manual have to change the web port in the src/main.ts on line 24.
|
@ -1,29 +1,29 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-12-13T10:34:52+11:00",
|
||||
"exported_at": "2023-08-18T17:01:43+02:00",
|
||||
"name": "Dynamica",
|
||||
"author": "sebastian.pietschner@gmail.com",
|
||||
"description": "The dynamica discord bot",
|
||||
"description": "An easy-to-use dynamic voice channel bot.",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io\/parkervcp\/yolks:nodejs_16"
|
||||
],
|
||||
"docker_images": {
|
||||
"Nodejs 18": "ghcr.io\/parkervcp\/yolks:nodejs_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "yarn deploy && yarn prisma migrate deploy && yarn start",
|
||||
"startup": "npx prisma migrate deploy && yarn start",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Ready! Logged in as \"\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Bot logged in as \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "apt-get update\r\napt-get install openssl git -y -qq\r\ncd \/mnt\/server\r\nif [[ -d .git\/ ]]; then\r\n git pull\r\nelse\r\n git clone https:\/\/github.com\/dynamicabot\/dynamica.git .;\r\nfi;\r\nyarn install --frozen-lockfile",
|
||||
"container": "node:lts-buster-slim",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt -y install tar curl jq git\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nGITHUB_PACKAGE=\"DynamicaBot\/Dynamica-V2\"\r\n\r\n# Find GitHub download URL for Muse for specified version\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_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tarball_url')\r\n else\r\n echo -e \"Could not find version \\\"${VERSION}\\\" of Muse. Defaulting to latest release...\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\r\n fi\r\nfi\r\n\r\ncurl -sSL -o dynamica.tar.gz ${DOWNLOAD_URL}\r\ntar xvf dynamica.tar.gz --strip-components=1\r\nrm dynamica.tar.gz\r\n\r\n#curl -sSL -o tsconfig.json https:\/\/pteropaste.com\/xqhjja443pbm\r\n\r\nyarn add tsup --dev\r\nyarn install --frozen-lockfile\r\n\r\nyarn generate\r\nyarn build\r\n\r\nrm -rf .github\/ .vscode\/ Dockerfile partial.Dockerfile entrypoint.sh dynamica-egg.json\r\n\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "node:18-bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -35,7 +35,8 @@
|
||||
"default_value": "file:\/home\/container\/dynamica\/db.sqlite",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string"
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Token",
|
||||
@ -44,16 +45,58 @@
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string"
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Client ID",
|
||||
"description": "The client ID of your discord bot.",
|
||||
"env_variable": "CLIENT_ID",
|
||||
"name": "Guild ID",
|
||||
"description": "Add only if using the bot in a single guild.",
|
||||
"env_variable": "GUILD_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|size:18"
|
||||
"rules": "string|nullable",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Sentry DSN",
|
||||
"description": "The DSN for Sentry.",
|
||||
"env_variable": "SENTRY_DSN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|nullable",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "MQTT URL",
|
||||
"description": "The URL for the MQTT broker.",
|
||||
"env_variable": "MQTT_URL",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|nullable",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "MQTT Username",
|
||||
"description": "The username for the MQTT broker.",
|
||||
"env_variable": "MQTT_USER",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|nullable",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "MQTT Password",
|
||||
"description": "The password for the MQTT broker.",
|
||||
"env_variable": "MQTT_PASS",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|nullable",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
22
bots/discord/game-server-watcher/README.md
Normal file
22
bots/discord/game-server-watcher/README.md
Normal file
@ -0,0 +1,22 @@
|
||||
# Game Server Watcher
|
||||
|
||||
## From [Github](https://github.com/a-sync/game-server-watcher#readme)
|
||||
A simple discord/telegram/slack bot that can be hosted on a free service to monitor your game servers and players in style. 😎
|
||||
|
||||
## Screenshots
|
||||
<img src="https://user-images.githubusercontent.com/14183614/162092529-e1645b44-2650-4893-8123-7ba187b1f51c.png" height="280"> <img src="https://user-images.githubusercontent.com/14183614/162092488-f28bd60c-88bf-4b1e-a31e-d7dca51d8c28.png" height="280"> <img src="https://github.com/a-sync/game-server-watcher/assets/14183614/0461ad76-bb13-468c-a7b3-437d6a3cea63" height="280"> <img src="https://github.com/a-sync/game-server-watcher/assets/14183614/ee0ef0de-83bc-42ae-8f64-62f481f6ba8f" height="280">
|
||||
|
||||
## Running the bot
|
||||
Refer to the wiki on how to acquire tokens for:
|
||||
* [steam](https://github.com/a-sync/game-server-watcher/wiki/Steam-Web-API-key)
|
||||
* [discord](https://github.com/a-sync/game-server-watcher/wiki/Discord-bot-token)
|
||||
* [telegram](https://github.com/a-sync/game-server-watcher/wiki/Telegram-bot-token)
|
||||
* [slack](https://github.com/a-sync/game-server-watcher/wiki/Slack-bot-token)
|
||||
|
||||
## Server Ports
|
||||
GSW Control Panel requires one port for http traffic.
|
||||
(It can be any port.)
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Web | 8081 |
|
122
bots/discord/game-server-watcher/egg-game-server-watcher.json
Normal file
122
bots/discord/game-server-watcher/egg-game-server-watcher.json
Normal file
@ -0,0 +1,122 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-12-06T09:05:57+00:00",
|
||||
"name": "Game Server Watcher",
|
||||
"author": "a-sync@devs.space",
|
||||
"description": "A simple discord\/telegram\/slack bot that can be hosted on a free service to monitor your game servers and players in style. \ud83d\ude0e",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Node.js 20": "ghcr.io\/parkervcp\/yolks:nodejs_20"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "env PORT={{SERVER_PORT}} \/usr\/local\/bin\/node \/home\/container\/dist\/server.js",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"starting loop...\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\napt-get update && apt-get install ca-certificates git -yq --no-install-suggests --no-install-recommends --allow-downgrades --allow-remove-essential --allow-change-held-packages\r\ncd \/mnt\/server\r\ngit config --global --add safe.directory \/mnt\/server\r\ngit clone https:\/\/github.com\/a-sync\/game-server-watcher.git . || git pull\r\nnpm install && npm update gamedig && npm run build\r\nnpm prune --omit=dev",
|
||||
"container": "node:20-bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "SECRET",
|
||||
"description": "Admin secret",
|
||||
"env_variable": "SECRET",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|min:8|max:255",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "DATA_PATH",
|
||||
"description": "Writable folder for data storage",
|
||||
"env_variable": "DATA_PATH",
|
||||
"default_value": ".\/data\/",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|min:1|max:255",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "REFRESH_TIME_MINUTES",
|
||||
"description": "Game server info refresh interval in minutes",
|
||||
"env_variable": "REFRESH_TIME_MINUTES",
|
||||
"default_value": "2",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer|min:1",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "DISCORD_BOT_TOKEN",
|
||||
"description": "Discord bot token",
|
||||
"env_variable": "DISCORD_BOT_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "TELEGRAM_BOT_TOKEN",
|
||||
"description": "Telegram bot token",
|
||||
"env_variable": "TELEGRAM_BOT_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "STEAM_WEB_API_KEY",
|
||||
"description": "Steam web API key",
|
||||
"env_variable": "STEAM_WEB_API_KEY",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Debug Mode",
|
||||
"description": "Enable or disable debug mode.",
|
||||
"env_variable": "DBG",
|
||||
"default_value": "0",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|in:0,1",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "SLACK_BOT_TOKEN",
|
||||
"description": "Slack bot token",
|
||||
"env_variable": "SLACK_BOT_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "SLACK_APP_TOKEN",
|
||||
"description": "Slack app token",
|
||||
"env_variable": "SLACK_APP_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,16 +1,17 @@
|
||||
{
|
||||
"_comment": "Pterodactyl JMusicBot Egg ~ parkervcp, Software-Noob, Proxymiity, and Red-Thirten ~ 2021-11-29",
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-09-20T21:17:10+02:00",
|
||||
"name": "JMusicBot",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A Discord music bot that's easy to set up and run yourself!",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16"
|
||||
],
|
||||
"docker_images": {
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17": "ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Dnogui=true -jar JMusicBot.jar",
|
||||
"config": {
|
||||
@ -21,8 +22,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n## this is a simple script to use the github API for release versions.\r\n## this requires the egg has a variable for GITHUB_PACKAGE and VERSION\r\n## this supports using oauth\/personal access tokens via GITHUB_USER and GITHUB_OAUTH_TOKEN (both are required.)\r\n## if you are getting hit with GitHub API limit issues then you need to have the user and token set.\r\n\r\napt update\r\napt install -y jq curl\r\n\r\nGITHUB_PACKAGE=\"jagrosh\/MusicBot\"\r\nCONFIG_LINK=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/bots\/discord\/jmusicbot\/config.txt\"\r\nPLAYLIST_LINK=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/bots\/discord\/jmusicbot\/example_playlist.txt\"\r\n\r\nif [ -z \"${GITHUB_USER}\" ] && [ -z \"${GITHUB_OAUTH_TOKEN}\" ] ; then\r\n echo -e \"No Github user set. Using anonymous 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)\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 config)\r\n else\r\n echo -e \"Defaulting to the 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## JMusicBot Setup\r\n[ ! -d \/mnt\/server ] && mkdir \/mnt\/server\r\ncd \/mnt\/server\r\necho -e \"\\nInstalling\/Updating JMusicBot...\\n\"\r\n\r\nif [ -f JMusicBot.jar ]; then\r\n echo -e \"Updating JMusicBot.jar to latest version...\"\r\n echo -e '\\t(Old version can be found at \"JMusicBot.jar-old\")'\r\n mv -f JMusicBot.jar JMusicBot.jar-old\r\nfi\r\necho -e \"Running: curl -sSLo JMusicBot.jar ${DOWNLOAD_LINK}\\n\"\r\ncurl -sSLo JMusicBot.jar ${DOWNLOAD_LINK}\r\n\r\nif [ -f config.txt ]; then\r\n echo -e \"Updating config.txt to latest version...\"\r\n echo -e '\\t(Old version can be found at \"config.txt-old\")'\r\n mv -f config.txt config.txt-old\r\nfi\r\necho -e \"Running: curl -sSLo config.txt ${CONFIG_LINK}\\n\"\r\ncurl -sSLo config.txt ${CONFIG_LINK}\r\n\r\n[ ! -d Playlists ] && mkdir Playlists\r\ncd Playlists\r\nif [ -f example_playlist.txt ]; then\r\n echo -e \"example_playlist.txt already exists. Skipping default download.\"\r\nelse\r\n echo -e \"example_playlist.txt not found. Downloading default example_playlist...\"\r\n echo -e \"Running: curl -sSLo example_playlist.txt ${PLAYLIST_LINK}\"\r\n curl -sSLo example_playlist.txt ${PLAYLIST_LINK}\r\nfi\r\n\r\necho -e \"\\nJMusicBot Successfully Installed!\"",
|
||||
"container": "debian:buster-slim",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y jq curl\r\n\r\nCONFIG_LINK=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/bots\/discord\/jmusicbot\/config.txt\"\r\nPLAYLIST_LINK=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/bots\/discord\/jmusicbot\/example_playlist.txt\"\r\n\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\/jagrosh\/MusicBot\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/jagrosh\/MusicBot\/releases\")\r\nMATCH=JMusicBot\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\n## JMusicBot Setup\r\n[ ! -d \/mnt\/server ] && mkdir \/mnt\/server\r\ncd \/mnt\/server\r\necho -e \"\\nInstalling\/Updating JMusicBot...\\n\"\r\n\r\nif [ -f JMusicBot.jar ]; then\r\n echo -e \"Updating JMusicBot.jar to latest version...\"\r\n echo -e '\\t(Old version can be found at \"JMusicBot.jar-old\")'\r\n mv -f JMusicBot.jar JMusicBot.jar-old\r\nfi\r\n\r\necho -e \"Running: curl -sSLo JMusicBot.jar ${DOWNLOAD_URL}\\n\"\r\ncurl -sSLo JMusicBot.jar ${DOWNLOAD_URL}\r\n\r\nif [ -f config.txt ]; then\r\n echo -e \"Updating config.txt to latest version...\"\r\n echo -e '\\t(Old version can be found at \"config.txt-old\")'\r\n mv -f config.txt config.txt-old\r\nfi\r\necho -e \"Running: curl -sSLo config.txt ${CONFIG_LINK}\\n\"\r\ncurl -sSLo config.txt ${CONFIG_LINK}\r\n\r\n[ ! -d Playlists ] && mkdir Playlists\r\ncd Playlists\r\nif [ -f example_playlist.txt ]; then\r\n echo -e \"example_playlist.txt already exists. Skipping default download.\"\r\nelse\r\n echo -e \"example_playlist.txt not found. Downloading default example_playlist...\"\r\n echo -e \"Running: curl -sSLo example_playlist.txt ${PLAYLIST_LINK}\"\r\n curl -sSLo example_playlist.txt ${PLAYLIST_LINK}\r\nfi\r\n\r\necho -e \"\\nJMusicBot Successfully Installed!\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "\/bin\/bash"
|
||||
}
|
||||
},
|
||||
@ -31,10 +32,11 @@
|
||||
"name": "[REQUIRED] Discord Bot Token",
|
||||
"description": "The token for your Discord bot. Learn how to obtain a token and configure your bot application properly here: https:\/\/jmusicbot.com\/getting-a-bot-token\/",
|
||||
"env_variable": "BOT_TOKEN",
|
||||
"default_value": "You need to get a token",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string"
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "[REQUIRED] Bot Owner ID",
|
||||
@ -43,7 +45,8 @@
|
||||
"default_value": "Change This To Your Discord User ID",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|digits:18"
|
||||
"rules": "required|digits_between:17,18",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Prefix",
|
||||
@ -52,7 +55,8 @@
|
||||
"default_value": "@mention",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
"rules": "nullable|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Alternate Prefix",
|
||||
@ -61,7 +65,8 @@
|
||||
"default_value": "NONE",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Default Game",
|
||||
@ -70,7 +75,8 @@
|
||||
"default_value": "DEFAULT",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
"rules": "nullable|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Default Status",
|
||||
@ -79,7 +85,8 @@
|
||||
"default_value": "ONLINE",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:ONLINE,IDLE,DND,INVISIBLE"
|
||||
"rules": "required|string|in:ONLINE,IDLE,DND,INVISIBLE",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Show Song in Status",
|
||||
@ -88,7 +95,8 @@
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:true,false"
|
||||
"rules": "required|string|in:true,false",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Show Images for \"Now Playing\"",
|
||||
@ -97,7 +105,8 @@
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:true,false"
|
||||
"rules": "required|string|in:true,false",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Stay In Channel",
|
||||
@ -106,7 +115,8 @@
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:true,false"
|
||||
"rules": "required|string|in:true,false",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Alone Time Until Disconnect",
|
||||
@ -115,7 +125,8 @@
|
||||
"default_value": "0",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer"
|
||||
"rules": "required|integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Bot Max Song Length",
|
||||
@ -124,7 +135,8 @@
|
||||
"default_value": "0",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer"
|
||||
"rules": "required|integer",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
43
bots/discord/muse/README.md
Normal file
43
bots/discord/muse/README.md
Normal file
@ -0,0 +1,43 @@
|
||||
# Muse
|
||||
|
||||
### Authors / Contributors
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<a href="https://github.com/TubaApollo">
|
||||
<img src="https://avatars.githubusercontent.com/u/86665265" width="50px;" alt=""/><br /><sub><b>TubaApollo</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=TubaApollo" title="Codes">💻</a>
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=TubaApollo" title="Maintains">🔨</a>
|
||||
</td>
|
||||
<td align="center">
|
||||
<a href="https://github.com/lilkingjr1">
|
||||
<img src="https://avatars.githubusercontent.com/u/4533989" width="50px;" alt=""/><br /><sub><b>Red-Thirten</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=lilkingjr1" title="Codes">💻</a>
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=lilkingjr1" title="Contributor">💡</a>
|
||||
</td>
|
||||
<td align="center">
|
||||
<a href="https://github.com/QuintenQVD0">
|
||||
<img src="https://avatars.githubusercontent.com/u/67589015" width="50px;" alt=""/><br /><sub><b>QuintenQVD0</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=QuintenQVD0" title="Codes">💻</a>
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=QuintenQVD0" title="Contributor">💡</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<!-- markdownlint-enable -->
|
||||
<!-- prettier-ignore-end -->
|
||||
|
||||
## Their [Github](https://github.com/codetheweb/muse)
|
||||
|
||||
Muse is a highly-opinionated midwestern self-hosted Discord music bot that doesn't suck.
|
||||
|
||||
## Server Ports
|
||||
|
||||
There are no ports required for the Muse bot
|
92
bots/discord/muse/egg-muse.json
Normal file
92
bots/discord/muse/egg-muse.json
Normal file
@ -0,0 +1,92 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-09-20T20:25:51+02:00",
|
||||
"name": "Muse",
|
||||
"author": "hello@apollo.moe",
|
||||
"description": "\ud83c\udfa7 a self-hosted midwestern Discord music bot that doesn't suck",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:nodejs_16": "ghcr.io\/parkervcp\/yolks:nodejs_16"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "npm start",
|
||||
"config": {
|
||||
"files": "{\r\n \".env\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"DISCORD_TOKEN\": \"DISCORD_TOKEN={{env.discord_token}}\",\r\n \"DATA_DIR\": \"DATA_DIR={{env.data_dir}}\",\r\n \"YOUTUBE_API_KEY\": \"YOUTUBE_API_KEY={{env.api_key}}\",\r\n \"SPOTIFY_CLIENT_ID\": \"SPOTIFY_CLIENT_ID={{env.client_id}}\",\r\n \"SPOTIFY_CLIENT_SECRET\": \"SPOTIFY_CLIENT_SECRET={{env.client_secret}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Running version \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "## Credits: Red-Thirten (https:\/\/github.com\/lilkingjr1) for providing most of the installation script\r\napt-get update\r\napt-get install git curl jq -y -qq\r\n\r\nGITHUB_PACKAGE=\"codetheweb\/muse\"\r\n\r\n# Find GitHub download URL for Muse for specified version\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_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tarball_url')\r\n else\r\n echo -e \"Could not find version \\\"${VERSION}\\\" of Muse. Defaulting to latest release...\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\r\n fi\r\nfi\r\n\r\n# Download Muse from GitHub & Extract\r\ncd \/mnt\/server\r\necho -e \"Downloading Muse from GitHub...\"\r\ncurl -L ${DOWNLOAD_URL} -o muse.tar.gz\r\necho -e \"Extracting Muse from tarball...\"\r\ntar -xvzf muse.tar.gz --strip-components=1\r\nrm muse.tar.gz\r\n\r\n# Verify and clean up Muse installation\r\nif [ ! -f .env.example ]; then\r\n echo -e \"\\nFailed to download release: ${DOWNLOAD_URL}\\n\"\r\n exit 1\r\nfi\r\ncp .env.example .env\r\nrm -rf .dockerignore Dockerfile .gitignore .github\/\r\nyarn install --prod #--frozen-lockfile\r\n#sed -i 's\/of filterWrapper[)]\/of filterWrapper|| [])\/g' \/mnt\/server\/node_modules\/ytsr\/lib\/utils.js\r\n\r\necho -e \"\\nMuse Successfully Installed!\"",
|
||||
"container": "node:lts-bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "TOKEN",
|
||||
"description": "Discord Bot Token",
|
||||
"env_variable": "discord_token",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Data directory",
|
||||
"description": "Default: .\/data",
|
||||
"env_variable": "data_dir",
|
||||
"default_value": ".\/data",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "YouTube API Key",
|
||||
"description": "You can get it here: https:\/\/console.developers.google.com\/",
|
||||
"env_variable": "api_key",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Spotify Client ID",
|
||||
"description": "You can get it here: https:\/\/developer.spotify.com\/dashboard\/applications",
|
||||
"env_variable": "client_id",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Spotify Client Secret",
|
||||
"description": "You can get it here: https:\/\/developer.spotify.com\/dashboard\/applications",
|
||||
"env_variable": "client_secret",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "Specify a version, for example: \"v2.4.1\"\r\nFor the latest version, type \"latest\"",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,25 +1,30 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2020-04-03T12:50:58-04:00",
|
||||
"exported_at": "2023-02-19T13:09:14+01:00",
|
||||
"name": "parkertron",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "The stupid chatbot parkertron by Parkervcp.\r\n\r\nhttps:\/\/github.com\/parkervcp\/parkertron",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:bot_parkertron",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:bot_parkertron": "ghcr.io\/parkervcp\/yolks:bot_parkertron"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/parkertron",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Bot is now running\"\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "shutdown"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# parkertron Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nexport GOPATH=$HOME\/go\r\nexport PATH=$GOROOT\/bin:$GOPATH\/bin:$PATH\r\n\r\ncd\r\n\r\napk add --no-cache --update git curl lua-stdlib lua musl-dev g++ libc-dev tesseract-ocr tesseract-ocr-dev\r\n\r\necho \"pulling the parkertron pterodactyl branch\"\r\n\r\ngit clone https:\/\/github.com\/parkervcp\/parkertron.git\r\n\r\ncd parkertron\/\r\n\r\ngo mod download\r\n\r\necho \"building parkertron\"\r\n\r\ngo build \r\n\r\necho \"build complete copying parkertron and example configs over\"\r\n\r\ncp parkertron \/mnt\/server\/\r\n\r\nif [ -d \/mnt\/server\/configs ]; then\r\n echo \"Files exist already\"\r\nelse\r\n cp -r \/root\/parkertron\/configs\/ \/mnt\/server\/\r\nfi\r\n\r\necho \"Install complete. If you watched this. Congrats.\"",
|
||||
"container": "golang:1.14-alpine",
|
||||
"entrypoint": "ash"
|
||||
"script": "#!\/bin\/bash\r\n# parkertron Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nexport GOPATH=$HOME\/go\r\nexport PATH=$GOROOT\/bin:$GOPATH\/bin:$PATH\r\n\r\ncd\r\n\r\napt update\r\n\r\napt install -y tesseract-ocr tesseract-ocr-eng libtesseract-dev\r\n\r\necho \"pulling the parkertron git repo\"\r\n\r\ngit clone https:\/\/github.com\/parkervcp\/parkertron.git\r\n\r\ncd parkertron\/\r\n\r\necho \"building parkertron\"\r\n\r\ngo build \r\n\r\necho \"build complete copying parkertron and example configs over\"\r\n\r\ncp parkertron \/mnt\/server\/\r\n\r\nif [ -d \/mnt\/server\/configs ]; then\r\n echo \"Files exist already\"\r\nelse\r\n cp -r \/root\/parkertron\/configs\/ \/mnt\/server\/\r\nfi\r\n\r\necho \"Install complete. If you watched this. Congrats.\"",
|
||||
"container": "golang:1.19-bullseye",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-11-06T11:14:23+01:00",
|
||||
"exported_at": "2023-08-05T10:50:21+02:00",
|
||||
"name": "Red",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A multifunction Discord bot \r\n\r\nhttps:\/\/github.com\/Cog-Creators\/Red-DiscordBot",
|
||||
@ -22,8 +22,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# red-discordbot install script\r\n\r\n## install deps\r\nmkdir -p \/usr\/share\/man\/man1\r\napt update\r\napt -y install git ca-certificates dnsutils iproute2 make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev libgdbm-dev uuid-dev git openjdk-11-jre\r\n\r\n## config folder layouts\r\necho -e \"generating config folder layout\"\r\nmkdir -p \/mnt\/server\/.config\/{Red-DiscordBot,share}\/ \/mnt\/server\/.local\/share\/Red-DiscordBot\/data\/pterodactyl\/\r\ncd \/mnt\/server\/\r\nln -s .local\/share\/Red-DiscordBot\/data\/pterodactyl\/ .\/configs\r\n\r\n## install red\r\necho -e \"add container user to install\"\r\nln -s \/mnt\/server\/ \/home\/container\r\nuseradd -m -d \/home\/container container\r\nchown -R container \/mnt\/server\/\r\necho -e \"install red locally as user\"\r\nsu - container -c 'pip install -U Red-DiscordBot'\r\n\r\n## ensure the config is in place if it doesn't exist\r\nif [ ! -f \/mnt\/server\/.config\/Red-DiscordBot\/config.json ]; then\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/bots\/discord\/redbot\/config.json -o \/mnt\/server\/.config\/Red-DiscordBot\/config.json\r\nfi\r\n\r\necho -e \"install finished\"",
|
||||
"container": "python:3.8-slim",
|
||||
"script": "#!\/bin\/bash\r\n# red-discordbot install script\r\n\r\n## install deps\r\nmkdir -p \/usr\/share\/man\/man1\r\napt update\r\napt -y install git ca-certificates dnsutils iproute2 make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev libgdbm-dev uuid-dev git openjdk-17-jre-headless\r\n\r\n## config folder layouts\r\necho -e \"generating config folder layout\"\r\nmkdir -p \/mnt\/server\/.config\/{Red-DiscordBot,share}\/ \/mnt\/server\/.local\/share\/Red-DiscordBot\/data\/pterodactyl\/\r\ncd \/mnt\/server\/\r\nln -s .local\/share\/Red-DiscordBot\/data\/pterodactyl\/ .\/configs\r\n\r\n## install red\r\necho -e \"add container user to install\"\r\nln -s \/mnt\/server\/ \/home\/container\r\nuseradd -m -d \/home\/container container\r\nchown -R container \/mnt\/server\/\r\necho -e \"install red locally as user\"\r\npip install --upgrade pip\r\nsu - container -c 'pip install -U pip wheel'\r\nsu - container -c 'pip install -U Red-DiscordBot'\r\n\r\n## ensure the config is in place if it doesn't exist\r\nif [ ! -f \/mnt\/server\/.config\/Red-DiscordBot\/config.json ]; then\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/bots\/discord\/redbot\/config.json -o \/mnt\/server\/.config\/Red-DiscordBot\/config.json\r\nfi\r\n\r\necho \"-------------------------------------------------------\"\r\necho \"Installation completed\"\r\necho \"-------------------------------------------------------\"",
|
||||
"container": "python:3.11-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -47,6 +47,16 @@
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Owner",
|
||||
"description": "Owner of the Bot to use special commands",
|
||||
"env_variable": "OWNER",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:30",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
73
bots/discord/ree6/README.md
Normal file
73
bots/discord/ree6/README.md
Normal file
@ -0,0 +1,73 @@
|
||||
# Ree6
|
||||
|
||||
___
|
||||
|
||||
## Authors / Contributors
|
||||
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<a href="https://github.com/dxssucuk">
|
||||
<img src="https://avatars.githubusercontent.com/u/53257574" width="50px;" alt=""/><br /><sub><b>Presti</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/Ree6-Applications/Ree6/commits?author=dxssucuk" title="Codes">💻</a>
|
||||
<a href="https://github.com/Ree6-Applications/Ree6/commits?author=dxssucuk" title="Original Bot Creator">🤖</a>
|
||||
</td>
|
||||
<td align="center">
|
||||
<a href="https://github.com/parkervcp">
|
||||
<img src="https://avatars.githubusercontent.com/u/1207679" width="50px;" alt=""/><br /><sub><b>parkervcp</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=parkervcp" title="Codes">💻</a>
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=parkervcp" title="Original Egg Creator">🥚</a>
|
||||
</td>
|
||||
<td align="center">
|
||||
<a href="https://github.com/QuintenQVD0">
|
||||
<img src="https://avatars.githubusercontent.com/u/67589015" width="50px;" alt=""/><br /><sub><b>QuintenQVD0</b></sub>
|
||||
</a>
|
||||
<br />
|
||||
<a href="https://github.com/parkervcp/eggs/commits?author=QuintenQVD0" title="Codes">💻</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<!-- markdownlint-enable -->
|
||||
<!-- prettier-ignore-end -->
|
||||
|
||||
___
|
||||
|
||||
## Bot Description & Features
|
||||
|
||||
From the developer's [Github](https://github.com/Ree6-Applications/Ree6):
|
||||
> Ree6 is an all-in-one Discord Bot maintained by Presti, which started as an alternative of Mee6 to provide a lot of features that are hidden behind a paywall or subscription.
|
||||
|
||||
- Contains almost every feature Mee6 has.
|
||||
- Has a open Source Webinterface.
|
||||
- Provides advanced Audit-Logging.
|
||||
- Has built in post notifications (Twitter, Instagram, YouTube, Reddit and Twitch).
|
||||
- Built-in simple Ticket System.
|
||||
- And more!
|
||||
___
|
||||
|
||||
## Configuration
|
||||
|
||||
- You will need to modify the config.yml to even start the bot.
|
||||
|
||||
___
|
||||
|
||||
## Server Ports
|
||||
|
||||
There are no ports required for Ree6.
|
||||
___
|
||||
|
||||
## Updating
|
||||
|
||||
Re-Installing the server via the panel will do the following:
|
||||
|
||||
1. Update the bot to the latest version.
|
||||
|
||||
|
||||
## API keys
|
||||
This bot uses a lot of api keys. It will print some errors to the console if you don't have some filled in but the bot should still function as normal with the api keys you entered.
|
128
bots/discord/ree6/config.yml
Normal file
128
bots/discord/ree6/config.yml
Normal file
@ -0,0 +1,128 @@
|
||||
# ################################
|
||||
# # #
|
||||
# # Ree6 Config File #
|
||||
# # by Presti #
|
||||
# # #
|
||||
# ################################
|
||||
#
|
||||
|
||||
# Do not change this!
|
||||
config:
|
||||
version: 3.0.0
|
||||
creation: 1686731674683
|
||||
|
||||
# HikariCP Configuration
|
||||
hikari:
|
||||
|
||||
# SQL Configuration
|
||||
sql:
|
||||
user: root
|
||||
db: root
|
||||
pw: yourpw
|
||||
host: localhost
|
||||
port: 3306
|
||||
|
||||
# Misc Configuration
|
||||
misc:
|
||||
storage: sqlite # Possible entries: sqlite, mariadb, postgresql, h2, h2-server
|
||||
storageFile: storage/Ree6.db
|
||||
createEmbeddedServer: false # Should an instance of an embedded Server be created? Only used for H2-Server.
|
||||
poolSize: 10
|
||||
|
||||
# Discord Application and overall Bot Configuration, used for OAuth, Bot Authentication and customization.
|
||||
bot:
|
||||
tokens:
|
||||
release: ReleaseTokenhere # Token used when set to release build.
|
||||
beta: BetaTokenhere # Token used when set to beta build.
|
||||
dev: DevTokenhere # Token used when set to dev build.
|
||||
|
||||
# Configuration for the Bot itself.
|
||||
misc:
|
||||
status: ree6.de | %guilds% Servers. (%shard%) # The Status of the Bot.
|
||||
feedbackChannelId: 0 # The Channel used for Feedback.
|
||||
ownerId: <YOUR DISCORD ID> # The ID of the Bot Owner. Change this to yours!
|
||||
predefineInformation: | # Predefined Information for the AI.
|
||||
You are Ree6 a Discord bot.
|
||||
invite: https://invite.ree6.de # The Invite Link of the Bot.
|
||||
support: https://support.ree6.de # The Support Server Link of the Bot.
|
||||
github: https://github.ree6.de # The GitHub Link of the Bot.
|
||||
website: https://ree6.de # The Website Link of the Bot.
|
||||
webinterface: https://cp.ree6.de # The Webinterface Link of the Bot.
|
||||
recording: https://cp.ree6.de/external/recording # The Recording Link of the Bot.
|
||||
twitchAuth: https://cp.ree6.de/external/twitch # The Twitch Authentication Link of the Bot.
|
||||
advertisement: powered by Tube-hosting # The Advertisement in Embed Footers and the rest.
|
||||
name: Ree6 # The Name of the Bot.
|
||||
shards: 1 # The shard amount of the Bot. Check out https://anidiots.guide/understanding/sharding/#sharding for more information.
|
||||
|
||||
# Customize the active modules in Ree6.
|
||||
modules:
|
||||
moderation: true # Enable the moderation module.
|
||||
music: true # Enable the music module.
|
||||
fun: true # Enable the fun commands.
|
||||
community: true # Enable the community commands.
|
||||
economy: true # Enable the economy commands.
|
||||
level: true # Enable the level module.
|
||||
nsfw: true # Enable the nsfw module.
|
||||
info: true # Enable the info commands.
|
||||
hidden: true # Enable the hidden commands.
|
||||
logging: true # Enable the logging module.
|
||||
notifier: true # Enable the notifier module.
|
||||
streamtools: true # Enable the Stream-tools module.
|
||||
temporalvoice: true # Enable the Temporal-voice module.
|
||||
tickets: true # Enable the Tickets module.
|
||||
suggestions: true # Enable the suggestions module.
|
||||
customcommands: true # Enable the custom Commands module.
|
||||
customevents: true # Enable the custom Events module.
|
||||
ai: true # Enable the AI module.
|
||||
addons: false # Enable the Addons module.
|
||||
news: true # Enable the news command/module.
|
||||
games: true # Enable the Games module.
|
||||
reactionroles: true # Enable the reaction-roles module.
|
||||
slashcommands: true # Enable the slash-commands support.
|
||||
messagecommands: true # Enable the message-commands support.
|
||||
|
||||
# Heartbeat Configuration, for status reporting
|
||||
heartbeat:
|
||||
url: none # The URL to the Heartbeat-Server
|
||||
interval: 60
|
||||
|
||||
dagpi:
|
||||
apitoken: DAGPI.xyz API-Token # Your Dagpi.xyz API-Token, for tweet image generation!
|
||||
|
||||
amari:
|
||||
apitoken: Amari API-Token # Your Amari API-Token, for Amari Level imports!
|
||||
|
||||
openai:
|
||||
apiToken: OpenAI API-Token # Your OpenAI API-Token, for ChatGPT!
|
||||
apiUrl: https://api.openai.com/v1/chat/completions # The URL to the OpenAI API.
|
||||
model: gpt-3.5-turbo-0301 # The Model used for the OpenAI API.
|
||||
|
||||
sentry:
|
||||
dsn: yourSentryDSNHere # Your Sentry DSN, for error reporting!
|
||||
|
||||
# Spotify Application Configuration, used to parse Spotify Tracks/Playlists to YouTube search queries.
|
||||
spotify:
|
||||
client:
|
||||
id: yourspotifyclientid
|
||||
secret: yourspotifyclientsecret
|
||||
|
||||
# Twitch Application Configuration, used for the StreamTools and Twitch Notifications.
|
||||
twitch:
|
||||
client:
|
||||
id: yourtwitchclientidhere
|
||||
secret: yourtwitchclientsecrethere
|
||||
|
||||
# Twitter Application Configuration, used for the Twitter Notifications.
|
||||
twitter:
|
||||
bearer: yourTwitterBearerToken
|
||||
|
||||
# Reddit Application Configuration, used for the Reddit Notification.
|
||||
reddit:
|
||||
client:
|
||||
id: yourredditclientid
|
||||
secret: yourredditclientsecret
|
||||
|
||||
# Instagram Application Configuration, used for the Instagram Notification.
|
||||
instagram:
|
||||
username: yourInstagramUsername
|
||||
password: yourInstagramPassword
|
422
bots/discord/ree6/egg-ree6.json
Normal file
422
bots/discord/ree6/egg-ree6.json
Normal file
@ -0,0 +1,422 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-06-14T13:03:27+02:00",
|
||||
"name": "Ree6",
|
||||
"author": "presti@presti.me",
|
||||
"description": "All-in-one, open source and 100% free Discord Bot!",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Java_17": "ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Dnogui=true -jar Ree6.jar",
|
||||
"config": {
|
||||
"files": "{\r\n \"config.yml\": {\r\n \"parser\": \"yaml\",\r\n \"find\": {\r\n \"hikari.sql.user\": \"{{server.build.env.DATABASE_USER}}\",\r\n \"hikari.sql.db\": \"{{server.build.env.DATABASE_DB}}\",\r\n \"hikari.sql.pw\": \"{{server.build.env.DATABASE_PW}}\",\r\n \"hikari.sql.host\": \"{{server.build.env.DATABASE_HOST}}\",\r\n \"hikari.sql.port\": \"{{server.build.env.DATABASE_PORT}}\",\r\n \"hikari.misc.storage\": \"{{server.build.env.DATABASE_TYP}}\",\r\n \"hikari.misc.storageFile\": \"{{server.build.env.DATABASE_FILE}}\",\r\n \"hikari.misc.poolSize\": \"{{server.build.env.DATABASE_POOL}}\",\r\n \"hikari.misc.createEmbeddedServer\": \"{{server.build.env.DATABASE_EMBEDDED}}\",\r\n \"heartbeat.url\": \"{{server.build.env.HEARTBEAT_URL}}\",\r\n \"heartbeat.interval\": \"{{server.build.env.HEARTBEAT_INTERVAL}}\",\r\n \"dagpi.apitoken\": \"{{server.build.env.DAGPI_TOKEN}}\",\r\n \"amari.apitoken\": \"{{server.build.env.AMARI_TOKEN}}\",\r\n \"sentry.dsn\": \"{{server.build.env.SENTRY_DSN}}\",\r\n \"spotify.client.id\": \"{{server.build.env.SPOTIFY_CLIENT_ID}}\",\r\n \"spotify.client.secret\": \"{{server.build.env.SPOTIFY_CLIENT_SECRET}}\",\r\n \"twitch.client.id\": \"{{server.build.env.TWITCH_CLIENT_ID}}\",\r\n \"twitch.client.secret\": \"{{server.build.env.TWITCH_CLIENT_SECRET}}\",\r\n \"twitter.consumer.key\": \"{{server.build.env.TWITTER_CONSUMER_ID}}\",\r\n \"twitter.consumer.secret\": \"{{server.build.env.TWITTER_CONSUMER_SECRET}}\",\r\n \"twitter.access.key\": \"{{server.build.env.TWITTER_ACCESS_ID}}\",\r\n \"twitter.access.secret\": \"{{server.build.env.TWITTER_ACCESS_SECRET}}\",\r\n \"reddit.client.id\": \"{{server.build.env.REDDIT_CLIENT_ID}}\",\r\n \"reddit.client.secret\": \"{{server.build.env.REDDIT_CLIENT_SECRET}}\",\r\n \"instagram.username\": \"{{server.build.env.INSTAGRAM_USERNAME}}\",\r\n \"instagram.password\": \"{{server.build.env.INSTAGRAM_PASSWORD}}\",\r\n \"bot.tokens.release\": \"{{server.build.env.BOT_TOKEN}}\",\r\n \"openai.apiToken\": \"{{server.build.env.AI_TOKEN}}\",\r\n \"openai.apiUrl\": \"{{server.build.env.AI_URL}}\",\r\n \"openai.model\": \"{{server.build.env.AI_MODEL}}\",\r\n \"bot.misc.status\": \"{{server.build.env.MISC_STATUS}}\",\r\n \"bot.misc.feedbackChannelId\": \"{{server.build.env.MISC_FEEDBACK}}\",\r\n \"bot.misc.ownerId\": \"{{server.build.env.MISC_OWNER}}\",\r\n \"bot.misc.predefineInformation\": \"{{server.build.env.MISC_PREDEF}}\",\r\n \"bot.misc.invite\": \"{{server.build.env.MISC_INVITE}}\",\r\n \"bot.misc.support\": \"{{server.build.env.MISC_SUPPORT}}\",\r\n \"bot.misc.website\": \"{{server.build.env.MISC_WEB}}\",\r\n \"bot.misc.webinterface\": \"{{server.build.env.MISC_INTERFACE}}\",\r\n \"bot.misc.record\": \"{{server.build.env.MISC_RECORD}}\",\r\n \"bot.misc.twitchAuth\": \"{{server.build.env.MISC_TWITCH}}\",\r\n \"bot.misc.advertisement\": \"{{server.build.env.MISC_ADV}}\",\r\n \"bot.misc.name\": \"{{server.build.env.MISC_NAME}}\",\r\n \"bot.misc.shards\": \"{{server.build.env.MISC_SHARD}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Finished Loading\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n## this is a simple script to use the github API for release versions.\r\n## this requires the egg has a variable for GITHUB_PACKAGE and VERSION\r\n## this supports using oauth\/personal access tokens via GITHUB_USER and GITHUB_OAUTH_TOKEN (both are required.)\r\n## if you are getting hit with GitHub API limit issues then you need to have the user and token set.\r\napt update\r\napt install -y jq curl\r\n\r\n\r\nCONFIG_LINK=\"https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/bots\/discord\/ree6\/config.yml\"\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/Ree6-Applications\/Ree6\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/Ree6-Applications\/Ree6\/releases\")\r\nMATCH=jar-with-dependencies.jar\r\n\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i \"${MATCH}\" | head -1 )\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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i \"${MATCH}\" | head -1)\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i *.jar)\r\n fi\r\nfi\r\n\r\n## Ree6 Setup\r\n[ ! -d \/mnt\/server ] && mkdir -p \/mnt\/server\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\ncd \/mnt\/server\r\necho -e \"\\nInstalling\/Updating Ree6...\\n\"\r\n\r\nif [ -f Ree6.jar ]; then\r\n echo -e \"Updating Ree6.jar to latest version...\"\r\n echo -e '\\t(Old version can be found at \"Ree6.jar-old\")'\r\n mv -f Ree6.jar Ree6.jar-old\r\nfi\r\n\r\necho -e \"Running: curl -sSL -o Ree6.jar ${DOWNLOAD_LINK}\\n\"\r\ncurl -sSL -o Ree6.jar ${DOWNLOAD_LINK}\r\n\r\nif [ -f config.yml ]; then\r\n echo -e \"Updating config.yml to latest version...\"\r\n echo -e '\\t(Old version can be found at \"config.yml-old\")'\r\n mv -f config.yml config.yml-old\r\nfi\r\n\r\necho -e \"Running: curl -sSL -o config.yml ${CONFIG_LINK}\\n\"\r\ncurl -sSL -o config.yml ${CONFIG_LINK}\r\n \r\n\r\necho -e \"\\nRee6 Successfully Installed!\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "[REQUIRED] Discord Bot Token",
|
||||
"description": "The token for your Discord bot. Learn how to obtain a token and configure your bot application properly here: https:\/\/jmusicbot.com\/getting-a-bot-token\/",
|
||||
"env_variable": "BOT_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Dagpi token",
|
||||
"description": "Your Dagpi.xyz API-Token, for tweet image generation!",
|
||||
"env_variable": "DAGPI_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Sentry DSN",
|
||||
"description": "Your Sentry DSN, for error reporting!",
|
||||
"env_variable": "SENTRY_DSN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Spotify Client Id",
|
||||
"description": "Spotify Application Configuration, used to parse Spotify Tracks\/Playlists to YouTube search queries.",
|
||||
"env_variable": "SPOTIFY_CLIENT_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Spotify Client Secret",
|
||||
"description": "Spotify Application Configuration, used to parse Spotify Tracks\/Playlists to YouTube search queries.",
|
||||
"env_variable": "SPOTIFY_CLIENT_SECRET",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Heartbeat Url",
|
||||
"description": "The URL to the Heartbeat-Server",
|
||||
"env_variable": "HEARTBEAT_URL",
|
||||
"default_value": "none",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Heartbeat Interval",
|
||||
"description": "The interval between the heartbeats.",
|
||||
"env_variable": "HEARTBEAT_INTERVAL",
|
||||
"default_value": "60",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Amari Token",
|
||||
"description": "Your Amari API-Token, for Amari Level imports!",
|
||||
"env_variable": "AMARI_TOKEN",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Twitch Client Id",
|
||||
"description": "Twitch Application Configuration, used for the StreamTools and Twitch Notifications.",
|
||||
"env_variable": "TWITCH_CLIENT_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Twitch Client Secret",
|
||||
"description": "Twitch Application Configuration, used for the StreamTools and Twitch Notifications.",
|
||||
"env_variable": "TWITCH_CLIENT_SECRET",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Twitter Bearer Key",
|
||||
"description": "Twitter Application Configuration, used for the Twitter Notifications.",
|
||||
"env_variable": "TWITTER_BEARER",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Reddit Client Id",
|
||||
"description": "Reddit Application Configuration, used for the Reddit Notification.",
|
||||
"env_variable": "REDDIT_CLIENT_ID",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Reddit Client Secret",
|
||||
"description": "Reddit Application Configuration, used for the Reddit Notification.",
|
||||
"env_variable": "REDDIT_CLIENT_SECRET",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Instagram Username",
|
||||
"description": "Instagram Application Configuration, used for the Instagram Notification.",
|
||||
"env_variable": "INSTAGRAM_USERNAME",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Instagram Password",
|
||||
"description": "Instagram Application Configuration, used for the Instagram Notification.",
|
||||
"env_variable": "INSTAGRAM_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "SQL Username",
|
||||
"description": "Username for the SQL connection.",
|
||||
"env_variable": "DATABASE_USER",
|
||||
"default_value": "root",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|max:32",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "SQL Database",
|
||||
"description": "Database for the SQL Connection",
|
||||
"env_variable": "DATABASE_DB",
|
||||
"default_value": "root",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|max:64",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "SQL Password",
|
||||
"description": "Password for the SQL connection.",
|
||||
"env_variable": "DATABASE_PW",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "SQL Port",
|
||||
"description": "Port for the SQL connection.",
|
||||
"env_variable": "DATABASE_PORT",
|
||||
"default_value": "3306",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Database Typ",
|
||||
"description": "The Typ of the Database Ree6 should use!\r\nPossible typs:\r\n- mariadb\r\n- sqlite\r\n- h2\r\n- postgres",
|
||||
"env_variable": "DATABASE_TYP",
|
||||
"default_value": "sqlite",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:mariadb,sqlite,postgres,postregsql,h2",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Database Storagefile",
|
||||
"description": "The location of the storagefile if sqlite is being used.",
|
||||
"env_variable": "DATABASE_FILE",
|
||||
"default_value": "storage\/Ree6.db",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:32",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "[DEVELOPER-STUFF] Database Poolsize",
|
||||
"description": "The Database connection pool size!",
|
||||
"env_variable": "DATABASE_POOL",
|
||||
"default_value": "10",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Database host",
|
||||
"description": "The Host address of the Database connection.",
|
||||
"env_variable": "DATABASE_HOST",
|
||||
"default_value": "localhost",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "OpenAI Token",
|
||||
"description": "Your Authentication token that should be used in the AI API calls.",
|
||||
"env_variable": "AI_TOKEN",
|
||||
"default_value": "OpenAI API-Token",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "OpenAI Url",
|
||||
"description": "The URL that should receive the API calls.",
|
||||
"env_variable": "AI_URL",
|
||||
"default_value": "https:\/\/api.openai.com\/v1\/chat\/completions",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "OpenAI Model",
|
||||
"description": "The AI model that should be used in the API calls.",
|
||||
"env_variable": "AI_MODEL",
|
||||
"default_value": "gpt-3.5-turbo-0301",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:32",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Activity Status",
|
||||
"description": "The Activity status of the Bot that will be shown.",
|
||||
"env_variable": "MISC_STATUS",
|
||||
"default_value": "ree6.de | %guilds% Servers. (%shard%)",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Feedback Channel",
|
||||
"description": "The Channel Id of the Feedback channel.",
|
||||
"env_variable": "MISC_FEEDBACK",
|
||||
"default_value": "0",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "[DEVELOPER-STUFF] Bot Owner Id",
|
||||
"description": "The ID of the Bot Owner, this will be used internally on some checks.",
|
||||
"env_variable": "MISC_OWNER",
|
||||
"default_value": "321580743488831490",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Invite Link",
|
||||
"description": "The Invite link to invite the Bot.",
|
||||
"env_variable": "MISC_INVITE",
|
||||
"default_value": "https:\/\/invite.ree6.de",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Predefined Information for AI",
|
||||
"description": "The Information for the AI.",
|
||||
"env_variable": "MISC_PREDEF",
|
||||
"default_value": "You are Ree6 a Discord bot.",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Support Link",
|
||||
"description": "The Url link for users to receive support.",
|
||||
"env_variable": "MISC_SUPPORT",
|
||||
"default_value": "https:\/\/support.ree6.de",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Website",
|
||||
"description": "The Url to the Website of the Bot.",
|
||||
"env_variable": "MISC_WEB",
|
||||
"default_value": "https:\/\/ree6.de",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Webinterface",
|
||||
"description": "The Url to the Webinterface.",
|
||||
"env_variable": "MISC_INTERFACE",
|
||||
"default_value": "https:\/\/cp.ree6.de",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Record Url",
|
||||
"description": "The Url that uses can access to get their recording.",
|
||||
"env_variable": "MISC_RECORD",
|
||||
"default_value": "https:\/\/cp.ree6.de\/external\/recording",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Twitch Url",
|
||||
"description": "The Url used to connect a Twitch Account with the Ree6 System.",
|
||||
"env_variable": "MISC_TWITCH",
|
||||
"default_value": "https:\/\/cp.ree6.de\/external\/twitch",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Advertisment",
|
||||
"description": "The Advertisement in Embed Footers and the rest.",
|
||||
"env_variable": "MISC_ADV",
|
||||
"default_value": "powered by Tube-hosting",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Name",
|
||||
"description": "The Name of the Bot.",
|
||||
"env_variable": "MISC_NAME",
|
||||
"default_value": "Ree6",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Shards",
|
||||
"description": "The amount of shards that should be created.",
|
||||
"env_variable": "MISC_SHARD",
|
||||
"default_value": "1",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-11-04T12:46:17+01:00",
|
||||
"exported_at": "2023-08-14T15:15:05+02:00",
|
||||
"name": "Sinusbot",
|
||||
"author": "support@pterodactyl.io",
|
||||
"description": "Musicbot for Discord and Teamspeak.",
|
||||
@ -22,7 +22,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Sinusbot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends install ca-certificates bzip2 wget tar curl jq\r\napt -q clean all\r\n\r\n#Create needed directories\r\nmkdir -p \/mnt\/server\/TeamSpeak3-Client-linux_amd64\/plugins\r\nmkdir \/mnt\/server\/youtube-dlp\r\n\r\ncd \/mnt\/server\r\n\r\n#Download Sinusbot\r\n\r\nif [ \"${PRE_RELEASE}\" == \"1\" ]; then\r\necho \"pre\"\r\nDOWNLOAD_URL=$(curl -sSL https:\/\/forum.sinusbot.com\/threads\/upcoming-changes.8659\/ | grep -Eo \"(http|https):\/\/[a-zA-Z0-9.\/?=_-]*\" | sort -u | grep pre\/)\r\nwget -qO - ${DOWNLOAD_URL} | tar xj \r\nelse\r\necho \"release\"\r\nwget -qO - https:\/\/www.sinusbot.com\/dl\/sinusbot.current.tar.bz2 | tar xj\r\nfi\r\n\r\n#Download Latest TeamSpeak Client\r\nTS_VERSION=$(curl https:\/\/teamspeak.com\/versions\/client.json | jq -r '.linux.x86_64.version')\r\nTS_DL_LINK=$(curl https:\/\/teamspeak.com\/versions\/client.json | jq -r '.linux.x86_64.mirrors.\"teamspeak.com\"')\r\n\r\necho -e \"downloading teamspeak version ${TS_VERSION}\"\r\necho -e \"running 'wget ${TS_DL_LINK}'\"\r\n\r\nwget ${TS_DL_LINK}\r\n\r\n# Install TeamSpeak Client\r\nchmod 0755 TeamSpeak3-Client-linux_amd64*.run\r\n.\/TeamSpeak3-Client-linux_amd64*.run --tar xfv -C TeamSpeak3-Client-linux_amd64\r\n\r\n## Cleaning up \r\n\r\nrm TeamSpeak3-Client-linux_amd64*.run\r\n# Remove glx-integration lib\r\nrm TeamSpeak3-Client-linux_amd64\/xcbglintegrations\/libqxcb-glx-integration.so\r\n\r\n#Install Sinusbot\r\nchmod +x sinusbot\r\ncp config.ini.dist config.ini\r\nsed -i \"s|^TS3Path.*|TS3Path = \\\"\/home\/container\/TeamSpeak3-Client-linux_amd64\/ts3client_linux_amd64\\\"|g\" config.ini\r\necho 'YoutubeDLPath = \"\/home\/container\/youtube-dlp\/youtube-dlp\"' >> config.ini\r\n\r\n#Install Sinusbot plugin\r\ncp plugin\/libsoundbot_plugin.so TeamSpeak3-Client-linux_amd64\/plugins\r\n\r\n#Download youtube-dlp\r\ncd \/mnt\/server\/youtube-dlp\r\nwget https:\/\/github.com\/yt-dlp\/yt-dlp\/releases\/latest\/download\/yt-dlp -O youtube-dlp\r\nchmod a+rx youtube-dlp\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"script": "#!\/bin\/bash\r\n# Sinusbot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt -y update\r\napt -y --no-install-recommends install ca-certificates bzip2 wget tar curl jq\r\napt -q clean all\r\n\r\n#Create needed directories\r\nmkdir -p \/mnt\/server\/TeamSpeak3-Client-linux_amd64\/plugins\r\nmkdir \/mnt\/server\/youtube-dlp\r\n\r\ncd \/mnt\/server\r\n\r\n#Download Sinusbot\r\nwget -qO - https:\/\/www.sinusbot.com\/dl\/sinusbot.current.tar.bz2 | tar xj\r\n\r\n\r\n#Download Latest TeamSpeak Client\r\n#TS_VERSION=$(curl https:\/\/teamspeak.com\/versions\/client.json | jq -r '.linux.x86_64.version')\r\n#TS_DL_LINK=$(curl https:\/\/teamspeak.com\/versions\/client.json | jq -r '.linux.x86_64.mirrors.\"teamspeak.com\"')\r\n\r\n# Sinusbot is not yet updated...\r\nTS_VERSION=3.5.6\r\nTS_DL_LINK=https:\/\/files.teamspeak-services.com\/releases\/client\/3.5.6\/TeamSpeak3-Client-linux_amd64-3.5.6.run\r\n\r\necho -e \"downloading teamspeak version ${TS_VERSION}\"\r\necho -e \"running 'wget ${TS_DL_LINK}'\"\r\n\r\nwget ${TS_DL_LINK}\r\n\r\n# Install TeamSpeak Client\r\nchmod 0755 TeamSpeak3-Client-linux_amd64*.run\r\n.\/TeamSpeak3-Client-linux_amd64*.run --tar xfv -C TeamSpeak3-Client-linux_amd64\r\n\r\n## Cleaning up \r\n\r\nrm TeamSpeak3-Client-linux_amd64*.run\r\n# Remove glx-integration lib\r\nrm TeamSpeak3-Client-linux_amd64\/xcbglintegrations\/libqxcb-glx-integration.so\r\n\r\n#Install Sinusbot\r\nchmod +x sinusbot\r\ncp config.ini.dist config.ini\r\nsed -i \"s|^TS3Path.*|TS3Path = \\\"\/home\/container\/TeamSpeak3-Client-linux_amd64\/ts3client_linux_amd64\\\"|g\" config.ini\r\necho 'YoutubeDLPath = \"\/home\/container\/youtube-dlp\/youtube-dlp\"' >> config.ini\r\n\r\n#Install Sinusbot plugin\r\ncp plugin\/libsoundbot_plugin.so TeamSpeak3-Client-linux_amd64\/plugins\r\n\r\n#Download youtube-dlp\r\ncd \/mnt\/server\/youtube-dlp\r\nwget https:\/\/github.com\/yt-dlp\/yt-dlp\/releases\/latest\/download\/yt-dlp -O youtube-dlp\r\nchmod a+rx youtube-dlp\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -37,16 +37,6 @@
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Pre release",
|
||||
"description": "Download the pre-release version?",
|
||||
"env_variable": "PRE_RELEASE",
|
||||
"default_value": "0",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|boolean",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -4,13 +4,14 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-10-02T18:28:42+02:00",
|
||||
"exported_at": "2023-09-02T23:24:58+00:00",
|
||||
"name": "PhantomBot",
|
||||
"author": "mail@wuffy.eu",
|
||||
"description": "PhantomBot is an actively developed open source interactive Twitch bot with a vibrant community that provides entertainment and moderation for your channel, allowing you to focus on what matters the most to you - your game and your viewers.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:java_11": "ghcr.io\/parkervcp\/yolks:java_11"
|
||||
"Java 16 [DEPRECATED]": "ghcr.io\/parkervcp\/yolks:java_16",
|
||||
"Java 19": "ghcr.io\/parkervcp\/yolks:java_19"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java --add-opens java.base\/java.lang=ALL-UNNAMED -Djava.security.policy=config\/security -Dinteractive -Xms1m -Dfile.encoding=UTF-8 -jar PhantomBot.jar",
|
||||
@ -30,7 +31,7 @@
|
||||
"variables": [
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "latest = Latest Stable\r\nmaster = latest Github",
|
||||
"description": "latest = Latest Stable\r\nmaster = latest Github\r\n3.9.0.7 = Latest known working with Java 16",
|
||||
"env_variable": "RELEASE_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
|
@ -1,17 +1,17 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-12-13T15:19:16+01:00",
|
||||
"exported_at": "2023-04-23T18:47:53+02:00",
|
||||
"name": "SogeBot",
|
||||
"author": "info@goover.de",
|
||||
"author": "eggs@goover.dev",
|
||||
"description": "sogeBot - Free Twitch Bot built on Node.js https:\/\/sogebot.xyz\/",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io\/parkervcp\/yolks:nodejs_16"
|
||||
],
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:nodejs_18": "ghcr.io\/parkervcp\/yolks:nodejs_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "npm start",
|
||||
"config": {
|
||||
@ -22,8 +22,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#\/bin\/bash\r\n# Installscript for sogeBot | Author: info@goover.de\r\n\r\nexport DEBIAN_FRONTEND=noninteractive\r\n\r\napt -y update\r\napt install -y curl unzip sqlite3 jq wget python3 build-essential ca-certificates\r\n\r\nexport NODE_OPTIONS=--max-old-space-size=8192\r\nchown -R root:root \/mnt\r\nMATCH=sogeBot\r\ncd \/mnt\/server\r\n\r\n#Backup database & config\r\nmkdir -p .backup\r\ncp -f .env \/mnt\/server\/.backup\r\ncp -f sogebot.db \/mnt\/server\/.backup\r\n\r\n#delete old dir's to prevent errors on update\r\nrm -fR dest\r\nrm -fR public\r\nrm -fR node-modules\r\nrm -fR tools\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/sogebot\/sogeBot\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/sogebot\/sogeBot\/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\necho -e \"Downloading from $DOWNLOAD_LINK\"\r\nwget -N $DOWNLOAD_LINK\r\nunzip -o $MATCH-*.zip\r\nrm -fR $MATCH-*.zip\r\n\r\necho \"--------------------------------------------------------------------------\"\r\necho \"Installing dependencies, this will take some time so sit back and relax...\"\r\necho \"IGNORE WARNINGS. THESE ARE NOT ERRORS !!!\"\r\necho \"--------------------------------------------------------------------------\"\r\n\r\nnpm ci 2>&1 | tee npmlog.txt\r\n\r\necho -e \"install completed\"\r\nexit 0",
|
||||
"container": "node:16-bullseye-slim",
|
||||
"script": "#\/bin\/bash\r\n# Installscript for sogeBot | Author: eggs@goover.dev\r\n\r\nexport DEBIAN_FRONTEND=noninteractive\r\n\r\napt -y update\r\napt install -y curl unzip jq python3 build-essential ca-certificates\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\nexport NODE_OPTIONS=--max-old-space-size=8192\r\nchown -R root:root \/mnt\r\n\r\n#Backup database & config\r\nmkdir -p .backup\r\ncp -f .env \/mnt\/server\/.backup\r\ncp -f sogebot.db \/mnt\/server\/.backup\r\n\r\n#delete old dir's to prevent errors on update\r\nrm -fR dest\r\nrm -fR public\r\nrm -fR node-modules\r\nrm -fR tools\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/sogebot\/sogeBot\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/sogebot\/sogeBot\/releases\")\r\nMATCH=sogeBot\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\necho -e \"Downloading from $DOWNLOAD_LINK\"\r\ncurl -sSL -o sogeBot.zip ${DOWNLOAD_LINK}\r\n\r\nunzip -o sogeBot.zip\r\nrm -rf sogeBot.zip\r\n\r\n\r\necho \"--------------------------------------------------------------------------\"\r\necho \"Installing dependencies, this will take some time so sit back and relax...\"\r\necho \"IGNORE WARNINGS. THESE ARE NOT ERRORS !!!\"\r\necho \"--------------------------------------------------------------------------\"\r\n\r\nnpm install -g npm@8\r\n\r\nnpm install --verbose --force\r\n\r\necho -e \"install completed\"\r\nexit 0",
|
||||
"container": "node:18-bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -35,7 +35,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,13 +1,18 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2019-11-06T18:52:33-05:00",
|
||||
"name": "MariaDB",
|
||||
"exported_at": "2023-12-19T09:54:17+01:00",
|
||||
"name": "MariaDB 10.3",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "One of the most popular database servers. Made by the original developers of MySQL. Guaranteed to stay open source.",
|
||||
"image": "quay.io\/parkervcp\/pterodactyl-images:db_mariadb",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"MariaDB 10.3": "ghcr.io\/parkervcp\/yolks:mariadb_10.3"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "{ \/usr\/sbin\/mysqld & } && sleep 5 && mysql -u root",
|
||||
"config": {
|
||||
"files": "{\r\n \".my.cnf\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"port\": \"port = {{server.build.default.port}}\",\r\n \"bind-address\": \"bind-address=0.0.0.0\"\r\n }\r\n }\r\n}",
|
@ -1,17 +1,17 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-05-08T21:54:05+02:00",
|
||||
"name": "Postgres",
|
||||
"exported_at": "2023-12-12T15:32:12+01:00",
|
||||
"name": "Postgres 14",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A default Postgres install that is not really editable.",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io\/parkervcp\/yolks:postgres_14"
|
||||
],
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:postgres_14": "ghcr.io\/parkervcp\/yolks:postgres_14"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "postgres -D \/home\/container\/postgres_db\/",
|
||||
"config": {
|
||||
@ -35,7 +35,8 @@
|
||||
"default_value": "pterodactyl",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Superuser Password",
|
||||
@ -44,7 +45,8 @@
|
||||
"default_value": "Pl3453Ch4n63M3!",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
52
database/sql/postgres/egg-postgres16.json
Normal file
52
database/sql/postgres/egg-postgres16.json
Normal file
@ -0,0 +1,52 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-12-12T15:33:25+01:00",
|
||||
"name": "Postgres 16",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A default Postgres install that is not really editable.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:postgres_16": "ghcr.io\/parkervcp\/yolks:postgres_16"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "postgres -D \/home\/container\/postgres_db\/",
|
||||
"config": {
|
||||
"files": "{\r\n \"postgres_db\/postgresql.conf\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"#port =\": \"port = {{server.build.default.port}}\",\r\n \"#external_pid_file =\": \"external_pid_file = '\/home\/container\/postgres_db\/run\/postgres.pid'\",\r\n \"#unix_socket_directories =\": \"unix_socket_directories = '\/home\/container\/postgres_db\/run\/'\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"database system is ready to accept connections\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#! \/bin\/ash\r\nadduser -D -h \/home\/container container\r\n\r\nchown -R container: \/mnt\/server\/\r\n\r\nsu container -c 'initdb -D \/mnt\/server\/postgres_db\/ -A md5 -U \"$PGUSER\" --pwfile=<(echo \"$PGPASSWORD\")'\r\n\r\nmkdir -p \/mnt\/server\/postgres_db\/run\/\r\n\r\n## Add default \"allow from all\" auth rule to pg_hba\r\nif ! grep -q \"# Custom rules\" \"\/mnt\/server\/postgres_db\/pg_hba.conf\"; then\r\n echo -e \"# Custom rules\\nhost all all 0.0.0.0\/0 md5\" >> \"\/mnt\/server\/postgres_db\/pg_hba.conf\"\r\nfi\r\n\r\necho -e \"Done\"",
|
||||
"container": "postgres:16-alpine",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Superuser Name",
|
||||
"description": "The username for the postgres superuser",
|
||||
"env_variable": "PGUSER",
|
||||
"default_value": "pterodactyl",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Superuser Password",
|
||||
"description": "The postgres super user password with a strong default.\r\nYou should be generating new ones for each server.\r\nIf you don't then users can hit other users DB's",
|
||||
"env_variable": "PGPASSWORD",
|
||||
"default_value": "Pl3453Ch4n63M3!",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -18,17 +18,15 @@ The description of the server usually provided by the game/server maker.
|
||||
<!--Make a note if the user needs to get any keys or other items to run/use the server-->
|
||||
Due to rate limiting the console on the panel, it 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.
|
||||
<!--Example: 2GB is recommended. 4GB+ is preferred-->
|
||||
|
||||
## Minumim Sorage warning
|
||||
|
||||
Minimum required storage to run the server.
|
||||
<!--Example: 10GB is recommended. 25GB+ is preferred-->
|
||||
|
||||
<!--Make a note if the install script would require more then the above amounts-->
|
||||
## Installation/System Requirements
|
||||
<!--Make changes to reflect the server minimum/recommended hardware specs-->
|
||||
| | Bare Minimum | Recommended |
|
||||
|---------|---------|---------|
|
||||
| Processor | *Main info (32/64 bit or ARM support)* | *More info about egg's preferred processor* |
|
||||
| RAM | *Minimum amount of RAM (in MiB/GiB)* | *Recommended amount of RAM (in MiB/GiB)* |
|
||||
| Storage | *Minimum amount of Storage (in MiB/GiB)* | *Recommended amount of Storage (in MiB/GiB)* |
|
||||
| Network | *Minimum network speed (in Mbit/s)* | *Recommended network speed (in Mbit/s)* |
|
||||
| Game Ownership | *Can the server start without it?* | *Is it needed for any other features?* |
|
||||
|
||||
## Server Ports
|
||||
|
||||
|
@ -1,28 +1,28 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-11-13T13:06:21-08:00",
|
||||
"exported_at": "2023-01-31T11:59:34+01:00",
|
||||
"name": "Foundry VTT",
|
||||
"author": "pterodactyl@demi.cloud",
|
||||
"description": "Foundry VTT is a standalone application built for experiencing multiplayer tabletop RPGs using a feature-rich and modern self-hosted application where your players connect directly through the browser.",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io\/parkervcp\/yolks:nodejs_17"
|
||||
],
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:nodejs_18": "ghcr.io\/parkervcp\/yolks:nodejs_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "node .\/app\/resources\/app\/main.js --dataPath=\"\/home\/container\/data\"",
|
||||
"config": {
|
||||
"files": "{\r\n \"data\/Config\/options.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"port\": \"{{server.build.default.port}}\",\r\n \"language\": \"{{server.build.env.FOUNDRY_LANGUAGE}}\",\r\n \"updateChannel\": \"{{server.build.env.UPDATE_CHANNEL}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Server started and listening on port\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^c"
|
||||
"stop": "^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# FoundryVTT install script\r\n#\r\n# Server Files: \/mnt\/server\r\ndeclare -r DIR_ROOT=\"\/mnt\/server\"\r\ndeclare -r DIR_APP=\"${DIR_ROOT}\/app\"\r\ndeclare -r DIR_DATA=\"${DIR_ROOT}\/data\"\r\ndeclare -r ZIP_FILE_NAME=\"foundryvtt.zip\"\r\n\r\nmain() {\r\n apt update\r\n apt install -y unzip\r\n\r\n printf \"\\nBuilding directory structure...\\n\"\r\n mkdir -p \"${DIR_ROOT}\/data\/Config\"\r\n mkdir -p \"${DIR_ROOT}\/app\"\r\n # shellcheck disable=SC2164\r\n cd \"${DIR_APP}\"\r\n printf \"\\nDownloading FoundryVTT files...\\n\"\r\n wget \"${TIMED_URL}\" -O \"${ZIP_FILE_NAME}\"\r\n printf \"\\nunzipping FoundryVTT files...\\n\"\r\n unzip \"${ZIP_FILE_NAME}\" -d \"${DIR_APP}\"\r\n rm \"${ZIP_FILE_NAME}\"\r\n\r\n printf \"\\nGenerating default configuration...\\n\"\r\n cat <<EOF >\"${DIR_DATA}\/Config\/options.json\"\r\n{\r\n \"port\": 30000,\r\n \"upnp\": false,\r\n \"fullscreen\": false,\r\n \"hostname\": null,\r\n \"localHostname\": null,\r\n \"routePrefix\": null,\r\n \"sslCert\": null,\r\n \"sslKey\": null,\r\n \"awsConfig\": null,\r\n \"dataPath\": \"\/home\/container\/data\",\r\n \"passwordSalt\": null,\r\n \"proxySSL\": false,\r\n \"proxyPort\": null,\r\n \"minifyStaticFiles\": true,\r\n \"updateChannel\": \"release\",\r\n \"language\": \"en.core\",\r\n \"upnpLeaseDuration\": null,\r\n \"world\": null\r\n} \r\nEOF\r\n printf \"Installation Done.\\n\"\r\n}\r\nmain \"@\"",
|
||||
"script": "#!\/bin\/bash\r\n# FoundryVTT install script\r\n#\r\n# Server Files: \/mnt\/server\r\ndeclare -r DIR_ROOT=\"\/mnt\/server\"\r\ndeclare -r DIR_APP=\"${DIR_ROOT}\/app\"\r\ndeclare -r DIR_DATA=\"${DIR_ROOT}\/data\"\r\ndeclare -r ZIP_FILE_NAME=\"foundryvtt.zip\"\r\n\r\nmain() {\r\n apt update\r\n apt install -y unzip\r\n\r\n printf \"\\nBuilding directory structure...\\n\"\r\n mkdir -p \"${DIR_ROOT}\/data\/Config\"\r\n mkdir -p \"${DIR_ROOT}\/app\"\r\n # shellcheck disable=SC2164\r\n cd \"${DIR_APP}\"\r\n printf \"\\nDownloading FoundryVTT files...\\n\"\r\n wget \"${TIMED_URL}\" -O \"${ZIP_FILE_NAME}\"\r\n printf \"\\nunzipping FoundryVTT files...\\n\"\r\n unzip \"${ZIP_FILE_NAME}\" -d \"${DIR_APP}\"\r\n #rm \"${ZIP_FILE_NAME}\"\r\n\r\n printf \"\\nGenerating default configuration...\\n\"\r\n cat <<EOF >\"${DIR_DATA}\/Config\/options.json\"\r\n{\r\n \"port\": 30000,\r\n \"upnp\": false,\r\n \"fullscreen\": false,\r\n \"hostname\": null,\r\n \"localHostname\": null,\r\n \"routePrefix\": null,\r\n \"sslCert\": null,\r\n \"sslKey\": null,\r\n \"awsConfig\": null,\r\n \"dataPath\": \"\/home\/container\/data\",\r\n \"passwordSalt\": null,\r\n \"proxySSL\": false,\r\n \"proxyPort\": null,\r\n \"minifyStaticFiles\": true,\r\n \"updateChannel\": \"release\",\r\n \"language\": \"en.core\",\r\n \"upnpLeaseDuration\": null,\r\n \"world\": null\r\n} \r\nEOF\r\n printf \"Installation Done.\\n\"\r\n}\r\nmain \"@\"",
|
||||
"container": "ghcr.io\/pterodactyl\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -35,7 +35,8 @@
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|url"
|
||||
"rules": "required|url",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Language",
|
||||
@ -44,7 +45,8 @@
|
||||
"default_value": "en.core",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|max:20"
|
||||
"rules": "string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Update Channel",
|
||||
@ -53,7 +55,8 @@
|
||||
"default_value": "release",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "string|max:256"
|
||||
"rules": "string|max:256",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -14,6 +14,16 @@
|
||||
|
||||
* [MCGalaxy](classicube/mcgalaxy)
|
||||
|
||||
[Clone Hero](clone_hero)
|
||||
|
||||
[CS2D](cs2d)
|
||||
|
||||
[Cube Engine](cubeengine)
|
||||
* [AssaultCube](cubeengine/assaultcube)
|
||||
* [Cube 2: Sauerbraten](cubeengine/cube2)
|
||||
|
||||
[DDRaceNetwork](ddracenetwork/)
|
||||
|
||||
[Doom](doom)
|
||||
* [Zandronum](doom/zandronum)
|
||||
|
||||
@ -23,7 +33,7 @@
|
||||
|
||||
* [Vanilla](factorio/factorio)
|
||||
* [ModUpdate](factorio/factorio-modupdate)
|
||||
* [Clusterio](game_eggs/factorio/clusterio)
|
||||
* [Clusterio](factorio/clusterio)
|
||||
|
||||
[FTL: Tachyon](ftl/tachyon)
|
||||
|
||||
@ -38,10 +48,15 @@
|
||||
* GTA SA
|
||||
* [Multi Theft Auto](gta/mtasa)
|
||||
* [SA-MP](gta/samp)
|
||||
* [OpenMp](gta/openmp)
|
||||
|
||||
* GTA
|
||||
* [GTAC](gta/gtac)
|
||||
|
||||
[Hogwarp](hogwarp)
|
||||
|
||||
[Kerbal Space Program](ksp)
|
||||
|
||||
[Los Angeles Crimes](losangelescrimes)
|
||||
|
||||
[League Sandbox](leaguesandbox)
|
||||
@ -53,23 +68,24 @@
|
||||
* [Bedrock](minecraft/bedrock) Servers for Bedrock Minecraft (Windows 10, mobile, console)
|
||||
* [Bedrock](minecraft/bedrock/bedrock)
|
||||
* [gomint](minecraft/bedrock/gomint)
|
||||
* [LiteLoaderBDS](minecraft/bedrock/LiteLoader-bedrock)
|
||||
* [LiteLoaderBDS](bedrock/LiteLoader-bedrock)
|
||||
* [Nukkit](minecraft/bedrock/nukkit)
|
||||
* [PocketMine MP](minecraft/bedrock/pocketmine_mp)
|
||||
|
||||
* [Java](minecraft/java) Servers for Java Minecraft
|
||||
* [CurseForge](minecraft/java/curseforge)
|
||||
* [Cuberite](minecraft/java/cuberite)
|
||||
* [CusreForge Generic](minecraft/java/forge/curseforge-generic)
|
||||
* [Fabric](minecraft/java/fabric)
|
||||
* [Feather](minecraft/java/feather)
|
||||
* [Feed The Beast](minecraft/java/ftb)
|
||||
* [Forge](minecraft/java/forge)
|
||||
* [Glowstone](minecraft/java/glowstone)
|
||||
* [Feed The Beast](minecraft/java/ftb)
|
||||
* [Krypton](/minecraft/java/krypton)
|
||||
* [Limbo](minecraft/java/limbo)
|
||||
* [Magma](minecraft/java/magma)
|
||||
* [Mohist](minecraft/java/mohist)
|
||||
* [NanoLimbo](/minecraft/java/nanolimbo)
|
||||
* [NanoLimbo](minecraft/java/nanolimbo)
|
||||
* [Paper](minecraft/java/paper)
|
||||
* [Folia](minecraft/java/folia)
|
||||
* [Purpur](minecraft/java/purpur)
|
||||
* [Spigot](minecraft/java/spigot)
|
||||
* [SpongeForge](minecraft/java/spongeforge)
|
||||
@ -77,18 +93,19 @@
|
||||
* [Technic](minecraft/java/technic)
|
||||
* [VanillaCord](minecraft/java/vanillacord)
|
||||
|
||||
* [Crossplay](minecraft/crossplay/) servers for crossplay between Bedrock and Java edition
|
||||
* [Purpur-GeyserMC-Floodgate](minecraft/crossplay/purpur-geysermc-floodgate/)
|
||||
|
||||
* [Proxies](minecraft/proxy) Minecraft Server Proxies
|
||||
* [Java](minecraft/proxy/java)
|
||||
* [Travertine](minecraft/proxy/java/travertine)
|
||||
* [Velocity](minecraft/proxy/java/velocity)
|
||||
* [Waterfall](minecraft/proxy/java/waterfall)
|
||||
* [Bedrock](minecraft/proxy/bedrock)
|
||||
* [Waterdog PE](minecraft/proxy/bedrock/waterdog_pe)
|
||||
* [Cross Platform](minecraft/proxy/cross_platform)
|
||||
* [GeyserMC](minecraft/proxy/cross_platform/geyser)
|
||||
* [Waterdog](minecraft/proxy/cross_platform/waterdog)
|
||||
* [Java](minecraft/proxy/java)
|
||||
* [FlameCord](minecraft/proxy/java/flamecord)
|
||||
* [Travertine](minecraft/proxy/java/travertine)
|
||||
* [Velocity](minecraft/proxy/java/velocity)
|
||||
* [VIAaas](minecraft/proxy/java/viaaas)
|
||||
* [Waterfall](minecraft/proxy/java/waterfall)
|
||||
|
||||
[Minetest](minetest) (including MTG)
|
||||
|
||||
@ -104,46 +121,72 @@
|
||||
|
||||
* [RedM](rdr/redm)
|
||||
|
||||
[Spacestation 14](spacestation_14)
|
||||
|
||||
[Rimworld](rimworld)
|
||||
|
||||
* [Open World](rimworld/open_world)
|
||||
|
||||
[Starmade](starmade)
|
||||
|
||||
[SteamCMD Servers](steamcmd_servers) These eggs use SteamCMD to install
|
||||
|
||||
* [7 Days to Die](steamcmd_servers/7_days_to_die)
|
||||
* [ARK: Survival Ascended](steamcmd_servers/ark_survival_ascended)
|
||||
* [ARK: Survival Evolved](steamcmd_servers/ark_survival_evolved)
|
||||
* [Arma](steamcmd_servers/arma)
|
||||
* [Arma 3](steamcmd_servers/arma/arma3)
|
||||
* [Arma Reforger](steamcmd_servers/arma/arma_reforger)
|
||||
* [Assetto Corsa](steamcmd_servers/assetto_corsa)
|
||||
* [Astro Colony](steamcmd_servers/astro_colony)
|
||||
* [Astroneer](steamcmd_servers/astroneer)
|
||||
* [Avorion](steamcmd_servers/avorion)
|
||||
* [Barotrauma](steamcmd_servers/barotrauma)
|
||||
* [BATTALION: Legacy](steamcmd_servers/battalion_legacy)
|
||||
* [Black Mesa](steamcmd_servers/black_mesa)
|
||||
* [Citadel: Forged with Fire](steamcmd_servers/citadel)
|
||||
* [Colony Survival](steamcmd_servers/colony_survival)
|
||||
* [Conan Exiles](steamcmd_servers/conan_exiles)
|
||||
* [Core Keeper](steamcmd_servers/core_keeper)
|
||||
* [Counter-Strike](steamcmd_servers/counter_strike/)
|
||||
* [Counter-Strike: Source](steamcmd_servers/counter_strike/counter_strike_source/)
|
||||
* [Craftopia](game_eggs/steamcmd_servers/craftopia)
|
||||
* [CryoFall](steamcmd_servers/cryofall)
|
||||
* [DayZ (Experimental)](steamcmd_servers/dayz-experimental)
|
||||
* [Don't Starve Together](steamcmd_servers/dont_starve)
|
||||
* [ECO](steamcmd_servers/eco)
|
||||
* [Empyrion - Galactic Survival](steamcmd_servers/empyrion)
|
||||
* [Fistful of Frags](steamcmd_servers/fof)
|
||||
* [Frozen Flame](steamcmd_servers/frozen_flame)
|
||||
* [Ground Branch](steamcmd_servers/ground_branch)
|
||||
* [HLDS Server](steamcmd_servers/hlds_server)
|
||||
* [HLDS Vanilla](steamcmd_servers/hlds_server/vanilla)
|
||||
* [ReHLDS](steamcmd_servers/hlds_server/rehlds)
|
||||
* [Holdfast: Nations At War](steamcmd_servers/holdfast)
|
||||
* [HumanitZ](steamcmd_servers/humanitz)
|
||||
* [Hurtworld](steamcmd_servers/hurtworld)
|
||||
* [Icarus](steamcmd_servers/icarus)
|
||||
* [Insurgency: Sandstorm](steamcmd_servers/insurgency_sandstorm)
|
||||
* [iosoccer](steamcmd_servers/iosoccer)
|
||||
* [Killing Floor 2](steamcmd_servers/killing_floor_2)
|
||||
* [Left 4 Dead](steamcmd_servers/left4dead)
|
||||
* [Left 4 Dead 2](steamcmd_servers/left4dead_2)
|
||||
* [Modiverse](steamcmd_servers/modiverse)
|
||||
* [Mordhau](steamcmd_servers/mordhau)
|
||||
* [Mount & Blade II: Bannerlord](steamcmd_servers/mount_blade_II_bannerlord)
|
||||
* [Neos VR](steamcmd_servers/neosvr)
|
||||
* [No More Room in Hell](steamcmd_servers/nmrih)
|
||||
* [No One Survived](steamcmd_servers/no_one_survived)
|
||||
* [Onset](steamcmd_servers/onset)
|
||||
* [Open Fortress](steamcmd_servers/open_fortress)
|
||||
* [Operation Harsh Doorstop](steamcmd_servers/operation_harsh_doorstop)
|
||||
* [Pavlov VR](steamcmd_servers/pavlov_vr)
|
||||
* [PixARK](steamcmd_servers/pixark)
|
||||
* [Portal Knights](steamcmd_servers/portal_knights)
|
||||
* [Post Scriptum](steamcmd_servers/post_scriptum)
|
||||
* [Project Zomboid](steamcmd_servers/project_zomboid)
|
||||
* [Quake Live](steamcmd_servers/quake_live)
|
||||
* [Resonite](steamcmd_servers/resonite)
|
||||
* [Rising World](steamcmd_servers/rising_world)
|
||||
* [Legacy Java](steamcmd_servers/rising_world/legacy)
|
||||
* [Unity](steamcmd_servers/rising_world/unity)
|
||||
@ -156,19 +199,23 @@
|
||||
* [SCP: Secret Laboratory](steamcmd_servers/scpsl)
|
||||
* [Dedicated](steamcmd_servers/scpsl/dedicated)
|
||||
* [Exiled](steamcmd_servers/scpsl/exiled)
|
||||
* [Multiadmin](steamcmd_servers/scpsl/multiadmin)
|
||||
* [Soldat](steamcmd_servers/soldat)
|
||||
* [Sons of the Forest](steamcmd_servers/sonsoftheforest)
|
||||
* [Space Engineers](steamcmd_servers/space_engineers)
|
||||
* [default](steamcmd_servers/space_engineers/default)
|
||||
* [torch](steamcmd_servers/space_engineers/torch)
|
||||
* [Squad](steamcmd_servers/squad)
|
||||
* [Starbound](steamcmd_servers/starbound)
|
||||
* [Stationeers](steamcmd_servers/stationeers)
|
||||
* [Stationeers Vanilla](steamcmd_servers/stationeers/stationeers_vanilla)
|
||||
* [Stationeers BepInEx](steamcmd_servers/stationeers/stationeers_bepinex)
|
||||
* [Stormworks: Build and Rescue](steamcmd_servers/stormworks)
|
||||
* [Subnautica: Nitrox Mod](steamcmd_servers/subnautica_nitrox_mod)
|
||||
* [Sven Co-op](steamcmd_servers/svencoop)
|
||||
* [Swords 'n Magic and Stuff](steamcmd_servers/swords_'n_Magic_and_Stuff)
|
||||
* [Team Fortress 2 Classic](steamcmd_servers/team_fortress_2_classic)
|
||||
* [The Forest](steamcmd_servers/the_forest)
|
||||
* [The Front](steamcmd_servers/thefront)
|
||||
* [The Isle](steamcmd_servers/the_isle)
|
||||
* [Evrima](steamcmd_servers/the_isle/evrima)
|
||||
* [Tower Unite](steamcmd_servers/tower_unite)
|
||||
@ -177,9 +224,12 @@
|
||||
* [Euro Truck Simulator 2](steamcmd_servers/truck-simulator/euro-truck-simulator2/)
|
||||
* [Unturned](steamcmd_servers/unturned)
|
||||
* [V Rising](steamcmd_servers/v_rising)
|
||||
* [V Rising Vanilla](steamcmd_servers/v_rising/v_rising_vanilla)
|
||||
* [V Rising BepInex](steamcmd_servers/v_rising/v_rising_bepinex)
|
||||
* [Valheim](steamcmd_servers/valheim)
|
||||
* [Valheim Plus Mod](steamcmd_servers/valheim/valheim_plus)
|
||||
* [Valheim Vanilla](steamcmd_servers/valheim/valheim_vanilla)
|
||||
* [Valheim BepInEx](steamcmd_servers/valheim/valheim_bepinex)
|
||||
* [Valheim Plus Mod](steamcmd_servers/valheim/valheim_plus)
|
||||
|
||||
[Teeworlds](teeworlds)
|
||||
|
||||
@ -200,4 +250,6 @@
|
||||
|
||||
[Xonotic](xonotic/xonotic)
|
||||
|
||||
[YuzuEmu](yuzu-emu)
|
||||
|
||||
[FoundryVTT](FoundryVTT)
|
||||
|
@ -1,17 +1,18 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-07-23T12:00:05+03:00",
|
||||
"exported_at": "2023-03-04T15:04:21+01: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 2022.4.19, 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.",
|
||||
"author": "eggs@goover.dev",
|
||||
"description": "Impostor is one of the first Among Us private servers, written in C#.\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.",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io/parkervcp/yolks:dotnet_6"
|
||||
],
|
||||
"docker_images": {
|
||||
"Dotnet_7": "ghcr.io\/parkervcp\/yolks:dotnet_7",
|
||||
"Dotnet_6": "ghcr.io\/parkervcp\/yolks:dotnet_6"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/Impostor.Server",
|
||||
"config": {
|
||||
@ -22,20 +23,21 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\napt -y update\r\napt -y --no-install-recommends install wget curl jq unzip tar redis-server file ca-certificates apt-utils\r\nGITHUB_PACKAGE=Impostor\/Impostor\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\necho -e \"Latest release is $LATEST_RELEASE\"\r\nLATEST_VERSION_TAG=$(echo $LATEST_RELEASE | sed -e 's\/.*\"tag_name\":\"\\([^\"]*\\)\".*\/\\1\/')\r\n\r\n# Remove the first letter v from the version tag that is not present in the download URL\r\nLATEST_VERSION=$(echo $LATEST_VERSION_TAG | cut -c 2-)\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_LINK=\"https:\/\/github.com\/${GITHUB_PACKAGE}\/releases\/download\/v$LATEST_VERSION\/Impostor-Server_${LATEST_VERSION}_linux-x64.tar.gz\"\r\nelse \r\n DOWNLOAD_LINK=\"https:\/\/github.com\/${GITHUB_PACKAGE}\/releases\/download\/v$VERSION\/Impostor-Server_${VERSION}_linux-x64.tar.gz\"\r\nfi\r\n\r\necho -e \"\\nDownloading from $DOWNLOAD_LINK\"\r\ncurl -L $DOWNLOAD_LINK -o Impostor-Server-linux-x64.tar.gz\r\n\r\ntar xvf Impostor-Server-linux-x64.tar.gz\r\nrm Impostor-Server-linux-x64.tar.gz\r\nchmod +x Impostor.Server\r\n\r\necho -e \"\\nInstall completed\"",
|
||||
"container": "debian:buster-slim",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt -y install curl jq tar\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/Impostor\/Impostor\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/Impostor\/Impostor\/releases\")\r\nMATCH=$([[ \"$(uname -m)\" == \"x86_64\" ]] && echo \"linux-x64\" || echo \"linux-arm64\")\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\necho -e \"\\nDownloading from $DOWNLOAD_URL\"\r\ncurl -sSL -o imposter-server.tar.gz $DOWNLOAD_URL\r\n\r\n\r\necho -e \"\\nUnpacking .tar.gz\"\r\ntar xvf imposter-server.tar.gz\r\n\r\nrm imposter-server.tar.gz\r\nchmod +x Impostor.Server\r\n\r\necho -e \"\\nInstall completed\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Download Version",
|
||||
"description": "Version to Download. Leave latest for the latest release.\r\n\r\nFind all releases at https:\/\/github.com\/Impostor\/Impostor\/releases",
|
||||
"description": "Version to Download. Leave latest for the latest release.\r\n\r\nFind all releases at https:\/\/github.com\/Impostor\/Impostor\/releases\r\nNote: versions start with a v, example: v1.8.0",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:30"
|
||||
"rules": "required|string|max:30",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-11-07T17:26:47+01:00",
|
||||
"exported_at": "2023-12-05T18:28:42+01:00",
|
||||
"name": "BeamMP Servers",
|
||||
"author": "noah@noahserver.online",
|
||||
"description": "This is the server for the multiplayer mod BeamMP for the game BeamNG.drive. The server is the point through which all clients communicate. You can write lua mods for the server, detailed instructions on the BeamMP Wiki.",
|
||||
@ -15,14 +15,14 @@
|
||||
"file_denylist": [],
|
||||
"startup": ".\/BeamMP-Server",
|
||||
"config": {
|
||||
"files": "{\r\n \"ServerConfig.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"Name =\": \"Name = \\\"{{env.NAME}}\\\"\",\r\n \"Port =\": \"Port = {{server.build.default.port}}\",\r\n \"AuthKey =\": \"AuthKey = \\\"{{env.AUTHKEY}}\\\"\",\r\n \"Private =\": \"Private = {{env.PRIVATE}}\",\r\n \"MaxPlayers =\": \"MaxPlayers = {{server.build.env.MAX_PLAYERS}}\",\r\n \"Description =\": \"Description = \\\"{{env.NAME}}\\\"\",\r\n \"MaxCars =\": \"MaxCars = {{env.MAX_CARS}}\",\r\n \"Map =\": \"Map = \\\"{{env.MAP}}\\\"\"\r\n }\r\n }\r\n}",
|
||||
"files": "{\r\n \"ServerConfig.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"Name =\": \"Name = \\\"{{env.NAME}}\\\"\",\r\n \"Port =\": \"Port = {{server.build.default.port}}\",\r\n \"AuthKey =\": \"AuthKey = \\\"{{env.AUTHKEY}}\\\"\",\r\n \"Private =\": \"Private = {{env.PRIVATE}}\",\r\n \"MaxPlayers =\": \"MaxPlayers = {{server.build.env.MAX_PLAYERS}}\",\r\n \"Description =\": \"Description = \\\"{{env.DESCRIPTION}}\\\"\",\r\n \"MaxCars =\": \"MaxCars = {{env.MAX_CARS}}\",\r\n \"Map =\": \"Map = \\\"{{env.MAP}}\\\"\",\r\n \"LogChat =\": \"LogChat = {{env.LOGCHAT}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"[INFO] Vehicle data network online\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^C"
|
||||
"stop": "exit"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n#Create the server directory\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\n#Remove any old versions\r\nrm -f BeamMP-Server\r\n\r\n#Check for latest release & download URLs\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/BeamMP\/BeamMP-Server\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/BeamMP\/BeamMP-Server\/releases\")\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n echo -e \"Using latest BeamMP server version\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i \"${MATCH}\" | head -1)\r\nelse\r\n echo -e \"Chosen version :${VERSION}. Verifying version from releases\"\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i \"${MATCH}\" | head -1)\r\n else\r\n echo -e \"No valid versions found. Defaulting to the latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i Server-linux | head -1)\r\n fi\r\nfi\r\n\r\n#Download the BeamMP server binary\r\necho -e \"Running curl -sSL ${DOWNLOAD_URL} -o BeamMP-Server\"\r\ncurl -sSL ${DOWNLOAD_URL} -o BeamMP-Server\r\nchmod +x BeamMP-Server\r\n\r\n#Create a default configuration file\r\necho \"[HTTP]\r\n# Recommended to keep enabled. With SSL the server will serve https and requires valid key and cert files\r\nUseSSL = true\r\n# Enables the internal HTTP server\r\nHTTPServerEnabled = false\r\nSSLKeyPath = \\\".\/.ssl\/HttpServer\/key.pem\\\"\r\nHTTPServerPort = 8080\r\nSSLCertPath = \\\".\/.ssl\/HttpServer\/cert.pem\\\"\r\n\r\n[General]\r\n# If SendErrors is `true`, the server will send helpful info about crashes and other issues back to the BeamMP developers. This info may include your config, who is on your server at the time of the error, and similar general information. This kind of data is vital in helping us diagnose and fix issues faster. This has no impact on server performance. You can opt-out of this system by setting this to `false`\r\nSendErrorsShowMessage = true\r\nName = \\\"BeamMP Server\\\"\r\nPort = 30814\r\nResourceFolder = \\\"Resources\\\"\r\n# AuthKey has to be filled out in order to run the server\r\nAuthKey = \\\"\\\"\r\nPrivate = true\r\nMaxPlayers = 10\r\nDebug = false\r\nDescription = \\\"BeamMP Default Description\\\"\r\nMaxCars = 1\r\nMap = \\\"\/levels\/gridmap_v2\/info.json\\\"\r\n# You can turn on\/off the SendErrors message you get on startup here\r\nSendErrors = true\" > ServerConfig.toml\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"script": "#!\/bin\/bash\r\n#Create the server directory\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\n#Remove any old versions\r\nrm -f BeamMP-Server\r\n\r\n#Check for latest release & download URLs\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/BeamMP\/BeamMP-Server\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/BeamMP\/BeamMP-Server\/releases\")\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n echo -e \"Using latest BeamMP server version\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i \"${MATCH}\" | head -1)\r\nelse\r\n echo -e \"Chosen version :${VERSION}. Verifying version from releases\"\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i \"${MATCH}\" | head -1)\r\n else\r\n echo -e \"No valid versions found. Defaulting to the latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i Server-linux | head -1)\r\n fi\r\nfi\r\n\r\n#Download the BeamMP server binary\r\necho -e \"Running curl -sSL ${DOWNLOAD_URL} -o BeamMP-Server\"\r\ncurl -sSL ${DOWNLOAD_URL} -o BeamMP-Server\r\nchmod +x BeamMP-Server\r\n\r\n#Create a default configuration file\r\necho \"[HTTP]\r\n# Recommended to keep enabled. With SSL the server will serve https and requires valid key and cert files\r\nUseSSL = true\r\n# Enables the internal HTTP server\r\nHTTPServerEnabled = false\r\nSSLKeyPath = \\\".\/.ssl\/HttpServer\/key.pem\\\"\r\nHTTPServerPort = 8080\r\nSSLCertPath = \\\".\/.ssl\/HttpServer\/cert.pem\\\"\r\n\r\n[General]\r\n# If SendErrors is `true`, the server will send helpful info about crashes and other issues back to the BeamMP developers. This info may include your config, who is on your server at the time of the error, and similar general information. This kind of data is vital in helping us diagnose and fix issues faster. This has no impact on server performance. You can opt-out of this system by setting this to `false`\r\nSendErrorsShowMessage = true\r\nName = \\\"BeamMP Server\\\"\r\nPort = 30814\r\nResourceFolder = \\\"Resources\\\"\r\n# AuthKey has to be filled out in order to run the server\r\nAuthKey = \\\"\\\"\r\nPrivate = true\r\nMaxPlayers = 10\r\nDebug = false\r\nLogChat = true\r\nDescription = \\\"BeamMP Default Description\\\"\r\nMaxCars = 1\r\nMap = \\\"\/levels\/gridmap_v2\/info.json\\\"\r\n# You can turn on\/off the SendErrors message you get on startup here\r\nSendErrors = true\" > ServerConfig.toml\r\n\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -35,7 +35,17 @@
|
||||
"default_value": "BeamMP Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64",
|
||||
"rules": "required|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Description",
|
||||
"description": "Sets the server description",
|
||||
"env_variable": "DESCRIPTION",
|
||||
"default_value": "BeamMP Default Description",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:128",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
@ -45,12 +55,12 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:8",
|
||||
"rules": "required|string|max:12",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Authentication Key",
|
||||
"description": "The authentication key for your server. A key can be obtained from the BeamMP keymaster at https:\/\/beamng-mp.com\/k\/dashboard",
|
||||
"description": "The authentication key for your server. A key can be obtained from the BeamMP keymaster at https:\/\/keymaster.beammp.com",
|
||||
"env_variable": "AUTHKEY",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
@ -75,7 +85,7 @@
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"rules": "required|string|in:true,false",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
@ -85,7 +95,7 @@
|
||||
"default_value": "1",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer|max:4",
|
||||
"rules": "required|integer|max:10",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
@ -98,6 +108,16 @@
|
||||
"rules": "required|string|max:64",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Chat logging",
|
||||
"description": "Enable chat logging by the server",
|
||||
"env_variable": "LOGCHAT",
|
||||
"default_value": "true",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:true,false",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Match",
|
||||
"description": "The match we have to do on there github package.\r\n\r\nCurrently, they have a special build for debian 11, what is the docker image we use.\r\nGo to https:\/\/github.com\/BeamMP\/BeamMP-Server\/releases if the version you want has an asset \"debian\" then select \"Server-debian\" if not then \"Server-linux\"",
|
31
game_eggs/clone_hero/README.md
Normal file
31
game_eggs/clone_hero/README.md
Normal file
@ -0,0 +1,31 @@
|
||||
# Clone Hero
|
||||
|
||||
## From their [Site](https://clonehero.net/)
|
||||
|
||||
## [Documentation](https://wiki.clonehero.net/books/guides-and-tutorials/page/online-multiplayer#bkmrk-hosting-a-standalone)
|
||||
|
||||
|
||||
## Minimum RAM warning
|
||||
|
||||
Minimum required memory to run the server.
|
||||
80MiB is recommended. 2GB+ is preferred
|
||||
|
||||
## Minumim Sorage warning
|
||||
|
||||
Minimum required storage to run the server.
|
||||
100MiB is recommended. 2GiB+ is preferred
|
||||
|
||||
|
||||
## Server Ports
|
||||
|
||||
Ports required to run the server.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 14242 |
|
||||
|
||||
### Notes
|
||||
|
||||
<!--Notes about the server ports.-->
|
||||
14242 is the default port, but any port can be used.
|
||||
|
72
game_eggs/clone_hero/egg-clone-hero.json
Normal file
72
game_eggs/clone_hero/egg-clone-hero.json
Normal file
@ -0,0 +1,72 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-11-30T10:24:33+01:00",
|
||||
"name": "Clone Hero",
|
||||
"author": "josdekurk@gmail.com",
|
||||
"description": "Clone Hero is a classic instrument based rhythm game for Windows, Mac, Linux, and Android. It's playable with any 5 or 6 fret guitar controller, any midi drum kit, any game controller and even your keyboard! Jam out with Drums, 5-fret Guitar, or 6-fret Guitar online or local!",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Debian": "ghcr.io\/parkervcp\/yolks:debian"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/Server -l {{LOG_LEVEL}} -n \"{{SERVER_DISPLAY_NAME}}\" -p {{SERVER_PORT}} -a 0.0.0.0 $([[ -z \"${SERVER_PASSWORD}\" ]] && echo -np || echo \"-ps ${SERVER_PASSWORD}\")",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Server running...\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^c"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt -y install curl unzip jq\r\n\r\n## get release info and download links\r\nV=$(curl -s https:\/\/clonehero.net\/ | grep -i \"Latest version\" | grep -oP '(?<=<b>).+?(?=<\\\/b>)' | sed -e 's\/^[[:space:]]*\/\/' -e 's\/[[:space:]]*$\/\/') #v1.0.0.4080\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/clonehero-game\/releases\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/clonehero-game\/releases\/releases\")\r\nMATCH=CloneHero-standalone_server\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i server)\r\n fi\r\nfi\r\n\r\n\r\nV=$(curl -s https:\/\/clonehero.net\/ | grep -i \"Latest version\" | grep -oP '(?<=<b>).+?(?=<\\\/b>)' | sed -e 's\/^[[:space:]]*\/\/' -e 's\/[[:space:]]*$\/\/') #v1.0.0.4080\r\nARCH=$([[ \"$(uname -m)\" == \"x86_64\" ]] && echo \"linux-x64\" || echo \"linux-arm64\")\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\necho \"Running: curl -sSL -o ChStandaloneServer.zip ${DOWNLOAD_URL}\"\r\ncurl -sSL -o ChStandaloneServer.zip ${DOWNLOAD_URL}\r\n\r\nunzip -o ChStandaloneServer.zip\r\nrm ChStandaloneServer.zip\r\n\r\nmv ChStandaloneServer-${V}-final\/${ARCH}\/* .\r\nrm -rf ChStandaloneServer-${V}-final\/\r\n\r\nchmod +x Server\r\n\r\n\r\nif [ ! -f \/mnt\/server\/settings.ini ]\r\nthen\r\n\tcurl -sSL -o settings.ini https:\/\/pastebin.com\/raw\/rhcv0hvi\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server name",
|
||||
"description": "The name of the server",
|
||||
"env_variable": "SERVER_DISPLAY_NAME",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:80",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server password",
|
||||
"description": "The password of the server",
|
||||
"env_variable": "SERVER_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|regex:\/^[a-zA-Z0-9_]+$\/",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Log level",
|
||||
"description": "Set max logging level",
|
||||
"env_variable": "LOG_LEVEL",
|
||||
"default_value": "4",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:0,1,2,3,4",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "The version of Clone Hero you want to install.\r\nExample: V1.0.0.4080 or latest",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
35
game_eggs/cs2d/README.md
Normal file
35
game_eggs/cs2d/README.md
Normal file
@ -0,0 +1,35 @@
|
||||
# CS2D
|
||||
|
||||
|
||||
## From their [Site](https://www.cs2d.com/index.php)
|
||||
|
||||
|
||||
## [Documentation](https://www.cs2d.com/serverhosting.php)
|
||||
|
||||
|
||||
## Install notes
|
||||
|
||||
This egg only supports downloading the latest releases
|
||||
|
||||
## Minimum RAM warning
|
||||
|
||||
Minimum required memory to run the server.
|
||||
1GB is recommended. 2GB+ is preferred
|
||||
|
||||
## Minumim Sorage warning
|
||||
|
||||
Minimum required storage to run the server.
|
||||
600Mib is recommended. 2GB+ is preferred
|
||||
|
||||
## Server Ports
|
||||
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 36963 |
|
||||
|
||||
### Notes
|
||||
|
||||
<!--Notes about the server ports.-->
|
||||
36963 is the default port, but any port can be used.
|
62
game_eggs/cs2d/egg-c-s2-d.json
Normal file
62
game_eggs/cs2d/egg-c-s2-d.json
Normal file
@ -0,0 +1,62 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-06-20T12:12:15+02:00",
|
||||
"name": "CS2D",
|
||||
"author": "josdekurk@gmail.com",
|
||||
"description": "Plant and defuse bombs, rescue hostages or accomplish new missions like capture the flag or domination! Use a huge arsenal of weapons and equipment including crazy stuff like portal guns, lasers, RPGs, turrets and much more! You can even build things!",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/games:source": "ghcr.io\/parkervcp\/games:source"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/cs2d_dedicated",
|
||||
"config": {
|
||||
"files": "{\r\n \"sys\/server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"sv_hostport \": \"sv_hostport {{server.build.default.port}}\",\r\n \"sv_name\": \"sv_name {{server.build.env.SERVER_NAME}}\",\r\n \"sv_password\": \"sv_password {{server.build.env.SERVER_PASSWORD}}\",\r\n \"sv_maxplayers\": \"sv_maxplayers {{server.build.env.SERVER_PLAYERS}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"----- Server started -----\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nv=$(curl -s https:\/\/www.cs2d.com\/download.php | grep -Eo \"https?:\/\/\\S+?\\\"\" | grep -i \"get.php?get=cs2d_\" | grep -i \"linux\") # https:\/\/www.unrealsoftware.de\/get.php?get=cs2d_1013_linux.zip\"\r\nn=$(echo ${v#*=} | sed 's\/\"\/\/' ) # cs2d_1013_linux.zip\r\n\r\nc=$(curl -s https:\/\/www.unrealsoftware.de\/get.php?get=${n} | grep -o '<a class=\"l_dl\" href=\"get.php?.*\">' | cut -f2 -d \"<\" | awk '{print $3}' | grep -o '\"[^\"]*\"') # \"get.php?get=cs2d_1013_linux.zip&p=1&cid=15745\"\r\ncid=$(echo ${c\/\/\\\"\/} | cut -f4 -d '=') #15745\r\n\r\nDOWNLOAD_URL=\"https:\/\/www.unrealsoftware.de\/get.php?get=${n}&p=1&cid=${cid}\"\r\n\r\necho \"${DOWNLOAD_URL}\"\r\n\r\ncurl -sSL -o client.zip \"${DOWNLOAD_URL}\"\r\n\r\nunzip -o client.zip\r\nrm client.zip\r\n\r\ncurl -sSL -o dedicated.zip \"https:\/\/www.unrealsoftware.de\/files_pub\/cs2d_dedicated_linux.zip\"\r\nunzip -o dedicated.zip\r\nrm dedicated.zip\r\n\r\nchmod +x cs2d_dedicated\r\n\r\necho \"install finished\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "CS2D Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Password",
|
||||
"description": "",
|
||||
"env_variable": "SERVER_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:32",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Max Players",
|
||||
"description": "",
|
||||
"env_variable": "SERVER_PLAYERS",
|
||||
"default_value": "12",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
30
game_eggs/cubeengine/assaultcube/README.md
Normal file
30
game_eggs/cubeengine/assaultcube/README.md
Normal file
@ -0,0 +1,30 @@
|
||||
# AssaultCube
|
||||
[assault.cubers.net](https://assault.cubers.net/)
|
||||
|
||||
AssaultCube is a FREE, multiplayer, first-person shooter game, based on the CUBE engine.
|
||||
|
||||
Taking place in realistic environments, with fast, arcade gameplay, it's addictive and fun!
|
||||
|
||||
With efficient bandwidth usage, it's low-latency and can even run over a 56 Kbps connection.
|
||||
It's tiny too, weighing in at a lightweight about 50 MB package available for Windows, Mac and Linux.
|
||||
On the correct settings, it can even run on old hardware (Pentium III and above).
|
||||
|
||||
---
|
||||
|
||||
## Server Ports
|
||||
|
||||
Ports required to run the server.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 28763 |
|
||||
| Game +1 | 28764 |
|
||||
|
||||
The second port is only used for the server master list to be able to update the server info. (Description, player count, etc.)
|
||||
|
||||
**Must be Game +1!**
|
||||
|
||||
### Notes
|
||||
|
||||
<!--Notes about the server ports.-->
|
||||
28763 & 28764 is the default ports, but any port can be used.
|
112
game_eggs/cubeengine/assaultcube/egg-assault-cube.json
Normal file
112
game_eggs/cubeengine/assaultcube/egg-assault-cube.json
Normal file
@ -0,0 +1,112 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-07-30T10:56:35+02:00",
|
||||
"name": "AssaultCube",
|
||||
"author": "holeintheseat@gmail.com",
|
||||
"description": "AssaultCube is a FREE, multiplayer, first-person shooter game, based on the CUBE engine.\r\n\r\nTaking place in realistic environments, with fast, arcade gameplay, it's addictive and fun!",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Debian": "ghcr.io\/parkervcp\/yolks:debian"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/bin_unix\/linux_64_server -Y{{ASSAULT_SERVER_KEY}} -n\"{{ASSAULT_SERVER_DESCRIPTION}}\" -o\"{{ASSAULT_SERVER_MOTD}}\" -c{{ASSAULT_SERVER_MAXPLAYERS}} -x{{ASSAULT_SERVER_ADMINPASSWORD}} -f{{SERVER_PORT}} -p{{ASSAULT_SERVER_PLAYERPASSWORD}} -m{{ASSAULT_SERVER_MASTERSERVER}}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"dedicated server started, waiting for clients...\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# AssaultCube Server Egg (By HoleInTheSeat) <|-|> (https:\/\/assault.cubers.net\/)\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\n#######-|Dependencies|-#######\r\napt update\r\napt -y install tar make bzip2 build-essential clang libclang-dev libclang1 llvm llvm-dev clang-tools libz-dev curl jq\r\n\r\n#######-|Downloading files|-#######\r\ncd \/mnt\/server\r\n## get release info and download links\r\n\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/assaultcube\/AC\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/assaultcube\/AC\/releases\")\r\nMATCH=tar.bz2\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | head -1)\r\n fi\r\nfi\r\n\r\n\r\ncurl -sSL -o AssaultCube.tar.bz2 ${DOWNLOAD_URL}\r\ntar -xf AssaultCube.tar.bz2\r\nrm AssaultCube.tar.bz2\r\n\r\n#######-|Setting Up Server|-#######\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\nrm -rf bin_win32\/ *.sh\r\n\r\nif [ \"$(uname -m)\" = \"x86_64\" ]; then\r\n echo -e \"x86 System\"\r\nelse\r\n cd \/mnt\/server\/source\/src\r\n make server_install\r\nfi\r\n#######-|Insert Server Authkey|-#######\r\ncd \/mnt\/server\r\nsed -i 's\/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\/{{ASSAULT_SERVER_KEY}}\/' .\/config\/servercmdline.txt\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server Auth Key",
|
||||
"description": "You must provide your own key for the server to register on the masterserver.\r\nTo generate a key you can run the client and issue the command:\r\n\r\n authkey new server \r\n \r\nSee: (https:\/\/assault.cubers.net\/docs\/server.html)",
|
||||
"env_variable": "ASSAULT_SERVER_KEY",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|required|string|max:64",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Description",
|
||||
"description": "",
|
||||
"env_variable": "ASSAULT_SERVER_DESCRIPTION",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:512",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Message of the Day",
|
||||
"description": "",
|
||||
"env_variable": "ASSAULT_SERVER_MOTD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:512",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Max Players",
|
||||
"description": "Set the limit on amount of players able to join (MAX 16)",
|
||||
"env_variable": "ASSAULT_SERVER_MAXPLAYERS",
|
||||
"default_value": "16",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|integer|max:16",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Admin Password",
|
||||
"description": "",
|
||||
"env_variable": "ASSAULT_SERVER_ADMINPASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:512|min:5",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Player Password",
|
||||
"description": "Password need to join the server.",
|
||||
"env_variable": "ASSAULT_SERVER_PLAYERPASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:512",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Master Server",
|
||||
"description": "Forces the server to register with the hostname or IP address of a different masterserver.\r\nThe default is ms.cubers.net\r\nIf you want your server to be hidden and not report to the masterserver, use -mlocalhost",
|
||||
"env_variable": "ASSAULT_SERVER_MASTERSERVER",
|
||||
"default_value": "ms.cubers.net",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:512",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "The version of the engine you want to download.",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
24
game_eggs/cubeengine/cube2/README.md
Normal file
24
game_eggs/cubeengine/cube2/README.md
Normal file
@ -0,0 +1,24 @@
|
||||
# Cube 2: Sauerbraten
|
||||
[sauerbraten.org](http://sauerbraten.org/)
|
||||
|
||||
Cube 2: Sauerbraten is a free multiplayer & singleplayer first person shooter, the successor of the Cube FPS.
|
||||
Much like the original Cube, the aim of this game is fun, old school deathmatch gameplay and also to allow map/geometry editing to be done cooperatively in-game.
|
||||
|
||||
## Server Ports
|
||||
|
||||
Ports required to run the server.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 28785 |
|
||||
| Game +1 | 28786 |
|
||||
|
||||
The second port is only used for the server master list to be able to update the server info. (Description, player count, etc.)
|
||||
|
||||
**Must be Game +1!**
|
||||
|
||||
### Notes
|
||||
|
||||
<!--Notes about the server ports.-->
|
||||
28785 & 28786 is the default ports, but any port can be used.
|
||||
Port 28784 must be available for pinging servers over a LAN to work.
|
72
game_eggs/cubeengine/cube2/egg-cube2--sauerbraten.json
Normal file
72
game_eggs/cubeengine/cube2/egg-cube2--sauerbraten.json
Normal file
@ -0,0 +1,72 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-07-30T11:20:16+02:00",
|
||||
"name": "Cube 2: Sauerbraten",
|
||||
"author": "holeintheseat@gmail.com",
|
||||
"description": "Cube 2: Sauerbraten is a free multiplayer & singleplayer first person shooter, the successor of the Cube FPS.\r\nMuch like the original Cube, the aim of this game is fun, old school deathmatch gameplay and also to allow map\/geometry editing to be done cooperatively in-game.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Debian": "ghcr.io\/parkervcp\/yolks:debian"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/bin_unix\/linux_64_server -j{{SERVER_PORT}} -n{{CUBE_SERVERDESCRIPTION}} -c{{CUBE_MAXPLAYERS}} -m{{CUBE_MASTERSERVER}} -p{{CUBE_ADMINPASSWORD}}",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"dedicated server started, waiting for clients...\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# AssaultCube Server Egg (By HoleInTheSeat) <|-|> (https:\/\/assault.cubers.net\/)\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napt update \r\n#######-|Dependencies|-#######\r\napt -y install tar curl bzip2\r\n#######-|Downloading files|-#######\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\necho -e \"\\n\"\r\necho -e \"\\n\"\r\necho -e \"###############################################\"\r\necho -e \"## Downloading and unarchiving Sauerbraten ##\"\r\necho -e \"## THIS WILL TAKE A WHILE. PLEASE BE PATIENT ##\"\r\necho -e \"###############################################\"\r\necho -e \"\\n\"\r\necho -e \"\\n\"\r\ncurl -sSL -o sauerbraten_2020_12_29_linux.tar.bz2 https:\/\/cfhcable.dl.sourceforge.net\/project\/sauerbraten\/sauerbraten\/2020_11_29\/sauerbraten_2020_12_29_linux.tar.bz2\r\ntar -xf sauerbraten_2020_12_29_linux.tar.bz2 -strip-components=1\r\nrm sauerbraten_2020_12_29_linux.tar.bz2\r\nchmod +x bin_unix\/linux_64_server\r\n\r\n#######-|Alert Completion|-#######\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "debian:stable",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server Description",
|
||||
"description": "",
|
||||
"env_variable": "CUBE_SERVERDESCRIPTION",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:512",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Max Players",
|
||||
"description": "Sets the max number of clients to N. The default is 4. If you want to set it higher, be aware that bandwidth usage almost doubles with each extra client, so only do this if the server runs on a serious pipe (not your home DSL or Cable connection).",
|
||||
"env_variable": "CUBE_MAXPLAYERS",
|
||||
"default_value": "4",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer|max:16",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Master Server",
|
||||
"description": "Sets the master server to use for either server (registering) and client (updating) to S. (default: sauerbraten.org).",
|
||||
"env_variable": "CUBE_MASTERSERVER",
|
||||
"default_value": "sauerbraten.org",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:512",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Admin Password",
|
||||
"description": "",
|
||||
"env_variable": "CUBE_ADMINPASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:512",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
20
game_eggs/ddracenetwork/README.md
Normal file
20
game_eggs/ddracenetwork/README.md
Normal file
@ -0,0 +1,20 @@
|
||||
# DDRaceNetwork
|
||||
|
||||
## From their [Website](https://ddnet.org/downloads/)
|
||||
|
||||
DDraceNetwork (DDNet) is an actively maintained version of DDRace, a Teeworlds modification with a unique cooperative gameplay..
|
||||
|
||||
## Installation/System Requirements
|
||||
| | Bare Minimum | Recommended |
|
||||
|---------|---------|---------|
|
||||
| Processor | Almost any proccessor will work | -|
|
||||
| RAM | 100 MiB | 256 MiB |
|
||||
| Storage | 70 MiB | 1024 MiB |
|
||||
| Network | Any reasonable speed |- |
|
||||
| Game Ownership | Not needed | The game is free, and server doesn't need the game to work. |
|
||||
|
||||
## Server Ports
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 8303 |
|
82
game_eggs/ddracenetwork/egg-d-d-race-network.json
Normal file
82
game_eggs/ddracenetwork/egg-d-d-race-network.json
Normal file
@ -0,0 +1,82 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-07-01T12:47:31+02:00",
|
||||
"name": "DDRaceNetwork",
|
||||
"author": "diedyesterdaywashere@gmail.com",
|
||||
"description": "DDraceNetwork (DDNet) is an actively maintained version of DDRace, a Teeworlds modification with a unique cooperative gameplay.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/DDNet-Server",
|
||||
"config": {
|
||||
"files": "{\r\n \"data\/autoexec_server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"sv_port\": \"sv_port {{server.build.default.port}}\",\r\n \"sv_name\": \"sv_name \\\"{{server.build.env.SERVER_NAME}}\\\"\",\r\n \"password\": \"password \\\"{{server.build.env.SERVER_PASSWORD}}\\\"\",\r\n \"sv_map\": \"sv_map \\\"{{server.build.env.SERVER_MAP}}\\\"\",\r\n \"sv_register\": \"sv_register {{server.build.env.SERVER_REGISTER}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \" server name is \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\napt update\r\napt -y install curl xz-utils tar\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n A=$(curl -sSL https:\/\/ddnet.org\/downloads\/ | grep -io '<a href=['\"'\"'\"][^\"'\"'\"']*['\"'\"'\"]' | grep linux_x86_64.tar.xz | awk '{print $2}' |cut -c7- | sed 's\/.$\/\/' | head -1)\r\n DOWNLOAD_URL=https:\/\/ddnet.org\/downloads\/${A}\r\nelse\r\n A=$(curl -sSL https:\/\/ddnet.org\/downloads\/ | grep -io '<a href=['\"'\"'\"][^\"'\"'\"']*['\"'\"'\"]' | grep linux_x86_64.tar.xz | awk '{print $2}' |cut -c7- | sed 's\/.$\/\/' | grep -i ${VERSION})\r\n DOWNLOAD_URL=https:\/\/ddnet.org\/downloads\/${A}\r\nfi\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\ncurl -sSL -o ddnet_linux_x86_64.tar.xz ${DOWNLOAD_URL}\r\ntar -xf ddnet_linux_x86_64.tar.xz --strip-components=1\r\nrm ddnet_linux_x86_64.tar.xz\r\n\r\ncd \/mnt\/server\/data\r\nsed -i 's\/#\\(sv_port [0-9]\\+\\)\/\\1\/' autoexec_server.cfg\r\n\r\ncd \/mnt\/server\r\necho \"# Check \/data\/autoexec_config.cfg for more info!\" >> myServerconfig.cfg\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Game Version",
|
||||
"description": "Latest is the default, put \"nightly\" for beta, or enter the version number, for example \"17.0\".",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server name",
|
||||
"description": "The name of the server",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "My DDNet server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server password",
|
||||
"description": "Password for joining the server, empty for no password",
|
||||
"env_variable": "SERVER_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:64",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server map",
|
||||
"description": "Map to start server with",
|
||||
"env_variable": "SERVER_MAP",
|
||||
"default_value": "Tutorial",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:64",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Register server",
|
||||
"description": "Register the server to the server list.\r\n0 is disabled\r\nipv4 is enabled listening ipv4",
|
||||
"env_variable": "SERVER_REGISTER",
|
||||
"default_value": "0",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:0,ipv4",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -18,3 +18,5 @@ ET: Legacy requires a single port
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 27960 |
|
||||
|---------|---------|
|
||||
| Server | 27950 |
|
||||
|
@ -24,3 +24,7 @@ Factorio requires a single port
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 34197 |
|
||||
|
||||
## ARM64
|
||||
There is a factorio egg for ARM64 machines that uses the box64 emulator.
|
||||
If you are on **AMD64** Like most of you download the normal non ARM64 egg!
|
192
game_eggs/factorio/factorio/egg-factorio-a-r-m64.json
Normal file
192
game_eggs/factorio/factorio/egg-factorio-a-r-m64.json
Normal file
@ -0,0 +1,192 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-11-18T10:08:36+01:00",
|
||||
"name": "Factorio ARM64",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "The vanilla Factorio server.\r\n\r\nhttps:\/\/www.factorio.com\/",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Box64": "ghcr.io\/parkervcp\/yolks:box64"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "if [ ! -f \".\/saves\/{{SAVE_NAME}}.zip\" ]; then box64 .\/bin\/x64\/factorio --create .\/saves\/{{SAVE_NAME}}.zip --map-gen-settings data\/map-gen-settings.json --map-settings data\/map-settings.json; fi;\r\nbox64 .\/bin\/x64\/factorio --port {{SERVER_PORT}} --server-settings data\/server-settings.json --start-server saves\/{{SAVE_NAME}}.zip",
|
||||
"config": {
|
||||
"files": "{\r\n \"data\/server-settings.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"name\": \"{{server.build.env.SERVER_NAME}}\",\r\n \"description\": \"{{server.build.env.SERVER_DESC}}\",\r\n \"max_players\": \"{{server.build.env.MAX_SLOTS}}\",\r\n \"username\": \"{{server.build.env.SERVER_USERNAME}}\",\r\n \"token\": \"{{server.build.env.SERVER_TOKEN}}\",\r\n \"autosave_interval\": \"{{server.build.env.SAVE_INTERVAL}}\",\r\n \"autosave_slots\": \"{{server.build.env.SAVE_SLOTS}}\",\r\n \"afk_autokick_interval\": \"{{server.build.env.AFK_KICK}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Hosting game at\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "\/quit"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Factorio Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update \r\napt install -y curl tar xz-utils jq\r\n\r\nVERSION_JSON=$(curl -sSL https:\/\/factorio.com\/api\/latest-releases)\r\n\r\nlatest_stable=$(echo $VERSION_JSON | jq -r '.stable.headless')\r\nlatest_experimental=$(echo $VERSION_JSON | jq -r '.experimental.headless')\r\n\r\nif [ -z \"${FACTORIO_VERSION}\" ] || [ \"${FACTORIO_VERSION}\" == \"latest\" ]; then\r\n DL_VERSION=$latest_stable\r\nelif [ \"${FACTORIO_VERSION}\" == \"experimental\" ]; then\r\n DL_VERSION=$latest_experimental\r\nelse\r\n DL_VERSION=${FACTORIO_VERSION}\r\nfi\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\necho -e \"\\n running 'curl -sL https:\/\/www.factorio.com\/get-download\/${DL_VERSION}\/headless\/linux64 -o factorio-${DL_VERSION}' \\n\"\r\n\r\ncurl -sL https:\/\/www.factorio.com\/get-download\/${DL_VERSION}\/headless\/linux64 -o factorio-${DL_VERSION}\r\n\r\ntar -xf factorio-${DL_VERSION} --strip-components=1 -C \/mnt\/server\r\n\r\nrm factorio-${DL_VERSION}\r\n\r\nif [ -e data\/map-gen-settings.json ]; then\r\n echo \"map-gen exists\"\r\nelse\r\n echo \"copying map-gen default settings\"\r\n mv data\/map-gen-settings.example.json data\/map-gen-settings.json\r\nfi\r\n\r\nif [ -e data\/server-settings.json ]; then\r\n echo \"server settings exists\"\r\nelse\r\n echo \"copying server default settings\"\r\n mv data\/server-settings.example.json data\/server-settings.json\r\nfi\r\n\r\nif [ -e map-settings.json ]; then\r\n echo \"map settings exists\"\r\nelse\r\n echo \"copying map default settings\"\r\n mv data\/map-settings.example.json data\/map-settings.json\r\nfi\r\n\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Factorio Version",
|
||||
"description": "Which version of Factorio to install and use.",
|
||||
"env_variable": "FACTORIO_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|between:3,12",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Maximum Slots",
|
||||
"description": "Total number of slots to allow on the server.",
|
||||
"env_variable": "MAX_SLOTS",
|
||||
"default_value": "20",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|digits_between:1,3",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Save Name",
|
||||
"description": "The save name for the server.",
|
||||
"env_variable": "SAVE_NAME",
|
||||
"default_value": "gamesave",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "alpha_dash|between:1,100",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Token",
|
||||
"description": "Your factorio.com token, it is required for your server to be visible in the public server list.",
|
||||
"env_variable": "SERVER_TOKEN",
|
||||
"default_value": "undefined",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "alpha_num|max:100",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "Name of the game as it will appear in the game listing",
|
||||
"env_variable": "SERVER_NAME",
|
||||
"default_value": "Factorio Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:100",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Description",
|
||||
"description": "Description of the game that will appear in the listing.",
|
||||
"env_variable": "SERVER_DESC",
|
||||
"default_value": "Description",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:200",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Username",
|
||||
"description": "Username used for the server",
|
||||
"env_variable": "SERVER_USERNAME",
|
||||
"default_value": "unnamed",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:40",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Auto Save Interval",
|
||||
"description": "Time between auto saves specified in minutes",
|
||||
"env_variable": "SAVE_INTERVAL",
|
||||
"default_value": "10",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|digits_between:1,3",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Auto Save Slots",
|
||||
"description": "The number of auto saves to keep.",
|
||||
"env_variable": "SAVE_SLOTS",
|
||||
"default_value": "5",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|digits_between:1,3",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "AFK Kick",
|
||||
"description": "Time specified in minutes to kick AFK players.\r\n0 is off",
|
||||
"env_variable": "AFK_KICK",
|
||||
"default_value": "0",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|numeric|digits_between:1,3",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "BOX64_DYNAREC_SAFEFLAGS",
|
||||
"description": "",
|
||||
"env_variable": "BOX64_DYNAREC_SAFEFLAGS",
|
||||
"default_value": "0",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|in:0",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "BOX64_DYNAREC_BIGBLOCK",
|
||||
"description": "",
|
||||
"env_variable": "BOX64_DYNAREC_BIGBLOCK",
|
||||
"default_value": "2",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|in:2",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "BOX64_DYNAREC_FORWARD",
|
||||
"description": "",
|
||||
"env_variable": "BOX64_DYNAREC_FORWARD",
|
||||
"default_value": "1024",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|in:1024",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "BOX64_DYNAREC_CALLRET",
|
||||
"description": "",
|
||||
"env_variable": "BOX64_DYNAREC_CALLRET",
|
||||
"default_value": "1",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|in:1",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "BOX64_DYNAREC_FASTROUND",
|
||||
"description": "",
|
||||
"env_variable": "BOX64_DYNAREC_FASTROUND",
|
||||
"default_value": "0",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|in:0",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "BOX64_DYNAREC_ALIGNED_ATOMICS",
|
||||
"description": "",
|
||||
"env_variable": "BOX64_DYNAREC_ALIGNED_ATOMICS",
|
||||
"default_value": "1",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric|in:1",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,31 +1,42 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-02-09T11:53:05-08:00",
|
||||
"exported_at": "2023-02-23T17:52:24+01:00",
|
||||
"name": "Tachyon",
|
||||
"author": "alex.chang-lam@protonmail.com",
|
||||
"description": "A multiplayer version of FTL.",
|
||||
"features": null,
|
||||
"images": [
|
||||
"quay.io\/pterodactyl\/core:java-11"
|
||||
],
|
||||
"file_denylist": "",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar TachyonsCEServer.jar",
|
||||
"docker_images": {
|
||||
"Java_11": "ghcr.io\/pterodactyl\/yolks:java_11"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar TachyonsCEServer.jar",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"[Server] SERVER STARTED.\",\r\n \"userInteraction\": []\r\n}",
|
||||
"files": "{\r\n \"config.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"SERVER_PORT=\": \"SERVER_PORT={{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"[Server] SERVER STARTED.\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "\/exit"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#! \/bin\/bash\r\n\r\nGITHUB_PACKAGE=Dav-Edward\/TachyonsCE\r\nMATCH=TachyonsCE\r\n\r\napt update\r\napt install -y curl jq file unzip\r\n\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir -p \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\/\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\")\r\n\r\nif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" != \"Not Found\" ] && [[ -z \"${VERSION}\" || \"${VERSION}\" == \"latest\" ]]; then\r\n echo -e \"grabbing latest version\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" == \"Not Found\" ]; then\r\n ## emergency fallback if latest isn't found\r\n ## grabs the latest release even it it's a pre-release\r\n echo -e \"grabbing latest pre-release\"\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r '.[0].assets[].browser_download_url' | grep -i ${MATCH})\r\nelse\r\n echo -e \"grabbing version $VERSION\"\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n VALIDATED_URL=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\ncurl -sSL -o ${VALIDATED_URL##*\/} ${VALIDATED_URL}\r\n\r\nFILETYPE=$(file -F ',' ${VALIDATED_URL##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\nif [ \"$FILETYPE\" == \"gzip\" ]; then\r\n tar xzvf ${VALIDATED_URL##*\/}\r\nelif [ \"$FILETYPE\" == \"Zip\" ]; then\r\n unzip ${VALIDATED_URL##*\/}\r\nelif [ \"$FILETYPE\" == \"XZ\" ]; then\r\n tar xvf ${VALIDATED_URL##*\/}\r\nelse\r\n echo -e \"unknown filetype. Exiting\"\r\n # exit 2 \r\nfi\r\n\r\n#pull version and format folder name for renaming\r\nFOLDER=$(echo ${LATEST_JSON} | jq .tag_name | tr -d 'v\"')\r\n\r\n#move all server files out\r\ncp -r .\/TachyonsCE_${FOLDER}\/server\/* \/mnt\/server\r\n\r\n#remove zip and unneeded client-side and dev files\r\nrm -rf TachyonsCE_${FOLDER}\r\nrm ${VALIDATED_URL##*\/}\r\n\r\nchmod +x TachyonsCEServer.jar",
|
||||
"container": "debian:buster-slim",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y curl jq file unzip\r\n\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir -p \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\/\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/Dav-Edward\/TachyonsCE\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/Dav-Edward\/TachyonsCE\/releases\")\r\nMATCH=TachyonsCE\r\n\r\nif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" != \"Not Found\" ] && [[ -z \"${VERSION}\" || \"${VERSION}\" == \"latest\" ]]; then\r\n echo -e \"grabbing latest version\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})\r\nelif [ \"$(echo ${LATEST_JSON} | jq -r '.message')\" == \"Not Found\" ]; then\r\n ## emergency fallback if latest isn't found\r\n ## grabs the latest release even it it's a pre-release\r\n echo -e \"grabbing latest pre-release\"\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r '.[0].assets[].browser_download_url' | grep -i ${MATCH})\r\nelse\r\n echo -e \"grabbing version $VERSION\"\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url)\r\n fi\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n 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 --progress-bar -sSL -o ${DOWNLOAD_URL##*\/} ${DOWNLOAD_URL}\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 -o ${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\n#move all server files out\r\nmv .\/server\/* .\/\r\n\r\n#remove zip and unneeded client-side and dev files\r\nrm -rf server\/ JRE\/ client\/ *.zip\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
"variables": [
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:32",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -20,6 +20,9 @@ alt:V Multiplayer a third-party multiplayer modification for Grand Theft Auto: V
|
||||
[GTA SA:MP](https://www.sa-mp.com/)
|
||||
SA-MP is a free Massively Multiplayer Online game mod for the PC version of Rockstar Games Grand Theft Auto: San Andreas (tm).
|
||||
|
||||
[OpenMp](https://www.open.mp/)
|
||||
A multiplayer mod for Grand Theft Auto: San Andreas that is fully backwards compatible with San Andreas Multiplayer.
|
||||
|
||||
[MTA SA](https://mtasa.com/)
|
||||
What more could you want? Multi Theft Auto provides the best online Grand Theft Auto experience there is. Read on to find out more.
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
@ -1,5 +1,10 @@
|
||||
# FiveM
|
||||
|
||||
## Supported architecture
|
||||
|
||||
FiveM **ONLY** supports **amd64**. **arm64** is **NOT** supported (like Oracle free cloud)
|
||||
|
||||
|
||||
## Note on FiveM support from Pteroadactyl
|
||||
|
||||
Pterodactyl will not be providing support for FiveM. You are free to run a FiveM server but no support will be provided in the Pterodactyl Discord, check the discord annoucement below for details.
|
||||
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-07-19T11:53:00-04:00",
|
||||
"exported_at": "2023-02-19T12:54:36+01:00",
|
||||
"name": "FiveM",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "A new FiveM egg for the latest builds due to recent changes in FiveM",
|
||||
@ -22,7 +22,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# FiveM Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update -y\r\napt install -y tar xz-utils file jq\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\nCHANGELOGS_PAGE=$(curl -sSL https:\/\/changelogs-live.fivem.net\/api\/changelog\/versions\/linux\/server)\r\n\r\nif [[ \"${FIVEM_VERSION}\" == \"recommended\" ]] || [[ -z ${FIVEM_VERSION} ]]; then\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')\r\nelif [[ \"${FIVEM_VERSION}\" == \"latest\" ]]; then\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.latest_download')\r\nelse\r\n VERSION_LINK=$(echo -e \"${RELEASE_PAGE}\" | grep -Eo '\".*\/*.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 recommedned as the version requested was invalid.\"\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')\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 \"Skipping downloading default server config file as one already exists\"\r\nelse\r\n echo \"Downloading default fivem config\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/gta\/fivem\/server.cfg >>server.cfg\r\nfi\r\n\r\nmkdir -p logs\/\r\n\r\necho \"install complete\"",
|
||||
"script": "#!\/bin\/bash\r\n# FiveM Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update -y\r\napt install -y tar xz-utils file jq\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\nCHANGELOGS_PAGE=$(curl -sSL https:\/\/changelogs-live.fivem.net\/api\/changelog\/versions\/linux\/server)\r\n\r\nif [[ \"${FIVEM_VERSION}\" == \"recommended\" ]] || [[ -z ${FIVEM_VERSION} ]]; then\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')\r\nelif [[ \"${FIVEM_VERSION}\" == \"latest\" ]]; then\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.latest_download')\r\nelse\r\n VERSION_LINK=$(echo -e \"${RELEASE_PAGE}\" | grep -Eo '\".*\/*.tar.xz\"' | grep -Eo '\".*\/*.tar.xz\"' | sed 's\/\\\"\/\/g' | sed 's\/\\.\\\/\/\/1' | grep -i \"${FIVEM_VERSION}\" | grep -o =.* | tr -d '=')\r\n if [[ \"${VERSION_LINK}\" == \"\" ]]; then\r\n echo -e \"defaulting to recommedned as the version requested was invalid.\"\r\n DOWNLOAD_LINK=$(echo $CHANGELOGS_PAGE | jq -r '.recommended_download')\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 \"Skipping downloading default server config file as one already exists\"\r\nelse\r\n echo \"Downloading default fivem config\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/gta\/fivem\/server.cfg >>server.cfg\r\nfi\r\n\r\nmkdir -p logs\/\r\n\r\necho \"install complete\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -60,7 +60,7 @@
|
||||
},
|
||||
{
|
||||
"name": "fivem version",
|
||||
"description": "The fivem version that is to be installed. Invalid versions will default to recommended.\r\n\r\nAn example is `1383-e5ea040353ce1b8bc86e37982bf5d888938e3096`\r\n\r\nYou can get the latest version from here - https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/",
|
||||
"description": "The fivem version that is to be installed. Invalid versions will default to recommended.\r\n\r\nAn example is `6013-d8ae399d15680da569022f57ab7f2474d307c821`\r\n\r\nYou can get the latest version from here - https:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/",
|
||||
"env_variable": "FIVEM_VERSION",
|
||||
"default_value": "recommended",
|
||||
"user_viewable": true,
|
||||
@ -70,7 +70,7 @@
|
||||
},
|
||||
{
|
||||
"name": "Download Link",
|
||||
"description": "This is the link to download fivem from. This is only used in the install script.\r\n\r\nThe file you link to needs to be an fx.tar.zx file.\r\n\r\nExample:\r\nhttps:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/1626-8c06e8bc3ed7e6690c6c2d9e0b90e29df65b3ea6\/fx.tar.xz",
|
||||
"description": "This is the link to download fivem from. This is only used in the install script.\r\n\r\nThe file you link to needs to be an fx.tar.zx file.\r\n\r\nExample:\r\nhttps:\/\/runtime.fivem.net\/artifacts\/fivem\/build_proot_linux\/master\/6013-d8ae399d15680da569022f57ab7f2474d307c821\/fx.tar.xz",
|
||||
"env_variable": "DOWNLOAD_URL",
|
||||
"default_value": "",
|
||||
"user_viewable": false,
|
||||
|
@ -1,4 +1,4 @@
|
||||
### AUTOMATICALY SET BY PTERODACTYL ###
|
||||
### AUTOMATICALLY SET BY PTERODACTYL ###
|
||||
# Only change the IP if you're using a server with multiple network interfaces, otherwise change the port only.
|
||||
endpoint_add_tcp "0.0.0.0:30120"
|
||||
endpoint_add_udp "0.0.0.0:30120"
|
||||
|
@ -1,29 +1,29 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-05-25T15:27:15+02:00",
|
||||
"exported_at": "2023-11-13T18:18:13+01:00",
|
||||
"name": "Multi Theft Auto",
|
||||
"author": "info@six-gaming.com",
|
||||
"description": "What more could you want? Multi Theft Auto provides the best online Grand Theft Auto experience there is. Read on to find out more.",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io\/parkervcp\/yolks:ubuntu"
|
||||
],
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/games:mta": "ghcr.io\/parkervcp\/games:mta"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/mta-server64 --port {{SERVER_PORT}} --httpport {{SERVER_WEBPORT}} -n",
|
||||
"config": {
|
||||
"files": "{}",
|
||||
"startup": "{\r\n \"done\": \"Server started and is ready to accept connections\"\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "shutdown"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\napt -y update\r\napt -y --no-install-recommends install curl unzip lib32gcc1 ca-certificates\r\n\r\ncd \/tmp\r\ncurl -L -o multitheftauto_linux_x64.tar.gz https:\/\/linux.mtasa.com\/dl\/multitheftauto_linux_x64.tar.gz\r\ncurl -L -o mta-baseconfig.tar.gz https:\/\/linux.mtasa.com\/dl\/baseconfig.tar.gz\r\ncurl -L -o mtasa-resources-latest.zip http:\/\/mirror.mtasa.com\/mtasa\/resources\/mtasa-resources-latest.zip\r\n\r\nmkdir -p \/mnt\/server\r\ntar -xvf multitheftauto_linux_x64.tar.gz\r\ncp -rf multitheftauto_linux_x64\/* \/mnt\/server\r\n\r\nif [ ! -f \/mnt\/server\/x64\/libmysqlclient.so.16 ]; then\r\n curl -L http:\/\/nightly.mtasa.com\/files\/libmysqlclient.so.16 -o \/mnt\/server\/x64\/libmysqlclient.so.16\r\nfi\r\n\r\nmkdir -p \/mnt\/server\/mods\/deathmatch\/resources\r\nunzip -o -d \/mnt\/server\/mods\/deathmatch\/resources mtasa-resources-latest.zip\r\n\r\nmkdir -p \/mnt\/server-conf\r\ntar -xvf mta-baseconfig.tar.gz\r\ncp -rf baseconfig\/* \/mnt\/server\/mods\/deathmatch\r\n\r\nchown -R root:root \/mnt\r\n\r\nexport HOME=\/mnt\/server\r\necho \"done\"",
|
||||
"container": "ubuntu:18.04",
|
||||
"script": "#!\/bin\/bash\r\n\r\ncd \/tmp\r\ncurl -L -o multitheftauto_linux_x64.tar.gz https:\/\/linux.mtasa.com\/dl\/multitheftauto_linux_x64.tar.gz\r\ncurl -L -o mta-baseconfig.tar.gz https:\/\/linux.mtasa.com\/dl\/baseconfig.tar.gz\r\ncurl -L -o mtasa-resources-latest.zip http:\/\/mirror.mtasa.com\/mtasa\/resources\/mtasa-resources-latest.zip\r\n\r\nmkdir -p \/mnt\/server\r\ntar -xvf multitheftauto_linux_x64.tar.gz\r\ncp -rf multitheftauto_linux_x64\/* \/mnt\/server\r\n\r\nif [ ! -f \/mnt\/server\/x64\/libmysqlclient.so.16 ]; then\r\n curl -L http:\/\/nightly.mtasa.com\/files\/libmysqlclient.so.16 -o \/mnt\/server\/x64\/libmysqlclient.so.16\r\nfi\r\n\r\nmkdir -p \/mnt\/server\/mods\/deathmatch\/resources\r\nunzip -o -d \/mnt\/server\/mods\/deathmatch\/resources mtasa-resources-latest.zip\r\n\r\ntar -xvf mta-baseconfig.tar.gz\r\ncp -rf baseconfig\/* \/mnt\/server\/mods\/deathmatch\r\n\r\nchown -R root:root \/mnt\r\n\r\nexport HOME=\/mnt\/server\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:ubuntu",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -35,7 +35,8 @@
|
||||
"default_value": "22005",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|numeric"
|
||||
"rules": "required|numeric",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
10
game_eggs/gta/openmp/README.md
Normal file
10
game_eggs/gta/openmp/README.md
Normal file
@ -0,0 +1,10 @@
|
||||
# OpenMp
|
||||
|
||||
The [OpenMp](https://www.open.mp/) GTA San Andreas dedicated server
|
||||
|
||||
## Server Ports
|
||||
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 25570 |
|
93
game_eggs/gta/openmp/config.json
Normal file
93
game_eggs/gta/openmp/config.json
Normal file
@ -0,0 +1,93 @@
|
||||
{
|
||||
"announce": true,
|
||||
"artwork": {
|
||||
"cdn": "",
|
||||
"enable": true,
|
||||
"models_path": "models"
|
||||
},
|
||||
"chat_input_filter": true,
|
||||
"enable_query": true,
|
||||
"game": {
|
||||
"allow_interior_weapons": true,
|
||||
"chat_radius": 200.0,
|
||||
"death_drop_amount": 0,
|
||||
"gravity": 0.008,
|
||||
"group_player_objects": false,
|
||||
"lag_compensation_mode": 1,
|
||||
"map": "",
|
||||
"mode": "",
|
||||
"nametag_draw_radius": 70.0,
|
||||
"player_marker_draw_radius": 250.0,
|
||||
"player_marker_mode": 1,
|
||||
"time": 12,
|
||||
"use_all_animations": false,
|
||||
"use_chat_radius": false,
|
||||
"use_entry_exit_markers": true,
|
||||
"use_instagib": false,
|
||||
"use_manual_engine_and_lights": false,
|
||||
"use_nametag_los": true,
|
||||
"use_nametags": true,
|
||||
"use_player_marker_draw_radius": false,
|
||||
"use_player_ped_anims": false,
|
||||
"use_stunt_bonuses": true,
|
||||
"use_vehicle_friendly_fire": false,
|
||||
"use_zone_names": false,
|
||||
"vehicle_respawn_time": 10000,
|
||||
"weather": 10
|
||||
},
|
||||
"language": "",
|
||||
"logging": {
|
||||
"enable": true,
|
||||
"log_chat": true,
|
||||
"log_cookies": false,
|
||||
"log_deaths": true,
|
||||
"log_queries": false,
|
||||
"log_sqlite": false,
|
||||
"log_sqlite_queries": false,
|
||||
"timestamp_format": "[%Y-%m-%dT%H:%M:%S%z]",
|
||||
"use_prefix": true,
|
||||
"use_timestamp": true
|
||||
},
|
||||
"max_bots": 0,
|
||||
"max_players": 50,
|
||||
"name": "open.mp server",
|
||||
"network": {
|
||||
"acks_limit": 3000,
|
||||
"aiming_sync_rate": 30,
|
||||
"allow_037_clients": true,
|
||||
"bind": "",
|
||||
"cookie_reseed_time": 300000,
|
||||
"in_vehicle_sync_rate": 30,
|
||||
"limits_ban_time": 60000,
|
||||
"message_hole_limit": 3000,
|
||||
"messages_limit": 500,
|
||||
"minimum_connection_time": 0,
|
||||
"mtu": 576,
|
||||
"multiplier": 10,
|
||||
"on_foot_sync_rate": 30,
|
||||
"player_marker_sync_rate": 2500,
|
||||
"player_timeout": 10000,
|
||||
"port": 7777,
|
||||
"public_addr": "",
|
||||
"stream_radius": 200.0,
|
||||
"stream_rate": 1000,
|
||||
"time_sync_rate": 30000,
|
||||
"use_lan_mode": false
|
||||
},
|
||||
"password": "",
|
||||
"pawn": {
|
||||
"legacy_plugins": [],
|
||||
"main_scripts": [
|
||||
"test 1"
|
||||
],
|
||||
"side_scripts": []
|
||||
},
|
||||
"rcon": {
|
||||
"allow_teleport": false,
|
||||
"enable": false,
|
||||
"password": "changeme"
|
||||
},
|
||||
"sleep": 5.0,
|
||||
"use_dyn_ticks": true,
|
||||
"website": "open.mp"
|
||||
}
|
52
game_eggs/gta/openmp/egg-open-m-p.json
Normal file
52
game_eggs/gta/openmp/egg-open-m-p.json
Normal file
@ -0,0 +1,52 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-07-01T11:37:31+02:00",
|
||||
"name": "OpenMP",
|
||||
"author": "vedrancappone@gmail.com",
|
||||
"description": "A multiplayer mod for Grand Theft Auto: San Andreas that is fully backwards compatible with San Andreas Multiplayer.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Samp": "ghcr.io\/parkervcp\/games:samp"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/omp-server",
|
||||
"config": {
|
||||
"files": "{\r\n \"config.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"network.port\": \"{{server.build.default.port}}\",\r\n \"rcon.password\": \"{{server.build.env.RCON_PASSWORD}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"started on port\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "exit"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\napt -y install curl git jq tar\r\n\r\n## get release info and download links\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/openmultiplayer\/open.mp\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/openmultiplayer\/open.mp\/releases\")\r\nMATCH=open.mp-linux-x86-dynssl\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(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_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | grep -linux-x86 | head -1)\r\n fi\r\nfi\r\n\r\necho \"running: curl -sSL -o openmp.tar.gz ${DOWNLOAD_URL}\"\r\ncurl -sSL -o openmp.tar.gz ${DOWNLOAD_URL}\r\n\r\nmkdir -p \/mnt\/server\r\ntar -xzvf openmp.tar.gz --strip-components=1 -C \/mnt\/server\/\r\n\r\ncd \/mnt\/server || exit\r\n\r\necho \"creating default config\"\r\n\r\nif [ -e config.json ]; then\r\n echo \"server config file exists\"\r\nelse\r\n echo \"Downloading default OpenMp config\"\r\n curl https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/gta\/openmp\/config.json >> config.json\r\nfi\r\n\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "RCON Password",
|
||||
"description": "The password for RCON",
|
||||
"env_variable": "RCON_PASSWORD",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:32",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "The version you want to install",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
# SA:MP
|
||||
|
||||
The [SA:MP](https://www.sa-mp.com/) GTA San Andreas dedicated server
|
||||
The [SA:MP](https://www.sa-mp.mp/) GTA San Andreas dedicated server
|
||||
|
@ -1,26 +1,52 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1"
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2020-10-28T13:03:46+00:00",
|
||||
"exported_at": "2023-10-19T18:53:04+02:00",
|
||||
"name": "SA-MP",
|
||||
"author": "bl4ckspr4y@protonmail.com",
|
||||
"description": "SA-MP is a free Massively Multiplayer Online game mod for the PC version of Rockstar Games Grand Theft Auto: San Andreas (tm).",
|
||||
"image": "ghcr.io\/parkervcp\/games:samp",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Samp": "ghcr.io\/parkervcp\/games:samp"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/samp03svr",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"port\": \"port {{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Started server on \",\r\n \"userInteraction\": []\r\n}",
|
||||
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"samp.log\"\r\n}",
|
||||
"stop": "^C"
|
||||
"files": "{\r\n \"server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"port\": \"port {{server.build.default.port}}\",\r\n \"rcon_password\": \"rcon_password {{server.build.env.RCON_PASS}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Started server on \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\napt -y update\r\napt -y --no-install-recommends install curl unzip lib32gcc1 ca-certificates\r\n\r\ncd \/tmp\r\ncurl -sSL -o samp.tar.gz http:\/\/files.sa-mp.com\/samp037svr_R2-1.tar.gz\r\n\r\nmkdir -p \/mnt\/server\r\ntar -xzvf samp.tar.gz -C \/mnt\/server\/\r\ncp -r \/mnt\/server\/samp03\/* \/mnt\/server\r\nrm -rf \/mnt\/server\/samp03\/\r\ncd \/mnt\/server\r\nsed -i '3d' \/mnt\/server\/server.cfg\r\necho \"rcon_password changemeplease\" >> \/mnt\/server\/server.cfg\r\n\r\nchown -R root:root \/mnt\r\n\r\nexport HOME=\/mnt\/server",
|
||||
"container": "ubuntu:16.04",
|
||||
"script": "#!\/bin\/bash\r\n\r\n# Check if VERSION is set and starts with an uppercase \"R\"\r\nif [[ -n \"$VERSION\" && \"$VERSION\" == R* ]]; then\r\n VERSION=\"0.3.7\"\r\n echo \"Updated VERSION: $VERSION\"\r\nfi\r\n\r\ncd \/tmp || exit\r\necho \"running: curl -sSL -o samp.tar.gz https:\/\/sampcenter.com\/download\/server\/linux\/${VERSION}.tar.gz\"\r\ncurl -sSL -o samp.tar.gz https:\/\/sampcenter.com\/download\/server\/linux\/${VERSION}.tar.gz\r\n\r\nmkdir -p \/mnt\/server\r\ntar -xzvf samp.tar.gz --strip-components=1 -C \/mnt\/server\/\r\n\r\ncd \/mnt\/server || exit\r\n\r\nsed -i '3d' \/mnt\/server\/server.cfg\r\necho \"rcon_password ${RCON_PASS}\" >> \/mnt\/server\/server.cfg\r\n\r\nchown -R root:root \/mnt\r\n\r\nexport HOME=\/mnt\/server\r\n\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": []
|
||||
"variables": [
|
||||
{
|
||||
"name": "Version",
|
||||
"description": "Example: if the download url is https:\/\/sampcenter.com\/download\/server\/linux\/0.3.7.tar.gz then the variable should be: `0.3.7`",
|
||||
"env_variable": "Version",
|
||||
"default_value": "0.3.7",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:32",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Rcon password",
|
||||
"description": "The password used for rcon",
|
||||
"env_variable": "RCON_PASS",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:32",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
19
game_eggs/hogwarp/README.md
Normal file
19
game_eggs/hogwarp/README.md
Normal file
@ -0,0 +1,19 @@
|
||||
# HogWarp
|
||||
|
||||
HogWarp is a Work In Progress mod that adds Multiplayer functionality to Hogwarts Legacy, similar to FiveM for GTAV
|
||||
|
||||
This Mod requires a API key only obtainable through their Discord, see the Startup Variable **API KEY** for more info.
|
||||
- Some features of the mod (Public servers / higher player counts) require a Patreon level. See their Patreon here: https://www.patreon.com/tiltedphoques
|
||||
|
||||
Plugins as of now **do not work** as Wine and Winetricks will break the DLL it runs off of. This will likely stay the case until a full Linux release
|
||||
|
||||
## Server Port
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 11778 |
|
||||
|
||||
## Hardware Requirements
|
||||
| Storage | RAM | CPU |
|
||||
|---------|---------|-----|
|
||||
| 1.5GiB | 250MiB | 🥔 |
|
||||
|
122
game_eggs/hogwarp/egg-hogwarp.json
Normal file
122
game_eggs/hogwarp/egg-hogwarp.json
Normal file
@ -0,0 +1,122 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-11-14T12:12:21-05:00",
|
||||
"name": "Hogwarp",
|
||||
"author": "imkringle@proton.me",
|
||||
"description": "A Pterodactyl egg for the Hogwarts Legacy mod Hogwarp - For more info see their Nexus: https:\/\/www.nexusmods.com\/hogwartslegacy\/mods\/1378",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:wine_latest": "ghcr.io\/parkervcp\/yolks:wine_latest"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "wine HogWarpServer.exe",
|
||||
"config": {
|
||||
"files": "{\r\n \"config.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"ApiKey\": \"{{env.API_KEY}}\",\r\n \"Name\": \"{{env.SERV_NAME}}\",\r\n \"Port\": \"{{server.build.default.port}}\",\r\n \"Description\": \"{{env.SERV_DESC}}\",\r\n \"MaxPlayer\": \"{{env.MAX_PLAYERS}}\",\r\n \"IconUrl\": \"{{env.SERV_ICON}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \" [HogWarpServer] \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "^^C"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#Hogwarp Install\r\napt update -y\r\napt install -y curl file unzip\r\n\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir -p \/mnt\/server\/\r\nfi\r\n\r\ncd \/mnt\/server\/\r\n\r\n# Validate link\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 -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*\/}\r\n\r\n# Unpack Server zip\r\nFILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*\/} | cut -d',' -f2 | cut -d' ' -f2)\r\n\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\ncd \/mnt\/server\/\r\n\r\n#Create the Plugins folder\r\nmkdir plugins\/\r\n\r\n# Check for a config.json, if it is missing; create it\r\nTARGET_FILE=\"config.json\"\r\n\r\nif test -f \"$TARGET_FILE\"; then\r\n echo \"$TARGET_FILE exists. Skipping config install\"\r\nelse\r\n echo \"$TARGET_FILE does not exist. Installing!\"\r\n curl -sSL -o config.json https:\/\/pteropaste.com\/hy2d48dbhtdd\/\r\n echo \"$TARGET_FILE has been installed\"\r\nfi\r\n\r\n\r\n## Install End\r\necho \"-----------------------------------------\"\r\necho \"Hogwarp Is Installed!\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Wine Tricks",
|
||||
"description": "",
|
||||
"env_variable": "WINETRICKS_RUN",
|
||||
"default_value": "",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Hogwarp API Key",
|
||||
"description": "A API required to boot - https:\/\/presence.hogwarp.com\/login\r\n- If not set on install it will fail. Set API Key then Reinstall Files",
|
||||
"env_variable": "API_KEY",
|
||||
"default_value": "CHANGEME",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "A name that displays on the Hogwarp list",
|
||||
"env_variable": "SERV_NAME",
|
||||
"default_value": "Ptero Hogwarp Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "WineARCH",
|
||||
"description": "Arch type for Wine",
|
||||
"env_variable": "WINEARCH",
|
||||
"default_value": "win64",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Max Players",
|
||||
"description": "Max players for a server, this depends on your Patreon level for Hogwarp\r\nhttps:\/\/www.patreon.com\/tiltedphoques - ( 4, 8, 16, No Limit ) In that order.",
|
||||
"env_variable": "MAX_PLAYERS",
|
||||
"default_value": "4",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Icon URL",
|
||||
"description": "The icon that displays on Hogwarps multiplayer listing",
|
||||
"env_variable": "SERV_ICON",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Description",
|
||||
"description": "The description that shows on the Multiplayer list",
|
||||
"env_variable": "SERV_DESC",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Download URL",
|
||||
"description": "URL to pull the files from\r\n- Files can be found in their Discord (https:\/\/discord.com\/invite\/hogwarp). Default URL will pull from there as well\r\n- These files can be outdated! Be sure to check for an update in the event it has a version mismatch with the client.",
|
||||
"env_variable": "DOWNLOAD_URL",
|
||||
"default_value": "https:\/\/cdn.discordapp.com\/attachments\/1076580539751993444\/1118295980597575810\/Server.zip",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "WINEDEBUG",
|
||||
"description": "",
|
||||
"env_variable": "WINEDEBUG",
|
||||
"default_value": "-all",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "nullable",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
12
game_eggs/ksp/README.md
Normal file
12
game_eggs/ksp/README.md
Normal file
@ -0,0 +1,12 @@
|
||||
# Kerbal Space Program
|
||||
|
||||
[Dark Multiplayer](https://d-mp.org/)
|
||||
Dark Multiplayer is an up-to-date mod adding the long awaited multiplayer feature to Kerbal Space Program while including support for other mods!
|
||||
|
||||
## Server Ports
|
||||
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 6702 |
|
92
game_eggs/ksp/egg-k-s-p-d-m-p.json
Normal file
92
game_eggs/ksp/egg-k-s-p-d-m-p.json
Normal file
@ -0,0 +1,92 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-09-22T19:54:35+02:00",
|
||||
"name": "KSP DMP",
|
||||
"author": "rufanyin29@gmail.com",
|
||||
"description": "Dark Multiplayer mod server for Kerbal Space Program",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Mono": "ghcr.io\/parkervcp\/yolks:mono_latest"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "mono DMPServer.exe",
|
||||
"config": {
|
||||
"files": "{\r\n \"Config\/Settings.txt\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"port\": \"{{server.build.default.port}}\",\r\n \"modpackMode\": \"{{server.build.env.MODPACKMODE}}\",\r\n \"warpMode\": \"{{server.build.env.WARPMODE}}\",\r\n \"gameMode\": \"{{server.build.env.GAMEMODE}}\",\r\n \"gameDifficulty\": \"{{server.build.env.DIFFICULTY}}\",\r\n \"whitelisted\": \"{{server.build.env.WHITELIST}}\",\r\n \"serverName\": \"{{server.build.env.SERVERNAME}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Ready!\"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "\/exit"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nV=$(curl -s https:\/\/d-mp.org\/downloads | grep \"DMP Server\" | awk -F 'href=\"' 'NR==2 {print $2}' | awk -F '\"' '{print $1}') # \/builds\/release\/v0.3.8.3\/DMPServer.zip\r\n\r\necho \"Download link: https:\/\/d-mp.org${V}\"\r\ncurl -sSL -o DMPServer.zip https:\/\/d-mp.org${V}\r\n\r\nunzip -o DMPServer.zip\r\nmv DMPServer\/* .\/\r\n\r\nrm -rf DMPServer\r\nrm DMPServer.zip\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Mod Pack Mode",
|
||||
"description": "Specify the modpack type.",
|
||||
"env_variable": "MODPACKMODE",
|
||||
"default_value": "NONE",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:NONE,CKAN,GAMEDATA",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Warp Mode",
|
||||
"description": "Specify the warp type.",
|
||||
"env_variable": "WARPMODE",
|
||||
"default_value": "SUBSPACE",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:MCW_FORCE,MCW_VOTE,MCW_LOWEST,SUBSPACE_SIMPLE,SUBSPACE,NONE",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Game Mode",
|
||||
"description": "Specify the game type.",
|
||||
"env_variable": "GAMEMODE",
|
||||
"default_value": "SANDBOX",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:SANDBOX,CAREER,SCIENCE",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Game Difficulty",
|
||||
"description": "Specify the gameplay difficulty of the server.",
|
||||
"env_variable": "DIFFICULTY",
|
||||
"default_value": "NORMAL",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:EASY,NORMAL,MODERATE,HARD,CUSTOM",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Whitelisted",
|
||||
"description": "Enable white-listing.",
|
||||
"env_variable": "WHITELIST",
|
||||
"default_value": "False",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|in:True,False",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
"description": "Name of the server.",
|
||||
"env_variable": "SERVERNAME",
|
||||
"default_value": "DMP Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:48",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -15,19 +15,23 @@ It’s set in infinitely-generated worlds of wide open terrain - icy mountains,
|
||||
## [Java](java) Servers for Java Minecraft
|
||||
|
||||
* [Cuberite](java/cuberite)
|
||||
* [CurseForge](java/curseforge)
|
||||
* [Fabric](java/fabric)
|
||||
* [Feather](java/feather)
|
||||
* [Forge](java/forge)
|
||||
* [Forge](java/forge/forge)
|
||||
* [CusreForge Generic](java/forge/curseforge-generic)
|
||||
* [Feed The Beast](java/ftb)
|
||||
* [Glowstone](java/glowstone)
|
||||
* [Limbo](java/limbo)
|
||||
* [Krypton](java/krypton)
|
||||
* [Magma](java/magma)
|
||||
* [Modrinth](java/modrinth)
|
||||
* [Mohist](java/mohist)
|
||||
* [NanoLimbo](java/nanolimbo)
|
||||
* [Paper](java/paper)
|
||||
* [Folia](java/folia)
|
||||
* [Purpur](java/purpur)
|
||||
* [Quilt](java/quilt/)
|
||||
* [Spigot](java/spigot)
|
||||
* [SpongeForge](java/spongeforge)
|
||||
* [SpongeVanilla](java/spongevanilla)
|
||||
@ -42,7 +46,6 @@ It’s set in infinitely-generated worlds of wide open terrain - icy mountains,
|
||||
* [GeyserMC](proxy/cross_platform/geyser)
|
||||
* [Waterdog](proxy/cross_platform/waterdog)
|
||||
* [Java](proxy/java)
|
||||
* [FlameCord](proxy/java/flamecord)
|
||||
* [Travertine](proxy/java/travertine)
|
||||
* [Velocity](proxy/java/velocity)
|
||||
* [VIAaas](proxy/java/viaaas)
|
||||
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-12-11T19:37:36+08:00",
|
||||
"exported_at": "2023-05-17T20:11:37+02:00",
|
||||
"name": "Liteloader Bedrock Dedicated Server",
|
||||
"author": "frizth_tatierra@informatics.edu.ph",
|
||||
"description": "LiteLoaderBDS - Epoch-making & Cross-language Bedrock Dedicated Servers Plugin Loader\r\n\r\nLiteLoaderBDS is an unofficial plugin loader that provides basic API support for Bedrock Dedicated Server, with a massive API, lots of packed utility interfaces, a rich event system and powerful basic interface support.",
|
||||
@ -13,7 +13,7 @@
|
||||
"ghcr.io\/parkervcp\/yolks:wine_staging": "ghcr.io\/parkervcp\/yolks:wine_staging"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/lae-ll-launcher",
|
||||
"startup": ".\/lae-ll-launcher bedrock_server_mod.exe",
|
||||
"config": {
|
||||
"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 \"max-players\": \"{{server.build.env.MAXPLAYERS}}\",\r\n \"level-name\": \"{{server.build.env.WORLDNAME}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"IPv4 supported\"\r\n}",
|
||||
@ -22,7 +22,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Liteloader First-time Install Script\r\n\r\napk update\r\napk add gzip\r\ncd \/mnt\/server\r\n\r\n# Download Minecraft BDS\r\nRANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n\r\nif [ -z \"${BDS_VERSION}\" ] || [ \"${BDS_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n curl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -H \"Accept-Encoding: gzip, deflate\" -o versions.html.gz https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\r\n DOWNLOAD_URL=$(zgrep -o 'https:\/\/minecraft.azureedge.net\/bin-win\/[^\"]*' versions.html.gz)\r\nelse \r\n echo -e \"\\n Downloading ${BDS_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-win\/bedrock-server-$BDS_VERSION.zip\r\nfi\r\n\r\nDOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5) # Retrieve archive name\r\n\r\necho -e \"Downloading files from: $DOWNLOAD_URL\"\r\n\r\ncurl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $DOWNLOAD_FILE\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $DOWNLOAD_FILE\r\nrm versions.html.gz\r\n\r\n# Download LiteLoaderBDS\r\nif [ -z \"${LL_VERSION}\" ] || [ \"${LL_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest LiteLoaderBDS from GitHub\"\r\n curl -s https:\/\/api.github.com\/repos\/LiteLDev\/LiteLoaderBDS\/releases\/latest | grep \"browser_download_url.*LiteLoader-.*zip\" | cut -d : -f 2,3 | tr -d \\\" | wget -i - -O LiteLoader.zip\r\nelse \r\n echo -e \"\\n Downloading ${LL_VERSION} LiteLoaderBDS from GitHub\"\r\n wget https:\/\/github.com\/LiteLDev\/LiteLoaderBDS\/releases\/download\/${LL_VERSION}\/LiteLoader-${LL_VERSION}.zip -O LiteLoader.zip\r\nfi\r\n\r\n# Downlaoding Launcher and finishing touches\r\nwget https:\/\/io.ivampiresp.com\/d\/Software\/MCServer\/BDS\/LiteLoader\/lae-ll-launcher\r\nchmod +x lae-ll-launcher\r\nunzip -o LiteLoader.zip\r\nrm LiteLoader.zip\r\necho \"Finished Downloading Liteloader...\"",
|
||||
"script": "#!\/bin\/bash\r\n# Liteloader First-time Install Script\r\n\r\napk update\r\napk add gzip jq curl wine\r\ncd \/mnt\/server\r\n\r\nfor file in *; do\r\n if [ \"$file\" != \"allowlist.json\" ] && [ \"$file\" != \"permissions.json\" ] && [ \"$file\" != \"server.properties\" ] && [ \"$file\" != \"plugins\" ] && [ \"$file\" != \"world\" ]; then\r\n if [ -d \"$file\" ]; then\r\n rm -rf \"$file\" # Remove directories recursively\r\n else\r\n rm \"$file\" # Remove files\r\n fi\r\n fi\r\ndone\r\n\r\n# Download Minecraft BDS\r\nRANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n\r\nif [ -z \"${BDS_VERSION}\" ] || [ \"${BDS_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n curl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -H \"Accept-Encoding: gzip, deflate\" -o versions.html.gz https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\r\n DOWNLOAD_URL=$(zgrep -o 'https:\/\/minecraft.azureedge.net\/bin-win\/[^\"]*' versions.html.gz)\r\nelse \r\n echo -e \"\\n Downloading ${BDS_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-win\/bedrock-server-$BDS_VERSION.zip\r\nfi\r\n\r\nDOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5) # Retrieve archive name\r\n\r\necho -e \"Downloading files from: $DOWNLOAD_URL\"\r\n\r\ncurl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $DOWNLOAD_FILE\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $DOWNLOAD_FILE\r\nrm versions.html.gz\r\n\r\n\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/LiteLDev\/LiteLoaderBDS\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/LiteLDev\/LiteLoaderBDS\/releases\")\r\n\r\nif [ -z \"${LL_VERSION}\" ] || [ \"${LL_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest LiteLoaderBDS from GitHub\"\r\n DOWNLOAD_GIT_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | head -1)\r\nelse\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${LL_VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n echo -e \"\\n Downloading ${LL_VERSION} LiteLoaderBDS from GitHub\"\r\n DOWNLOAD_GIT_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${LL_VERSION}\" '.[] | select(.tag_name==$LL_VERSION) | .assets[].browser_download_url' | head -1)\r\n else\r\n echo -e \"defaulting to latest release\"\r\n DOWNLOAD_GIT_URL=$(echo ${LATEST_JSON} | jq .assets | jq -r .[].browser_download_url | head -1)\r\n fi\r\nfi\r\n\r\ncurl -sSL -o LiteLoader.zip ${DOWNLOAD_GIT_URL}\r\nunzip -o LiteLoader.zip\r\nmv -f LiteLoaderBDS\/* \/mnt\/server\r\nrm LiteLoader.zip\r\ntimeout 30s wine PeEditor.exe\r\nrm -rf '\/root\/.wine' \/mnt\/server\/LiteLoaderBDS\/\r\n\r\n# Downloading Launcher and finishing touches\r\nwget https:\/\/io.ivampiresp.com\/d\/Software\/MCServer\/BDS\/LiteLoader\/lae-ll-launcher\r\nchmod +x lae-ll-launcher\r\necho \"Finished Downloading Liteloader...\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:alpine",
|
||||
"entrypoint": "ash"
|
||||
}
|
||||
|
4
game_eggs/minecraft/bedrock/PowerNukkitX/README.md
Normal file
4
game_eggs/minecraft/bedrock/PowerNukkitX/README.md
Normal file
@ -0,0 +1,4 @@
|
||||
# PowerNukkitX
|
||||
|
||||
[PowerNukkitX](https://github.com/PowerNukkitX/PowerNukkitX)
|
||||
PowerNukkitX is a software for minecraft bedrock edition in Java which is a fork of PowerNukkit
|
@ -0,0 +1,52 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-07-07T02:29:39+02:00",
|
||||
"name": "PowerNukkitX",
|
||||
"author": "powernukkitx@github.com",
|
||||
"description": "PowerNukkitX support for Pterodactyl",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/pnx start {{AUTOREBOOT}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\napt-get update\r\napt-get install -y git curl wget jq file tar unzip zip openssl\r\nmkdir -p \/mnt\/server\/ # Not required. Only here for parkervcp's local test setup\r\ncd \/mnt\/server || exit 1\r\nUPGRADE=\"no\"\r\nif [ -d \".\/java\" ]; then\r\nUPGRADE=\"yes\"\r\nfi\r\nwget https:\/\/github.com\/PowerNukkitX\/PNX-CLI\/releases\/download\/0.1.6\/PNX-CLI-Linux-x86.zip -O pnx.zip\r\nwget https:\/\/raw.githubusercontent.com\/PowerNukkitX\/PowerNukkitX\/master\/src\/main\/resources\/default-nukkit.yml -O nukkit.yml\r\nunzip pnx.zip\r\nrm -fr pnx.zip 2>&1 >\/dev\/null\r\nmv .\/target\/linux-x86\/pnx .\/ 2>&1 >\/dev\/null\r\nrm -fr target 2>&1 >\/dev\/null\r\nrm -fr java 2>&1 >\/dev\/null\r\nchmod +x pnx\r\n.\/pnx jvm install=GraalVM\r\nif [ \"$UPGRADE\" == \"no\" ]; then\r\nif [ \"$VERSION\" == \"latest\" ]; then\r\n.\/pnx server install --latest\r\nelse\r\n.\/pnx server install --dev\r\nfi\r\nelse\r\nrm -fr libs 2>&1 >\/dev\/null\r\nif [ \"$VERSION\" == \"latest\" ]; then\r\n.\/pnx server update --latest\r\nelse\r\n.\/pnx server update --dev\r\nfi\r\nfi\r\nrm -fr tmp-GraalVM.tar.gz 2>&1 >\/dev\/null\r\ncat <<EOF\r\n----------------------------------------\r\n| |\r\n| PowerNukkitX Installation Done |\r\n| |\r\n----------------------------------------\r\nEOF",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Version to install",
|
||||
"description": "Choose between latest or dev",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "AutoReboot mode",
|
||||
"description": "to set auto reboot mode please enter -r",
|
||||
"env_variable": "AUTOREBOOT",
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:2",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
162
game_eggs/minecraft/bedrock/PowerNukkitX/nukkit.yml
Normal file
162
game_eggs/minecraft/bedrock/PowerNukkitX/nukkit.yml
Normal file
@ -0,0 +1,162 @@
|
||||
# Advanced configuration file for Nukkit
|
||||
# Some of these settings are safe, others can break your server if modified incorrectly
|
||||
# New settings/defaults won't appear automatically on this file when upgrading
|
||||
|
||||
settings:
|
||||
# Multi-language setting
|
||||
# Available: eng, chs, cht, jpn, rus, spa, pol, bra, kor, ukr, deu, ltu, idn, cze, tur, fin, vie, fra
|
||||
language: eng
|
||||
# Whether to send all strings translated to server locale or let the device handle them
|
||||
force-language: false
|
||||
shutdown-message: "Server closed"
|
||||
# Allow listing plugins via Query
|
||||
query-plugins: true
|
||||
# Show a console message when a plugin uses deprecated API methods
|
||||
deprecated-verbose: true
|
||||
# Number of AsyncTask workers
|
||||
# If set to auto, it'll try to detect the number of cores (and at least 4)
|
||||
async-workers: auto
|
||||
safe-spawn: true
|
||||
waterdogpe: false
|
||||
|
||||
network:
|
||||
maximum-stale-datagrams: 512
|
||||
# Threshold for batching packets, in bytes. Only these packets will be compressed
|
||||
# Set to 0 to compress everything, -1 to disable
|
||||
batch-threshold: 256
|
||||
# Compression level used of Zlib when sending batched packets. Higher = more CPU, less bandwidth usage
|
||||
compression-level: 7
|
||||
# Use AsyncTasks for compression. Adds half/one tick delay, less CPU load on main thread
|
||||
async-compression: false
|
||||
# 0:Create a new compressor for each compression request
|
||||
# 1:All compression requests are done with only one thread and one compressor
|
||||
# 2:Using the original Nukkit server-side algorithm for high stability, using ThreadLocal to create a compressor for each thread
|
||||
# 3:Modern hardware acceleration using the PowerNukkitX server, which improves on the original algorithm.
|
||||
zlib-provider: 2
|
||||
snappy: false
|
||||
|
||||
debug:
|
||||
# If > 1, it will show debug messages in the console
|
||||
level: 1
|
||||
# Enables commands: /status /gc
|
||||
commands: false
|
||||
ignored-packets:
|
||||
- LevelChunkPacket
|
||||
|
||||
timings:
|
||||
# Turn off the timing completely, no timing object will be created, which can help improve performance
|
||||
completely-close: false
|
||||
# Enable core and plugin timings by default
|
||||
enabled: false
|
||||
# Enable monitoring at verbose level, include high-frequency timings
|
||||
verbose: false
|
||||
# Interval between history frames in ticks
|
||||
# Default is 5 minutes (6000 ticks)
|
||||
history-interval: 6000
|
||||
# Length of the whole timing history in ticks
|
||||
# Default is 1 hour (72000 ticks)
|
||||
# This value is capped at a maximum of history-interval * 12
|
||||
history-length: 72000
|
||||
# For special cases of servers with special permission to bypass the max
|
||||
# This max helps keep data file sizes reasonable for processing on Aikar's Timing parser side
|
||||
# Setting this will not help you bypass the max unless Aikar has added an exception on the API side
|
||||
bypass-max: false
|
||||
# If set to true, name of your server won't be sent
|
||||
privacy: false
|
||||
ignore: []
|
||||
|
||||
level-settings:
|
||||
# The default format that levels will use when created
|
||||
default-format: anvil
|
||||
# Automatically change levels tick rate to maintain 20 ticks per second
|
||||
auto-tick-rate: true
|
||||
auto-tick-rate-limit: 20
|
||||
# Sets the base tick rate (1 = 20 ticks per second, 2 = 10 ticks per second, etc.)
|
||||
base-tick-rate: 1
|
||||
# Tick all players each tick even when other settings disallow this
|
||||
always-tick-players: false
|
||||
tick-redstone: true
|
||||
|
||||
chunk-saving:
|
||||
maximum-size-per-chunk: 1048576
|
||||
|
||||
chunk-sending:
|
||||
# Amount of chunks sent to players per tick
|
||||
per-tick: 8
|
||||
# Amount of chunks sent around each player
|
||||
max-chunks: 192
|
||||
# Amount of chunks that need to be sent before spawning the player
|
||||
spawn-threshold: 56
|
||||
# Save a serialized copy of the chunk in memory for faster sending
|
||||
# Useful in mostly-static worlds where lots of players join at the same time
|
||||
cache-chunks: false
|
||||
|
||||
chunk-ticking:
|
||||
# Max amount of chunks processed each tick
|
||||
per-tick: 40
|
||||
# Radius of chunks around a player to tick
|
||||
tick-radius: 3
|
||||
light-updates: false
|
||||
clear-tick-list: false
|
||||
|
||||
chunk-generation:
|
||||
# Max. amount of chunks in the waiting queue to be generated
|
||||
queue-size: 8
|
||||
# Max. amount of chunks in the waiting queue to be populated
|
||||
population-queue-size: 8
|
||||
|
||||
# Max tick rate for these entities
|
||||
ticks-per:
|
||||
animal-spawns: 400
|
||||
monster-spawns: 1
|
||||
autosave: 6000
|
||||
cache-cleanup: 900
|
||||
|
||||
memory-compression:
|
||||
enable: true
|
||||
slots: 32
|
||||
default-temperature: 32
|
||||
threshold:
|
||||
freezing-point: 0
|
||||
boiling-point: 1024
|
||||
absolute-zero: -256
|
||||
heat:
|
||||
melting: 16
|
||||
single-operation: 1
|
||||
batch-operation: 32
|
||||
|
||||
|
||||
# Max amount of these entities
|
||||
spawn-limits:
|
||||
monsters: 70
|
||||
animals: 15
|
||||
water-animals: 5
|
||||
ambient: 15
|
||||
|
||||
player:
|
||||
# If true, player data will be saved as players/playername.dat
|
||||
# If false, nukkit won't save player data as "dat" files, in order that plugins can do something on it.
|
||||
save-player-data: true
|
||||
# The time between skin change action in seconds, set to 0 if you dont want the cooldown
|
||||
skin-change-cooldown: 30
|
||||
force-skin-trusted: false
|
||||
check-movement: true
|
||||
|
||||
aliases:
|
||||
# Aliases for commands
|
||||
# Examples:
|
||||
# showtheversion: version
|
||||
# savestop: [save-all, stop]
|
||||
|
||||
worlds:
|
||||
# These settings will override the generator set in server.properties and allows loading multiple levels
|
||||
# Examples:
|
||||
#world:
|
||||
# seed: 404
|
||||
# generator: FLAT:2;7,59x1,3x3,2;1;decoration(treecount=80 grasscount=45)
|
||||
|
||||
anti-xray:
|
||||
#world:
|
||||
# enabled: true
|
||||
# level: low
|
||||
# pre-deobfuscate: true
|
40
game_eggs/minecraft/bedrock/PowerNukkitX/server.properties
Normal file
40
game_eggs/minecraft/bedrock/PowerNukkitX/server.properties
Normal file
@ -0,0 +1,40 @@
|
||||
#Properties Config file
|
||||
#2023-07-06 06:07:52
|
||||
motd=PowerNukkitX Server
|
||||
sub-motd=https://powernukkitx.cn
|
||||
server-port=19132
|
||||
server-ip=0.0.0.0
|
||||
view-distance=12
|
||||
white-list=off
|
||||
achievements=on
|
||||
announce-player-achievements=on
|
||||
spawn-protection=16
|
||||
max-players=20
|
||||
allow-flight=off
|
||||
spawn-animals=on
|
||||
spawn-mobs=on
|
||||
gamemode=0
|
||||
force-gamemode=off
|
||||
hardcore=off
|
||||
pvp=on
|
||||
difficulty=1
|
||||
generator-settings=
|
||||
level-name=world
|
||||
level-seed=
|
||||
level-type=DEFAULT
|
||||
allow-nether=on
|
||||
allow-the_end=on
|
||||
use-terra=on
|
||||
enable-experiment-mode=on
|
||||
enable-query=on
|
||||
enable-rcon=off
|
||||
rcon.password=
|
||||
auto-save=on
|
||||
force-resources=off
|
||||
force-resources-allow-client-packs=off
|
||||
xbox-auth=on
|
||||
check-login-time=on
|
||||
disable-auto-bug-report=off
|
||||
allow-shaded=off
|
||||
server-authoritative-movement=server-auth
|
||||
network-encryption=on
|
@ -21,6 +21,11 @@ LiteLoaderBDS is an unofficial plugin loader that provides basic API support for
|
||||
[Nukkit GitHub](https://github.com/Nukkit/Nukkit)
|
||||
Nukkit is a Nuclear-Powered Server Software For Minecraft: Pocket Edition
|
||||
|
||||
## [PowerNukkitX](/game_eggs/minecraft/bedrock/PowerNukkitX)
|
||||
|
||||
[PowerNukkitX](https://github.com/PowerNukkitX/PowerNukkitX)
|
||||
PowerNukkitX is a software for minecraft bedrock edition in Java which is a fork of PowerNukkit
|
||||
|
||||
## [PocketMine MP](/game_eggs/minecraft/bedrock/pocketmine_mp)
|
||||
|
||||
[PocketMine MP](https://github.com/pmmp/PocketMine-MP)
|
||||
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-07-06T17:14:36+02:00",
|
||||
"exported_at": "2023-06-18T11:46:24+02:00",
|
||||
"name": "Vanilla Bedrock ARM64",
|
||||
"author": "josdekurk@gmail.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\".",
|
||||
@ -24,8 +24,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y zip unzip wget 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# Minecraft CDN Akamai blocks script user-agents\r\nRANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n\r\nif [ -z \"${BEDROCK_VERSION}\" ] || [ \"${BEDROCK_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n curl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -H \"Accept-Encoding: gzip, deflate\" -o versions.html.gz https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\r\n DOWNLOAD_URL=$(zgrep -o 'https:\/\/minecraft.azureedge.net\/bin-linux\/[^\"]*' versions.html.gz)\r\nelse \r\n echo -e \"\\n Downloading ${BEDROCK_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-linux\/bedrock-server-$BEDROCK_VERSION.zip\r\nfi\r\n\r\nDOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5) # Retrieve archive name\r\n\r\necho -e \"backing up config files\"\r\nrm *.bak versions.html.gz\r\ncp server.properties server.properties.bak\r\ncp permissions.json permissions.json.bak\r\ncp whitelist.json whitelist.json.bak\r\n\r\necho -e \"Downloading files from: $DOWNLOAD_URL\"\r\n\r\ncurl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $DOWNLOAD_FILE\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $DOWNLOAD_FILE\r\n\r\necho 'emit-server-telemetry=true' >> server.properties\r\n\r\necho -e \"restoring backup config files - on first install there will be file not found errors which you can ignore.\"\r\ncp -rf server.properties.bak server.properties\r\ncp -rf permissions.json.bak permissions.json\r\ncp -rf whitelist.json.bak whitelist.json\r\n\r\nchmod +x bedrock_server\r\n\r\necho -e \"Install Completed\"",
|
||||
"container": "debian:buster-slim",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y zip unzip wget 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# Minecraft CDN Akamai blocks script user-agents\r\nRANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n\r\nif [ -z \"${BEDROCK_VERSION}\" ] || [ \"${BEDROCK_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n curl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -H \"Accept-Encoding: gzip, deflate\" -o versions.html.gz https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\r\n DOWNLOAD_URL=$(zgrep -o 'https:\/\/minecraft.azureedge.net\/bin-linux\/[^\"]*' versions.html.gz)\r\nelse \r\n echo -e \"\\n Downloading ${BEDROCK_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-linux\/bedrock-server-$BEDROCK_VERSION.zip\r\nfi\r\n\r\nDOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5) # Retrieve archive name\r\n\r\necho -e \"backing up config files\"\r\nrm *.bak versions.html.gz\r\ncp server.properties server.properties.bak\r\ncp permissions.json permissions.json.bak\r\ncp allowlist.json allowlist.json.bak\r\n\r\necho -e \"Downloading files from: $DOWNLOAD_URL\"\r\n\r\ncurl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $DOWNLOAD_FILE\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $DOWNLOAD_FILE\r\n\r\necho 'emit-server-telemetry=true' >> server.properties\r\n\r\necho -e \"restoring backup config files - on first install there will be file not found errors which you can ignore.\"\r\ncp -rf server.properties.bak server.properties\r\ncp -rf permissions.json.bak permissions.json\r\ncp -rf allowlist.json.bak allowlist.json\r\n\r\nchmod +x bedrock_server\r\n\r\necho -e \"Install Completed\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
|
@ -1,19 +1,19 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-01-22T05:42:40-05:00",
|
||||
"exported_at": "2023-06-18T11:45:33+02: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\".",
|
||||
"features": [
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/parkervcp\/yolks:debian"
|
||||
],
|
||||
"docker_images": {
|
||||
"ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": ".\/bedrock_server",
|
||||
"config": {
|
||||
@ -24,8 +24,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y zip unzip wget 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# Minecraft CDN Akamai blocks script user-agents\r\nRANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n\r\nif [ -z \"${BEDROCK_VERSION}\" ] || [ \"${BEDROCK_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n curl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -H \"Accept-Encoding: gzip, deflate\" -o versions.html.gz https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\r\n DOWNLOAD_URL=$(zgrep -o 'https:\/\/minecraft.azureedge.net\/bin-linux\/[^\"]*' versions.html.gz)\r\nelse \r\n echo -e \"\\n Downloading ${BEDROCK_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-linux\/bedrock-server-$BEDROCK_VERSION.zip\r\nfi\r\n\r\nDOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5) # Retrieve archive name\r\n\r\necho -e \"backing up config files\"\r\nrm *.bak versions.html.gz\r\ncp server.properties server.properties.bak\r\ncp permissions.json permissions.json.bak\r\ncp whitelist.json whitelist.json.bak\r\n\r\necho -e \"Downloading files from: $DOWNLOAD_URL\"\r\n\r\ncurl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $DOWNLOAD_FILE\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $DOWNLOAD_FILE\r\n\r\necho -e \"restoring backup config files - on first install there will be file not found errors which you can ignore.\"\r\ncp -rf server.properties.bak server.properties\r\ncp -rf permissions.json.bak permissions.json\r\ncp -rf whitelist.json.bak whitelist.json\r\n\r\nchmod +x bedrock_server\r\n\r\necho -e \"Install Completed\"",
|
||||
"container": "debian:buster-slim",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt install -y zip unzip wget 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# Minecraft CDN Akamai blocks script user-agents\r\nRANDVERSION=$(echo $((1 + $RANDOM % 4000)))\r\n\r\nif [ -z \"${BEDROCK_VERSION}\" ] || [ \"${BEDROCK_VERSION}\" == \"latest\" ]; then\r\n echo -e \"\\n Downloading latest Bedrock server\"\r\n curl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -H \"Accept-Encoding: gzip, deflate\" -o versions.html.gz https:\/\/www.minecraft.net\/en-us\/download\/server\/bedrock\r\n DOWNLOAD_URL=$(zgrep -o 'https:\/\/minecraft.azureedge.net\/bin-linux\/[^\"]*' versions.html.gz)\r\nelse \r\n echo -e \"\\n Downloading ${BEDROCK_VERSION} Bedrock server\"\r\n DOWNLOAD_URL=https:\/\/minecraft.azureedge.net\/bin-linux\/bedrock-server-$BEDROCK_VERSION.zip\r\nfi\r\n\r\nDOWNLOAD_FILE=$(echo ${DOWNLOAD_URL} | cut -d\"\/\" -f5) # Retrieve archive name\r\n\r\necho -e \"backing up config files\"\r\nrm *.bak versions.html.gz\r\ncp server.properties server.properties.bak\r\ncp permissions.json permissions.json.bak\r\ncp allowlist.json allowlist.json.bak\r\n\r\n\r\necho -e \"Downloading files from: $DOWNLOAD_URL\"\r\n\r\ncurl -L -A \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/90.0.$RANDVERSION.212 Safari\/537.36\" -H \"Accept-Language: en\" -o $DOWNLOAD_FILE $DOWNLOAD_URL\r\n\r\necho -e \"Unpacking server files\"\r\nunzip -o $DOWNLOAD_FILE\r\n\r\necho -e \"Cleaning up after installing\"\r\nrm $DOWNLOAD_FILE\r\n\r\necho -e \"restoring backup config files - on first install there will be file not found errors which you can ignore.\"\r\ncp -rf server.properties.bak server.properties\r\ncp -rf permissions.json.bak permissions.json\r\ncp -rf allowlist.json.bak allowlist.json\r\n\r\nchmod +x bedrock_server\r\n\r\necho -e \"Install Completed\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -37,7 +37,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "ld lib path",
|
||||
@ -46,7 +47,8 @@
|
||||
"default_value": ".",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Name",
|
||||
@ -55,7 +57,8 @@
|
||||
"default_value": "Bedrock Dedicated Server",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:50"
|
||||
"rules": "required|string|max:50",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Gamemode",
|
||||
@ -64,7 +67,8 @@
|
||||
"default_value": "survival",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:survival,creative,adventure"
|
||||
"rules": "required|string|in:survival,creative,adventure",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Difficulty",
|
||||
@ -73,7 +77,8 @@
|
||||
"default_value": "easy",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:peaceful,easy,normal,hard"
|
||||
"rules": "required|string|in:peaceful,easy,normal,hard",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Allow cheats",
|
||||
@ -82,7 +87,8 @@
|
||||
"default_value": "false",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:true,false"
|
||||
"rules": "required|string|in:true,false",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,26 +1,26 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-12-16T13:31:45-05:00",
|
||||
"exported_at": "2023-05-01T16:48:52+01:00",
|
||||
"name": "Nukkit",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Nukkit is a Nuclear-Powered Server Software For Minecraft: Pocket Edition\r\n\r\nhttps:\/\/cloudburstmc.org",
|
||||
"features": null,
|
||||
"images": [
|
||||
"quay.io\/pterodactyl\/core:java-glibc",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
],
|
||||
"docker_images": {
|
||||
"quay.io\/pterodactyl\/core:java-glibc": "quay.io\/pterodactyl\/core:java-glibc",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17": "ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \"\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! \"\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "stop"
|
||||
},
|
||||
@ -39,7 +39,8 @@
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Download Path",
|
||||
@ -48,7 +49,8 @@
|
||||
"default_value": "",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "nullable|string"
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "nukkit version",
|
||||
@ -57,7 +59,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-07-28T19:04:48+02:00",
|
||||
"exported_at": "2023-06-02T19:34:57+02:00",
|
||||
"name": "PocketmineMP",
|
||||
"author": "info@swisscrafting.ch",
|
||||
"description": "Pocketmine Egg\r\nby onekintaro from swisscrafting.ch\r\nwith the nice help from #eggs Channel on Pterodactyl-Discord :)",
|
||||
@ -16,26 +16,26 @@
|
||||
"startup": ".\/bin\/php7\/bin\/php .\/PocketMine-MP.phar --no-wizard --disable-ansi",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \"\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n\r\n\r\napt update\r\napt install -y git curl wget jq file tar unzip zip\r\n\r\ncd \/mnt\/server\r\nARCH=$([[ \"$(uname -m)\" == \"x86_64\" ]] && echo \"amd64\" || echo \"arm64\")\r\n\r\n# Restrict versions to latest pm3 and pm4 for now.\r\nif [[ \"${VERSION}\" == \"pm4\" ]] || [[ \"${VERSION}\" == \"\" ]]; then\r\n DOWNLOAD_LINK=$(curl -ssL https:\/\/update.pmmp.io\/api?channel=stable | grep 'download_url' | cut -d '\"' -f 4)\r\n echo -e \"Downloading latest PocketMine 4 from ${DOWNLOAD_LINK}\"\r\n curl -ssL \"${DOWNLOAD_LINK}\" -o PocketMine-MP.phar\r\nelif [[ \"${VERSION}\" == \"pm3\" ]]; then\r\n DOWNLOAD_LINK=$(curl -ssL https:\/\/update.pmmp.io\/api?channel=pm3 | grep 'download_url' | cut -d '\"' -f 4)\r\n echo -e \"Downloading latest PocketMine 3 from ${DOWNLOAD_LINK}\"\r\n curl -ssL \"${DOWNLOAD_LINK}\" -o PocketMine-MP.phar\r\nelse\r\n echo -e \"Unknown version ${VERSION}\"\r\n exit 1\r\nfi\r\n\r\n\r\n\r\nif [[ \"${ARCH}\" == \"amd64\" ]]; then\r\necho -e \"\\n downloading latest php build from PocketMine https:\/\/jenkins.pmmp.io\/job\/PHP-8.0-Aggregate\/lastStableBuild\/artifact\/PHP-8.0-Linux-x86_64.tar.gz\"\r\ncurl -sSL -o php.binary.tar.gz https:\/\/jenkins.pmmp.io\/job\/PHP-8.0-Aggregate\/lastStableBuild\/artifact\/PHP-8.0-Linux-x86_64.tar.gz\r\n\r\necho -e \"\\n unpacking php binaries\"\r\ntar -xzvf php.binary.tar.gz\r\n\r\necho -e \"\\n removing php packages\"\r\nrm -rf \/mnt\/server\/php.binary.tar.gz\r\n\r\necho -e \"\\n configuring PHP extensions library directory\"\r\nEXTENSION_DIR=$(find \"bin\" -name *debug-zts*)\r\ngrep -q '^extension_dir' bin\/php7\/bin\/php.ini && sed -i'bak' \"s{^extension_dir=.*{extension_dir=\\\"$EXTENSION_DIR\\\"{\" bin\/php7\/bin\/php.ini || echo \"extension_dir=\\\"$EXTENSION_DIR\\\"\" >>bin\/php7\/bin\/php.ini\r\nelse\r\napt install -y libtool-bin libtool make autoconf automake m4 gzip bzip2 bison g++ git cmake pkg-config re2c\r\n\r\nwget https:\/\/raw.githubusercontent.com\/pmmp\/php-build-scripts\/stable\/compile.sh -O compile.sh \r\nchmod +x compile.sh\r\n\r\necho \"please wait, this will take some time\"\r\n.\/compile.sh\r\nrm compile.sh\r\nrm -rf install_data\/\r\n\r\necho -e \"\\n configuring PHP extensions library directory\"\r\nEXTENSION_DIR=$(find \"bin\" -name *debug-zts*)\r\ngrep -q '^extension_dir' bin\/php7\/bin\/php.ini && sed -i'bak' \"s{^extension_dir=.*{extension_dir=\\\"$EXTENSION_DIR\\\"{\" bin\/php7\/bin\/php.ini || echo \"extension_dir=\\\"$EXTENSION_DIR\\\"\" >>bin\/php7\/bin\/php.ini\r\n\r\nfi\r\n\r\n\r\nif [[ ! -f server.properties ]]; then\r\n echo -e \"\\n downloading default server.properties\"\r\n curl -sSL https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/minecraft\/bedrock\/pocketmine_mp\/server.properties >server.properties\r\nfi\r\n\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\r\n\r\necho -e \"\\n\\nInstall script completed. Enjoy!\"",
|
||||
"container": "ghcr.io\/pterodactyl\/installers:debian",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt-get update\r\napt-get install -y git curl wget jq file tar unzip zip\r\n\r\nmkdir -p \/mnt\/server\/ # Not required. Only here for parkervcp's local test setup\r\n\r\ncd \/mnt\/server || exit 1\r\n\r\nARCH=$([[ \"$(uname -m)\" == \"x86_64\" ]] && printf \"amd64\" || printf \"arm64\")\r\n\r\n# Shouldn't be possible to be empty, but default to PM5 if it is and convert to uppercase\r\nVERSION=\"${VERSION:-PM5}\"\r\nVERSION=\"${VERSION^^}\"\r\n\r\n# Helper functions\r\n\r\ndownload_php_binary() {\r\n printf \"Downloading latest PHP %s binary for %s\\n\" \"$REQUIRED_PHP_VERSION\" \"$VERSION\"\r\n curl --location --progress-bar https:\/\/github.com\/pmmp\/PHP-Binaries\/releases\/download\/php-\"$REQUIRED_PHP_VERSION\"-latest\/PHP-Linux-x86_64-\"$VERSION\".tar.gz | tar -xzv\r\n}\r\n\r\nset_php_extension_dir() {\r\n printf \"Configuring php.ini\\n\"\r\n EXTENSION_DIR=$(find \"bin\" -name '*debug-zts*')\r\n grep -q '^extension_dir' bin\/php7\/bin\/php.ini && sed -i'bak' \"s{^extension_dir=.*{extension_dir=\\\"$EXTENSION_DIR\\\"{\" bin\/php7\/bin\/php.ini || echo \"extension_dir=\\\"$EXTENSION_DIR\\\"\" >>bin\/php7\/bin\/php.ini\r\n}\r\n\r\ndownload_pmmp() {\r\n DOWNLOAD_LINK=$(curl -sSL https:\/\/update.pmmp.io\/api?channel=\"$API_CHANNEL\" | jq -r '.download_url')\r\n printf \"Downloading %s from %s\\n\" \"$VERSION\" \"${DOWNLOAD_LINK}\"\r\n curl --location --progress-bar \"${DOWNLOAD_LINK}\" --output PocketMine-MP.phar\r\n}\r\n\r\n# We have to convert VERSION into an API channel\r\nif [[ \"${VERSION}\" == \"PM4\" ]]; then\r\n API_CHANNEL=\"4\"\r\n\r\nelif [[ \"${VERSION}\" == \"PM5\" ]]; then\r\n API_CHANNEL=\"stable\"\r\nelse\r\n printf \"Unsupported version: %s\" \"${VERSION}\"\r\n exit 1\r\nfi\r\n\r\nREQUIRED_PHP_VERSION=$(curl -sSL https:\/\/update.pmmp.io\/api?channel=\"$API_CHANNEL\" | jq -r '.php_version')\r\n\r\nif [[ \"${ARCH}\" == \"amd64\" ]]; then\r\n download_php_binary\r\n\r\n# There are no ARM64 PHP binaries yet, so we have to compile them\r\nelse\r\n apt install -y make autoconf automake m4 bzip2 bison g++ cmake pkg-config re2c libtool-bin\r\n \r\n mkdir -p \/mnt\/server\/build_cache\/archives\r\n mkdir -p \/mnt\/server\/build_cache\/compilation\r\n \r\n # Each PHP version has its own compile script, so we have to download the correct one\r\n echo \"running curl --location --progress-bar --remote-name https:\/\/raw.githubusercontent.com\/pmmp\/PHP-Binaries\/php\/\"$REQUIRED_PHP_VERSION\"\/compile.sh\"\r\n curl --location --progress-bar --remote-name https:\/\/raw.githubusercontent.com\/pmmp\/PHP-Binaries\/php\/\"$REQUIRED_PHP_VERSION\"\/compile.sh\r\n chmod +x compile.sh\r\n\r\n cat <<EOF\r\n----------------------------------------\r\n| |\r\n| Compiling PHP Binary for ARM64 |\r\n| |\r\n| This is a time consuming process |\r\n----------------------------------------\r\nEOF\r\n\r\n printf \"\\n\\nCompiling PHP binary, this is a slow process and will take time\\n\"\r\n THREADS=$(grep -c ^processor \/proc\/cpuinfo) || THREADS=1\r\n .\/compile.sh -j \"${THREADS}\" -c \/mnt\/server\/build_cache\/archives -l \/mnt\/server\/build_cache\/compilation -P ${VERSION:2}\r\n rm compile.sh\r\n rm -rf install_data\/\r\n\r\nfi\r\n\r\n# Steps below are the same for both architectures\r\ndownload_pmmp\r\nset_php_extension_dir || exit 1\r\n\r\nif [[ ! -f server.properties ]]; then\r\n printf \"Downloading default server.properties template\\n\"\r\n curl --location --progress-bar --remote-name https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/game_eggs\/minecraft\/bedrock\/pocketmine_mp\/server.properties\r\nfi\r\n\r\nprintf \"Creating default file and folder structure\\n\"\r\ntouch banned-ips.txt banned-players.txt ops.txt white-list.txt server.log\r\nmkdir -p players worlds plugins resource_packs\r\n\r\ncat <<EOF\r\n----------------------------------------\r\n| |\r\n| PocketMine-MP Installation Done |\r\n| |\r\n----------------------------------------\r\nEOF",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Version to install [pm3 or pm4]",
|
||||
"description": "Latest PocketMine version to install. Valid options: pm3 and pm4",
|
||||
"name": "Version to install",
|
||||
"description": "Latest PocketMine version to install.",
|
||||
"env_variable": "VERSION",
|
||||
"default_value": "pm4",
|
||||
"default_value": "PM5",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|in:pm3,pm4",
|
||||
"rules": "required|string|in:PM5,PM4",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
|
@ -13,7 +13,7 @@ Purpur-GeyserMC-Floodgate is a drop-in replacement for Paper servers designed fo
|
||||
|
||||
The minecraft server requires a single port for access (default 25565). GeyserMC requires an additional port (default 19132). Any other plugins you add may require extra ports to enabled for the server.
|
||||
|
||||
| Port | default |
|
||||
|----------|---------|
|
||||
| Java | 25565 |
|
||||
| Bedrock | 19132 |
|
||||
| Port | default | Protocol |
|
||||
|----------|---------|----------|
|
||||
| Java | 25565 | TCP |
|
||||
| Bedrock | 19132 | UDP |
|
||||
|
@ -32,7 +32,7 @@ This is a direct fork of the default forge service
|
||||
|
||||
- Has a version detection fix for "latest"
|
||||
|
||||
### [CurseForge Generic](forge/curseforge-generic)
|
||||
### [CurseForge Generic](curseforge)
|
||||
|
||||
[CurseForge Generic Website](https://www.curseforge.com)
|
||||
A generic service to pull forge mod packs from the curseforge site.
|
||||
@ -46,6 +46,13 @@ Glowstone is an open-source replacement for CraftBukkit, Spigot, and Paper.
|
||||
[Magma Website](https://magmafoundation.org)
|
||||
Magma is most powerful Forge server providing you with Forge mods and Bukkit Plugins using Spigot and Paper for Performance Optimization and Stability.
|
||||
|
||||
### [Modrinth](modrinth)
|
||||
|
||||
A generic service to pull modpacks from Modrinth.
|
||||
|
||||
[Modrinth Website](https://modrinth.com)
|
||||
Discover, play, and share Minecraft content through our open-source platform built for the community.
|
||||
|
||||
### [Krypton](krypton)
|
||||
|
||||
[Krypton GitHub](https://github.com/KryptonMC/Krypton)
|
||||
@ -88,6 +95,15 @@ Please restart the server after first launch to fix this.**
|
||||
[NanoLimbo GitHub](https://github.com/Nan1t/NanoLimbo)
|
||||
A lightweight minecraft limbo server, written on Java with Netty. The main goal of the project is maximum simplicity with a minimum number of sent and processed packets.
|
||||
|
||||
## [Limbo](limbo)
|
||||
|
||||
[Limbo GitHub](https://github.com/LOOHP/Limbo)
|
||||
Standalone server program Limbo.
|
||||
|
||||
## [Quilt](quilt)
|
||||
[Quilt Website](https://quiltmc.org/)
|
||||
The Quilt project is an open-source, community-driven modding toolchain designed primarily for Minecraft. By focusing on speed, ease of use and modularity, Quilt aims to provide a sleek and modern modding toolchain with an open ecosystem.
|
||||
|
||||
## Spigot Based
|
||||
|
||||
A collection of spigot and forked spigot eggs.
|
||||
@ -98,6 +114,12 @@ A collection of spigot and forked spigot eggs.
|
||||
High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies
|
||||
Currently the default on pterodactyl for many reasons. First being that you don't need to build the jar.
|
||||
|
||||
### [Folia](folia)
|
||||
|
||||
[Folia GitHub](https://github.com/PaperMC/Folia)
|
||||
High performance Fork of Paper which adds regionised multithreading to the dedicated server. designed for many players.
|
||||
Spigot Plugins are not compatible with this fork. unless they are optimised for Folia.
|
||||
|
||||
### [Purpur](purpur)
|
||||
|
||||
[Purpur Website](https://purpurmc.org/)
|
||||
|
23
game_eggs/minecraft/java/curseforge/README.md
Normal file
23
game_eggs/minecraft/java/curseforge/README.md
Normal file
@ -0,0 +1,23 @@
|
||||
# CurseForge Generic
|
||||
|
||||
## This is a generic egg for CurseForge modpacks
|
||||
|
||||
You will need to give it a modpack project ID. The project ID for [All the Mods 8 - ATM8](https://www.curseforge.com/minecraft/modpacks/all-the-mods-8) is `520914` for example.
|
||||
This can be found on the modpack page in the `About Project` section in the right sidebar.
|
||||
|
||||
You can also optionally specify a file ID. If you do not specify a file ID, the latest version will be used.
|
||||
The file ID for the server pack for [All the Mods 8 - ATM8](https://www.curseforge.com/minecraft/modpacks/all-the-mods-8) version `1.0.17` is `4504876` for example.
|
||||
This can be found on the modpack page by clicking the wanted file and copying the id at the end of the URL (the number after `/files/`).
|
||||
|
||||
The script will automatically setup of Forge, Fabric, or Quilt depending on the modpack.
|
||||
|
||||
You *must* specify a CurseForge API key.
|
||||
You can find out how to get an API key [here](https://support.curseforge.com/en/support/solutions/articles/9000208346-about-the-curseforge-api-and-how-to-apply-for-a-key)
|
||||
|
||||
## 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 |
|
||||
|-------|---------|
|
||||
| Game | 25565 |
|
File diff suppressed because one or more lines are too long
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-12-09T13:31:08-05:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Fabric",
|
||||
"author": "accounts@bofanodes.io",
|
||||
"description": "Fabric is a modular modding toolchain targeting Minecraft 1.14 and above, including snapshots.",
|
||||
@ -13,12 +13,13 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -29,7 +30,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Fabric MC Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl jq unzip dos2unix wget\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\n# Enable snapshots\r\nif [ -z \"$MC_VERSION\" ] || [ \"$MC_VERSION\" == \"latest\" ]; then\r\n MC_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/game | jq -r '.[] | select(.stable== true )|.version' | head -n1)\r\nelif [ \"$MC_VERSION\" == \"snapshot\" ]; then\r\n MC_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/game | jq -r '.[] | select(.stable== false )|.version' | head -n1)\r\nfi\r\n\r\nif [ -z \"$FABRIC_VERSION\" ] || [ \"$FABRIC_VERSION\" == \"latest\" ]; then\r\n FABRIC_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/installer | jq -r '.[0].version')\r\nfi\r\n\r\nif [ -z \"$LOADER_VERSION\" ] || [ \"$LOADER_VERSION\" == \"latest\" ]; then\r\n LOADER_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/loader | jq -r '.[] | select(.stable== true )|.version' | head -n1)\r\nelif [ \"$LOADER_VERSION\" == \"snapshot\" ]; then\r\n LOADER_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/loader | jq -r '.[] | select(.stable== false )|.version' | head -n1)\r\nfi\r\n\r\nwget -O fabric-installer.jar https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/$FABRIC_VERSION\/fabric-installer-$FABRIC_VERSION.jar\r\njava -jar fabric-installer.jar server -mcversion $MC_VERSION -loader $LOADER_VERSION -downloadMinecraft\r\necho -e \"Install Complete\"",
|
||||
"script": "#!\/bin\/bash\r\n# Fabric MC Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl jq unzip dos2unix wget\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\n# Enable snapshots\r\nif [ -z \"$MC_VERSION\" ] || [ \"$MC_VERSION\" == \"latest\" ]; then\r\n MC_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/game | jq -r '.[] | select(.stable== true )|.version' | head -n1)\r\nelif [ \"$MC_VERSION\" == \"snapshot\" ]; then\r\n MC_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/game | jq -r '.[] | select(.stable== false )|.version' | head -n1)\r\nfi\r\n\r\nif [ -z \"$FABRIC_VERSION\" ] || [ \"$FABRIC_VERSION\" == \"latest\" ]; then\r\n FABRIC_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/installer | jq -r '.[0].version')\r\nfi\r\n\r\nif [ -z \"$LOADER_VERSION\" ] || [ \"$LOADER_VERSION\" == \"latest\" ]; then\r\n LOADER_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/loader | jq -r '.[] | select(.stable== true )|.version' | head -n1)\r\nelif [ \"$LOADER_VERSION\" == \"snapshot\" ]; then\r\n LOADER_VERSION=$(curl -sSL https:\/\/meta.fabricmc.net\/v2\/versions\/loader | jq -r '.[] | select(.stable== false )|.version' | head -n1)\r\nfi\r\n\r\nwget -O fabric-installer.jar https:\/\/maven.fabricmc.net\/net\/fabricmc\/fabric-installer\/$FABRIC_VERSION\/fabric-installer-$FABRIC_VERSION.jar\r\njava -jar fabric-installer.jar server -mcversion $MC_VERSION -loader $LOADER_VERSION -downloadMinecraft\r\nmv server.jar minecraft-server.jar\r\nmv fabric-server-launch.jar server.jar\r\necho \"serverJar=minecraft-server.jar\" > fabric-server-launcher.properties\r\necho -e \"Install Complete\"",
|
||||
"container": "openjdk:11-jdk-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -39,10 +40,11 @@
|
||||
"name": "Server Jar File",
|
||||
"description": "The name of the server jarfile to run the server with.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "fabric-server-launch.jar",
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Minecraft Version",
|
||||
@ -51,7 +53,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|between:3,15"
|
||||
"rules": "required|string|between:3,15",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Fabric Version",
|
||||
@ -60,7 +63,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|between:3,15"
|
||||
"rules": "required|string|between:3,15",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Fabric Loader Version",
|
||||
@ -69,7 +73,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|between:3,15"
|
||||
"rules": "required|string|between:3,15",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-11-26T00:03:20+00:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Feather",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "An experimental Minecraft server implementation written in Rust.",
|
||||
|
13
game_eggs/minecraft/java/folia/README.MD
Normal file
13
game_eggs/minecraft/java/folia/README.MD
Normal file
@ -0,0 +1,13 @@
|
||||
# Folia
|
||||
|
||||
Fork of Paper which adds regionised multithreading to the dedicated server.
|
||||
|
||||
Check out the [Folia Website](https://papermc.io/) for more information.
|
||||
|
||||
## 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 |
|
||||
|-------|---------|
|
||||
| Game | 25565 |
|
77
game_eggs/minecraft/java/folia/egg-folia.json
Normal file
77
game_eggs/minecraft/java/folia/egg-folia.json
Normal file
@ -0,0 +1,77 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-07-24T16:49:48+02:00",
|
||||
"name": "Folia",
|
||||
"author": "Hosting@NeverStopGaming.net",
|
||||
"description": "Fork of Paper which adds regionised multithreading to the dedicated server.",
|
||||
"features": [
|
||||
"eula",
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# Folia Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nPROJECT=folia\r\n\r\nif [ -n \"${DL_PATH}\" ]; then\r\n\techo -e \"Using supplied download url: ${DL_PATH}\"\r\n\tDOWNLOAD_URL=`eval echo $(echo ${DL_PATH} | sed -e 's\/{{\/${\/g' -e 's\/}}\/}\/g')`\r\nelse\r\n\tVER_EXISTS=`curl -s https:\/\/api.papermc.io\/v2\/projects\/${PROJECT} | jq -r --arg VERSION $MINECRAFT_VERSION '.versions[] | contains($VERSION)' | grep -m1 true`\r\n\tLATEST_VERSION=`curl -s https:\/\/api.papermc.io\/v2\/projects\/${PROJECT} | jq -r '.versions' | jq -r '.[-1]'`\r\n\r\n\tif [ \"${VER_EXISTS}\" == \"true\" ]; then\r\n\t\techo -e \"Version is valid. Using version ${MINECRAFT_VERSION}\"\r\n\telse\r\n\t\techo -e \"Specified version not found. Defaulting to the latest ${PROJECT} version\"\r\n\t\tMINECRAFT_VERSION=${LATEST_VERSION}\r\n\tfi\r\n\r\n\tBUILD_EXISTS=`curl -s https:\/\/api.papermc.io\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep -m1 true`\r\n\tLATEST_BUILD=`curl -s https:\/\/api.papermc.io\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION} | jq -r '.builds' | jq -r '.[-1]'`\r\n\r\n\tif [ \"${BUILD_EXISTS}\" == \"true\" ]; then\r\n\t\techo -e \"Build is valid for version ${MINECRAFT_VERSION}. Using build ${BUILD_NUMBER}\"\r\n\telse\r\n\t\techo -e \"Using the latest ${PROJECT} build for version ${MINECRAFT_VERSION}\"\r\n\t\tBUILD_NUMBER=${LATEST_BUILD}\r\n\tfi\r\n\r\n\tJAR_NAME=${PROJECT}-${MINECRAFT_VERSION}-${BUILD_NUMBER}.jar\r\n\r\n\techo \"Version being downloaded\"\r\n\techo -e \"MC Version: ${MINECRAFT_VERSION}\"\r\n\techo -e \"Build: ${BUILD_NUMBER}\"\r\n\techo -e \"JAR Name of Build: ${JAR_NAME}\"\r\n\tDOWNLOAD_URL=https:\/\/api.papermc.io\/v2\/projects\/${PROJECT}\/versions\/${MINECRAFT_VERSION}\/builds\/${BUILD_NUMBER}\/downloads\/${JAR_NAME}\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\necho -e \"Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\r\n\r\nif [ -f ${SERVER_JARFILE} ]; then\r\n\tmv ${SERVER_JARFILE} ${SERVER_JARFILE}.old\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n\r\nif [ ! -f server.properties ]; then\r\n echo -e \"Downloading MC server.properties\"\r\n curl -o server.properties https:\/\/raw.githubusercontent.com\/parkervcp\/eggs\/master\/minecraft\/java\/server.properties\r\nfi",
|
||||
"container": "ghcr.io\/pterodactyl\/installers:alpine",
|
||||
"entrypoint": "ash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Minecraft Version",
|
||||
"description": "The version of minecraft to download. \r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.",
|
||||
"env_variable": "MINECRAFT_VERSION",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
"description": "The name of the server jarfile to run the server with.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Download Path",
|
||||
"description": "A URL to use to download a server.jar rather than the ones in the install script. This is not user viewable.",
|
||||
"env_variable": "DL_PATH",
|
||||
"default_value": "",
|
||||
"user_viewable": false,
|
||||
"user_editable": false,
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Build Number",
|
||||
"description": "The build number for the folia release.\r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.",
|
||||
"env_variable": "BUILD_NUMBER",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
# Forge Generic
|
||||
|
||||
## This is a generic egg for curseforge modpacks
|
||||
|
||||
You will need to give it a modpack ID. The ID for BOFA mods is `375152` for example.
|
||||
This can be found on the modpack page in the `About Project` section in the upper right corner.
|
||||
|
||||
This will grab the latest release when the version is set to latest.
|
||||
|
||||
It "should" grab versions of the pack based on the modpack version numbers
|
||||
|
||||
## API Keys
|
||||
|
||||
You will need to get an API key to run the installer now. Make an account at https://console.curseforge.com/
|
||||
|
||||
https://console.curseforge.com/#/api-keys
|
||||
|
||||
## 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 |
|
||||
|-------|---------|
|
||||
| Game | 25565 |
|
File diff suppressed because one or more lines are too long
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-10-31T16:27:58+01:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Forge Enhanced",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "Minecraft Forge Server. Minecraft Forge is a modding API (Application Programming Interface), which makes it easier to create mods, and also make sure mods are compatible with each other.",
|
||||
@ -14,10 +14,11 @@
|
||||
"pid_limit"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8"
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true $( [[ ! -f unix_args.txt ]] && printf %s \"-jar {{SERVER_JARFILE}}\" || printf %s \"@unix_args.txt\" )",
|
||||
|
@ -24,6 +24,9 @@ The second method requires you to know the id for both the modpack and version i
|
||||
may not get updated with the correct ip address and port at first launch.
|
||||
Please restart the server after first launch to fix this.**
|
||||
|
||||
## Neoforged
|
||||
If you have trouble using an neoforge pack, make sure to select the latest java.
|
||||
|
||||
## Server Ports
|
||||
|
||||
The minecraft server requires a single port for access (default 25565) but plugins may require extra ports to enabled for the server.
|
||||
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-06-14T21:28:54+03:00",
|
||||
"exported_at": "2023-10-27T00:29:03+02:00",
|
||||
"name": "FTB-modpacks.ch Server",
|
||||
"author": "runemaster580@gmail.com",
|
||||
"description": "Since the release of the FTB APP, FTB modpacks are now distributed through modpacks.ch. This egg was developed for support for modpacks that are distributed through this.",
|
||||
@ -13,23 +13,24 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar forge-server.jar",
|
||||
"startup": "java -javaagent:log4jfix\/Log4jPatcher-1.0.0.jar -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true $( [[ ! -f unix_args.txt ]] && printf %s \"-jar start-server.jar\" || printf %s \"@unix_args.txt\" )",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"server-port\": \"{{server.build.default.port}}\",\r\n \"query.port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# FTB Pack Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir -p \/mnt\/server\r\nfi\r\n\r\n# Download needed software.\r\nfunction install_required {\r\n apt update\r\n apt install -y curl jq dos2unix\r\n}\r\n\r\n\r\nfunction get_download {\r\n # if no modpack id is set and modpack search term is set.\r\n if [ -z ${FTB_MODPACK_ID} ] && [ \"${FTB_SEARCH_TERM}\" != \"\" ]; then\r\n JSON_DATA=$(curl -sSL https:\/\/api.modpacks.ch\/public\/modpack\/search\/8?term=${FTB_SEARCH_TERM})\r\n \r\n # grabs the first modpack in array.\r\n FTB_MODPACK_ID=$(echo -e ${JSON_DATA} | jq -r \".packs[]\")\r\n fi\r\n \r\n if [ -z ${FTB_MODPACK_VERSION_ID} ] && [ \"${FTB_VERSION_STRING}\" != \"\" ]; then\r\n # grabs the correct version id matching the string.\r\n FTB_MODPACK_VERSION_ID=$(curl -sSL https:\/\/api.modpacks.ch\/public\/modpack\/${FTB_MODPACK_ID} | jq -r --arg VSTRING ${FTB_VERSION_STRING} '.versions[] | select(.name == $VSTRING) | .id')\r\n fi\r\n \r\n echo -e \"ID: ${FTB_MODPACK_ID} VersionID: ${FTB_MODPACK_VERSION_ID}\"\r\n \r\n cd \/mnt\/server\r\n \r\n curl https:\/\/api.modpacks.ch\/public\/modpack\/${FTB_MODPACK_ID}\/${FTB_MODPACK_VERSION_ID}\/server\/linux --output serversetup\r\n chmod +x .\/serversetup\r\n .\/serversetup ${FTB_MODPACK_ID} ${FTB_MODPACK_VERSION_ID} --auto\r\n}\r\n\r\nfunction cleanup {\r\n rm -rf serversetup\r\n mv forge-*.jar forge-server.jar\r\n}\r\n\r\ninstall_required\r\nget_download\r\ncleanup",
|
||||
"script": "#!\/bin\/bash\r\n# FTB Pack Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir -p \/mnt\/server\r\nfi\r\ncd \/mnt\/server\r\n\r\n\r\n# Download needed software.\r\nfunction install_required {\r\n apt update\r\n apt install -y curl jq\r\n}\r\n\r\nfunction get_modpack_id {\r\n urlencode() {\r\n local string=\"${1\/\/ \/%20}\"\r\n echo \"$string\"\r\n }\r\n \r\n # if no modpack id is set and modpack search term is set.\r\n if [ -z ${FTB_MODPACK_ID} ] && [ ! -z \"${FTB_SEARCH_TERM}\" ]; then\r\n encoded_search_term=$(urlencode \"$FTB_SEARCH_TERM\")\r\n JSON_DATA=$(curl -sSL https:\/\/api.modpacks.ch\/public\/modpack\/search\/8?term=\"${encoded_search_term}\")\r\n \r\n # grabs the first modpack in array.\r\n FTB_MODPACK_ID=$(echo -e ${JSON_DATA} | jq -r \".packs[0]\")\r\n fi\r\n \r\n if [ -z ${FTB_MODPACK_VERSION_ID} ] && [ ! -z ${FTB_VERSION_STRING} ]; then\r\n # grabs the correct version id matching the string.\r\n FTB_MODPACK_VERSION_ID=$(curl -sSL https:\/\/api.modpacks.ch\/public\/modpack\/${FTB_MODPACK_ID} | jq -r --arg VSTRING ${FTB_VERSION_STRING} '.versions[] | select(.name == $VSTRING) | .id')\r\n fi\r\n}\r\n\r\nfunction run_installer {\r\n # get architecture for installer\r\n INSTALLER_TYPE=$([ \"$(uname -m)\" == \"x86_64\" ] && echo \"linux\" || echo \"arm\/linux\")\r\n echo \"ModpackID: ${FTB_MODPACK_ID} VersionID: ${FTB_MODPACK_VERSION_ID} InstallerType: ${INSTALLER_TYPE}\"\r\n\r\n # download installer\r\n curl -L https:\/\/api.modpacks.ch\/public\/modpack\/0\/0\/server\/${INSTALLER_TYPE} --output serversetup\r\n chmod +x .\/serversetup\r\n \r\n # remove old forge files (to allow updating)\r\n rm -rf libraries\/net\/minecraftforge\/forge\r\n rm -rf libraries\/net\/neoforged\/forge\r\n rm -f unix_args.txt\r\n \r\n # run installer\r\n .\/serversetup ${FTB_MODPACK_ID} ${FTB_MODPACK_VERSION_ID} --auto --noscript --nojava\r\n}\r\n\r\n# allows startup command to work\r\nfunction move_startup_files {\r\n # create symlink for forge unix_args.txt if exists\r\n if compgen -G \"libraries\/net\/minecraftforge\/forge\/*\/unix_args.txt\"; then\r\n ln -sf libraries\/net\/minecraftforge\/forge\/*\/unix_args.txt unix_args.txt\r\n fi\r\n \r\n # create symlink for neoforge unix_args.txt if exists\r\n if compgen -G \"libraries\/net\/neoforged\/forge\/*\/unix_args.txt\"; then\r\n ln -sf libraries\/net\/neoforged\/forge\/*\/unix_args.txt unix_args.txt\r\n fi\r\n \r\n # move forge\/neoforge\/fabric jar file to start-server.jar if exists\r\n if compgen -G \"forge-*.jar\"; then\r\n mv -f forge-*.jar start-server.jar\r\n elif compgen -G \"fabric-*.jar\"; then\r\n mv -f fabric-*.jar start-server.jar\r\n fi\r\n}\r\n\r\n# installer cleanup\r\nfunction installer_cleanup {\r\n rm serversetup\r\n rm -f run.bat\r\n rm -f run.sh\r\n}\r\n\r\n# run installation steps\r\ninstall_required\r\nget_modpack_id\r\nrun_installer\r\nmove_startup_files\r\ninstaller_cleanup\r\n\r\necho \"Finished installing FTB modpack\"",
|
||||
"container": "openjdk:8-jdk-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
@ -42,7 +43,8 @@
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:99|min:4"
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "FTB modpack ID",
|
||||
@ -51,7 +53,8 @@
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
"rules": "nullable|integer",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "FTB Pack Version",
|
||||
@ -60,7 +63,8 @@
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
"rules": "nullable|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "FTB Pack Version ID",
|
||||
@ -69,7 +73,8 @@
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
"rules": "nullable|integer",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,20 +1,21 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-01-07T15:15:07-05:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Glowstone",
|
||||
"author": "support@pterodactyl.io",
|
||||
"description": "Glowstone is an open-source server implementation for Minecraft: Java Edition 1.12.2 and up.",
|
||||
"features": null,
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms768M -Xmx{{SERVER_MEMORY}}M -XX:+UseG1GC -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-05-09T06:18:25-04:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Krypton",
|
||||
"author": "callum.seabrook@prevarinite.com",
|
||||
"description": "A fast, lightweight Minecraft server written in Kotlin",
|
||||
@ -13,12 +13,13 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": "",
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JAR}}",
|
||||
"config": {
|
||||
|
13
game_eggs/minecraft/java/limbo/README.md
Normal file
13
game_eggs/minecraft/java/limbo/README.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Limbo
|
||||
|
||||
Standalone server program Limbo.
|
||||
|
||||
[Limbo Github](https://github.com/LOOHP/Limbo)
|
||||
|
||||
## Server Ports
|
||||
|
||||
The Limbo server requires a single port for access (default 25565).
|
||||
|
||||
| Port | default |
|
||||
|-------|---------|
|
||||
| Game | 25565 |
|
42
game_eggs/minecraft/java/limbo/egg-limbo.json
Normal file
42
game_eggs/minecraft/java/limbo/egg-limbo.json
Normal file
@ -0,0 +1,42 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Limbo",
|
||||
"author": "xEfinax@protonmail.com",
|
||||
"description": "Standalone server program Limbo.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17": "ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -XX:MaxRAMPercentage=95.0 -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"server-port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \"Limbo server listening on \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/ash\r\n# Limbo Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nmkdir -p \/mnt\/server\r\n\r\nLATEST_LIMBO_NAME=$(curl -s https:\/\/ci.loohpjames.com\/job\/Limbo\/lastSuccessfulBuild\/api\/json | jq -r .artifacts[1].displayPath)\r\n\r\ncd \/mnt\/server || exit\r\n\r\nif [ -f \"${SERVER_JARFILE}\" ]; then\r\n\tmv \"${SERVER_JARFILE}\" \"${SERVER_JARFILE}\".old\r\nfi\r\n\r\necho \"Downloading Limbo server jar...\"\r\ncurl -o \"${SERVER_JARFILE}\" https:\/\/ci.loohpjames.com\/job\/Limbo\/lastSuccessfulBuild\/artifact\/target\/$LATEST_LIMBO_NAME\r\n\r\nif [ ! -f server.properties ]; then\r\n echo \"Downloading Limbo server.properties\"\r\n curl -o server.properties https:\/\/raw.githubusercontent.com\/LOOHP\/Limbo\/master\/src\/main\/resources\/server.properties\r\nfi",
|
||||
"container": "ghcr.io\/pterodactyl\/installers:alpine",
|
||||
"entrypoint": "ash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
"description": "The name of the server jarfile to run the Limbo server with.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "Limbo.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -4,7 +4,7 @@
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-09-28T18:19:11+00:00",
|
||||
"exported_at": "2023-07-29T17:46:23+02:00",
|
||||
"name": "Magma",
|
||||
"author": "support@pterodactyl.io",
|
||||
"description": "Magma is most powerful Forge server providing you with Forge mods and Bukkit Plugins using Spigot and Paper for Performance Optimization and Stability.",
|
||||
@ -14,10 +14,11 @@
|
||||
"pid_limit"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8"
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
@ -29,8 +30,8 @@
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "apt update\r\napt install -y curl jq\r\n\r\ncd \/mnt\/server\/\r\n\r\n# Hard coded latest version as the magma API doesn't have an endpoint to query for it\r\nLATEST_VERSION=\"1.18.2\"\r\n\r\n# Default TAG_VERSION if empty\r\nif [[ -z \"${TAG_VERSION}\" ]]; then\r\n TAG_VERSION=\"latest\"\r\nfi\r\n\r\n\r\nif [[ -z \"${MC_VERSION}\" ]] || [[ \"${MC_VERSION}\" == \"latest\" ]]; then\r\n echo -e \"Version not set. Defaulting to latest\"\r\n MC_VERSION=${LATEST_VERSION}\r\nfi\r\n\r\necho \"Attempting to install Magma - Version ${MC_VERSION} - Tag ${TAG_VERSION}\"\r\n\r\nif [[ \"${TAG_VERSION}\" == \"latest\" ]]; then\r\n # Didn't ask for a specific tag\r\n VERSION_JSON=$(curl --silent \"https:\/\/api.magmafoundation.org\/api\/v2\/${MC_VERSION}\/latest\")\r\nelse\r\n # Asked for a specific tag\r\n VERSION_JSON=$(curl --silent \"https:\/\/api.magmafoundation.org\/api\/v2\/${MC_VERSION}\/latest\/${TAG_VERSION}\")\r\nfi\r\n\r\nDOWNLOAD_LINK=$(echo ${VERSION_JSON} | jq -r .link)\r\necho \"Download Link: '${DOWNLOAD_LINK}'\"\r\n\r\n# Check we found a download link\r\nif [ ! -z \"${DOWNLOAD_LINK}\" ]; then\r\n \r\n # Validate that link works\r\n echo -e \"Validating download link\"\r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_LINK}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_LINK}\r\n else\r\n echo -e \"Download URL ${DOWNLOAD_LINK} is invalid. Terminating install.\"\r\n exit 2\r\n fi\r\nelse\r\n echo -e \"No download URL found. Terminating install.\"\r\n exit 2\r\nfi\r\n\r\n\r\n# Download server.jar\r\necho -e \"running: curl -sSL -o ${SERVER_JARFILE} ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o ${SERVER_JARFILE} -sSL ${DOWNLOAD_LINK}\r\necho -e \"Install Complete\"",
|
||||
"container": "ghcr.io\/parkervcp\/installers:debian",
|
||||
"script": "#!\/bin\/bash\r\n\r\napt update\r\napt -y install curl git jq\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\/\r\n\r\n# Hard coded latest version as the magma API doesn't have an endpoint to query for it\r\nLATEST_VERSION=\"1.18.2\"\r\n\r\n# Default TAG_VERSION if empty\r\nif [[ -z \"${TAG_VERSION}\" ]]; then\r\n TAG_VERSION=\"latest\"\r\nfi\r\n\r\n\r\nif [[ -z \"${MC_VERSION}\" ]] || [[ \"${MC_VERSION}\" == \"latest\" ]]; then\r\n echo -e \"Version not set. Defaulting to latest\"\r\n MC_VERSION=${LATEST_VERSION}\r\nfi\r\n\r\necho \"Attempting to install Magma - Version ${MC_VERSION} - Tag ${TAG_VERSION}\"\r\n\r\nif [[ \"${TAG_VERSION}\" == \"latest\" ]]; then\r\n # Didn't ask for a specific tag\r\n VERSION_JSON=$(curl --silent \"https:\/\/api.magmafoundation.org\/api\/v2\/${MC_VERSION}\/latest\")\r\nelse\r\n # Asked for a specific tag\r\n VERSION_JSON=$(curl --silent \"https:\/\/api.magmafoundation.org\/api\/v2\/${MC_VERSION}\/latest\/${TAG_VERSION}\")\r\nfi\r\n\r\nDOWNLOAD_LINK=$(echo ${VERSION_JSON} | jq -r .link)\r\necho \"Download Link: '${DOWNLOAD_LINK}'\"\r\n\r\n# Check we found a download link\r\nif [ ! -z \"${DOWNLOAD_LINK}\" ]; then\r\n \r\n # Validate that link works\r\n echo -e \"Validating download link\"\r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_LINK}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_LINK}\r\n else\r\n echo -e \"Download URL ${DOWNLOAD_LINK} is invalid. Terminating install.\"\r\n exit 2\r\n fi\r\nelse\r\n echo -e \"No download URL found. Terminating install.\"\r\n exit 2\r\nfi\r\n\r\n\r\n# Download server.jar\r\necho -e \"running: curl -sSL -o ${SERVER_JARFILE} ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o ${SERVER_JARFILE} -sSL ${DOWNLOAD_LINK}\r\necho -e \"Install Complete\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
|
18
game_eggs/minecraft/java/modrinth/README.md
Normal file
18
game_eggs/minecraft/java/modrinth/README.md
Normal file
@ -0,0 +1,18 @@
|
||||
# Modrinth Generic
|
||||
|
||||
## This is a generic egg for Modrinth modpacks
|
||||
|
||||
You will need to give it a modpack project ID. The project ID for [Extreme Optimization!](https://modrinth.com/modpack/extreme-optimization!) is `1oIpaoJo` for example.
|
||||
This can be found on the modpack page in the `Technical information` section in the left sidebar.
|
||||
|
||||
You can also optionally specify a version ID. If you do not specify a version ID, the latest version will be used. The version ID for [Extreme Optimization!](https://modrinth.com/modpack/extreme-optimization!) version 1.12.2For2.0 is `SyMW2FDv` for example. This can be found on the modpack page by clicking the version number in the `Versions` section.
|
||||
|
||||
The script will automatically setup of Forge, Fabric, or Quilt depending on the modpack.
|
||||
|
||||
## 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 |
|
||||
|-------|---------|
|
||||
| Game | 25565 |
|
59
game_eggs/minecraft/java/modrinth/egg-modrinth-generic.json
Normal file
59
game_eggs/minecraft/java/modrinth/egg-modrinth-generic.json
Normal file
File diff suppressed because one or more lines are too long
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-01-14T09:54:36+01:00",
|
||||
"exported_at": "2023-08-13T19:49:14+02:00",
|
||||
"name": "Mohist",
|
||||
"author": "alex.chang-lam@protonmail.com",
|
||||
"description": "Spigot fork with performance optimizations.",
|
||||
@ -13,24 +13,25 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}} pause",
|
||||
"startup": "java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"server-port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \"\r\n}",
|
||||
"logs": "{}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Mohist Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl\r\n\r\n#Go into main direction\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir \/mnt\/server\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\nif [ ! -z ${BUILD_VERSION} ]; then\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_VERSION}\/download\r\nelse\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_TYPE}\/download\r\nfi\r\n\r\n#Downloading jars\r\necho -e \"Download link is ${DOWNLOAD_LINK}\"\r\necho -e \"Downloading build version ${BUILD_VERSION}\"\r\nif [ ! -z \"${DOWNLOAD_LINK}\" ]; then \r\n if curl --output \/dev\/null --silent --fail ${DOWNLOAD_LINK}; then\r\n echo -e \"Download link is valid.\"\r\n else\r\n echo -e \"Link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\ncurl -s -o server.jar -sS ${DOWNLOAD_LINK}\r\n\r\n#Checking if downloaded jars exist\r\nif [ ! -f .\/server.jar ]; then\r\n echo \"!!! Error downloading build version ${BUILD_VERSION} !!!\"\r\n exit\r\nfi",
|
||||
"container": "debian:buster-slim",
|
||||
"script": "#!\/bin\/bash\r\n# Mohist Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt -y install curl\r\n\r\n#Go into main direction\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 ${BUILD_VERSION} ]; then\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_VERSION}\/download\r\nelse\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/latest\/download\r\nfi\r\n\r\n#Downloading jars\r\necho -e \"Download link is ${DOWNLOAD_LINK}\"\r\necho -e \"Downloading build version ${BUILD_VERSION}\"\r\n\r\ncurl -sSL -o ${SERVER_JARFILE} ${DOWNLOAD_LINK}\r\n\r\n#Checking if downloaded jars exist\r\nif [ ! -f .\/${SERVER_JARFILE} ]; then\r\n echo \"!!! Error downloading build version ${BUILD_VERSION} !!!\"\r\n exit\r\nfi\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
|
||||
"container": "debian:bullseye-slim",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
@ -42,16 +43,18 @@
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": false,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Minecraft Version",
|
||||
"description": "The version of Minecraft to download.",
|
||||
"env_variable": "MC_VERSION",
|
||||
"default_value": "1.16.5",
|
||||
"default_value": "1.19.4",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Build Number",
|
||||
@ -60,16 +63,8 @@
|
||||
"default_value": "",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "nullable|string|max:20"
|
||||
},
|
||||
{
|
||||
"name": "Build Type",
|
||||
"description": "The type of server jar to download from Mohist.\r\n\r\nValid types are \"recommended\" and \"latest\".",
|
||||
"env_variable": "BUILD_TYPE",
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "nullable|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2022-05-21T10:48:18-04:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Paper",
|
||||
"author": "parker@pterodactyl.io",
|
||||
"description": "High performance Spigot fork that aims to fix gameplay and mechanics inconsistencies.",
|
||||
@ -13,12 +13,13 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-12-18T19:20:26-05:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Purpur",
|
||||
"author": "purpur@birdflop.com",
|
||||
"description": "A drop-in replacement for Paper servers designed for configurability, and new fun and exciting gameplay features.",
|
||||
@ -13,14 +13,15 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"startup": "java --add-modules=jdk.incubator.vector -Xms128M -Xmx{{SERVER_MEMORY}}M -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"server-port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \"\r\n}",
|
||||
@ -42,7 +43,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
@ -51,7 +53,8 @@
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/|max:80"
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/|max:80",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Build Number",
|
||||
@ -60,7 +63,8 @@
|
||||
"default_value": "latest",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|max:20"
|
||||
"rules": "required|string|max:20",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
29
game_eggs/minecraft/java/quilt/README.md
Normal file
29
game_eggs/minecraft/java/quilt/README.md
Normal file
@ -0,0 +1,29 @@
|
||||
# Quilt
|
||||
|
||||
## From their [Website](https://quiltmc.org/)
|
||||
|
||||
## [Documentation](https://quiltmc.org/en/install/server/)
|
||||
|
||||
The Quilt project is an open-source, community-driven modding toolchain designed primarily for Minecraft. By focusing on speed, ease of use and modularity, Quilt aims to provide a sleek and modern modding toolchain with an open ecosystem.
|
||||
|
||||
## Installation/System Requirements
|
||||
<!--Make changes to reflect the server minimum/recommended hardware specs-->
|
||||
| | Bare Minimum | Recommended |
|
||||
|---------|---------|---------|
|
||||
| Processor | Minecraft probably supports everything? | - |
|
||||
| RAM | 2GB | 5GB |
|
||||
| Storage | 300MB | 10GB |
|
||||
| Network | 3 Mbit/s | 7 Mbit/s |
|
||||
| Game Ownership | The game is not required to run the server. | - |
|
||||
|
||||
## Server Ports
|
||||
|
||||
Ports required to run the server in a table format.
|
||||
|
||||
| Port | default |
|
||||
|---------|---------|
|
||||
| Game | 25565 |
|
||||
|
||||
### Notes
|
||||
|
||||
25565 is the default port, but any port can be used.
|
56
game_eggs/minecraft/java/quilt/egg-quilt.json
Normal file
56
game_eggs/minecraft/java/quilt/egg-quilt.json
Normal file
@ -0,0 +1,56 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2023-11-25T16:40:11+01:00",
|
||||
"name": "Quilt",
|
||||
"author": "diedyesterdaywashere@gmail.com",
|
||||
"description": "The Quilt project is an open-source, community-driven modding toolchain designed primarily for Minecraft. By focusing on speed, ease of use and modularity, Quilt aims to provide a sleek and modern modding toolchain with an open ecosystem.",
|
||||
"features": null,
|
||||
"docker_images": {
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -XX:MaxRAMPercentage=95.0 -jar {{SERVER_JARFILE}} nogui",
|
||||
"config": {
|
||||
"files": "{\r\n \"server.properties\": {\r\n \"parser\": \"properties\",\r\n \"find\": {\r\n \"server-ip\": \"0.0.0.0\",\r\n \"enable-query\": \"true\",\r\n \"server-port\": \"{{server.build.default.port}}\"\r\n }\r\n }\r\n}",
|
||||
"startup": "{\r\n \"done\": \")! For help, type \",\r\n \"userInteraction\": [\r\n \"Go to eula.txt for more info.\"\r\n ]\r\n}",
|
||||
"logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}",
|
||||
"stop": "stop"
|
||||
},
|
||||
"scripts": {
|
||||
"installation": {
|
||||
"script": "#!\/bin\/bash\r\n# Quilt Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y wget\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nwget -O quilt.jar https:\/\/quiltmc.org\/api\/v1\/download-latest-installer\/java-universal\r\njava -jar quilt.jar \\\r\n install server $MC_VERSION \\\r\n --download-server\r\ncd \/mnt\/server\/server\r\nmv * \/mnt\/server\r\ncd ..\r\nrm quilt.jar\r\nrmdir \/mnt\/server\/server\r\nmv server.jar minecraft.jar\r\nmv quilt-server-launch.jar server.jar\r\necho \"serverJar=minecraft.jar\" > quilt-server-launcher.properties\r\necho -e \"Server is Ready!\"",
|
||||
"container": "eclipse-temurin:18-jdk-jammy",
|
||||
"entrypoint": "bash"
|
||||
}
|
||||
},
|
||||
"variables": [
|
||||
{
|
||||
"name": "Minecraft Version",
|
||||
"description": "Version of Minecraft that will be installed. You can only choose the exact version number, for example \"1.20.2\", \"latest\" won't work!",
|
||||
"env_variable": "MC_VERSION",
|
||||
"default_value": "1.20.2",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string|between:3,15",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
"description": "The name of the jarfile that will be ran on server launch.",
|
||||
"env_variable": "SERVER_JARFILE",
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-12-09T13:30:38-05:00",
|
||||
"exported_at": "2023-05-17T23:20:29+01:00",
|
||||
"name": "Spigot",
|
||||
"author": "support@pterodactyl.io",
|
||||
"description": "Spigot is the most widely-used modded Minecraft server software in the world. It powers many of the top Minecraft server networks around to ensure they can cope with their huge player base and ensure the satisfaction of their players. Spigot works by reducing and eliminating many causes of lag, as well as adding in handy features and settings that help make your job of server administration easier.",
|
||||
@ -13,12 +13,13 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 18": "ghcr.io\/pterodactyl\/yolks:java_18"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
|
File diff suppressed because one or more lines are too long
@ -1,10 +1,10 @@
|
||||
{
|
||||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
||||
"meta": {
|
||||
"version": "PTDL_v1",
|
||||
"version": "PTDL_v2",
|
||||
"update_url": null
|
||||
},
|
||||
"exported_at": "2021-12-09T13:30:32-05:00",
|
||||
"exported_at": "2023-11-16T17:37:38+00:00",
|
||||
"name": "SpongeVanilla",
|
||||
"author": "parker@parkervcp.com",
|
||||
"description": "SpongeVanilla is the implementation of the Sponge API on top of Vanilla Minecraft.",
|
||||
@ -13,12 +13,12 @@
|
||||
"java_version",
|
||||
"pid_limit"
|
||||
],
|
||||
"images": [
|
||||
"ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"ghcr.io\/pterodactyl\/yolks:java_8"
|
||||
],
|
||||
"docker_images": {
|
||||
"Java 17": "ghcr.io\/pterodactyl\/yolks:java_17",
|
||||
"Java 16": "ghcr.io\/pterodactyl\/yolks:java_16",
|
||||
"Java 11": "ghcr.io\/pterodactyl\/yolks:java_11",
|
||||
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8"
|
||||
},
|
||||
"file_denylist": [],
|
||||
"startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}",
|
||||
"config": {
|
||||
@ -42,7 +42,8 @@
|
||||
"default_value": "recommended",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|string"
|
||||
"rules": "required|string",
|
||||
"field_type": "text"
|
||||
},
|
||||
{
|
||||
"name": "Server Jar File",
|
||||
@ -51,7 +52,8 @@
|
||||
"default_value": "server.jar",
|
||||
"user_viewable": true,
|
||||
"user_editable": true,
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
|
||||
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
|
||||
"field_type": "text"
|
||||
}
|
||||
]
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user