Fixed item criteria (pic/hic) being loaded incorrectly; these options will need to be set again for relevant signs.
Fixed NullPointerException being thrown during SVS execution in rare instances
Added <cancelTasks> to /svs add - this will cancel pending tasks the player has upon execution, with an optional regular expression filter.
For example: /svs add <cancelTasks> .*give <player>.* - this will remove all tasks the player has queued which include "give <player>"
Fixed an issue with granted permissions not being removed under specific circumstances (IMPORTANT)
Version 4.4 - fancy things be comin'
Fixed an error being thrown when converting block IDs to enum formats
Fixed admins being unable to destroy ServerSigns by hand when allow_left_clicking is set to true
ServerSigns will now be loaded on the first server tick (which can only happen after all other plugins have loaded - resolves invalid world issues)
Fixed an issue which caused an IndexOutOfBounds exception to be thrown during ServerSign loading under very specific circumstances
ServerSigns will now increment their internal use counter even if a use limit is not defined
Expired ServerSigns (which have reached/exceeded their uses limit) are now moved to plugins/ServerSigns/signs/expired
Initial implementation of conditional statements - IF, ENDIF, RETURN statements
Implemented the following conditional operators: hasPerm, isOp, random, loopIs, usesTallyIs
Added /svs select - Allows admins to select a ServerSign for automatic command application (similar to how /svsr operates)
Added negative conditions; created by appending an operator key with ! in an IF statement
Documentation of conditional statements can be found in the "add" command description in the command ref. on our wiki
Added <signLoc> variable which will be replaced with the sign's location in the format world,x,y,z (useful for /svsr commands on a SVS)
Added support for player commands in looped ServerSigns (if the player is offline at the time of an execution, the task will be dropped instead of being queued as normal)
Added support for negative numbers in <r:#-#> parameters
Fixed a bug which caused per-player cooldown data to be stored incorrectly
Version 4.3.3 - leasoncre helped us test everything; thank you so much!
Fixed a signs backup folder being created every time /svs reloadSigns is used
Fixed an error being thrown on click for confirmation signs with a price
Fixed pending confirmations not being canceled when clicking another ServerSign the user doesn't have permission for
Fixed /svs long causing errors when applied to a ServerSign
Fixed IOException being thrown during malformed name conversion in some instances
Fixed permissions being granted to players per-world instead of globally
Fixed the cancelpermission message not being parsed correctly
Fixed cancel permission (& message) not showing in /svs list
Fixed forced manual file-checks deleting the "commands" section in ServerSign ymls
Fixed /svs list persist not working correctly
Fixed incorrect messages being displayed for /svs list persistance
Fixed ServerSigns with price item/held item requirements throwing an error when copied
Fixed no message being displayed when exp is removed from a player
Fixed config.yml not automatically inserting new keys & default values
Fixed pressure plate ServerSigns not following assigned cancel mode
Changed ServerSigns copying algorithm away from Byte streams to ensure compatibility between versions
Made it so "/svs setpermission" can be used to set the message without specifying any permissions
ServerSigns attached to doors or double chests can now be activated by interacting with either block
Added attached-block protection (protects blocks attached to ServerSigns, as well as the block below SVS doors)
Added 5 new replacement parameters for /svs add commands (<loopCount> <loopsLeft> <usesLeft> <usesLimit> <usesTally>)
Added /svs silent <true|false> - If set to true, the ServerSign will not send players internal messages such as exp/funds/item removed, no permission, etc.