Premium Punish - [Extremely Customizable] - [Unlimited GUIs] - [Awesome Features!] - [1.8, 1.9, 1.10 &...

Discussion in 'Resource Discussion' started by GrimReaper52498, Jun 10, 2015.

  1. Yea go ahead and put the configs in here so we can take a look at them and its looking good.
     
  2. Code (Text):
    #==================================================
    #                                                                                                                                  
    #                                               CHAT MESSAGES                                            
    #                                                                                                                                  
    #==================================================

    #------------------------------------------------------#
    #                 MISC  MESSAGES                 #
    #------------------------------------------------------#

    PREFIX: '&8&l[&c&lPunish&8&l] &r&l'
    NO_PERMS: '&c&lYou don''t have permission for this!'
    RELOAD: '&a&lReload successful!'
    ERROR: '&c&lOops.. Looks like something went wrong here!'

    #------------------------------------------------------#
    #        COMMAND MESSAGES             #
    #------------------------------------------------------#
    #
    #Variables:
    # %sender% = Sender of the command.

    CHAT_CLEARED: '&c&lChat has been cleared by:&b&l %sender%'

    #------------------------------------------------------#
    #        FEEDBACK MESSAGES               #
    #------------------------------------------------------#

    PLAYER_NOT_EXIST: '&c&lThat player does not exist, are you sure it''s correct?'
    PLAYER_NOT_ONLINE: '&c&lThat player is not online!'

    CHAT_CLEARED_TO_SENDER: '&a&lChat Cleared!'

    #------------------------------------------------------#
    #        PUNISHMENT MESSAGES        #
    #------------------------------------------------------#
    #
    #Variables:
    # %sender% = Punisher
    # %target% = Name of the player being punished
    # %reason% = Reason for punishment
    # %warnings% = Amount of warnings the player has
    # %warningsToAction% = Amount of warning until the action defined in the config.yml is taken
    # %muteTimeLeft% = Amount of time until a player is unmuted
    # %sender_displayname% = Display name of the sender
    # %target_displayname% = Target displayname (Will only be the targets name if they're offline!)
    # %ip% = Targets IP address

    BAN_TO_PLAYER: '&c&lYou were banned by &b&l%sender%'
    BAN_TO_SENDER: '&c&lYou banned &b&l%target%'
    BAN_BROADCAST: '&b&l%target% was banned by &b&l%sender%'

    TEMPBAN_TO_PLAYER: '&c&lYou were temporarily banned by &b&l%sender%'
    TEMPBAN_TO_SENDER: '&c&lYou temporarily banned &b&l%target%'
    TEMPBAN_BROADCAST: '&b&l%target% was temporarily banned by &b&l%sender%'

    IPBAN_TO_PLAYER: '&c&lYou were IP banned &b&l%sender%'
    IPBAN_TO_SENDER: '&c&lYou IP banned &b&l%ip%'
    IPBAN_BROADCAST: '&b&l%ip% was banned by &b&l%sender%'

    MUTE_TO_PLAYER: '&c&lYou were muted by &b&l%sender% &c&lfor &b&l%muteTimeLeft%'
    MUTE_TO_SENDER: '&c&lYou muted &b&l%target% &c&lfor &b&l%muteTimeLeft%'
    MUTE_BROADCAST: '&b&l%target% &c&lwas muted by &b&l%sender% &c&lfor &b&l%muteTimeLeft%'

    MUTED: '&c&lYou''re muted for&b&l %muteTimeLeft%'
    UNMUTED: '&a&lYou''re no longer muted!'

    KICK_TO_PLAYER: '&c&lYou were kicked from the server!'
    KICK_TO_SENDER: '&c&lYou kicked &b&l%target% &c&lfrom the server!'
    KICK_BROADCAST: '&b&l%target% was kicked from the server!'

    WARN_TO_PLAYER: '&c&lYou were warned!'
    WARN_TO_SENDER: '&c&lYou warned &b&l%target%'
    WARN_BROADCAST: '&b&l%target% &c&lwas warned by &b&l%sender%'

    CHATCLEAR_PLAYER: '&c&lYour chat has been cleared!'

    #==================================================
    #                                                                                                                                  
    #                                             MENU MESSAGES                                            
    #                                                                                                                                  
    #==================================================

    #------------------------------------------------------#
    #        PUNISH MENU MESSAGES      #
    #------------------------------------------------------#
    #
    #Variables
    # %ismuted% = Whether or not player is muted
    # %isbanned% = Whether or not player is banned
    # %isonline% = Whether or not the player is online
    # %warnings% = Amount of warning the player has
    # %maxwarnings% = Maximum warnings until action is taken.
    # %reason%
    # %pastreason% = This one wont be applied anywhere but in the PUNISH_REASONS_LORE

    PUNISH_INFORMATION_MUTE: '&b&lMute'
    PUNISH_INFORMATION_TEMPBAN: '&b&lTempBan'
    PUNISH_INFORMATION_ACTIONS: '&b&lActions'
    PUNISH_INFORMATION_INFO: '&b&lPlayer Info'

    #Recommended to leave this as is or translate as the plugin will automatically add the time after the message
    #Such as 'Mute: 0 Days 5 Hours 0 Minutes 0 Seconds'
    PUNISH_TEMPBAN_NAME: '&a&lTempBan: &b&l '
    PUNISH_MUTE_NAME: '&a&lMute: &b&l'

    PUNISH_BAN_NAME: '&c&lBan'
    PUNISH_BAN_LORE:
              - '&a&lBan the specified player'
           
    PUNISH_IPBAN_NAME: '&c&lIP Ban'
    PUNISH_IPBAN_LORE:
              - '&a&lIP Ban the specified palyer'

    PUNISH_WARN_NAME: '&c&lWarn'
    PUNISH_WARN_LORE:
              - '&a&lWarn the specified player'

    PUNISH_KICK_NAME: '&c&lKick'
    PUNISH_KICK_LORE:
              - '&a&lKick the specified player'

    #No name for this as it will always be the name of the player; Green if online, red otherwise.
    PUNISH_HEAD_LORE:
              - '&a&lOnline: &c&l%isonline%'
              - ' '
              - '&a&lMuted: &c&l%ismuted%'
              - ' '
              - '&a&lBanned: &c&l%isbanned%'
              - ' '
              - '&a&lWarnings: &c&l%warnings%&a&l/&c&l%maxwarns%'
              - ' '

    PUNISH_REASONS_NAME: '&a&lReasons'
    PUNISH_REASONS_LORE:
              - '&a&lCurrent: &c&l%reason%'
              - ' '
              - '&a&lPast 4 Reasons:'
              - '&f&l- &b&l%pastreason%'

    PUNISH_MOREOPTIONS_NAME: '&c&lMore Options'
    PUNISH_MOREOPTIONS_LORE: '&a&lView more options.'

    #------------------------------------------------------#
    #     OTHER OPTIONS MESSAGES     #
    #------------------------------------------------------#
     

    Code (Text):
    #################################
    #+=============================+#
    #|+===========================+|#
    #||                           ||#
    #||         Punish            ||#
    #||           by              ||#
    #||     GrimReaper52498       ||#
    #||                           ||#
    #|+===========================+|#
    #+=============================+#
    #################################

    #Should a reason be required when punishing a player?
    RequireReason: true

    #Only works if the above is false
    #Should we give punishers a list of reasons to choose from?
    UsePredefined: false

    #Can have up to 54 and supports colour codes.
    PredefinedReasons:
        - 'Hacking'
        - 'Disrespect'
        - 'Vulgar Langauge'
     

    #Maximum amount of warnings before 'Actions' are taken
    MaxWarns: 6

    #Can be either a command or one of the following:
    #BAN
    #KICK
    #MUTE
    #Use %target% for the players name.
    Actions:
       - 'KICK'
       - 'broadcast %target% has reached the maximum number of warnings and has been kicked.'

    #These are all in minutes!
    Times:
       Mute:
         Severity1: 5
         Severity2: 10
         Severity3: 30
         Severity4: 60
         Severity5: 300
       Ban:
         Severity1: 10
         Severity2: 60
         Severity3: 300
         Severity4: 600
         Severity5: 1440
     
     
       

    Im still tweaking things in the menu file but I will post that as soon as it is ready; and not that all of these values could change or more could be added before final release
     
  3. Looking good is the warning system reset feature being added? If not that's fine I was just wondering.
     
  4. Another update:

    1.) Data Caching from the MySQL server (Done)
    2.) Create the language file. (Done)
    2.5) Create menu language file (Done)
    3.) Create the punish menu (Done)
    4.) Create more options menu (Done)
    5.) Counting down (Done)
    7.) Menu click events (Done)
    6.) Commands (99% Done)
    7.) Finish the API (Done)
    8.) Testing (Always in progress)

    All the percentages are based off of working code and how much is left before it is fully functional

    If everything goes well I predict the update will be done tomorrow at the latest. Although Im gonna get another server to publicly test the plugin, so players can join and use the plugin (Everything but banning for obvious reasons) with MySQL enabled so I can run more tests with more players online than just myself.

    Also, here are the messages.yml, config.yml, and menu.yml - These are closer if not how the final versions will be, I commented it as best as I could if you think I should have explained it better, I will try to.

    Code (Text):
    #################################
    #+=============================+#
    #|+===========================+|#
    #||                           ||#
    #||         Punish            ||#
    #||           by              ||#
    #||     GrimReaper52498       ||#
    #||                           ||#
    #|+===========================+|#
    #+=============================+#
    #################################

    #Should a reason be required when punishing a player?
    RequireReason: true

    #Only works if the above is false
    #Should we give punishers a list of reasons to choose from?
    UsePredefined: false

    #Can have up to 54 and supports colour codes.
    PredefinedReasons:
        - 'Hacking'
        - 'Disrespect'
        - 'Vulgar Langauge'


    #Maximum amount of warnings before 'Actions' are taken
    MaxWarns: 6

    #Can be either a command or one of the following:
    #BAN
    #KICK
    #MUTE
    #Use %target% for the players name.
    Actions:
       - 'KICK'
       - 'broadcast %target% has reached the maximum number of warnings and has been kicked.'

    #Should warns run out over a certain amount of time?
    WarnReset: true

    #Amount of warns to take away can be a number or ALL to reset completely
    AmountToReset: 'ALL'

    #How long before the warns should reset? (in minutes)
    TimeUntilReset: 30

    #Should the plugin only reset warnings when the player has been ONLINE for the above time?
    OnlineToReset: true

    #These are all in minutes!
    Times:
       Mute:
         Severity1: 5
         Severity2: 10
         Severity3: 30
         Severity4: 60
         Severity5: 300
       Ban:
         Severity1: 10
         Severity2: 60
         Severity3: 300
         Severity4: 600
         Severity5: 1440


       

    Code (Text):

    #==================================================
    #                                                                                                                                
    #                                               CHAT MESSAGES                                            
    #                                                                                                                                  
    #==================================================

    #Global Variables
    #(Works on any messages!)
    # %prefix% = Prefix defined below

    #------------------------------------------------------#
    #                TIMED MESSAGED               #
    #------------------------------------------------------#

    WARN_RESET_ALL: '&a&lYour warnings have been reset!'

    #------------------------------------------------------#
    #                 MISC  MESSAGES                 #
    #------------------------------------------------------#

    PREFIX: '&8&l[&c&lPunish&8&l]&r&l'
    NO_PERMS: '&c&lYou don''t have permission for this!'
    RELOAD: '%prefix% &a&lReload successful!'
    ERROR: '%prefix% &c&lOops.. Looks like something went wrong here!'

    #------------------------------------------------------#
    #        COMMAND MESSAGES             #
    #------------------------------------------------------#
    #
    #Variables:
    # %sender% = Sender of the command.

    CHAT_CLEARED: '&c&lChat has been cleared by:&b&l %sender%'

    #------------------------------------------------------#
    #        FEEDBACK MESSAGES               #
    #------------------------------------------------------#

    PLAYER_NOT_EXIST: '%prefix% &c&lThat player does not exist, are you sure it''s correct?'
    PLAYER_NOT_ONLINE: '&c&lThat player is not online!'

    CHAT_CLEARED_TO_SENDER: '&a&lChat Cleared!'

    MUTED_CANT_TALK: '&c&lYou can''t talk while muted!'

    UNWARN_TO_PLAYER: '&a&lYour warnings have been reset'
    UNWARN_TO_SENDER: '&a&lPlayers warnings have been reset!'

    UNBAN: '&a&lPlayer unbanned!'
    UNMUTE: '&a&lPlayer unmuted!'

    REASON_NEEDED: ' %prefix% &c&lYou need to specify a reason! &b&l/punish <player> <reason>'

    CANT_PUNISH_SELF: '%prefix% &c&lUhm... I don''t think you wanna do that!'

    CANT_PUNISH: '&c&lYou can''t punish that player!'

    #------------------------------------------------------#
    #        PUNISHMENT MESSAGES        #
    #------------------------------------------------------#
    #
    #Variables:
    # %sender% = Punisher
    # %target% = Name of the player being punished
    # %reason% = Reason for punishment
    # %warnings% = Amount of warnings the player has
    # %warningsToAction% = Amount of warning until the action defined in the config.yml is taken
    # %muteTimeLeft% = Amount of time until a player is unmuted
    # %sender_displayname% = Display name of the sender
    # %target_displayname% = Target displayname (Will only be the targets name if they're offline!)
    # %ip% = Targets IP address

    BAN_TO_PLAYER: '&c&lYou were banned by &b&l%sender%'
    BAN_TO_SENDER: '&c&lYou banned &b&l%target%'
    BAN_BROADCAST: '&b&l%target% was banned by &b&l%sender%'

    TEMPBAN_TO_PLAYER: '&c&lYou were temporarily banned by &b&l%sender%'
    TEMPBAN_TO_SENDER: '&c&lYou temporarily banned &b&l%target%'
    TEMPBAN_BROADCAST: '&b&l%target% was temporarily banned by &b&l%sender%'

    IPBAN_TO_PLAYER: '&c&lYou were IP banned &b&l%sender%'
    IPBAN_TO_SENDER: '&c&lYou IP banned &b&l%ip%'
    IPBAN_BROADCAST: '&b&l%ip% was banned by &b&l%sender%'

    MUTE_TO_PLAYER: '&c&lYou were muted by &b&l%sender% &c&lfor &b&l%muteTimeLeft%'
    MUTE_TO_SENDER: '&c&lYou muted &b&l%target% &c&lfor &b&l%muteTimeLeft%'
    MUTE_BROADCAST: '&b&l%target% &c&lwas muted by &b&l%sender% &c&lfor &b&l%muteTimeLeft%'

    MUTED: '&c&lYou''re muted for&b&l %muteTimeLeft%'
    UNMUTED: '&a&lYou''re no longer muted!'

    KICK_TO_PLAYER: '&c&lYou were kicked from the server!'
    KICK_TO_SENDER: '&c&lYou kicked &b&l%target% &c&lfrom the server!'
    KICK_BROADCAST: '&b&l%target% was kicked from the server!'

    WARN_TO_PLAYER: '&c&lYou were warned!'
    WARN_TO_SENDER: '&c&lYou warned &b&l%target%'
    WARN_BROADCAST: '&b&l%target% &c&lwas warned by &b&l%sender%'

    CHATCLEAR_PLAYER: '&c&lYour chat has been cleared!'

    #==================================================
    #                                                                                                                                
    #                                             KICK/JOIN MESSAGES                                          
    #                                                                                                                                  
    #==================================================
    #Variables:
    #Coming soon!

    #------------------------------------------------------#
    #                   JOIN MESSAGES                 #
    #------------------------------------------------------#

    JOIN_BAN: '&c&lYou''re banned from the server!'

    #==================================================
    #                                                                                                                                
    #                                             MENU MESSAGES                                            
    #                                                                                                                                  
    #==================================================

    #------------------------------------------------------#
    #        PUNISH MENU MESSAGES      #
    #------------------------------------------------------#
    #
    #Variables
    # %ismuted% = Whether or not player is muted
    # %isbanned% = Whether or not player is banned
    # %isonline% = Whether or not the player is online
    # %warnings% = Amount of warning the player has
    # %maxwarns% = Maximum warnings until action is taken.
    # %reason%
    # %pastreason% = This one wont be applied anywhere but in the PUNISH_REASONS_LORE

    PUNISH_INFORMATION_MUTE: '&b&lMute'
    PUNISH_INFORMATION_TEMPBAN: '&b&lTempBan'
    PUNISH_INFORMATION_ACTIONS: '&b&lActions'
    PUNISH_INFORMATION_INFO: '&b&lPlayer Info'

    #Recommended to leave this as is or translate as the plugin will automatically add the time after the message
    #Such as 'Mute: 0 Days 5 Hours 0 Minutes 0 Seconds'
    PUNISH_TEMPBAN_NAME: '&a&lTempBan: &b&l '
    PUNISH_MUTE_NAME: '&a&lMute: &b&l'

    PUNISH_BAN_NAME: '&c&lBan'
    PUNISH_BAN_LORE:
              - '&a&lBan the specified player'
         
    PUNISH_IPBAN_NAME: '&c&lIP Ban'
    PUNISH_IPBAN_LORE:
              - '&a&lIP Ban the specified palyer'

    PUNISH_WARN_NAME: '&c&lWarn'
    PUNISH_WARN_LORE:
              - '&a&lWarn the specified player'

    PUNISH_KICK_NAME: '&c&lKick'
    PUNISH_KICK_LORE:
              - '&a&lKick the specified player'

    #No name for this as it will always be the name of the player; Green if online, red otherwise.
    PUNISH_HEAD_LORE:
              - '&a&lOnline: &c&l%isonline%'
              - ' '
              - '&a&lMuted: &c&l%ismuted%'
              - ' '
              - '&a&lBanned: &c&l%isbanned%'
              - ' '
              - '&a&lWarnings: &c&l%warnings%&a&l/&c&l%maxwarns%'
              - ' '


    #This will work in a later update as I have not finished
    #the reason storage yet, and plan to do so soon.
    #This item isnt NEEDED at the moment as the plugin
    #still logs all punishments
    PUNISH_REASONS_NAME: '&a&lReasons'
    PUNISH_REASONS_LORE:
              - '&a&lCurrent: &c&l%reason%'
              - ' '
              - '&a&lPast 4 Reasons:'
              - '&f&l- &b&l%pastreason%'

    PUNISH_MOREOPTIONS_NAME: '&c&lMore Options'
    PUNISH_MOREOPTIONS_LORE: '&a&lView more options.'

    #------------------------------------------------------#
    #     OTHER OPTIONS MESSAGES     #
    #------------------------------------------------------#

    OPTIONS_UNWARN_NAME: '&c&lUnwarn'
    OPTIONS_UNWARN_LORE:
               - '&a&lReset the players warnings'  

    OPTIONS_UNBAN_NAME: '&c&lUnban'
    OPTIONS_UNBAN_LORE:
              - '&a&lUnban the player'

    OPTIONS_UNMUTE_NAME: '&c&lUnmute'
    OPTIONS_UNMUTE_LORE:
              - '&a&lUnmute the player'

    OPTIONS_CLEARCHAT_NAME: '&c&lClear Chat'
    OPTIONS_CLEARCHAT_LORE:
              - '&a&lClear the players chat'
     

    Code (Text):
    #Note: Be careful when editing as if it is not done correctly, you will end up with a console full of errors
    #and a broken plugin. Please I urge you, Only change this if you know what you're doing!

    #FORMAT (For all except the Severity_Items): ITEMID:DATA;PLACEMENT
    #Example: 397:3;26 would be a player head placed in the 26th slot in the menu
    #NOTE: Java starts counting at zero so 1 = 0, 2 = 1, etc.
    #Also note, that the DATA number is NOT needed. It is optional.

    Punish_Menu:
           #How many slots should the menu have, divisible by nine (9, 18, 27, 36, 45, 54)
           Slots: 54
           Items:
                      Title_Items:
                                   Tempban: 323;21
                                   Mute: 323;3
                                   Informational: 323;17
                                   Punishment: 323;39
                                   Actions: 323;39
                      Severity_Items:
                                   #FORMAT:
                                   # ITEMID:DATA;MUTEPLACEMENT;TEMPBANPLACEMENT
                                   Severity1: 159:13;10;28
                                   Severity2: 159:4;11;29
                                   Severity3: 159:1;12;30
                                   Severity4: 159:14;13;31
                                   Severity5: 35:14;14;32
                       Items:
                                   Warn: 145;48
                                   Ban: 46;46
                                   Kick: 76;49
                                   IpBan: 166;47
                                   Head: 397:3;26
                                   Reasons: 339;35
                      Other:
                                   Options_Menu: 262;53

    Options_Menu:
           #How many slots should the menu have, divisible by nine (9, 18, 27, 36, 45, 54)
           Slots: 9
           Items:
                    Unmute: 42;1
                    Unwarn: 41;3
                    Unban: 57;5
                    ClearChat: 152;8

    #If any assistance is needed feel free to ask!
     
    #85 GrimReaper52498, Jul 11, 2015
    Last edited: Jul 12, 2015
  5. @ToXiCHaZe541
    @Bente
    @AwesomeAntlo

    Okay so, countless sleepless nights, a bunch of headaches and around 6573 lines of code later, and the plugin is ready for testing!

    Since the plugin is ready for testing, I went and got a 2GB test server so that you guys can help me do some more testing and debugging before the final release. Before I give the IP there is a few things to note:
    1.) I have allowed for players to punish themselves to remove mutes, warns, and clear chat. (Wont be in the final release)
    2.) The /punish check command is just something I threw together quick so that there is some way of seeing the info, I will allow for further customization soon.
    3.) Past warnings don't exist yet because I'm working on a new way of storing past reasons. (Much more efficient)

    Onto the plugin information.

    Commands are still the same except for help it is now /p help , upon joining the test server you will be given permissions to mute, kick, warn, clearchat, and the check features. Use them freely. The plugin will be using MySQL as I want to run further testing with it. The MyQL server is hosted locally, like most should be with paid hosts, so there should be little to no delay when caching player data.

    For those wondering, here is how the plugin works (With MySQL):

    Player joins the server Punish opens a connection to the database and retrieves the info storing it for later use and then closes the connection.
    Whenever the commands to punish someone are ran it updates the stored data, if the punishment is a warn or a ban then the plugin sends the data to the database to update it. Every 5 minutes the data will be sent back to the database and updated and when the Player leaves the server and the data is then sent back to the database and unstored in memory.
    If the player is offline when trying to be punished, the plugin will get their data from the database and store it for up to ten minutes, if the player is offline after said ten minutes, it is sent back to the database and then unstored in memory, however is the player is online when the ten minutes is up. then it will remain in the system memory.

    Last but not least. If you help to test the plugin; Any and all feedback is welcome and needed. I want to make sure this plugin is as efficient as it could be. And so far its looking quite good.

    I will check back today at around 5PM. If everything looks okay. I will release to the public.

    Test Server IP: 76.72.175.30:25596

    (P.S. Sorry for the wall of text, I was just trying to explain everything as best I could.)
     
    #86 GrimReaper52498, Jul 13, 2015
    Last edited: Jul 13, 2015
  6. Was worth the wait.
     
  7. GrimReaper52498 updated Punish Menu with a new update entry:

    2.0.0 - The big update

    Read the rest of this update entry...
     
  8. The file sizes on the Spigot page and on my PC aren't the same for some reason. If it doesn't work let me know I may have to reupload it.
     
  9. Why doesn't /punish menu work for preset punishments? When I run the command it brings up a menu to punish a player named "Menu".
     
    #90 ImUnAdequate, Jul 15, 2015
    Last edited: Jul 15, 2015
  10. Make sure UsePredefined is set to true. and you still need to specify the player with it..
     
  11. Yes I am but when I type /punish menu (playername) it thinks the players name is menu because I am not typing the correct command I guess. When I was on the test server and I did /punish menu it brought up a menu now when I do it doesnt work the same.
     
  12. The config also is not working when I go to edit it and restart the server it does not make any changes. Also when I go to punish someone with a reason and have the require reason set to true in the config the reasons section on the gui doesnt have any reason in it.
     
  13. It's just /punish <playerName> :p

    Make sure your keeping in the proper YAML format; Ive always used this for configs: http://wiki.ess3.net/yaml/
     
  14. When I do /punish (player) it doesn't bring up a menu for preset reasons it just takes me to the menu where u pick the punishment. Also I do have the correct format for the config i ran it through a parser and even reset it at one point and just changed the max warnings to 3 but still no changes. Even when I change the config where predefined reasons are set to false and required reason is set to true and I do /punish (player) (reason) it still does not show a reason in the gui.
     
  15. Hmm.. That's extremely weird... I'll download it from Spigot and see if it happens to me.
     
  16. It works as should for me :/ Any errors in console? Anything that could help me recreate the problem?
     
  17. Update announcement:

    Fixes and changes:
    1.) Added new commands/menus that I think some people will enjoy
    Code (Text):
    public static final String CMD_PUNISHFUN_USE = "punish.fun.use";
    public static final String FUN_SCARE = "punish.fun.scare";
    public static final String FUN_BURN = "punish.fun.burn";
    public static final String FUN_LAUNCH = "punish.fun.launch";
    public static final String FUN_TPRANDOM = "punish.fun.rtp";

    2.) Added a warning message for people attempting to open the menu with an item id that doesn't exist (i.e Barriers in pre-1.8)

    3.) Completed warning storage and they will know show in the menu and in the /p check command

    4.) New section in the menus.yml for the new menu

    5.) Don't want an item in the menu? Set its placement to -1 and it wont be there!.

    6.) You don't have to type a player name to punish. Just type /punish and a gui with player heads comes up. (Cant specify reason though.. yet!)
     
    #98 GrimReaper52498, Jul 16, 2015
    Last edited: Jul 16, 2015
  18. There is no errors in console it just doesnt work like it did on the test server for me. Even when I relogged on the test server about 2 days ago the menu no longer worked.
     
  19. Join my sevrer at shank-tank.net if you want to see the issues or to see if i am using it wrong