Phase 496 - HotFix #1
The Spartan inventory menu will now be able to again access the. data of offline players.
Phase 496 - KillAura Check Corrections
- Specific EntityMove horse detections will no longer when in liquid blocks as movement gets too abstract.
- The default and default minimum vertical limit for the HitReach check has been increased to 4.6 blocks.
- Problematic detections will now be included in low frequency notifications like false positives.
- Decreased the number of synchronized calls to the Information Analysis object by half.
- The Player Info inventory menu will now show more information to hopefully provide more inside to testers.
- Moved the settings.yml option maximum_checked_players_at_once from the Important to the Performance category.
- The Maximum Checked Players feature will no longer work on identified test servers.
- Improved the usage of the off-ground blocks counter in multiple classes.
- Optimized the Criticals check by replacing certain methods with faster and more accurate methods.
- Increased the accuracy of the EntityMove check’s search for ice blocks by checking the surrounding blocks.
- Removed the {plib} configuration syntax as ProtocolLib is no longer as important as it was in the past.
- Decreased the precision of the False Positive Detection feature due to work more appropriately when not needed.
- Adjusted the KillAura time detection to not be so strict in low time intervals.
- Adjusted the Spartan Player object to return more accurate results about surrounding entities.
- Reworked a Player Profile object method that caused the customer-support command to not work for some.
- Reposition the cache message of the Research Engine handler so it’s accurate to when the caching process finishes.
- Improved the accuracy and speed of the punishment algorithm after receiving a few complaints.
- Improved the Spartan inventory menu with more information about the server.
- The Spartan inventory menu will now load faster due to being processed in a less busy thread.
- The False Positive Detection feature and false positive collection of the Research Engine will not take place when the server has less than 5 players.
- Potential False Positives will now be considered with more strictness as it should have been from the start.
- Violations will be counted separately for false positives & problematic detections to notify about them more appropriately.
- Adjusted the FastBreak check to identify water blocks more accurately height-wise.
Phase 495 - HotFix #2
Unlike the previous hot-fix update, this one is not required to download, but it provides many incremental improvements in the internals of Spartan's processes, so it's definitely recommended.
Phase 495 - HotFix #1
Adjusted some code in the Combat Processing handler to prevent dealing with null parameters.
Phase 495 - Rewritten KillAura Check (Phase One)
- The plugin will now max out its time division to 30 instead of 90 days.
- Completely rewritten a big part of KillAura check with new utilities and design, with the remaining awaiting completion.
- Introduced a new messages.yml configuration option named “console_name”.
- The Maximum Checked Players feature will now be more synchronized with its interactions.
- Major Incompatible plugins/features can now be toggled via compatibility.yml if you don’t want to account for them.
- Certain compatibilities were updated to work better on more recent versions of Minecraft.
- Completely rewritten the way the plugin understands yaw & pitch difference for more accurate calculations.
- Discordapp.com will now also work as a webhooks domain compared to only discord.com previously.
- Adjusted certain potion effect methods of the Player Data utilities to help improve detection stability.
- Adjusted the accuracy of the identification of jump movement down to 6 decimal places for less false positives.
- Did a general maintenance of many classes and replaced a lot of outdated & inefficient code.
- The previously secret option that allowed to toggle console logs has returned in settings.yml.
- Implemented new checks.yml options and removed old ones to adjust to the changes of the KillAura check.
Phase 494
Plugin maintenance & Preparation for the upcoming big changes
Phase 493 - HotFix #1
Replaced the entity-height method with the entity-eye-height method for 1.8, 1.9 & 1.10 Minecraft servers, since the original method is missing.
Phase 493 - Rewritten HitReach check, Optimizations & More Combat Rewrites to come
- Implemented additional bounding boxes to consider in the Ground utilities.
- Partly rewritten the HitReach check to be more accurate and faster.
- Completely rewritten the Teleport protection to be more consistent.
- Partly rewritten the Combat Processing handler to use recent systems of cache.
- Partly rewritten the Movement Processing handler to be more compact & reliable.
- Prepared the Combat utilities for the upcoming KillAura check rewrite.
- Removed the Item Teleporter & Enderpearl handler as it no longer had a significant purpose.
- Improved the False Fall Damage handler with checking for canceled & silent causes.
- The certain {detection} placeholders will now fallback to {detections} when no longer supported due to plural grammar.
- Stopped using the required-resource-pack method since it caused errors in some recent versions.
- False Positives & Hacker-Free players will now be calculated asynchronously in par with the remaining Research Engine cache types.
- Repositioned the way certain Configuration & Discord notifications are being sent to staff players.
- Rewrote some of the detection information of the Speed sprint detection to help organize the handlers around it.
- Detection Notifications will no longer forcefully add the detection information in the lowest frequency.
- Made the False Positive Detection less lenient to prevent it from overly detecting violations.
- The Hack Prevention object will now pass a lot of its information to the Moderation handler to prevent unecessary memory calls.
- Detection Notifications will now also replace Suspicion Notification when the Research Engine doesn’t have data or is caching.
- The Exploits undetected-movement detection will no longer function when major incompatible plugins are detected.
- Spartan Location objects will now clear their data every 3 ticks instead of 2 and will have more accurate comparisons.
- Removed the Automated Configuration functionality as it’s barely used and probably not desirable.
- Decreased the amount of threads Spartan is using, although this did not negatively impact performance.
- The Maximum Checked Players feature will now disable if configured with a zero or negative number.
- Decreased the violation cooldown of the XRay check for more frequent notifications.
- The evidence of a player will no longer be cleared when being updated but refreshed until the update takes place.
- Implemented a new feature named Skip Detection Ticks to help optimize performance when the Maximum Checked Players feature is inactive or ineffective.
- Updated the Spartan Player object to be able to limit the amount of nearby entities calculated to save crucial performance.
- The Spartan Player object will now cache its Player Profile object to prevent unnecessary memory calls.
- The KillAura check will no longer attempt to understand the legitimacy of a fight to allow detections to run more frequently.
- The Spartan inventory menu will now have one row for suspected & hackers, one for legitimate players and one for reports.
- The IrregularMovements check will now search for liquid blocks below the player when the player is falling.
- The Player Fight system will now be able to calculate the max hit combo of a player.
Phase 492 - Rewritten EntityMove check & Research Engine Upgrades
- Completely rewritten the EntityMove check with the use of vehicle attributes but also new calculations.
- Simplified the way cross-server notifications are distributed to avoid confusions between users.
- The Maximum Checked Players feature will now iterate properly though some of its information.
- Compatibilities will attempt to send Awareness Notifications when failing to load.
- The Cloud feature will no longer impact the “server_name” option in settings.yml.
- Potentially corrected a NoFall water bucket false positive. (MinecraftSGP message me if not fixed)
- Optimized the Cloud feature with less specific error handling.
- Implemented a new Cloud sub-feature to command the plugin to send customer-support information.
- The Cloud feature will now refresh for the first time after the Research Engine handler has completed its caching.
- Cache stored by the movement event will now be specific to the vehicle the player is riding.
- Improved the effectiveness of the False Positive Detection by making it run on violations not containing a prevention which will allow for premature learning.
- The False Positive Detection will now have a 2MB limit in the data it can retain in its memory, although there have been no reported issues.
- The False Positive Detection will now round integers to the nearest of 5 to improve stability.
- Improved the compatibility of Ultimate Statistics with more useful calls and less code checks.
- The Vehicles compatibility will now provide more accurate and less lenient results.
- Pistons will now be accounted for in the water detection of the Speed check.
- The evidence algorithm of the Player Profile object will now search for false positives instead of just problematic detections.
- The evidence algorithm of the Player Profile object will now calculate the days based on your first significant violation till now instead of days you had violations recorded.
- The evidence algorithm of the Player Profile object will now decide whether a player is suspected or a hacker based on the amount of suspicions instead of level of individual suspicions.
- Evidence of hacking or suspicion will now be held longer in the memory for offline players to save performance.
- Brought performance & accuracy improvements in the way the Speed check caches its limits.
- Inventory menus and certain calculations will now use more accurate results of a player’s violation history.
- The overall history of a player will now be based on the amount of unique dates instead of the total collected amount of dates.
- The main inventory menu will no longer process multiple versions of itself for a single players, which could potentially happen in a time of server lag or spam while already loading.
- Rewrote a part of the punishment algorithm to run faster, be more reliable with its results and have no limit to how many checks a player can be punished for.
- Combat-based calculations of the Research Engine handler will now be returned to their original values if not enough data is available.
- Implemented a new checks.yml configuration option for the GhostHand check: check_fully_solid_blocks_only
Phase 491 - Phase #2
This update is for those of you whom encounter this rare string replacement error. It's effectively harmless, but here you go.
Phase 491 - HotFix #1
Resource packs will now be identified when the Bukkit method is available.
Phase 491 - Maximum Checked Players At Once Feature & Improved Discord Webhooks
- Bedrock players will now be treated more leniently in certain parts of the IrregularMovements check.
- Removed the Awareness Discord Webhooks as they were undesired by many users including myself.
- The Customer Support command will now complete being sent without the requirement for detection information.
- The FastBreak check will now be more lenient towards bedrock players.
- While the new EntityMove check is still being rewritten, the old one will stop checking bedrock players for stability.
- The ItemsAdder compatibility will no longer work if the DisguiseAPI class is not found to prevent console errors.
- Silent checks will now appear enchanted in the Manage Checks inventory menu.
- Implemented a new feature and settings.yml option for it: Important.maximum_checked_players_at_once
- The Discord Webhooks feature will now appear more frequently as many of you suggested it needed this.
- The Spartan inventory menu has been optimized to refresh itself again.
- Potentially corrected an IrregularMovements climbing jump false positive.
- Compatible plugins of mine will appear in the Spartan inventory menu.
- Decreased the amount of configuration calls & search algorithms in the settings.yml configuration.
- Modified an outdated value reply in one of the Developer API’s methods.
- The plugin will now exempt players from detections for a bit when the server has a resource pack.
- The False Positive Detection will now focus more on integers than just decimals to correct more issues.
- The Research Engine feature will now recalculate its cache much faster due to methods being combined in async mode.
- The SQL port configuration option will now modify a decimal format to an integer one.
- The Speed water detection will no longer check boats, this will be the job of the future rewritten EntityMove check.
- The Cloud feature will not attempt new connections if a recent one failed to complete for any reason.
- Hardcoded compatibilities will now show as functional if found to be loaded in the server.
- Balanced dozens of methods in the Research Engine handler with native methods and less unnecessary checks.
- When loading huge amounts of data, the Spartan Menu will no longer be performance intensive.
Phase 490 - HotFix #1
Made extra functionalities available to everyone natively via the plugin's code, older versions will continue to receive them via a web-server connection. Additionally, online documentation has returned the options of the extra functionalities.
Phase 490 - 2022 is coming to an end, I wish everyone a hopeful & productive 2023
- The Exploits undetected-movement detection will no longer check players in vehicles as it doesn’t need to.
- The Exploits undetected-movement detection will now check the configuration before running.
- The IrregularMovements check will now be more lenient when the scenario changes.
- The plugin will now convert text to decimals faster which will help when analyzing violation information data.
- The Inventory utilities will now use different methods to set the owning head of a player depending on the server version.
- Decreased the amount of threads the plugin uses for asynchronous tasks.
- The Information Analysis object will now remove numbers from detections and will try to correlate them to configuration options for more unique outcomes.
- The Cancel Violation handler will now be updated more frequently for more consistent and accurate calculations.
- The Cache system will no longer clear certain important types of data.
- The False Positive Detection feature will now create more simplified keys for higher chance of catching false positives.
- The False Positive Detection feature will now consider hackers & suspected players in its calculations in more strict terms.
- Corrected a few outdated messages related to the Research Engine handler.
- Completely rewritten the way Problematic Detections are calculated.
Phase 489 - HotFix #3
Implemented some corrections to the punishments system.
Phase 489 - HotFix #2
Did some critical optimisations to the Player Profiling objects to restore good performance for some users.
Phase 489 - HotFix #1
The SQL feature will no longer notify when it's not configured.
Phase 489 - Rewritten Exploits detection & Corrections
- Rewritten the Exploits undetected-movement detection.
- Removed unused methods from some objects.
- Made the chunk cache more thread safe by decreasing recurrency.
- Updated the Move utilities with more universal variables.
- Listed more dependent plugins in the plugin.yml file.
- Made some changes to the API’s events to adapt to the rewritten systems.
- Improved the management of the Cloud feature’s exceptions.
- The plugin will now update profile permission knowledge when permissions are checked.
- The Research Engine will now need both profile and log requirements to start functioning.
- Rebalanced the permissions that would identify staff players.
- Optimized the permissions feature by decreasing memory calls.
- Checks will not be silent by default, which was a mistake of the past update.
- Checks who do not support silent mode will not have the option, just like past the previous update.
- Removed the spartan.punishment permission as it was malfunctioning and wasn’t being used in general.
- Living entities will now need to have their AI enabled to be supported by Spartan’s checks.
- Removed the Low Violation handler as this is no longer considered a proper way to deal with violations.
- The API will now support giving bypass permissions to players via the addPermission method.
- The Player Info inventory menu will no longer update when there is no change in violations.
- The Check object’s silent method will no longer try to check world data twice.
- The entity AI method will no longer be used in versions that don’t offer it.
- Improved the SQL feature with better errors, less variables/memory used, and more protections against mistakes.
- Adjusted an invalid SQL query when deleting player information from the database.
- Implemented a new checks.yml option for the Exploits check to manage the building detection.
- Mining notifications will no longer be logged in the console.
- Improved how the plugin identifies player swimming.
- An API event will no longer be triggered asynchronously.
- The Speed & IrregularMovements will now be more lenient towards bouncing blocks in certain scenarios.
- Implemented a new type of utilities to manage characters in Java.
- Drastically improved & optimized the way the plugin handles its check data.
- Implemented a new awareness notification about the Discord Webhooks feature.
- Adjusted the colors of the Spartan command’s content depending on certain scenarios.
- Adjusted a Player Data utilities method that caused the Speed potion effect to not always be accounted.
Phase 488 - HotFix #2
Corrected a SQL table creation issue and a major check cancellation issue. Updating is more than recommended, sorry for the inconvenience, Phase 488 was a massive update.
Phase 488 - HotFix #1
Fixed an issue where the class of the Performance Optimizer feature wouldn't initiate.