diff --git a/.forgejo/workflows/build-push-jre-alpine.yml b/.forgejo/workflows/build-push-jre-alpine.yml new file mode 100644 index 0000000..0eff078 --- /dev/null +++ b/.forgejo/workflows/build-push-jre-alpine.yml @@ -0,0 +1,48 @@ +on: + workflow_dispatch: + push: + tags: + - 'jre-alpine*.**/v**' + schedule: + - cron: '0 0 1-31 1-12 1' + +jobs: + build_push: + runs-on: ubuntu-latest + steps: + - + name: Checkout Repository + #uses: actions/checkout@v5 + #uses: https://github.com/yangskyboxlabs/action-checkout@sha256 + uses: https://git.nanody.de/anonoe/action-checkout@sha256 + with: + object-format: 'sha256' + - + name: Login to Container Registry + uses: docker/login-action@v3 + with: + registry: git.nanody.de + username: ${{ github.actor }} + password: ${{ secrets.PACKAGES_RW }} + - + name: Docker meta + id: meta + uses: docker/metadata-action@v5 + with: + images: | + git.nanody.de/anonoe/jre-alpine + tags: | + type=schedule,pattern=nightly,suffix={{tag}}-{{commit_date 'YYYYMMDD-HHmmss' tz='Europe/Berlin'}} + type=semver,pattern={{version}},match=v(\d.\d.\d)$ + type=semver,pattern={{major}}.{{minor}},match=v(\d.\d.\d)$ + type=semver,pattern={{major}},match=v(\d.\d.\d)$ + # type=raw,suffix={{tag}}-{{commit_date 'YYYYMMDD-HHmmss' tz='Europe/Berlin'}},value= + - + name: Build and push jre-alpine + uses: docker/build-push-action@v6 + with: + context: ./server/buildenv-jre-alpine/ + file: ./server/buildenv-jre-alpine/Containerfile + push: true + tags: ${{ steps.meta.outputs.tags }} + #labels: ${{ steps.meta.outputs.labels }} diff --git a/README.md b/README.md index eb4b42c..7fd7bee 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ -## MMS - Description +## About MMS This is a **M**odded **M**inecraft **S**erver project, mostly a modpack. (please tell me a better name than MMS, I'm open for suggestions) -The modpack is centralised around the [Create mod](https://github.com/Fabricators-of-Create/Create). Why Create? Because it's a cool mod, obviously! +MMS is centralised around the [Create mod](https://github.com/Fabricators-of-Create/Create). Why Create? Because it's a cool mod, obviously! Apart from that there are 4 goals: - Only add features and functionality to the game, keep the vanilla features and functionality untouched. Complex Redstone contraptions, for example, which are supposed to work in vanilla, should also work with the MMS modpack. - Find a middle ground between being too minimalistic and too bloated. @@ -10,11 +10,22 @@ Apart from that there are 4 goals: Based on these goals everything else is decided. That's why the mod loader is [Fabric](https://fabricmc.net/), which is lightweight and doesn't change Minecraft's vanilla behaviour. - -The 'modpack' is actually separated into two modpacks: MMS-client and MMS-server. The later is supposed to run on a server, the first is supposed to run on a client and connect to the server. +**If the Create mod and these goals appeal to you, MMS might be just the thing!** + +The 'MMS' project is separated into three modpacks: +- **MMS-full** combines MMS-client and MMS-server, providing the full MMS experience in Singleplayer as well. It may however run less smoothly than MMS-client on your computer. +- **MMS-client** is for use with MMS-server and is more lightweight than MMS-full by excluding server-only features like world generation mods. It can also be used in Singleplayer, without the full MMS experience and requires less resources than MMS-full. +- **MMS-server** is to be used on a dedicated server. It contains Mods with functionality only on servers. + Additionally, MMS-client-min is provided as information on how to make a client compatible with the server. It's only the bare minimum to achieve compatibility. It also includes optional mods, which the server provides supports for. They are `.disabled` by default. + Explicit contents: +
+MMS-full +WIP +
+
MMS-client WIP @@ -43,7 +54,7 @@ This will allow PrismLauncher to generate a token, which grants temporary access #### 3. Import the modpack On the top left "Add Instance -> Import". Paste the following link: -`https://git.nanody.de/api/packages/anonoe/generic/MMS-client/3.0-Release-Candidate-02-init/MMS-client_3.0-RC-02-init.zip` +`https://git.nanody.de/api/packages/anonoe/generic/MMS-client/3.0/MMS-client_3.0-init.zip` and press "OK". #### 4. Launch game and join server Select the instance and press "Launch". Have a little patience for the downloads to finish and the game to launch. Finally join the server, if you are whitelisted. @@ -52,14 +63,21 @@ MMS-client-min is a symbolic modpack, which isn't meant to be 'installed'. It's ### MMS-server Installation WIP +## Building Instructions +WIP + ## Licensing & Credits - This project is *mostly* licensed under the [AGPL-3.0-or-later](./LICENSE). - The "client" and "server" modpacks are based on [Simply Optimized](https://modrinth.com/modpack/sop) by "HyperSoop", which has it's own license at . - **Excluded** from the [AGPL-3.0-or-later](./LICENSE) are - - all "mods" (jar binaries), as each has their own open-source license (Except for Xaero's World Map, which is closed-source). You can find them in the "mods" folders: + - all "mods" (jar binaries), as each has their own license (most of which are open-source). You can find them in the "mods" folders: - [./client/mods](./client/mods) - [./client-min/mods](./client-min/mods) - [./server/server/mods](./server/server/mods) + - These mods are licensed All Rights Reserved: + - Xaero's World Map, closed-source + - What Are They Up To (Watut), [source available](https://github.com/Corosauce/WATUT) + - dependency CoroUtil, [source available](https://github.com/Corosauce/CoroUtil) - all resourcepacks in [./client/resourcepacks](./client/resourcepacks) as I (anonoe) do not own them. I distribute them with the permission granted by Vanilla Tweaks [here](https://vanillatweaks.net/terms/). - all datapacks in [./server/server/world/datapacks](./server/server/world/datapacks) as I (anonoe) do not own them. I distribute them with the permission granted by Vanilla Tweaks [here](https://vanillatweaks.net/terms/) and by Stardust Labs [here](https://github.com/Stardust-Labs-MC/Structory/blob/v1.3.5/license.txt) and [here](https://github.com/Stardust-Labs-MC/Structory-Towers/blob/v1.0.7/license.txt). - the fabric-server-mc...loader...launcher...jar file(s) located at [./server/server](./server/server) by FabricMC licensed under the [Apache-2.0 License](https://github.com/FabricMC/fabric-installer/?tab=Apache-2.0-1-ov-file#readme) diff --git a/client/minecraft/servers.dat b/client/minecraft/servers.dat index bd03a82..0a61b06 100644 Binary files a/client/minecraft/servers.dat and b/client/minecraft/servers.dat differ diff --git a/server/alp-jre-21-hl/Containerfile b/server/alp-jre-21-hl/Containerfile deleted file mode 100644 index ba5b734..0000000 --- a/server/alp-jre-21-hl/Containerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM alpine:latest - -RUN apk add --no-cache openjdk21-jre-headless diff --git a/server/buildenv-jre-alpine/Containerfile b/server/buildenv-jre-alpine/Containerfile new file mode 100644 index 0000000..26fcaa3 --- /dev/null +++ b/server/buildenv-jre-alpine/Containerfile @@ -0,0 +1,3 @@ +FROM alpine:3.22 + +RUN apk add --no-cache openjdk21-jre-headless rcon diff --git a/server/compose.yml b/server/compose.yml index f2a4329..1c7584d 100644 --- a/server/compose.yml +++ b/server/compose.yml @@ -1,13 +1,13 @@ version: '3.8' services: - jre-hl-mc: + jre-hl-mc-MMS: image: alp-jre-21-hl:latest volumes: - ./server:/mnt/server working_dir: /mnt/server command: ["java", "-Xmx4G", "-Xms1G", "-jar", "minecraft_server.jar", "--nogui"] ports: - - "25565:25565" # minecraft - - "24454:24454" # simple voicechat + - "25565:25565/tcp" # minecraft + - "24454:24454/udp" # simple voicechat tty: true # restart: unless-stopped diff --git a/server/server/server.properties b/server/server/server.properties index a7fab40..07d7b09 100644 --- a/server/server/server.properties +++ b/server/server/server.properties @@ -7,7 +7,7 @@ difficulty=normal hardcore=false pvp=true simulation-distance=10 -view-distance=10 +view-distance=32 allow-flight=false allow-nether=true spawn-animals=true @@ -38,7 +38,7 @@ op-permission-level=3 function-permission-level=2 broadcast-console-to-ops=true broadcast-rcon-to-ops=true -motd=\u00A72\u00A7n3.0\u00A7r \u00A76\u00A7lCreate Expansion\u00A7r\u00A7r\nwill be here \u00A7o(soon)\u00A7r in \u00A7kx\u00A7r working days +motd=\u00A72\u00A7n3.0\u00A7r \u00A76\u00A7lCreate Expansion\u00A7r\n\u00A7k3.0\u00A7r Out Now! \u00A7k3.0 #Server server-ip=