Skip to content
This repository has been archived by the owner on May 14, 2024. It is now read-only.

Add crucible #2497

Open
wants to merge 18 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [PowerNukkitX](game_eggs/minecraft/bedrock/PowerNukkitX)

* [Java](game_eggs/minecraft/java) Servers for Java Minecraft
* [Crucible](game_eggs/minecraft/java/crucible)
* [CurseForge](game_eggs/minecraft/java/curseforge)
* [Cuberite](game_eggs/minecraft/java/cuberite)
* [Fabric](game_eggs/minecraft/java/fabric)
Expand Down
1 change: 1 addition & 0 deletions game_eggs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@
* [PocketMine MP](minecraft/bedrock/pocketmine_mp)

* [Java](minecraft/java) Servers for Java Minecraft
* [Crucible](minecraft/java/crucible)
* [CurseForge](minecraft/java/curseforge)
* [Cuberite](minecraft/java/cuberite)
* [Fabric](minecraft/java/fabric)
Expand Down
1 change: 1 addition & 0 deletions game_eggs/minecraft/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ It’s set in infinitely-generated worlds of wide open terrain - icy mountains,

## [Java](java) Servers for Java Minecraft

* [Crucible](java/crucible)
* [Cuberite](java/cuberite)
* [CurseForge](java/curseforge)
* [Fabric](java/fabric)
Expand Down
9 changes: 9 additions & 0 deletions game_eggs/minecraft/java/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,15 @@ The ancient power of Tekkits past return in this legendary pack!
[Tekkit Classic Modpack Page](https://www.technicpack.net/modpack/tekkit.552560)
The official Tekkit Classic modpack. Build factories, automate crafting!

## [Thermos Based](https://cyberdynecc.github.io/Thermos/)
Thermos is a fork of KCauldron, a craftbukkit forge server for Minecraft 1.7.10. After periods of inactivity on KCauldron's GitLab concerning major issues, Thermos was created to allow active members of the Minecraft coding community to optimize it and provide fixes in a timely manner.

### [Crucible](crucible)

[Crucible Website](https://cruciblemc.github.io/)
Crucible is a Forge & Bukkit hybrid based on Thermos with several improvements.


## [VanillaCord](vanillacord)

## VanillaCord
Expand Down
52 changes: 52 additions & 0 deletions game_eggs/minecraft/java/crucible/egg-crucible.json
Original file line number Diff line number Diff line change
@@ -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-10-24T15:54:39-03:00",
"name": "Crucible",
"author": "[email protected]",
"description": "Crucible is a Thermos with several improvements. We aim to close the gaps left by Thermos and extend the support for those still on 1.7.10 by adding support for long broken mods and plugins and fix serious bugs as they appear.",
"features": null,
"docker_images": {
"Java 8": "ghcr.io\/pterodactyl\/yolks:java_8"
},
"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 \"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# Crucible Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\ncd \/mnt\/server\r\n#!\/bin\/bash\r\n# CRUCIBLE_VERSION=\"staging-81fcb90\"\r\n# SERVER_JARFILE=\"server.jar\"\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/CrucibleMC\/Crucible\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/CrucibleMC\/Crucible\/releases\")\r\nMATCH=\"Crucible-1\\.7\\.10-.*\\.jar\"\r\nDOWNLOAD_URL=\"\"\r\nDOWNLOAD_URL_LIB=\"\"\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\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 DOWNLOAD_URL_LIB=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i libraries.zip\r\n)\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\ncurl -sSL $DOWNLOAD_URL -o ${SERVER_JARFILE}\r\nif [ -n \"${DOWNLOAD_URL_LIB}\" ]; then\r\n wget $DOWNLOAD_URL_LIB -O temp.zip\r\n unzip temp.zip -d libraries\r\n rm temp.zip\r\nfi",
"container": "ghcr.io\/pterodactyl\/installers:alpine",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Server Jar File",
"description": "The name of the Jarfile to use when running Crucible.",
"env_variable": "SERVER_JARFILE",
"default_value": "server.jar",
"user_viewable": true,
"user_editable": true,
"rules": "required|regex:\/^([\\w\\d._-]+)(\\.jar)$\/",
"field_type": "text"
},
{
"name": "Crucible Version",
"description": "The release of Crucible to download and use. Similar as: `v5.4` or `staging-81fcb90`\r\nnote: We do not recommend using this egg to download versions lower than v5.0, these versions may have several bugs and may cause the installation script to crash.",
"env_variable": "VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": "required",
"field_type": "text"
}
]
}
15 changes: 15 additions & 0 deletions game_eggs/minecraft/java/crucible/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Crucible
Crucible is a Thermos with several improvements. We aim to close the gaps left by Thermos and extend the support for those still on 1.7.10 by adding support for long broken mods and plugins and fix serious bugs as they appear.

[Crucible](https://cruciblemc.github.io/)

## 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 |

## Notes
By default the downloaded version is `latest`, versions must follow the pattern `vX.X` or `staging-XXXXX` for branch builds