Skip to content

Latest commit

 

History

History
277 lines (185 loc) · 10.2 KB

CHANGELOG.md

File metadata and controls

277 lines (185 loc) · 10.2 KB

Changelog

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Added

  • 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 to warzone.editable_materials for complete fire protection when this is false.
      • 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)

Changed

  • Refactored Holograph line population methods to reduce complexity. (commit: b08e1fa41a74019a2559d1dac7c2430f78ef22fc)
    • This is a code-quality change, and should have no bearing on server operations.

Fixed

  • 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 Tag 0.5.1b. This changelog represents the latter, which is an amended release.

Added

  • French Translation (fr_FR) (#83, @Bibithom)

  • 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.

Fixed

  • An issue with canceling null hologramThreads. (#85, @LlmDl)

  • Adjust implementation of the WarZoneListener, and how FlagWar utilizes WarZones. (#86, @LlmDl)

0.5.0 - 2021-10-13

Added

  • 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)

Changed

  • 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 of scheduleSyncRepeatingTask() with runTaskTimer().

    • Should be purely aesthetic, but also removes a deprecation warning. SSRT simply calls RTT under the hood.

Fixed

  • 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

Added

  • FlagWarAPI#isUnderAttack(Nation); returns TRUE if any Town in the supplied Nation contains a cell under attack.

  • New OutlawListener to listen for the OutlawTeleportEvent

    • 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.

Changed

  • 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.
  • 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.

Removed

  • Deployment to GitHub Packages

0.3.0 - 2021-07-17

Added

  • Added Optional Holograms for War Flags (#58, @gaffy00)
    • Requires HolographicDisplays to function.

Changed

  • Build Targets: Java 16 (was 8), Paper 1.17.1, Towny 0.97.0.12

Removed

  • alternatives Maven profile from the FlagWar pom file.

  • API: CellUnderAttack#isFlag(Block)

    • Previously deprecated; use #isFlagTimer(Block) or #isFlagPart(Block) instead.

Fixed

  • WarZoneListener Functionality

0.2.0 - 2021-06-18

Added

  • 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.

Changed

  • 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

Removed

  • WarZoneListener (Disabled)

    • Had some issues with functionality negatively affecting gameplay.
  • Catches for Towny's EconomyException (Deprecated)

Fixed

  • 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

Added

  • Localization feature for supporting multiple languages, using ResourcePacks.
    • Adds LocaleUtil and Translate classes.
    • English (US) included as baseline translation.

Changed

  • Target Bukkit API 1.14, matching Towny.

  • Made logger calls "lazy" (Using lambda expressions)

Fixed

  • 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

Added

  • 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)

Changed

  • Split off from TownyAdvanced/Towny, adopting the Apache License (v2).

  • Package space renamed to io.github.townyadvanced.flagwar

  • Un-ignored some .idea/ files for better interoperability among developers using IDEA.

Pre-History

  • FlagWar created by @Zren as "Cell War", then merged into Towny. Maintained for over ten years as part of Towny, before the decoupling effort.