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:
1 parent
769af6fa2d
commit
2fcb8b492e
6 files changed
+48
-62
No files matched your search
@@ -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;
|
||||
|
||||
-15
@@ -305,21 +305,6 @@ file = "mods/ftb-library-forge.pw.toml"
|
||||
hash = "2e72d40c6d7b128981b19b71c19d45eb6813f1af87ae1abe1cf92adfa5e8223f"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/ftb-quests-forge.pw.toml"
|
||||
hash = "93330f6ec85532067df176c6baee0e0f6d685c78088b1a2217726f6421899148"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/ftb-teams-forge.pw.toml"
|
||||
hash = "c21c2308684a75cda7dd9d557d129c9f89f49be527da3d5aa675fff444c11f5e"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/ftb-xmod-compat.pw.toml"
|
||||
hash = "6ad22c468d67dcbb65784e161d4af9e671d3437cb5bfb1e86a42ae25207cf25b"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/fusion-connected-textures.pw.toml"
|
||||
hash = "7411c38665af0ee0b17613ac80daaa040a5f59b046d418421297acf2c6fa8c9c"
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
name = "FTB Quests (NeoForge)"
|
||||
filename = "ftb-quests-neoforge-2101.1.36.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "b2ede29b98a3022c22065fbe9b1761e385a28683"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 8885017
|
||||
project-id = 289412
|
||||
@@ -1,13 +0,0 @@
|
||||
name = "FTB Teams (NeoForge)"
|
||||
filename = "ftb-teams-neoforge-2101.1.11.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "62b65f752d0326edd13244e58d5f2aec035da4e9"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 8724782
|
||||
project-id = 404468
|
||||
@@ -1,13 +0,0 @@
|
||||
name = "FTB XMod Compat"
|
||||
filename = "ftb-xmod-compat-neoforge-21.1.12.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "1f68bf714cf7ea3e07b23c6b8c1ebe516b325047"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 8909889
|
||||
project-id = 889915
|
||||
@@ -6,7 +6,7 @@ pack-format = "packwiz:1.1.0"
|
||||
[index]
|
||||
file = "index.toml"
|
||||
hash-format = "sha256"
|
||||
hash = "80220fc3f737beda7794679fb8a18b70b2b68c5cd7f88b479bc0380e7311bb64"
|
||||
hash = "f8440954feca2fde012fe8cedb664a48aa3e08ae67ce00125aa7c5ea31d58c56"
|
||||
|
||||
[versions]
|
||||
minecraft = "1.21.1"
|
||||
|
||||
Reference in new issue
Block a user