From 2648133528516b35fb20041c59ef5c306bbf42cf Mon Sep 17 00:00:00 2001 From: Claude Chronicler #88 Date: Tue, 14 Apr 2026 13:12:51 +0000 Subject: [PATCH] =?UTF-8?q?bridge:=20REQ=20=E2=80=94=20rules=20mod=201.18.?= =?UTF-8?q?2=20build=20for=20DeceasedCraft?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../requests/REQ-2026-04-14-rules-mod-1182.md | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 docs/code-bridge/requests/REQ-2026-04-14-rules-mod-1182.md diff --git a/docs/code-bridge/requests/REQ-2026-04-14-rules-mod-1182.md b/docs/code-bridge/requests/REQ-2026-04-14-rules-mod-1182.md new file mode 100644 index 0000000..bc24eac --- /dev/null +++ b/docs/code-bridge/requests/REQ-2026-04-14-rules-mod-1182.md @@ -0,0 +1,86 @@ +# Code Request — Rules Mod 1.18.2 Build + +**Filed by:** Chronicler #88 +**Date:** 2026-04-14 +**Priority:** Medium +**Target:** Both `rules-mod` (Firefrost internal) and `discord-rules` (CurseForge generic) + +--- + +## Background + +We have the rules mod built for 1.16.5, 1.20.1, and 1.21.1. DeceasedCraft runs +Forge 1.18.2-40.2.4 and needs it too. Build a 1.18.2 version of both variants. + +--- + +## What To Build + +### 1. `services/rules-mod/1.18.2/` — Firefrost internal version +- Base on `services/rules-mod/1.20.1/` (closest Forge version) +- Target: Forge 1.18.2-40.2.4 +- Java version: **Java 17** +- Output jar: `firefrostrules-1.0.5-1.18.2-forge.jar` + +### 2. `services/discord-rules/1.18.2/` — CurseForge generic version +- Base on `services/discord-rules/1.20.1/` +- Same Forge/Java targets as above +- Output jar: `discord-rules-1.0.5-1.18.2-forge.jar` + +--- + +## Key Differences 1.18.2 vs 1.20.1 + +- `build.gradle` — change `minecraft_version` to `1.18.2`, `forge_version` to `40.2.4` +- `mods.toml` — update `loaderVersion` range to `[40,)` and `[[dependencies.serverrules]]` MC version to `[1.18.2,1.19)` +- MappingsChannel: use `official` mappings (same as 1.20.1 should be fine) +- No breaking API changes between 1.18.2 and 1.20.1 for what this mod does +- Config type: use `ModConfig.Type.SERVER` (not COMMON) — confirmed working pattern for 1.18.2 Forge, config goes in `world/serverconfig/` + +--- + +## Build Instructions + +```bash +use-java 17 +cd /opt/mod-builds/firefrost-services/services/rules-mod/1.18.2 +/opt/gradle-8.8/bin/gradle build + +cd /opt/mod-builds/firefrost-services/services/discord-rules/1.18.2 +/opt/gradle-8.8/bin/gradle build +``` + +Output jars go in `build/libs/` — grab the one without `-sources` or `-dev`. + +--- + +## Deliverable + +2 built jars committed to `firefrost-services` main: +- `services/rules-mod/discord-rules-1.0.5-1.18.2-forge.jar` +- `services/discord-rules/discord-rules-1.0.5-1.18.2-forge.jar` + +Deploy `firefrostrules-1.0.5-1.18.2-forge.jar` to DeceasedCraft: +- Server UUID: `8950fa1e-acd6-4db9-9595-076007cc26af` +- Node: NC1 +- Mods path: `/var/lib/pterodactyl/volumes/8950fa1e-acd6-4db9-9595-076007cc26af/mods/` +- Config path: `world/serverconfig/firefrostrules-server.toml` + +After deploy, update `ACTIVE_CONTEXT.md`. + +--- + +## Config for DeceasedCraft After Deploy + +```toml +bot_token = "MTQ4NzA4MDE2Njk2OTU3NzUwMg.GU5EsT.mqBwo7XUHsciN9jNy9OygTRkaMZ9qJ2tHw7HbI" +channel_id = "DECEASEDCRAFT_RULES_CHANNEL_ID" +message_id = "DECEASEDCRAFT_RULES_MESSAGE_ID" +``` + +Michael needs to provide the channel_id and message_id from Discord — the +#server-rules-for-bot channel message for DeceasedCraft. + +--- + +**Fire + Frost + Foundation** 💙🔥❄️