Repository navigation
Releases: SvinPepe/opac-warfare
Releases · SvinPepe/opac-warfare
Release list
2.0.0
What's Changed
Full Changelog: 1.6.7.2...2.0.0
1.6.7.2 (Minecraft 26.1 / 26.2)
Official release of Open Parties and Claims: Warfare ported for Minecraft 26.1 and 26.2 on NeoForge 26.1.2.112+ using Java 25.
Key Changes & Migrations for Minecraft 26.1+
- Platform & Runtime Baseline: Updated build toolchain to Java 25 and NeoForge \26.1.2.112\ (supporting [26.1,26.3)\ and NeoForge [26.1.0,26.3)).
- Core / Identifier Migration: Migrated from legacy \ResourceLocation\ to modern \Identifier\ across networking payloads, registries, commands, and configs.
- Environment & Lifecycle: Migrated \FMLEnvironment.dist\ to \FMLEnvironment.getDist().
- Boss Event & GUI Engine:
- Updated bossbar instantiation for 26.1 (\ServerBossEvent\ with UUID).
- Migrated screen and HUD rendering pipelines to \GuiGraphicsExtractor\ (\extractRenderState, \ ext(...), \centeredText(...)).
- Key Mappings: Migrated keybind registration to \KeyMapping.Category\ records and \RegisterKeyMappingsEvent.registerCategory(...).
- NBT & Block Handling: Adapted NBT reading to 26.1 sealed \NumericTag\ / \LongTag\ APIs and \Optional\ CompoundTag accessors.
- Compat Modules:
- \customclaims-create: Create 6.0+ compat updated for 26.1.
- \customclaims-big-cannons: CBC compat updated for Java 25 and Create 6.0 type bindings.
- \customclaims-aeronautics: Aeronautics/Offroad bore mining protection preserved.
- \customclaims-xaero: Fair-play HUD overlay and map war-start requests fully adapted to 26.1 client rendering.
Compatibility
- Target Minecraft versions: \26.1, \26.2\ ([26.1, 26.3))
- NeoForge: \26.1.2.112+\ ([26.1.0, 26.3))
- Java: \25+\
- For Minecraft 1.21.x servers, use the \1.6.7.2\ (Minecraft 1.21.x) release.
1.6.7.2 (Minecraft 1.21.x)
1.6.7.2
Hotfix for Minecraft 1.21.x branch — prevents startup crash when attempting to load on Minecraft 26.1.
Fixed
- Narrowed \minecraft_version_range\ to [1.21.1,26.0)\ and
eo_version_range\ to [21.1.232,26.0). Minecraft 26.1 renamed \ResourceLocation\ to \Identifier\ and removed \FMLEnvironment.dist, making the 1.21.x jar binary-incompatible. NeoForge will now correctly refuse to load the 1.21.x jar on 26.x and display a clean \Missing dependency\ message rather than crashing.
Notes
- This jar supports Minecraft 1.21.1 – 1.21.11 / NeoForge 21.1.232 – 25.x.
- For Minecraft 26.1 / 26.2 support, a separate 26.x port is in progress and will be released as a distinct artifact.
1.6.7.1
Changed
- Updated the mod version to
1.6.7.1. - Updated Minecraft version metadata to
[1.21.1,)to add support for Minecraft1.21.11+and subsequent releases under the new versioning system. - Updated NeoForge version metadata to
[21.1.232,)to remove obsolete assumptions about hypothetical1.22/1.23release numbering and the outdated27.0ceiling. - Updated compatibility, development, and administration documentation to align with current versioning.
1.6.7
Added
- Added configurable contested-war entity interaction exceptions through
entity_interaction.contested_exceptions. - Added
corpse:corpseas the default exception, allowing attacking and defending war participants to right-click Corpse entities in the target entity's contested chunk without OPaC blocking the interaction. - Added support for additional exact
namespace:pathentity IDs; setting the list to[]disables the feature.
Changed
- Entity interaction exception checks now use the target entity's chunk and the current config value, so config reloads take effect immediately.
- Eligible interactions reuse the existing temporary OPaC full-pass mechanism and clear it on the next server tick.
Notes
- Corpse remains an optional dependency; the default
corpse:corpseentry is harmless when Corpse is not installed. - The exception applies only to attacking and defending participants in an active contested chunk. Outsiders, peaceful claims, unclaimed chunks, and finished wars keep normal OPaC behavior.
- Corpse ownership and access restrictions are still respected.
- Other mods' canceled interaction events are not uncanceled.
- Attacking an entity does not grant the bypass.
1.6.6
Added
- Configurable global war lifecycle notifications and bossbars.
- Configurable global Xaero war-marker visibility for compatible clients.
Changed
- War lifecycle notifications, active/preparing-war bossbars, and Xaero markers now broadcast to all eligible online players by default.
- Server owners can disable the global defaults to restore side, administrator, and radius-based visibility filtering.
- Removed CustomClaims storage-specific protection so vanilla and Open Parties and Claims remain authoritative for storage access.
- Relaxed Wither and villager protection defaults; they remain configurable opt-ins.
Notes
- Global Xaero markers share active/preparing war metadata only; they do not expose a global claim-owner map.
- Tested baseline: Minecraft 1.21.1 + NeoForge 21.1.232.
1.6.5
1.6.5
Added
- Added persistent side-based attack and defense cooldown windows for war declarations.
- Added configurable attack/defense cooldown durations and per-role target-chunk limits.
- Added
war/side-cooldowns.datto persist cooldown windows and consumed slots across restarts.
Changed
- Disabled daily outgoing and incoming war limits by default while keeping them available as optional additional quotas.
- Replaced chunk-level post-war protection with defender-side protection that applies to all claims owned by that side.
- Replaced
max_active_wars_per_partywith role-specific cooldown chunk limits and prevented a side from attacking while defending or defending while attacking.
Notes
- The first successful declaration starts fixed windows:
2hours for the attacker and1hour for the defender by default. - Later successful starts consume slots without extending the window; a duration of
0disables only the timed quota, not the concurrent-war chunk limit.
1.6.4
1.6.4
Added
- Added a separate
/claimrules assemblyrule for Create and optional Sable contraption assembly. - Added assembly status/toggle permissions and a dedicated Claim Rules GUI control.
- Added optional Sable
2.0.3assembly protection compatibility.
Changed
- Kept
/claimrules createfor Create and Offroad drills and saws only. - Create and Sable assembly now validates all eight source AABB corners when a structure reaches claims; all corners must be peaceful claims of one side with assembly enabled.
- Fully unclaimed structures remain assemblable, while active contested-war chunks retain their previous behavior.
- Existing
createsettings and cooldowns are copied to the newassemblyrule on first upgrade. - Updated the optional claim-rules GUI protocol to version 2 and documented keybind reassignment through Minecraft controls.
1.6.3
1.6.3
Small balance and compatibility update focused on daily war limits.
Added
-
Daily limit for how many territory fights one attacking side can start.
-
Daily limit for how many incoming territory fights one defending side can receive.
-
New config options:
war.daily_start_limit.max_started_chunks_per_attacker_sidewar.daily_start_limit.max_accepted_chunks_per_defender_side
Changed
- Updated version to
1.6.3. - Expanded metadata for experimental same-jar compatibility beyond the tested
1.21.1baseline. - Updated README and docs for daily war limits and compatibility policy.
Notes
- Default attacker limit:
5chunks per day. - Default defender incoming limit:
10chunks per day. - Set a limit to
0to disable it. - Daily reset uses the configured raid-window timezone.
1.6.2
1.6.2
Compatibility, release, and usability update focused on Xaero map integration, Aeronautics/Offroad bore protection, documentation, and the single-jar release workflow.
Added
- Added Xaero World Map right-click support for starting wars at a selected chunk when the player has permission and the target is within the configured distance.
- Added configurable Xaero map war-start options:
xaero_map_war_start.enabledandxaero_map_war_start.max_distance_chunks. - Added Aeronautics/Offroad compatibility module for bore/multi-mining protection in protected claims.
- Added the
customclaims_aeronauticsmodule to the bundledopac-warfaredistribution jar. - Added client keybind support for opening the claim rules GUI. The default key is
Kin theCustomClaimscontrols category. - Added GitHub Actions build workflow that builds the project and uploads the
opac-warfarejar artifact. - Added public documentation for architecture, compatibility, configuration, development, and server administration.
- Added
AGENTS.mdwith project notes for coding agents and future maintenance.
Changed
- Improved Xaero temporary war waypoint handling with marker refresh tracking, stale waypoint cleanup, dimension filtering, and safer fallbacks when Xaero APIs are unavailable.
- Updated the README to focus on the public
Open Parties and Claims: Warfareinstall flow and the singleopac-warfareserver artifact. - Documented the one-jar compatibility policy and clarified optional integration behavior.
- Updated the project version to
1.6.2.
Fixed
- Improved claim rules GUI opening by adding a dedicated client-to-server payload instead of relying only on commands.
- Improved Aeronautics/Offroad bore protection safety with guarded reflection and one-time warning logs for unsupported API paths.
- Improved Xaero war-start error handling so the client receives a clear message when map war start is unavailable.
Notes
- This release keeps optional integrations safe when the target mods are not installed.
- Server owners should install the generated
opac-warfare-1.6.2.jartogether with Open Parties and Claims. - Recommended validation command:
./gradlew --no-daemon build :opac-warfare:jar.