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.
Phase 488 - Rewritten Violations, Check, Compatibility, Utilities & Performance Optimizer systems
- Many static class methods have been made part of new/existing objects to improve performance.
- Completely rewrote the Performance Optimizer feature to be more universal, more organized & better.
- The Speed ground detection will now account for a player’s building process.
- The unban command will now properly clear the cache of the ban feature.
- The SQL Config and SQL Logs are now combined as the SQL Feature.
- Potion Effects will now have their own organized cache to prevent false positives.
- The “Logs.log_file” option will now reappear in the settings.yml configuration.
- Decreased the amount of threads Spartan uses and replaced it with existing ones.
- Many checks.yml & config.yml options will now be generated when first used.
- Removed forgotten configuration options & functionalities from several checks.
- Removed Configuration Recommendations and replaced them with proper listing of problematic detections.
- The checks.yml configuration will no longer be existent when the config.yml configuration is used.
- Check with no ability to punish will now show punishments as disable in the inventory menus.
- All players will be treated as testers when the server is identified as a testing environment.
- Awareness notifications will now be delivered to all staff players.
- The XRay check will now notify staff players when it has insufficient data to work with.
- The plugin will now look for surrounding blocks when trying to identify if the player is in a water bubble elevator.
- The plugin will now detect decimals in detection information more accurately.
- Mining notifications will now be logged in the plugin’s files regardless of the check’s or player’s state.
- Added more information to be sent with the use of the customer-support command.
- Check objects will now handle more or less memory depending on their needs.
- Violations will no longer reset every minute for all players but individually.
- Removed the messages.yml option “violations_reset” as it’s no longer needed.
- Rewrote a big part of the Punished Players algorithm, mainly to improve consistency & security.
- Checks can no longer be named with the name of another check.
- The Research Engine will no longer cache for longer than a minute.
- The IrregularMovements check will now require the player to move slightly to be checked for a specific cobweb movement.
- The False Positive Detection will now adjust its decimal points for the MorePackets check also.
Phase 487 - Separate Bedrock/Java Calculations & Velocity Check Improvements
- Bedrock & Java player information will now be analyzed and structured separately.
- The Velocity check’s detection will now detect things more accurately by accounting for online hackers in the data flow.
- The Product Offer feature will no longer be so forceful with notifying staff users.
- The Cross Server Information feature will now work better.
- Improved the stability of the IrregularMovements check when it comes to bedrock players.
- The Bedrock Detections notification will now appear less frequently and when needed.
- Problematic Detections will no longer be included in hacker/suspected player calculations.
- Made the variables and functionalities of the compatibility configuration more universal.
- Players will no longer be able to pickup items when using Spartan’s spectator mode.
- The Player Info inventory menu will no longer use magic color codes when the user has opted out of the ecosystem options.
- Some information from the AntiCheat Updates item will now appear on other inventory menus.
- The File GUI will now appear as a recommendation in the Manage Configuration menu.
- Implemented a new settings.yml option to toggle bedrock detections for those that own it.
- The Suspicious Fights feature will now return more relevant results based on a pre-existing more organized algorithm.
- The HitReach check will now consider the average hit reach of the server’s players for better stability & detectability.
- Improved the tab completion by detecting what to recommend based on the command’s arguments.
- The Wave & Ban features will no longer do transfers from their old configurations due to them having been removed for a long time.
- Rewritten how the raw command feature works with an awareness notification to always support command options.
- Implemented a new awareness notification option to accompany the spectate command.
- The Wave feature’s API method is now a boolean and not a void.
- The Ban feature will now support SQL and also offer a creation date.
- Slightly optimized the item search of all inventory menus with a direct equals method.
- You can now dismiss reports via the inventory menu by clicking on the reported player item.
Phase 486 - General Improvements
- Implemented an automatic calculation of the size of the Plugin Ecosystem inventory menu.
- The plugin will now identify its original platform when using a token.
- Extended the Cloud feature with more useful methods.
- Improved how the plugin shows URLs.
- Some product information will now be synchronized with the Cloud.
- Improved the plugin’s Awareness Notifications with new and more proper messages.
- The Piracy handler will now operate at much faster speeds due to the implementation of multiple threads.
- The plugin will now require more to ban a player via the Cloud feature.
- The String utilities methods will now return more fail-safe results.
- The Cross Server Information feature will now have better backwards option compatibility.
- The IrregularMovements levitation detection will no longer run when the player’s head is inside a block.
- A player’s check evidence will no longer be returned if they have bypass or are in other states of canceled checking.
- Listed additional bounding blocks for stonecutter blocks in the Ground utilities.
- Removed the Plugin Ecosystem inventory menu as it was rarely used by users.
- The Minigame Maker compatibility will now open its menu via commands.
- Adjusted the queries of the SQL feature to be less problematic & more universal.
Phase 485.1
Corrected some messages being sent incorrectly.
Phase 485 - Introduced Configuration Synchronization Option
- Created a new settings.yml option named “Cloud.synchronise_files” to toggle cloud file changes.
- Removed the settings.yml option “Important.cloud_feature” as all Cloud features will fail properly if unavailable or not connected.
- Moved the settings.yml option “server_name” to the newly created “Cloud” category while maintaining backwards compatibility with the 2 older options.
- Awareness Notifications will now longer include the disabling message part when sent on Discord.
- The messages.yml option “notifications_clickable_command” has been transferred to settings.yml as “Notifications.message_clickable_command”.
- Improved the Auto Updater feature with universal variable outcomes.
- Adjusted some material libraries in the Block utilities for the better.
- Improved the notification of the Floodgate compatibility.
- Implemented additional awareness notifications.
- Potentially improved the compatibility of mcMMO & TreFeller plugins.
- The synchronization algorithm will now understand the type of variable it is dealing with.
- The synchronization algorithm will now be faster & account for when the server is unavailable.
- Adjusted the Research Engine handler to use the YAML configuration more properly.
- Custom check names will now be available for certain customers.
- Slightly improved the functionality of some of the items in the Spartan inventory menu.
- Changed how items are shown in the Spartan inventory menu to be simpler.
- Removed the MinecraftServerWebsite compatibility due to the plugin becoming outdated.
- Bedrock players will now be treated more leniently by the Lag Leniencies feature.
- The Extra Functionality system will now longer attempt to verify existing customers.
- The MorePackets check will now be more lenient with the CrackShot plugin features.
- Adjusted the settings.yml configuration system creation algorithm to be more universal.
- Some Awareness Notifications will now be sent in masses instead of one after another periodically.
- The Customer Support feature will no longer always fail when there’s an insufficient amount of data.
- Improved the Inventory utilities with new universal methods.
Phase 484.1
Corrected the query of the Research Engine handler.
Phase 484 - Cross Server Configurations & Important SQL Improvements
- Spartan will now synchronize configurations via the Cloud for certain customers.
- Tightened the log requirements of the Research Engine handler.
- The Configuration system has been made less prone to exceptions.
- The SQL feature will no longer add data to a column when not needed.
- Certain check modifications & staff chat will no longer be logged.
- Implemented new Block utilities methods to judge water-logged blocks.
- Adjusted the IrregularMovements liquids detection to judge water-logged blocks more leniently.
- Implemented new Base64 methods in the String utilities.
- Certain Cross Server Logs will require to be retrieved from similar server types.
- Removed unused variables from the Cloud feature.
- Suspected/Hacking Evidence of disabled checks will no longer be calculated or shown.
- The XRay check will still use the memory but no longer log information if disabled.
- Optimized the plugin’s configurations with faster & more consistent codes.
- Improved the plugin’s player finder tab completion handler.
- Renamed the SQL table column “spartan_build” to “plugin_version”.
- Renamed the SQL table column “date” to “creation_date”.
- Renamed the SQL table column “info” to “information” and adjusted its max length to 4096.
- Renamed the SQL table column “hack_type” to “functionality”.
- Removed the SQL table column “silent_check” and will use “cancel_violation” set to NULL to represent silent checks.
- Removed the SQL table column “detection_information” and will use “information” in its place.
- Removed the SQL table column “mined_item” and will use “functionality in its place.
- Removed the SQL table column “false_positive” and will use “type in its place.
- Introduced a new SQL table column named “player_latency”.
Phase 483 - New IrregularMovements Step Detection & Cross Server Logs
- Completely rewritten the Step detection with chronic value storage.
- Further improved the Customer Support command with disallowance when the Cloud feature is disabled.
- Improved the String utilities with new useful methods for the SQL & Cloud functionalities.
- Improved the SQL feature with more fail-safe methods.
- Removed some unused variables from the Player Info inventory menu.
- Changed the developer-report tab completion to customer-support.
- Files will now be used as a backup when the SQL feature fails.
- Adjusted the Move utilities jump effect motion calculation method to be more precise.
- The Notifications.cross_server_notifications option has been changed to Important.server_name with backwards compatibility.
- To combat SQL connectivity issues, the Cloud feature will now automatically synchronize logs amongst your servers.
- A new sql.yml option has been introduced to allow the replacing of special characters.
- Adjusted the Modify Server Configuration option/feature to support the new folder changes.
- Suspicion Notifications will now be distributed via the Cross Server Notifications feature.
- Most of the Cloud feature will now work without it being enabled in the config to improve the ecosystem & synchronicity.