chore(pack): drop FTB Quests, FTB Teams and FTB XMod Compat

FTB Teams was the only thing holding FTB Quests down -- FTB Quests' 1.21.1
build requires it, and its bytecode references dev/ftb/mods/ftbteams in 14
classes including the event handler, so it breaks at runtime without it. With
quests unused, the whole block goes. XMod Compat only bridged
Quests/Chunks/Ranks, all of which are now gone.

FTB Library stays because FTB Backups 3 builds its config UI on it
(Panel/Theme/Widget/ConfigGroup/ConfigValue/SNBTCompoundTag, 13 classes, and
it does not bundle them despite declaring only neoforge). Architectury API
stays because FTB Library references it in 47 classes.

Verified before removing: FTB Library and FTB Backups 3 reference ftbteams,
ftbquests and ftbxmodcompat in zero classes each, and nothing else in the pack
references them.

CurseForge-sourced mods drop from 9 to 5; pack is 146 mods. OPAC's built-in
party system is now the only one, so primaryPartySystem should be left at its
default rather than pointed at ftbteams.
This commit is contained in:
logan committed 2026-10-01 01:21:24 -04:00
1 parent 769af6fa2d
commit 2fcb8b492e
6 files changed
+48 -62

No files matched your search

+47 -7
View File
@@ -1,10 +1,12 @@
# FTB Chunks -> Open Parties and Claims + Xaero's maps
**Status:** implemented in the pack (working tree, uncommitted) - 2026-09-30
**Status:** shipped - 2026-09-30 (`1d02bf1`, pushed). FTB Quests/Teams/XMod Compat removed after the
swap; see section 8.
**Decision:** replace FTB Chunks with **Open Parties and Claims (OPAC)** for claims/forceloading and
**Xaero's World Map + Minimap** for mapping. FTB Teams, FTB Quests, FTB Library, FTB XMod Compat and
FTB Backups 3 all stay.
**Accepted cost:** every player re-claims their land and re-creates their waypoints.
**Xaero's World Map + Minimap** for mapping, and drop the rest of the FTB suite that depended on it.
Remaining FTB mods: **FTB Backups 3** and **FTB Library** only.
**Accepted cost:** every player re-claims their land and re-creates their waypoints, and any FTB Quests
content and per-team progress is discarded.
Confidence tags follow `FINDINGS.md`: **VERIFIED** / **DOCUMENTED** / **COMMUNITY** / **INFERENCE**.
@@ -49,7 +51,7 @@ versions, same sha512s - so this is a revert of the map half of that commit, not
| Forceload + offline ticking | OPAC `claims.forceload.offlineForceload` | Farms-vs-TPS trade is unchanged; reliability is less proven (see §5). |
| Minimap + fullscreen map | Xaero's Minimap + World Map | Now two client mods instead of one. |
| Waypoints + teleport | Xaero's Minimap | **No migration path** - see §4. |
| Party/team claims | OPAC `primaryPartySystem` = FTB Teams | Must be set, or OPAC runs its own parallel party system. |
| Party/team claims | OPAC's built-in party system | FTB Teams was removed, so this is the only party system now. `/oparties`, `/opm` for party chat. |
| Waystones on the map | `xaeros_waystones_compatibility` | Restored; it had been removed with the maps. |
| FTB Ranks permission overrides | `xaero.pac_max_claims` / `xaero.pac_max_forceloads` | Moot in practice: FTB Ranks was never installed. |
@@ -73,7 +75,8 @@ versions, same sha512s - so this is a revert of the map half of that commit, not
- `maxPlayerClaims = 500` (matches the old FTB Chunks cap)
- `maxPlayerClaimForceloads = 25` (**decided 2026-09-30**; the stock default is lower, so leaving it
alone silently removes forceloading)
- `primaryPartySystem` -> FTB Teams
- `primaryPartySystem` -> leave at the built-in default (FTB Teams is gone; do **not** point it at
`ftbteams`)
- a decision on `claims.forceload.offlineForceload` (farms while offline vs TPS)
- add `claims.forceload.offlineForceload` to `playerConfigurablePlayerConfigOptions` /
`opConfigurablePlayerConfigOptions` if players should be able to toggle their own
@@ -123,7 +126,44 @@ Re-add `mods/ftb-chunks-forge.pw.toml` (and the client config if the minimap def
`packwiz refresh`. FTB Chunks' claim/forceload data is untouched in the world save, so existing claims
resume. Then remove OPAC and the Xaero's mods. Keep the pre-swap world backup regardless.
## 7. Docs that need follow-up
Note: rolling back the FTB Quests/Teams removal is a separate, larger job - re-adding them restores the
mods but **not** any quest content or team progress that was discarded, unless `<world>/ftbquests/` was
archived first.
## 7. Follow-up: removing the rest of the FTB suite
Follow-on decision (2026-09-30): drop **FTB Quests, FTB Teams and FTB XMod Compat** as well, leaving
only FTB Backups 3 and FTB Library.
**Why FTB Teams could not go on its own** - FTB Quests has a hard runtime dependency on it, not just a
launcher one:
| Evidence | Result |
| --- | --- |
| `FTB-Quests@1.21.1/main` build.gradle | `requires('ftb-library-forge')`, `requires('ftb-teams-forge')` |
| FTB Quests bytecode | references `dev/ftb/mods/ftbteams/` in **14 classes**, incl. `FTBQuestsEventHandler` |
| FTB Quests internals | `TeamData` class - quest progress is keyed per team |
The `mandatory = false` in FTB's `neoforge.mods.toml` files is launcher metadata; the bytecode
references are what actually break. FTB Quests also ships no claim-chunk task type, so nothing about
claims depended on it.
**Why XMod Compat went with it:** its integrations were Quests/Chunks/Ranks plus JEI/KubeJS/LuckPerms
bridges. With Quests and Chunks gone there is nothing left for it to bridge.
**Why Library stayed:** FTB Backups 3 uses FTB Library's config/UI classes (`Panel`, `Theme`, `Widget`,
`ConfigGroup`, `ConfigValue`, `SNBTCompoundTag`) - 13 classes, and it does **not** bundle them, despite
declaring only `neoforge` in its own metadata. Library in turn references `dev/architectury` in 47
classes, so Architectury API stays too.
**Verified before removing:** FTB Library and FTB Backups 3 reference `ftbteams`, `ftbquests` and
`ftbxmodcompat` in **0 classes** each, and nothing else in the pack references XMod Compat.
**Consequences accepted:** any authored FTB Quests content and per-team quest progress is discarded.
There is no longer any party system to point OPAC at, so `primaryPartySystem` stays at OPAC's built-in
default. The pack dropped from 9 to **5 CurseForge-sourced mods** and from 149 to 146 mods.
## 8. Docs that need follow-up
- **Map/waypoint rescue from the old FTB data** - see `analysis/FTB-XAERO-MAP-MIGRATION.md` and the
`tools/ftbchunks-reveal.py` + `tools/prune-world-to-reveal.py` scripts. Mask extraction is validated;