Releases: RagingTech/NetworkJoinMessages
Releases · RagingTech/NetworkJoinMessages
v3.5.1
Improvements
- Fixes an issue where players with the PremiumVanish permission,
pv.joinvanished, would be set to vanished in NJM upon swapping or leaving whenTreatVanishedOnJoinwas enabled (#49) - Fixes an issue where spoof messages would be automatically dispatched even when a player was NJM silent due to them changing their PremiumVanish vanish state (#50)
Related PR: #51
v3.5.0
New Features
- Overhauls the
/njointogglecommand, enabling it to be ran against a target player and adding console support (#35)- Adds a new permission node:
networkjoinmessages.toggle.others- allows the holder the ability to change a target player's message state - Tab completion for the new player argument respects the
toggle.otherspermission and omits silent/vanished players - Adds three new configuration keys for command responses:
TargetNotFound- sent when the player specified in the toggle join command is unknownMustSpecifyPlayer- sent when the player is omitted and the command was issued from consoleConfirmationOther- sent when the command was successfully ran against a player who was not the issuer
- Adds a new permission node:
- Adds persistent player data, storing silent state and message toggle states to be restored on next start
- Adds new storage types:
SQLandTEXTTEXT- only available for first join storage, stores entries line-by-line asUUID:nameSQL- stores data in amysql,mariadb, orpostgresqlSQL server- requires SQL connection information be provided in the designated configuration block
- Downloads the required driver upon initial utilization
- Adds new configuration options
IgnoreJoinByDefault,IgnoreSwapByDefault,IgnoreLeaveByDefaultto set players default message states
Improvements
- Resolves all expected placeholders from the Discord config messages
- Fixes the cached leave message updating twice instead of once upon reload
- Fixes a bug with uppercase server name aliases (bc77fc5)
- Makes Discord messaging and message construction more efficient
- Ensures thread safety everywhere known
- Fixes a bug preventing the replacement of
%playercount_server%in leave dependent messages (45f8249)
Development
- Removes local SayanVanish dependency
- Adds local Velocity proxy dependency (LimboAPI)
- New bStats charts:
first_join_storage_type,player_data_storage_type,ignore_join_default,ignore_swap_default,ignore_leave_default
Related PR: #38
v3.4.0
New Features
- Adds an optional leave/join buffer to prevent players with a weak internet connection from spamming leave/join messages
- Adds another new configuration key:
OtherPlugins.PremiumVanish.TreatVanishedOnJoinwhich is to be used in conjunction with the backend PremiumVanish configuration key:VanishStateFeatures.AutoVanishOnJointo ignore players that join with thepv.joinvanishedpermission (#33 e92362d)
Improvements
- Fixes a memory leak caused by never removing canceled tasks from the Velocity task list (8e6153a) (8eb44ee)
Development
- Makes the SayanVanish API a local dependency due to the repository being unavailable
Related PR: #34
v3.3.0
New Features
- Added three new configuration keys:
OtherPlugins.PAPIProxyBridge.RequestTimeout: allows configuring the PAPIProxyBridge maximum request time in millisecondsOtherPlugins.PremiumVanish.SpoofJoinMessageOnShow: whether to automatically send a spoof join message when a player shows themselvesOtherPlugins.PremiumVanish.SpoofLeaveMessageOnHide: whether to automatically send a spoof leave message when a player hides themselves
Improvements
- Finally finalizes and verifies tested PremiumVanish support. Huge thanks to the developer @LeonMangler for their help and guidance.
- Fixes
NullPointerExceptiondue to the legacy retrieval of keysNoMoreArgumentsNeededandNoPermission
As always, if you encounter any issues with this version please report them immediately via creating a new issue.
Related PR: #31
v3.2.0
New Features
- Added a cache system to enable the use of PlaceholderAPI placeholders via PAPIProxyBridge in leave network messages
- Added a new configuration key
Settings.LeaveNetworkMessageCacheDuration- This key designates how long before the cached leave message will update with the default being 45 seconds
Improvements
- Fixed a rare duplicate leave message issue #29
Related PR: #30
v3.1.0
New Features
- Added support for SayanVanish! (92592e0) #28
Important
If you use MiniPlaceholders, you must use version 1.7.1-b289 of SayanVanish or later.
Improvements
Development
- Migrated from Maven to Gradle (06398ea)
- Implemented Lombok (15c9d97) #25
- Added Blossom to dynamically get the plugin version for Velocity (b738dfe)
Related PR: #27
v3.0.0
New Features
- Now supports MiniPlaceholders v3! Older versions are no longer supported. Make sure your other plugins support MiniPlaceholders v3 and you are using MiniPlaceholders v3 before updating. #23 (e4fa3c4)
Improvements
- Fixes an issue in which a false leave message was being sent due to a player joining the server with multiple sessions #21 (bfe2526)
- Huge optimizations for a much faster and smoother experience
- Adds a debug utility with useful messages
- Naming consistency everywhere for swap and leave messages to avoid confusion
- FakeMessage was renamed to Spoof to more accurately describe the command
- Corresponding permission was renamed:
networkjoinmessages.fakemessage->networkjoinmessages.spoof
- Corresponding permission was renamed:
- Command consistency, as the only commands offered are now:
/njoinreload/njointoggle/njoinimport/njoinspoof
See the README or Spigot page for more information on usage.
- Fixes a lot of broken command logic
- Adds some custom bStat charts to see how configuration options are being used
- Improves configuration defaults and converts them to MiniMessage format
- Custom events are now actually called on BungeeCord
- Custom events are now utilized for Discord integration
- A good example should someone want to use the API for their own purposes
- Dynamically loads Discord integration depending on it being enabled in the configuration
Development
- Irradicated the general folder from all three main directories
- Separated methods from
MessageHandlerinto a new classFormatter - Consolidated all configuration options into
Storage - Refactored numerous methods for clarity and optimization #22
- Refactored the entire plugin to use dependency injection
- Created tests for the
Formatterclass (works toward #14) - Several file renames for conciseness and clarity
As always, if you encounter any issues with this version please report them immediately via creating a new issue.
Related PR: #24
v2.3.2
v2.3.1
v2.3.0
New Features
- First join messages (#4 5ce147c)
- New command
/njoinimport <usercachepath> [usercachepaths...]- Imports all users in a backend server's user cache to the 'joined' database so that they will not trigger first join messages (b12fe4f)
- Discord webhook first join messages
- MiniPlaceholders support
- Multiple variants of all four message types (server-swap, first-join, join, and leave) chosen at random (#11 45d43b9)
- Potential LimboAPI support (#15 0213d5d)
Improvements
- MAJOR FIX: Fixes PlaceholderAPI placeholders parsing against the message target instead of the correct parse target
- Fixes discord.yml not fully reloading upon issuing the
/njoinreloadcommand - discord.yml now parses PlaceholderAPI and MiniPlaceholders
- Includes bStats for anonymous usage data
Development
- Numerous duplicate code refactors - reduction of duplicate code
- Bumps java version to 21
- Added dependencies for JUnit, Mockito, Velocity Proxy, Bungee bStats, Velocity bStats.
- Adds tests for the joined players database and tests for the import command
- Updated JavaDiscordWebhook dependency to version 1.2.0
Related PR: #13