# 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

Backport the current 1.20.1 version of both mods to 1.18.2. Use the 1.20.1 source as the base for both.

### 1. `services/rules-mod/1.18.2/` — Firefrost internal version
- Backport from `services/rules-mod/1.20.1/`
- 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
- Backport from `services/discord-rules/1.20.1/`
- Same Forge/Java targets as above
- Output jar: `discord-rules-1.0.5-1.18.2-forge.jar`

---

## 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** 💙🔥❄️
