ServerSigns v4.5

Details

  • Filename
    ServerSigns.jar
  • Uploaded by
  • Uploaded
    Mar 1, 2016
  • Size
    339.64 KB
  • Downloads
    89,462
  • MD5
    d3859d2fddec471456f0bd9b29f98935

Supported Bukkit Versions

  • 1.9
  • 1.8.3

Changelog

  • Version 4.5 - Minecraft 1.9 Compatible
    • Added configuration options to allow cancelling certain tasks when a player dies
    • Fixed & improved many messages in commands
    • Added 2 conditional operators: isBefore:DDMMYY,HHMMSS & isAfter:DDMMYY,HHMMSS
    • Added /svs timelimit <minimum|@|-> [maximum]
    • Fixed errors being thrown when a ServerSign expires at the location where a previous sign expire
    • Added new command "/svs option" & /svs add conditional operator "checkOption:<id>=<value>" for player-input during execution
    • Added ability to check for multiple answers with conditional operator "checkOption:<id>=<value>|<value>|..."
    • Decreased verbosity of /svsr command
    • Added new command "/svs import <file path>" to import text files with 1 command per line (without /svs at the start)
    • Fixed an issue that caused commands to be sent as a chat message instead of a command when alternate_command_dispatching is set to true
    • Fixed being unable to remove an EXP cost from a ServerSign using /svs xp 0
    • Added the ability to remove assigned permissions from a sign with /svs setperms -
    • Reduced unnecessary per-command messages being logged in console when Vault is disabled
    • Remember to check the Wiki for detailed guides on the plugin features
  • Version 4.4.1 - Merry Christmas!
    • 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.
    • Remember to check the Wiki for detailed guides on the plugin features
  • Version 4.3.2 - more beta testers would've been cool
    • Fixed UUID conversion of >600 usernames causing errors as the Mojang API rejected conversion requests
    • ServerSigns will now create a backup of the plugins/ServerSigns/signs folder prior to conversion attempts
    • Added more logic to the automatic updater so it doesn't try to download an older version (for users ahead of the curve)
    • Fixed an issue which caused errors when multiple instances of the same ServerSign are in the /invalid folder
    • Added validation check for null commands on a ServerSign
    • Default German translations are still a WIP for new messages; they will be correctly updated for 4.3.3 as 4.3.2 is a hot fix
  • Version 4.3.1 - the barbed hook
    • Fixed the NoCheatPlus hook causing errors on servers that don't use the plugin
  • Version 4.3 - 'very soon' he said
    • New configuration loading/generation system
    • New ServerSigns management and persistence management system
    • New languages/translations handling system
    • Completely rewritten command handling system
    • Added optional "no permission" message variable to /svs setpermission
    • Added /svs cancelpermission <permission> <message>
    • Added support for multiple [p:<perm>] nodes in the format [p:<perm>|<perm>|...]
    • Fixed some tasks not being treated as player-related tasks when they should be
    • Fixed some player-related tasks not executing
    • Fixed long delay commands causing hold-up issues in the execution queue
    • Fixed config-defined permission add/remove command not being recognised
    • Added parameter <nick> for commands which will be replaced with the player's nickname (requires Essentials)
    • Use with caution: Added /svsr - allows remote modification of ServerSigns.
    • Fixed long delay commands causing hold-up issues in the execution queue
    • Added /svs reloadConfig - reloads config.yml and translations files
    • Added /svs reloadSigns - reloads ServerSigns from disk
    • Changed /svs reload to perform both config & signs reload
    • /svs list will now show block coordinates for any block clicked
    • Added /svs void - invalidates any pending actions you may have
    • New additional syntax for /svs add: <addPermission> <removePermission> <addGroup> <removeGroup>
    • Added more detailed console messages for ItemStack string parsing functions (shows ServerSign location)
    • New ServerSign task management & persistence system, supporting SQLite & asynchronous task handling
    • Added [ap:<true|false>] as an optional command variable - tasks with this flag set to true will always be persisted to disk instantly (mark important tasks!)
    • New config option to define the delay threshold (in secs) above which tasks will be persisted to disk
    • New ServerSignCommand implementation - commands are now parsed and handled as objects instead of just strings
    • Added per-click command configuration (allows commands to be bound to ServerSigns that only execute on left or right (or both) click)
    • Per-click command configuration is added with the notation "[click:<left|right|both>]" in /svs add commands.
    • Per-click command configuration requires allow_left_clicking to be set to true in config.yml
    • Updated & tested to safely convert ServerSigns v2.9+ data to the latest format
    • /svs list now uses colours to display command information more clearly
    • Implemented multiple-permission requirements for ServerSigns
    • Multiple permissions are added with /svs setperms <perm> [perm] [perm]... - no permission messages should be suffixed with "m:"
    • New and improved plugin-hook management system; less verbose per request
    • Added support for blank command parameters (such as [d:] [p:] [ap:] [click:]) that are replaced but not parsed, allowing things like "/svs add [d:] <msg> Use [d:10s] to set a delay"
    • Rewrote the commands system from the ground up to accommodate all the changes we've made since the last rewrite of the system
    • Fixed being unable to confirm a ServerSign by clicking it again
    • Fixed pending ServerSign copy actions preventing admins from right-clicking
    • Added /svs create - allows you to create a ServerSign without any commands (useful for having a price-item SVS on a button for example)
    • Changed /svs setcooldown & /svs setglobalcooldown to accept units (s|m|h|d|w|mo) in the time
    • Created a website/wiki for detailed guides on all the features for 4.3+
    • Loads more miscellaneous code cleanup & fixes through-out the whole plugin
  • Version 4.2.1 - The Unnoticed Bug
    • Fixed issues with /svs reload permissions (sender must be operator for now)
    • Version 4.3 will be released very soon, which will complete the rewrite and adds loads of new & improved features!
  • Version 4.2 - The Slow One
    • Compiled for Java 7 - Java 6 will no longer be supported
    • Added /svs setuses <number of uses|0)
    • Added /svs cancel <always|never|success_only|fail_only>
    • Fixed confirmation & granted permission settings not binding to ServerSigns
    • Blank/empty language strings will no longer be printed
    • Whitespace at the start/end of all messages are now removed
    • Note: We're working on finishing the major v4 rewrite right now, so expect great things soon!
  • Version 4.1.2 - The Fast One
    • Fixed an issue which prevents config.yml generation on new servers
  • Version 4.1.1 - The Fixed One
    • Fixed /svs remove [line number] removing the incorrect command
    • Fixed [d:X] delayed commands throwing an exception on execution
  • Version 4.1 - The Refining One
    • Added /svs long (toggle) for long commands to be added to ServerSigns
    • Fixed an issue which allowed 0x Air to be set as a price item using "/svs pi hand"
    • Fixed an issue which caused some ServerSigns to be irremovable
    • Added a version information message sent to developers on PlayerJoinEvent (if broadcast developers is enabled)
    • Added textual highlighting to /svs list for ease of understanding
    • Added held items & held item criteria information to /svs list
    • Added loop information to /svs list
    • Added <bcast> variable to commands which works the same as <msg> but the message is broadcast to the whole server
    • Rewrote file name conversion code and bumped the persist-version to force it to recheck all existing files and fix any malformed file names
    • Invalid files are now moved to the plugins/ServerSigns/signs/invalid directory once marked as invalid
    • Completely rewrote config.yml and accompanying implementation; conversion should be automatic
    • Added reflective method checks for NoCheatPlus hook to prevent older versions causing issues
    • Fixed an issue which caused some signs to be copied incorrectly with /svs copy
    • Fixed loop data & held item data not being copied with /svs copy
    • Hopefully improved /reload stability by serializing metadata to prevent CCEs after reloading
    • Made UUID conversion asynchronous; fixes server freeze/crash on startup for large servers when upgrading
    • Improved time-related utilities (expiry messages will be more easily understandable, accurate and consistent)
    • Expired cooldowns are now discarded on startup
    • Added a config option to opt-out of metrics statistic gathering
  • Version 4.0.1 - The Smallest One Yet
    • Fixed an issue with languages.yml not loading DE messages.
  • Version 4.0 - The Biggest One Yet
    • The vast majority of the plugin has been rewritten for v4; I highly recommend you take a backup of your plugins/ServerSigns folder just in case!
    • Improved the ServerSignsManager
    • Cooldown data now uses UUIDs instead of player names
    • Player tasks now use UUIDs for player lookup
    • UUID updates break playerJoinTasks.yml (pending tasks)
    • ItemStack <-> String functions entirely rewritten
    • Fixed confirmation message not being saved correctly
    • Greatly improved random number generation functions
    • Per-command permissions added
    • Added /svs loop <number of loops> <time between loops>
    • Improved languages.yml integration
    • Removed permission strings from file names for signs
    • Added a persistence system version file in /plugins/ServerSigns/signs dir
    • Added a config option to allow payments to be sent to a server bank
    • languages.yml can now use colour codes freely
    • Added optional NoCheatPlus hook to prevent chat_command violations during SVS execution
    • Added /svs holding <hand|0|<item data...>>
    • Added /svs hic <enchants> <lores> <name> <durability>
    • Fixed permissions not being correctly applied using [p:]
    • Added a <uuid> parameter for commands that is similar to <player> or <name> but prints their UUID
    • Added "alternate_command_dispatching" configuration option; when enabled, commands will be executed using Player#chat(); function instead of Player#performCommand();
    • Fixed confirmation messages not having colour codes translated
    • Added "/svs resetcooldowns <player>" which resets all ServerSign cooldowns for a particular player
    • Added a config option "blocked-commands" to specify commands which ServerSigns should not execute (like /op /deop)
  • Version 3.1.1 - The Small One
    • Fixed some minor bugs
    • Tested to ensure 1.8+ compatibility
  • Version 3.1.0 - The Long Awaited One
    • Fixed a bug with granted permissions being removed from players who already had them
    • Added safety catches for command executions, command tasks which fail to execute are reported
    • Updated relevant methods to new Vault API standards
    • Fixed a bug which caused all tasks to be skipped if the current task was not due for execution
    • Fixed a bug which caused too many items to be removed with price items on ServerSigns (whole price item removal system re-written)
    • Added some experimental features with random number generation (<r:X-Y> where X and Y are integers) for use in /svs add
    • Various minor tweaks & improvements
    • Preparation for a complete re-write of the plugin with version 4.0 (long overdue!)
  • Version 3.0 - The Big One
    • Added new QueueHandling system
      • Queue handled on a separate server thread
      • New queue order logic means commands are always executed in the correct order
      • Much more efficient & greatly extended delayed task handling (delay up to 10 billion months)
        • Commands can be delayed for seconds/minutes/hours/days/weeks/months
        • Use the old [d:X] system, adding s/m/h/d/w/mo to the end of X. For example: [d:10] would have a 10 second delay, and [d:25h] would have a 25 hour delay
        • If a player is offline when a command needs to be executed on them, it will execute it the next time that player logs in
    • Removed messages sent to players on log in if ServerSigns message tags are different to default
    • Made Vault a requirement for permission based features
    • Improvments to PriceItem - Warning: Price Items made before 2.8 will be broken with this update. Run version 2.9.1 first if you have this problem.
      • Price items can be set based on item in hand with /svs pi hand
      • Supports more meta data, also improved the "/svs pi <args>" command for setting price items manually
    • Added PriceItem "search criteria" feature which allows admins to set whether or not ServerSigns will ignore the following when searching for matching price items: lores, names, enchantments. Each can be set separately, so could be set to ignore enchantments, but still check names and lores
      • Command: /svs pic <ignore item enchantments?> <ignore item lores?> <ignore item name?>
    • Added /svs copy persist which allows admins to copy a sign and paste it multiple times without any extra commands (disable with the same command)
    • Added /svs setcancel which allows you to set whether the PlayerInteractEvent for the interaction should be cancelled when the sign is activated. (True = cancelled)
    • Added Config option "must_be_sneaking_to_destroy" - If set to true, admins must be sneaking to destroy ServerSigns
    • Fixed bug that caused pressure plate ServerSigns to spam their attached commands
    • Wide-spread code cleanup & reformatting
    • Too Many tweaks and improvements to mention
  • Version 2.9.1
    • Compiled in Java 1.6
    • Altered handling of temporary permission granting / removing via Vault (hopefully improve stability)
  • Version 2.9
    • Compiled in Java 1.7 [v2.9.1 is compiled in Java 1.6]
    • added config option to change the colour of SVS messages and the SVS tag (messageTagColour: '&2' and messageColour: '&e')
    • added config option to allow left-clicking of server signs to activate them (allowLeftClicking: false|true)
    • added config option to have messages shown to players when their balances are changed (show_funds_removed_message: true|false)
    • lanuage file can be changed for funds removed message
    • added ability to set custom confirmation messages to players (/svs setconfirmation <true|fale> [message])
    • fixed bug for offline servers that allowed players to bypass cooldowns
    • set priority for onPlayerJoin event listener to lowest so that it can be easily overridden if so desired
    • greatly improved price item system:
      • new command: /svs priceitem <item-id> <amount> [name:&eexample name] [lore:&2example lore]
      • added ability to set "displayname" and "lore" of price items required (both can be multiple words, not limited to just one word)
      • changed system used for price items completely, including new storage method (old method is automatically transferred to new method)
      • fixed various bugs
  • Version 2.8
    • added command to add an exp cost to use a server sign (/svs xp <levels>)
    • added ability to change the "[ServerSigns]" tag in the config.yml (plugin will instead be announced to players when they log in)
    • added config.yml option to disable the "execute command" console logging for server sign command execution
    • added feature which shows the price items required to use a sign if a player doesn't have the right items
    • added support for damage values in items for price item
    • various bug fixes and minor alterations
  • Version 2.7
    • compiled in java 1.6
    • added new "priceitem" command to remove items from player inventories (like svs cost)
  • Version 2.6
    • fixed errors
    • compatible with Minecraft 1.4.7
  • Version 2.5.2
    • fixed error
  • Version 2.5.1
    • fixed error
  • Version 2.5
    • added command /svs reloadsigns to reload all signs in the signs folder
    • /svs list will show additional information
    • <group> will be replaced with the main permissions group (you'll need Vault for this)
    • added command /svs resetallcd to reset all cooldowns on every ServerSign
    • changed translation file (now named languages.yml)
    • bug fixes
  • Version 2.4.1
    • <name> will be replaced with the player who clicked the sign (<player> will still work)
    • little bugfix: OP's can execute signs with * instead of / without getting an error
  • Version 2.4
    • using vault for permissions grant system (you can still use the old system by disable it in the config)
    • possibillity to promote the player to op and back by using * instead of / (/svs add *time day insted of /svs add /time day)
    • fixed several problems with other protection plugins
  • Version 2.3.1
    • added Plugin Metrics to log ServerSign usage
    • bug fixes
  • Version 2.3
    • increased max cooldown
    • add -1 to blocks in config to enable all blocks
  • Version 2.2
    • new command: /svs copy copies a whole sign (including permissions, cooldown and stuff)
    • new command: /svs resetcd resets the remaining cooldown
  • Version 2.1
    • fixed bug: No error will appear if converting from old to new storage
    • colour support: Use Colour Codes to colour messages
    • new feature: Use <blank> to provide a message without [ServerSigns] at the beginning.
  • Version 2.0.2
    • fixed bug: Commands will be executed in the right order now (thanks to WingedSpear)
    • fixed bug: Old Permission grant system will work now (thanks to WingedSpear)
  • Version 2.0.1
    • fixed bug that plugin won't load if a signs.dat exists (thanks to extradessert)
  • Version 2.0
    • WARNING: Please read documentation again, major changes in the plugin!
    • complete and much better rewrite of the plugin
    • ServerSigns will be stored in yml files
    • added feature to delay commands
    • new permission grant system
    • new command names
    • better command handling
    • removed feature to write commands on the sign itself (with [command])
  • Version 1.9
    • <chat> added to svs types. says line in the chat
    • : can now be used in commands
    • pressure plates can now use <player>
    • buttons/preassure plates and redstone torches are now excluded from being redstone triggered
    • using the new event system from bukkit
    • player commands are now being send over chat to allow for alliasing (MCDocs for example)
  • Version 1.8
    • textmessage how much cooldown left (add <cooldown> in translation.yml)
    • new command: /svs confirmation true / false
  • Version 1.7
    • If using the sign costs anything, the players have to confirm if they want to use the sign
    • added permission serversigns.updatenotification to recieve update notifications for ServerSigns
  • Version 1.6
    • Vault support (You need it to use ServerSigns with any Economy plugin)
    • posibillity to add infinite cooldown (value has to be lower then 0)
    • automatic update check
  • Version 1.5.2
    • major bugfixes
    • new translation file (german and english)
    • change plugin language in config.yml
    • permission grant updated to support more permission systems (like pex)
    • added /svs reload command
  • Version 1.5
    • bug fix (thanks to Brustus)
    • Added feature to let players execute commands without permissions
    • You can use any block to create a ServerSign (define which block ID's in config)
    • Enable or disable redstone support in the config
  • Version 1.4.1
    • Added 1.0 Support
  • Version 1.4
    • Added Redstone support
    • new commands to list, edit or remove lines
    • new cooldown feature (global or for every single player)
  • Version 1.3
    • minor bug fixex
    • added support for iConomy 6
    • added the posibillity to translate the plugin in config.yml
  • Version 1.2
    • new way of storing the signs (old methode don't work anymore.. You have to create all signs new, sorry)
    • added new permissions:
      • serversigns.use.playercommand: Let you use only ServerSigns without server commands
      • serversigns.custom.<anything>: Let you use ServerSigns with set permission
    • added new commands:
      • /serversigns setpermission <anything>: Sets a permission to a sign
      • /serversigns delpermission: Delete permission on the sign
    • If you make a ServerSign with writing the command on the Sign, the sign will be saved in the new database as well
  • Version 1.1
    • added feature to write the command onto the sign (player and server command supported)
    • added config file
    • minor bug fixes
  • Version 1.0
    • release

A lack of client->server info can cause an issue where non-operator players cannot use ServerSigns within the spawn protection radius; setting the spawn protection radius to 0, or deleting the ops.json have been known to resolve this issue.