Inactive [CHAT] jChat v1.4.3 - Simple chat prefixes and suffixes [1.1-R4]

Discussion in 'Inactive/Unsupported Plugins' started by grandwazir, Jul 19, 2011.

  1. Offline

    grandwazir

    jChat is a simple and flexible plugin for the Minecraft wrapper Bukkit designed to allow adding prefixes and suffixes to players names. Currently it is only compatible with SuperPerms, the permissions system in Bukkit.

    Features
    • Lightweight: only manages prefixes and suffixes.
    • Modifies join, death and quit messages to reflect player's display names.
    • Player list (tab) now reflects player's display names.
    • Fast: Formats a players' name permanently on login and when a player changes worlds.
    • Good citizen: Does not interfere with other chat plugins.
    • Simple: Very easy to configure, simply assign the permission nodes to players.
    Installation

    Ensure you are using the latest recommended build.

    Before installing, you need to make sure you are running at least the latest recommended build for Bukkit. Support is only given for problems when using a recommended build. This does not mean that the plugin will not work on other versions of Bukkit, the likelihood is it will, but it is not supported.

    Getting jChat

    The best way to install jChat is to use the symbolic link to the latest version. This link always points to the latest version of jChat, so is safe to use in scripts or update plugins. Additionally you can to use the RSS feed provided by BukkitDev as this also includes a version changelog.

    Alternatively older versions are available as well, however they are not supported. If you are forced to use an older version for whatever reason, please let me know why by opening a issue on GitHub.

    Configuration

    Read the documentation

    All documentation for jChat is available on the GitHub wiki, including example usage and details on how to configure the plugin.
     
    FredKing27 and Pilkie like this.
  2. Offline

    chrcms

  3. Offline

    godsyn

    @grandwazir:
    Any chance of getting name-color update without the need of a world change/reconnect? Perhaps a permissions node check on chat?
     
  4. Offline

    grandwazir

    I am trying to avoid doing that since if I am going to do that I might as well just colour the name every time they chat which defeats the point of the exercise. I would rather subscribe to an event which is called when Permissions on a player change, but I can't seem to find one.

    However in the new version the plugin now colours death messages - which is nice.
     
  5. Offline

    Subrosa20

    Newest bukkit-build. What's wrong?
    20:51:26 [SEVERE] Could not pass event PLAYER_JOIN to jChat java.lang.NullPointerException at name.richardson.james.jchat.jChat.searchNodes(jChat.java:135) at name.richardson.james.jchat.jChat.setDisplayName(jChat.java:98) at name.richardson.james.jchat.listeners.jChatPlayerListener.onPlayerJoin(jChatPlayerListener.java:24) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:260) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339) at net.minecraft.server.ServerConfigurationManager.c(ServerConfigurationManager.java:129) at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:121) at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:80) at net.minecraft.server.Packet1Login.a(SourceFile:59) at net.minecraft.server.NetworkManager.b(NetworkManager.java:226) at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:46) at net.minecraft.server.NetworkListenThread.a(SourceFile:94) at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:471) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374) at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
     
  6. Offline

    grandwazir

    Could you show me your config.yml?
     
  7. Offline

    wellerrocks123

    Is there a.. finished config file with the simple ranks owner,admin,moderator,VIP,Builder,default
    Would be great if somone could post for me to copy and paste ;)cuz i have been stuck on installing for weeks now and im getting fed up please guys
     
  8. Offline

    criss_angels

    Hey grand its me gop.

    When i tried adding color to my suffix, i dont see the suffix :l

    [CONFIG]

    colourMessages:
    death: true
    join: true
    quit: true
    prefix:
    admin: '&4'
    guest: '&2'
    suffix:
    admin: '&6'
    guest: '&f'
     
  9. Offline

    grandwazir

    jChat automatically adds white (&f) to the end of all suffixes. I assume what you were trying to do is change colour of the actual message. That is not supported yet.
     
  10. Offline

    criss_angels

    Oh ok :)

    But when i checked my config.yml before i edited it , the end of all the suffixes were empty :s

    Are you using invisible ink? Coz i dont see your log x:

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 17, 2016
  11. Offline

    seang96

    Is it possible that you could add a number to the permissions like
    jchat.prefix.1.nameofprefix
    and order by priority the higher the number the higher the priority which means it would be used? Thanks!

    EDIT: nvm.. it doesnt even work with bpermissions it just loads up the first prefix.. ):
     
  12. Offline

    Rsredmage

    Hey I saw it mentioned on the first page and I couldn't figure it out when I went to the Wiki, but I have a prefix question.
    I have several ranks all with their own permissions and prefix or suffix and they work GREAT but when I try to assign multiple groups with the same permission - '*' they inherit the admin prefix. Here is a copy/paste of the two ranks

    Body Guard:
    default: false
    info:
    prefix: 'Agent '
    suffix: ''
    build: true
    rank:5
    inheritance:
    permissions:
    - '*'
    Admin:
    default: false
    info:
    prefix: 'Mayor '
    suffix: ''
    build: true
    rank: 6
    inheritance:
    permissions:
    - '*'
    (this is a City based server so we are using prefixes/ranks to maintain that)
    So when a "Body Guard" chats, it comes up as <Mayor (name)> instead of <Agent (name). I have tried leaving permissions blank and just assigning - '*' to the members personally, but still the same thing happens. Any way around this?
     
  13. Offline

    grandwazir

    Make sure to check the documentation when using multiple prefixes. The order you define them matters in your configuration file.
    The way jChat works is it looks through the config file until it finds a prefix the player has and then stops. If you are giving all permissions to these players it will get to the first prefix in your config file (most likely admin) and stop there. The solution is not use * permissions. It is bad practise anyway.

    Failing that you could remove all other prefixes above the one you want them to have from their permissions. I think you do that like this:

    Code:
    - -jchat.prefix.admin
    I would check the documentation of whatever plugin you are using though.
     
  14. Offline

    Pim1234

    where's PEX support?
     
  15. Offline

    grandwazir

    It has support for PEX indirectly through SuperPerms. There is no plans to support it directly.
     
  16. Offline

    Pim1234

    oh ok, superperms is the root permissions.yml, right?
     
  17. Offline

    grandwazir

    Yes that is one way of using it. PEX should support it anyway.
     
  18. Offline

    tmad40blue

    This gets spat out every time a player joins.

    2011-12-05 06:34:07 [SEVERE] Could not pass event PLAYER_JOIN to jChat
    java.lang.NullPointerException
    at name.richardson.james.jchat.jChat.searchNodes(jChat.java:135)
    at name.richardson.james.jchat.jChat.setDisplayName(jChat.java:98)
    at name.richardson.james.jchat.listeners.jChatPlayerListener.onPlayerJoin(jChatPlayerListener.java:24)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:260)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
    at net.minecraft.server.ServerConfigurationManager.c(ServerConfigurationManager.java:129)
    at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:113)
    at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:39)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:94)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:516)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:414)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
     
  19. Offline

    Chubbs7894562

    @grandwazir please help me howd do i assign prefixes to specific people what do i type in?
     
  20. Offline

    godsyn

    @grandwazir Feature request: option to color the names in the player list (press tab) as well.
     
  21. Offline

    EKDS00

    I'm not sure if anyone else is having this problem or if its just me but no matter how i configure the jChat config file or the permissions file it always applys whatever node is on the top of the list.
    Code:
    colourMessages:
    
        death: true
    
        join: true
    
        quit: true
    
    prefix:
    
        SubOp: '[&9SubOp&f] &f'
        op: '[&3Op&f] &f'
        opjimmy: '[&3Op&f] &6'
        opkevin: '[&3Op&f] &a'
        admindennis: '[&6Admin&f] &1'
        admineric: '[&6Admin&f] &4'
    suffix:
    
        guest: ''
    With this config file the server always applys the SubOp prefix and coloring to the player no matter what level they are in the permissions. I can post my permissions file if needed too but I think it may be a bug in RB 1.0.1 R1 because nothing I do seems to have any effect on it.
     
  22. Offline

    grandwazir

    I think what you are trying to do is give different operators different prefixes. Bukkit has changed how it works out permissions for operators. When you ask Bukkit if a operator has permission it always returns true regardless if you have explicitly set the permission or not. So going with the rule that it assigns the first prefix it finds it will always give them SubOp. Normal players should not have this problem only operators and I can not think of a work around despite giving the option of player specific overrides maybe.

    I looked into this but I do not think there is a way currently to do this in Bukkit. ServerListPingEvent is for the server browser rather than the PingList in game.

    You need to setup your prefixes and then give the people the right permissions. Check the first post for the documentation.
     
  23. Offline

    godsyn

    Thank you for looking.
     
  24. Offline

    OkinKun

    Excellent plugin, exactly what I needed! Thank you for making one of the only Name-prefix-color plugins that works with PermissionsBukkit, and isn't bloated with unneeded features! I hope plugin lasts.

    I did notice a mild glitch, when using MobDisguise to change into another user, when I changed back, my name color reset to white. Reconnected to fix it, so no big deal.

    Thanks for this plugin, you really made my day, I thought I'd never find one that worked.. or would have to switch permission systems, or learn some complicated chat suite thing.
     
  25. Offline

    grandwazir

    Players can now use /jchat refresh if they want to refresh their display name. Not ideal but a good stop gap for the timebeing.

    Thanks for feedback! It is always nice to hear when people appreciate my work. I felt the same as you when I made jChat. All the other prefix plugins either did not have the source available (meaning I refuse to use them on my server) or were over complicated beasts.

    I am not entirely sure how MobDisguise works but it is likely it resets your display name to complete the disguise. You could use the new /jchat refresh command to get your proper name back.
     
  26. Offline

    Credomane

    Prefixes and Suffixes are not detected correctly in version 1.3.2.

    Even though jchat.prefix.default is explicitly set to false it gets used. Which is not how it is supposed to work according to https://github.com/grandwazir/jChat/wiki/permissions
    I can currently work around it but when I and the other two admins begin handing out the players prefixes and suffixes again this will quickly become a problem.

    Here is all the nitty gritty config files and output information.

    permissionsbukkit config.yml
    Code:
    users:
         credomane:
             permissions:
             groups:
             - admin
     groups:
         default:
             permissions:
                 group.default: true
                 jchat.prefix.admin: false
                 jchat.prefix.mod: false
                 jchat.prefix.everyone: false
                 jchat.prefix.default: true
         everyone:
             permissions:
                 group.everyone: true
                 jchat.prefix.admin: false
                 jchat.prefix.mod: false
                 jchat.prefix.everyone: true
                 jchat.prefix.default: false
         mod:
             permissions:
                 group.mod: true
                 jchat.prefix.admin: false
                 jchat.prefix.mod: true
                 jchat.prefix.everyone: false
                 jchat.prefix.default: false
         admin:
             permissions:
                 group.admin: true
                 jchat.prefix.admin: true
                 jchat.prefix.mod: false
                 jchat.prefix.everyone: false
                 jchat.prefix.default: false
    
     messages:
         build: '&cYou do not have permission to build here.'
     
    jChat config.yml
    Code:
    debugging: true
     colour-messages:
       death: true
       join: true
       quit: true
     prefix:
       admin: '&9Admin '
       mod: '&1Mod '
       everyone: '&f'
       default: '&4Guest '
     suffix:
       admin: '&9'
       mod: '&1'
       everyone: '&f'
       default: '&4'
     
    permissionsbukkit permission check
    Code:
    >perm check jchat.prefix.admin credomane
     01:45:18 [INFO] Player credomane sets jchat.prefix.admin to  true.
     >perm check jchat.prefix.mod credomane
     01:45:23 [INFO] Player credomane sets jchat.prefix.mod to  false.
     >perm check jchat.prefix.everyone credomane
     01:45:27 [INFO] Player credomane sets jchat.prefix.everyone to  false.
     >perm check jchat.prefix.default credomane
     01:45:35 [INFO] Player credomane sets jchat.prefix.default to  false.
     
    jchat debug output
    Code:
    2011-12-17 01:44:37 [INFO] [jChat] Loading configuration: config.yml.
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.util.Configuration> Using path: plugins/jChat/config.yml
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> debugging : true
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> colour-messages.death : true
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> colour-messages.join : true
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> colour-messages.quit : true
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> prefix.admin : &9Admin
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> prefix.mod : &1Mod
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> prefix.everyone : &f
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> prefix.default : &4Guest
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> suffix.admin : &9
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> suffix.mod : &1
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> suffix.everyone : &f
     2011-12-17 01:44:37[jChat] <name.richardson.james.jchat.jChatConfiguration> suffix.default : &4
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.prefix.admin
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.prefix.mod
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.prefix.everyone
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.prefix.default
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.suffix.admin
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.suffix.mod
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.suffix.everyone
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Creating permission node: jchat.suffix.default
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.util.Handler> New handler created on  behalf of name.richardson.james.jchat.RefreshCommand
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChat> Setting display names for all online players...
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.admin
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.mod
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.everyone
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.default
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChatHandler> Using prefix: §4Guest
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.admin
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.mod
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.everyone
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.prefix.default
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.suffix.admin
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.suffix.mod
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.suffix.everyone
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> Checking to see if  credomane has the permission node: jchat.suffix.default
     2011-12-17 01:44:37 [FINE] [jChat] <name.richardson.james.jchat.jChatHandler> Using suffix: §4
     2011-12-17 01:44:37 [FINE] [jChat]  <name.richardson.james.jchat.jChatHandler> credomane's display  name set to §4Guest credomane§4§f.
     2011-12-17 01:44:37 [INFO] [jChat] jChat v1.3.2 is enabled.
     
     
  27. Offline

    grandwazir

    I suspect this is due to jChat setting display names before PermissionBukkit has loaded. Could you confirm if PermissionsBukkit is loading before or after jChat on your server?
     
  28. Offline

    Credomane

    PermissionsBukkit is the very first plugins to broadcast that it is enabled. jChat is 2nd. WorldEdit is 3rd. All 3 broadcast the message in the same second. so as for which one really is first is anyone's guess.
     
  29. Offline

    grandwazir

    Could you try doing /jchat refresh and see if that corrects the problem once you are in game? That is the easiest way for me to tell for sure.
     
  30. Offline

    Noobscraft

    That does not fix the problem grandwazir having the same issue.
     
  31. Offline

    grandwazir

    Can you post your debugging logs as well please, it will help me identify the issue.

    I found the method to do this today so this will be added to the next update.

    @Credomane @Noobscraft try the latest version. Should fix those issues I hope.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 17, 2016

Share This Page