The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- WarZone Configuration Section and Enhancements
(#88, @LlmDl)
- Bumps Config version to 1.5
- New Config section 'warzone' containing the following keys:
warzone.editable_materials
(list)- List of materials that can be interacted with in war zones; Or, alternatively, cannot be interacted with.
- Accepts wildcards
*
and negations-{material}
.
warzone.item_use
(boolean)- Enables / Disables item usage in war_zones.
warzone.switch
(boolean)- Enables / Disables use of switches in war zones.
warzone.fire
(boolean)- Enables / Disables fire in war zones, add
-fire
towarzone.editable_materials
for complete fire protection when this is false.
- Enables / Disables fire in war zones, add
warzone.explosions
(boolean)- Enables / Disables explosions in war zones.
warzone.explosions_break_blocks
(boolean)- Enables / Disables explosions effecting Blocks.
- API: Enhanced FlagWarConfig
- Add
#setEditableMaterials()
(void) - Add
#isAllowingExplosionsInWarZone()
(bool) - Add
#isAllowingExplosionsToBreakBlocks()
(bool) - Add
#isAllowingFireInWarZone()
(bool) - Add
#isAllowingSwitchInWarZone()
(bool) - Add
#isAllowingItemUseInWarZone()
(bool) - Add
#isEditableMaterialInWarZone(Material)
(bool)
- Add
- Refactored Holograph line population methods to reduce complexity. (commit: b08e1fa41a74019a2559d1dac7c2430f78ef22fc)
- This is a code-quality change, and should have no bearing on server operations.
- Fix
Cell#parse(WorldCoord)
(Also from #88)
0.5.1 - 2021-10-27
Note, two editions of 0.5.1 exist: Git Tag
0.5.1
and Git Tag0.5.1b
. This changelog represents the latter, which is an amended release.
-
Expansion of the WarZoneListener (#87, @LlmDl)
- Now implements listeners for the following Towny Events:
TownyBurnEvent
TownyExplodingBlocksEvent
TownyExplosionDamagesEntityEvent
TownBlockPVPTestEvent
- Follows the Towny WarZoneConfig like the Build/Destroy/Switch/ItemUse events do.
- Also adds
Cell#parse(WorldCoord)
method for convenience.
- Now implements listeners for the following Towny Events:
0.5.0 - 2021-10-13
-
New Option to require a specific number of attackers to be online in the attacking Town and/or Nation. (#72, @LlmDl)
- Modifies behavior. Originally, this quota was determined by the same method used for defenders.
-
New Option to have conquered Town blocks unclaimed instead of transferred to the attacker. (#73, @LlmDl)
-
Towny Target:
- Minimum version required is 0.97.2.0. It is recommended to use the latest version available to you.
-
FlagWar will now respect Towny's per-world settings for allowing war. (#69 nice..., @LlmDl)
- Originally used exclusively for Towny's EventWar.
-
GitHub Actions
- Now tests against Eclipse Temurin, from Adoptium.
- Tests against both JDK 16 and JDK 17.
-
In
CellUnderAttack.class
, replace uses ofscheduleSyncRepeatingTask()
withrunTaskTimer()
.- Should be purely aesthetic, but also removes a deprecation warning. SSRT simply calls RTT under the hood.
-
Fixed NullPointerException found in OutlawEventListener. (#79, @LlmDl)
-
Fixed Jitpack building.
- Specifically uses Microsoft's build of OpenJDK 17, and Maven 3.8.3 (As opposed to Oracle JDK 8, Maven 3.6.1)
- Tested Working
0.4.0 - 2021-08-12
-
FlagWarAPI#isUnderAttack(Nation)
; returnsTRUE
if any Town in the supplied Nation contains a cell under attack. -
New
OutlawListener
to listen for theOutlawTeleportEvent
- Outlaws cannot be teleported away during an attack while in enemy territory (or enemy Nation Zone) during an active war.
- Add
error.outlaw.cannot-teleport-here
translation key, sent to the outlaw.
-
rules.time_to_wait_after_flagged
replaced by `rules.prevented_interaction_cooldown, which uses DHMS formatting.- The (long)
FlagWarConfig#getTimeToWaitAfterFlagged()
API endpoint remains, but will default if the node is missing or empty. (Default Value:600000l
, 10 minutes.) - This change should reflect the purpose of the node, which has never prevented follow-up attacks.
- The (long)
-
Bumped Towny dependency to 0.97.0.22; set 0.97.0.17 as Min_Towny_Version
-
Bumped Config Version to 1.3 (Post 0.3.0...)
-
Set Bukkit API version flag to 1.16 (From 1.17)
- Reflects "Support API-1" policy.
- Deployment to GitHub Packages
0.3.0 - 2021-07-17
- Build Targets: Java 16 (was 8), Paper 1.17.1, Towny 0.97.0.12
-
alternatives
Maven profile from the FlagWar pom file. -
API:
CellUnderAttack#isFlag(Block)
- Previously deprecated; use
#isFlagTimer(Block)
or#isFlagPart(Block)
instead.
- Previously deprecated; use
- WarZoneListener Functionality
0.2.0 - 2021-06-18
-
Checkstyle configuration, based on traditional Sun style guidelines with some modified rules.
-
A Messaging utility class, with debug methods. Config option to enable debug messaging. (PR #40)
-
A viewer-friendly Changelog (this document).
-
The ability to change War Flag timer materials. (Pull Request #49, @gaffy00)
- Phase timing can be adjusted by increasing the ratio of specific materials.
- Example: Using
matX, matX, matX, matY, matY, matZ
produces a flag with three phases, at a 3:2:1 timing ratio.
-
Change
config:flag.waiting_time
to work as expected. Now reflects total length of a flag, not of the flag phase. (PR #38) -
Bumped Dependencies: Towny 0.97.0.6, Java 11, Paper 1.16, Annotations (various), Checkstyle Configuration
-
WarZoneListener (Disabled)
- Had some issues with functionality negatively affecting gameplay.
-
Catches for Towny's
EconomyException
(Deprecated)
-
Incorrect formatting of colored messages containing formatting characters. (PR #48, @gaffy00)
-
Localization Issues with parsing Regions and Region Variants (PR #43, @Mrredstone5230)
-
Beacons not rendering (PR #40)
0.1.1 - 2021-03-03
- Localization feature for supporting multiple languages, using ResourcePacks.
- Adds
LocaleUtil
andTranslate
classes. - English (US) included as baseline translation.
- Adds
-
Target Bukkit API 1.14, matching Towny.
-
Made logger calls "lazy" (Using lambda expressions)
-
Null listeners preventing plugin loading.
-
Certain setting being loaded from Towny's in-built implementation, instead of self-contained settings.
0.1.0 - 2021-02-18
-
FlagWarAPI wrapper class.
-
.gitattributes
to enforce and preserve file formatting on Git operations. -
Dependabot dependency tracking.
-
WarZoneListener specific to FlagWar (Broken)
-
Standalone Plugin Configuration (Not CommentedConfiguration based)
-
Split off from TownyAdvanced/Towny, adopting the Apache License (v2).
- See the NOTICE file for 3rd-party licenses.
-
Package space renamed to
io.github.townyadvanced.flagwar
-
Un-ignored some
.idea/
files for better interoperability among developers using IDEA.
- FlagWar created by @Zren as "Cell War", then merged into Towny. Maintained for over ten years as part of Towny, before the decoupling effort.