Inactive [CHAT] iChat 2.4.4 - Custom Chat Formatting [1337]

Discussion in 'Inactive/Unsupported Plugins' started by Drakia, Feb 24, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    Drakia

    iChat 2.x - Custom Chat Formatting
    Version: 2.4.4
    CraftBukkit: 1337

    Plugin Support:
    PermissionsBukkit
    bPermissions
    Permissions 2.x
    Permissions 3.x

    If you are requesting help, post your entire server log (From the time it opens, until somebody talks), your entire Permission config file (As well as what it's named), and iChat config files. This information is REQUIRED for me to help you.
    http://pastebin.com/ <-- Post configs there when asking for help

    =============
    Description
    =============
    Custom chat formatting.
    Based on the idea of iChat v1.5 by Nijikokun.
    Includes code and concepts from mChat by MiracleM4n <https://github.com/MiracleM4n/mChat/>

    Before downloading: iChat 2.4.x has quite a few changes over the 2.3.x branches. All permissions plugins are handled in one plugin, and they all operate in relatively the same way now. This means you WILL need to redo your configs.
    Download (Direct JAR): http://thedgtl.net/bukkit/iChat.jar
    Source: https://github.com/TheDgtl/iChat

    =============
    Features
    =============
    Supports Permissions (Both 2.0 and 2.1), and SuperPerms handlers (PermissionsBukkit, bPermissions, and PermissionsEx).
    Allows you to specify a prefix/suffix/variable for users and groups on a per-world or global basis.
    A user-specific prefix/suffix/variable will take priority over a group prefix/suffix/variable, a world-based prefix/suffix/variable will take priority over a global prefix/suffix/variable.
    Unlimited amount of custom variables for use in chat format.
    Colors are supported in all parts of the formatting and chat text.
    Usable health bar and health amount in the formatting.
    Support for formatting of /me

    =============
    Formatting
    =============
    Message formatting is defined in the file plugins/iChat/config.yml
    The message formats can contain characters, color codes, and variables.
    To use colors use the standard Minecraft color codes found here: http://www.minecraftwiki.net/wiki/Classic_Server_Protocol#Color_Codes

    Available variables:
    +prefix - The prefix for this user, or this users group if they don't have one defined.
    +suffix - The suffix for this user, or this users group if they don't have one defined.
    +name - The users name
    +displayname - The users display name (Set by plugins such as Towny)
    +iname - The iChat formatted player name (Defined by iname-format)
    +group - The users group
    +healthbar - A visual health bar for this user
    +health - The users current health value (Between 0 and 20)
    +message - The message the player typed
    +world - What world the player is currently in
    +time - Timestamp, configurable in config.yml. Uses the format for SimpleDateFormat - http://bit.ly/dscw40

    Example (Default):
    Code:
    iname-format: '[+prefix+group+suffix&f] +displayname'
    message-format: '+iname: +message'
    me-format: '* +name +message'
    date-format: 'HH:mm:ss'
    handle-me: true
    Example date-format (Default):
    date-format: 'HH:mm:ss'

    As of iChat 2.4.0 there have been a few changes in the way variables and groups are handled.

    ==========
    Groups
    ==========
    As of iChat 2.4.3 native groups are supported in Permissions 2.x/3.x, PermissionsBukkit, bPermissions, and PermissionsEx.

    ==========
    Variables
    ==========
    Variables are now defined in variables.yml in the iChat directory. This includes prefixes, suffixes, and custom variables.
    You can define an unlimited number of custom variables for groups and users, if these variables contain the static variables such as +prefix,
    +suffix, +health, etc then those variables will be replaced with their respective values.
    If a variable does not exist then it will be replaced with a blank string.

    As of iChat 2.4.4 you can now specify world-specific variables. To specify a per-world group or user variable (Prefix, suffix, or variable) you just specify it under the world as shown in the 'world' example in the default variables.yml below. Anything specified in the parent 'users' or 'groups' nodes will be considered global for all worlds.

    Default variables.yml:
    ---------------------
    Code:
    # iChat Variable Config
    # This is now the only method for defining variables
    users:
        Drakia:
            prefix: '&e'
    groups:
        Admin:
            prefix: '&c'
            suffix: ''
        Default:
            prefix: ''
            suffix: ''
    world:
      users:
        Drakia:
          prefix: '&a'
    Default config.yml:
    ---------------------
    Code:
    handle-me: true
    date-format: HH:mm:ss
    message-format: '+iname: +message'
    me-format: '* +name +message'
    iname-format: '[+prefix+group+suffix&f] +displayname'
    =============
    Examples
    =============
    To make a group colored:
    variables.yml:
    Code:
    groups:
        Default:
            prefix: '&4'
            suffix: ''
    config.yml:
    Code:
    message-format: '[+prefix+group&f] +name: +message'
    To make a single username colored:
    variables.yml:
    Code:
    users:
        Drakia:
            prefix: ''
            suffix: '&1'
    Config:
    Code:
    message-format: '[+prefix+group&f] +suffix+name&f: +message'
    As you can see, suffixes and prefixes can be used anywhere, in any combination. In this example we use prefix as a method for coloring group names, while suffix is used to color individual users. On our server we have prefixes such as "&f[&2Mod&f] " so that we can have custom tags per group instead of just the groups name. There is no end to the combination of things you can do, please TRY things before you come asking for someone else to do it for you. There are too many combinations of things for me to answer every question about how to color specific things.
    I will not be offering answers to questions such as "How do I color names?" or really anything else to do with specifics of formatting. It's pretty straightforward what you can do, and if you can't take the time to experiment then I'm not going to take the time to answer your questions.

    =============
    Configuration
    =============
    iname-format - The format used for +iname (Default: '[+prefix+group+suffix&f] +displayname')
    message-format - The format used for basic chat (Default: '+iname: +message')
    date-format - The format used for +date (Default: 'HH:mm:ss')
    me-format - The format used for /me commands (Default: '* +name +message')
    handle-me - Whether to handle /me commands (Default: true)

    =============
    Permissions
    =============
    ichat.color - Allow this group/user to use color in their chat messages.
    ichat.reload - Allow this group/user to use "/ichat reload"

    =============
    Commands
    =============
    /ichat reload - Reload the iChat config file

    =============
    F.A.Q.
    =============
    Q) Why is my custom message format not working? I just get the default output. Or output with no variables filled in.
    A) If you're using Permissions 2.1, make sure your Permissions config file is named "{worldname}.yml" where {worldname} is the name of your world. If you're using Permissions 2.0, make sure your Permissions config is named config.yml

    Q) How do I set the brackets color to the same as the group?
    A) Normally you have the brackets in the message-format variable, but you can just as easily move them into prefix/suffix and that way they can be per-group colored!

    Q) Why is my entire string colored? I just put a color code beside +name!
    A) A color code will persists until another color code is encountered, or the end of the line is reached. To change the line back to white use &f after the variable/string you want colored.

    Q) Why are my OPs names red?
    A) Essentials has this functionality built in. Change "ops-name-color" to 'none' in your Essentials config file.

    Q) Why does {PluginX} not work with iChat?
    A) There's a good chance it does, but you need to use +displayname instead of +name.

    Q) Why does Towny not work with iChat?
    A) iChat no longer uses %1$s for the player name, it uses player.getName() and player.getDisplayName(), until such a time that Towny is updated to use the proper method of setting a players name (Set their displayName) it will not work with iChat.

    =============
    Changes
    =============
    [Version 2.4.4]
    - Updated to new FileConfiguration class
    - Fixed bypass exploit for colors in messages
    - Multi-world support for variables.yml
    - Resolved an issue with /me not reloading player variables
    [Version 2.4.3]
    - Permissions overhaul. No longer require group.{name} node unless not using a permissions handler
    [Version 2.4.2]
    - Fixed issue with inheritance in Permissions
    - Implemented start of online time variable. Need output format.
    [Version 2.4.1]
    - Remove plugin-specific group referencing. All groups are now managed via group.* nodes,
    the exception being pure Permissions 2.x/3.x
    - Fixed /ichat reload not reloading variables.yml
    - Updated /me to use BroadcastMessage
    [Version 2.4.0-final]
    - Took out variable caching, there's no hook for PermissionChange.
    - Updated README to include info on group.* nodes
    [Version 2.4.0-beta]
    - Merged all branches into one
    - Supports Perms 2.x/3.x, SuperPerms, GroupManager
    - Added a more advanded API based on the mChat API
    - Massive thanks to MiracleM4n for code and concepts
    - All variables are now retrieved from variables.yml instead of Permissions
    - Removed censor code
    [Version 2.3.2-p3]
    - Set Permissions as a dependency in plugin.yml
    - Added Permissions 3 support to the -p3 jar
    [Version 2.3.1]
    - Added iChat.ichat.parseChat(Player, String, Format) API
    - Added hook for /me chat formatting using the "me-format" config option
    [Version 2.3.0]
    - Added external iChat.ichat.parseChat(Player, String) API
    [Version 2.2.3]
    - Added +displayname/+d for player.getDisplayName()
    [Version 2.2.2]
    - Updated to latest RB
    [Version 2.2.1]
    - Updated how Permissions is loaded
    [Version 2.2.0]
    - Added the ability to have an unlimited amount of variables in message-format
    - Changed versioning scheme
    [Version 2.11]
    - Now uses per-world permissions information
    [Version 2.10]
    - Allow admins to enable color on a permissions basis
    [Version 2.09]
    - Another small update to Permissions (Returned false when I should have returned true)
    [Version 2.08]
    - Pushes PacketCollisions PermVersion change. Fixes issues with 2.5.2
    [Version 2.07]
    - Added +time tag
    [Version 2.06]
    - Added +world tag
    [Version 2.05]
    - Ignore whether the plugin is GM, just treat everything as Permissions! Means you need FakePermissions.
    [Version 2.04]
    - Added the ability to use variables in the suffix and prefix (More customizeable messages)
    [Version 2.03]
    - Verify that all available variables aren't null before calling parse
    - Fixed crash caused by color code at end of message (Basic fix, added a space)
    [Version 2.02]
    - Fix for possible NPE
    [Version 2.01]
    - There's a bug in Permissions 2.1 in getPermissionString, switched to getUserPermissionString
    [Version 2.00]
    - Initial re-write of Niji's plugin.
    - Added Permissions 2.0/2.1, and GroupManager support.[/b]
     
    FFS2309, Lolmewn, wassilij and 12 others like this.
  2. Offline

    Einschtein


    Looks like you mis-read my post. I asked for help to get a single name in front of a user. Not a whole group, or whatever. Just 1 single user. The admin-user. But if I place +group in the config file, every single group gets their group in front of their name when they chat in-game. Because when I place [Owner]/Owner in the prefix, it doesn't show anything.

    So, what is your point? And the maker of iChat could've known that this would happen, people tend to not read everything carefully. If he couldn't handle that, he shouldn't be the support of this whole plug-in. Then I'm happy that he stopped with giving support of the plugin.

    Nothing was meant disrespectful, he still made an awesome plugin.
     
  3. Offline

    Boon Pek

    You're being hypocritical of yourself here. Sad, sad, sad. You respect him, and yet you chastise him. Ugh. There are several other plugins out there which provide similar features, don't confine yourself to this particular plugin if you deem the support here unbearable. The Author has already written an excellent, extensive post as to how to use his plugin, and he did mention: "if you can't take the time to experiment then I'm not going to take the time to answer your questions."

    Anyways, to answer your question:

    Permissions File:
    Code:
    users:
        GreenSlime:
            group: Owners
            info:
                prefix: '[&aOwner&f]'
                suffix: ' &a'
    iChat Config:
    Code:
    message-format: '&f[&6+world&f]+prefix+suffix+name&f: +message'
     
  4. Offline

    JolTziNsaNiTy

    Just got this like 2 minuets ago. So far not to good :(. I have permissions 3.x but I chat says cant find permissions disabling iChat. Do I have to put something in the permissions to make it work? I just downloaded ichat put it in my plugin folder then started the server. Then went back to the plugins folder to see if there was a folder for ichat and there wasn't. Please Help!
    Edit: I did something dont know what but it got me the ichat config folder/file but still says the permissions thing
     
  5. Offline

    sssss465

    This works with 3.x Permissions? :p
     
  6. Offline

    DivineKyuuji

    Why doesn't this work with permissions 3.x? I want to use iChat because I don't like HeroChat anymore, I've been having a lot of problems with it. And I don't really like any other chat plugins...
     
  7. Offline

    Mara1681

    Code:
    2011-07-04 18:03:17 [INFO] iChat (v2.3.2-p3) enabled
    Code:
    censor-list: []
    censor-color: '&f'
    date-format: HH:mm:ss
    message-format: '+prefix[+suffix] &e+time &f+name: +message'
    me-format: '+prefix[+suffix] &e+time &f+name: +message'
    censor-char: '*'
    censor-string-color: '&f'
    censor-colored: true
    When I say something in the game, then I don't see any prefix, suffix nor time... why?
     
  8. Offline

    Drakia

     
  9. Offline

    1born2kill

    Is it possibe to have a World Chat where:

    - You Can only Chat with the World Your on
    - No one in the Other World Can Hear You Talking with Your World

    Its like having 2 Servers in 1.
     
  10. Offline

    Drakia



    Emphasis added for better understandability of what this plugin does
     
  11. Offline

    1born2kill

    Ok so you can? but Idk how -.-?
     
  12. Offline

    Unset

    Seems your website is down, I can't access the jars nor your homepage.
     
  13. Offline

    jchamb2010

    I think that means it doesn't, in fact, that's exactly what it's saying.

    -John
     
  14. Offline

    1born2kill

    Lol ok, I'm hoping a plugin like that comes out, so I can create a Realistic RPG Map, with 2 other Maps :/
     
  15. Offline

    efstajas

    This is awesome, but is there a way to reload the config without having to reload the whole server?
     
  16. Offline

    Drakia

    At the moment, no.
     
    efstajas likes this.
  17. Offline

    efstajas

    Ok, I would like to have that. Especially at the first start when you have to try all those settings, it would be nice to not always need to reload the whole server. :)
     
  18. Offline

    alryaz

    Can you check for NULL prefix in user's yml? Cause having Permissions plugin generating prefix and suffix strings in its yml database is quite buggy. When I removed the line with preffix '' on globalUsers.yml, my preffix suddenly appeared. So, lulz
     
  19. Offline

    darkm3tr01d

    does this support individual player titles in permissions 3, or is it just group titles?
     
  20. Offline

    monotonehell

    Might be a good idea to change your title from [b953] to just [953] as people who are searching for version compatible plugins wont find you. :D
     
  21. Offline

    Drakia

    Unless Permissions has screwed with per-user variables like they (apparently) did with per-user prefix/suffix then it should work fine.
     
  22. Offline

    IronFerret

    when i use iChat with permission's prefixes (colors) it duplicates all the users in permissions user files like so:

    ironferret2313:
    permissions:
    groups:
    - Administrator
    ironferret2313§f:
    permissions:
    groups:
    - Guest

    seems like other people are having this problem, just wondering if there is way to have colored groups without doubling the user list
     
  23. Offline

    Drakia

    @IronFerret iChat has nothing to do with changing the Permissions config file.
     
  24. Offline

    darkm3tr01d

    ok so I'd have to do something like this:
    personguy:
    group: Admins
    permissions:
    info:
    var1: '[admin]'
    to get the same effect as permissions 2 had?
    that seems doable
     
  25. Offline

    Drakia

    Should, as I said, unless Permissions has screwed with things. They don't seem to grasp what users want, or that they shouldn't change how things work.
     
  26. Offline

    OrtwinS

    @Drakia

    Hi there,

    Beside all the questions, I thought you might appriciate to know that I have been using iChat for months now without the slightest trouble.
    Thank you for making this plugin!
     
  27. Offline

    zipfe

    Same here. iChat hasn't failed once in many months. Thanks for this plugin!
     
  28. Offline

    cookiecruncher1

    how do you use this plugin cos i would really like to put it on my server
     
  29. Offline

    ACStache

    @cookiecruncher1 all the information you need is in the first post. take some time and read it please :)
     
  30. Offline

    GameFreakDude

    [​IMG]
     
  31. Offline

    Fuzzwolf

    Is there anybody else here who has got colours to work with PermissionsEx? I understand this was built with another version and I do not want to nag the plugin author. Anybody?
     
Thread Status:
Not open for further replies.

Share This Page