since I think improved chat is extremely use- and helpful, I thought I should write a guide on it, so everyone can use all of its awesome features as well! It's rather long, but I recommend to work through it because it really pays off! Besides the usual powerful additions you will learn how to modify or block messages, how to execute multiple commands at once, having multiple chat boxes for private chats/auctions, and more!
So let's start right away:
1. Improved Chat Overview
Improved Chat is a minecraft mod created by "wd1966" with the goal to increase the usability and possibilities of the (very basic) built-in chat.
The most important features are:
- Scrollable chat
- Copy/Paste lines
- Access to previously typed messages
- Moveable cursor while typing
- Several chat manipulation possibilities
- Executing several commands at once (with scripts)
- Tabs
2. Installation
Visit the topic on the minecraft forums ([You must be registered and logged in to see this link.]) and download the newest version (currently: Version 2.4.6 for Beta 1.6.6).
Open your minecraft.jar (located at %appdata%\.minecraft\bin) with Winrar (or similar), and add/replace the downloaded files to the JAR-file.
If you only have this Mod running, it should work without Mod Loader, but I recommend an installation of Mod loader before the installation of improved chat in case you are going to have multiple mods.
After installation, you can check if its running by just typing "~" in chat, and see if you get a response.
3. Basic Commands
Some basic commands to start off with:
Clear chat: ~clear
Stop/Start chat: ~stop and ~start
Change chatbox color: ~bgColor <color> (<color> = blue,red,green,yellow,black(default)... -> see .minecraft\mods\wd1966\colors.txt)
Change chatbox opacity: ~bgOpacity <val> (<val> = 0-100)
Copy/Paste Lines: Ctrl+C and Ctrl+V
Access previous messages: Up-Arrow
4. Binds
Binds are usefull for sending messages by just pressing a key.
Usage: ~bind <key> <message>
Examples: ~bind h /home, ~bind l &4Anyone got diamonds for sale?, ~bind m /pw goto dungeon,...
5. Filters
Filters are usefull to manipulate chat messages. You can either replace whole messages (with something else, or nothing, making them dissapear), or store specific parts of messages (ie. the player name) in a variable for later use.
In order to create filter rules, regular expression will be applied, and I guess the majority of you haven't heard of that yet. You can either figure this topic out yourself (as explaining this topic would make the tutorial explode), or just refer to the examples, and using only simple and basic expressions.
Usage: ~[input|output|display] <regex> <repl>
Usage: ~var <name> <regex>
Explanation
input refers to incoming messages
output refers to outgoing messages
display refers to the typing field
regex is a regular expression
repl is any kind of replacement and can also be nothing (=space)
name is the name of the variable to store the content matched by the regular expression and can be used later by $name
Example: Block "Notice: Your derp is locked ..." message
This message is an incoming message, and therefore we want to create an ~input rule.
Now you'll learn about a basic regular expression which matches a whole message containing a specific characterstring: .*Notice:.*locked.*
As you can assume .* stands for "anything" and the expression is saying: "Match anything followed by Notice:, then match anything again followed by locked, and then match the rest of the message as well".
With this expression we "catch" the whole message containing the message we want to block.
Now we just need the replacement, which is in our case nothing (= " "), since we want it to be removed.
Therefore, the whole command to add this filter rule is: "~input .*Notice:.*locked.+ " - notice the 2 spaces after the regular expression - one space to seperate the regex from the replacement, and one space for the empty replacement.
Now this message will be blocked.
I think you can figure out similar usages as well with this example - for example blocking messages from a player.
6. Scripts
Scripts allow the execution of one or more commands at once.
Usage: ~script <filename> (<filename> is the name of the textfile stored at .minecraft\mods\wd1966).
Inside the script you just add one command or message per line.
Example: Unlimited PW's
Note the coordinates of the spot, and create a new textfile using as name however you want to name your PW, and remove the .txt extension.
Next, write /tp x,y,z into the text file.
Save it, and you can use ~script name already to teleport to your location!
More concrete: I am at the spot I want my PW to and press F3 to get X,Y, and Z. Then I create a textfile in .minecraft\mods\wd1966 with the name pw1 (or w/e) WITHOUT .txt, and write /tp X,Y,Z (using the coordinates I just noted). Now I use it with ~script pw1. That's it.
7. Tabs
Improved chat even makes it possible to use multiple chatboxes. This can be usefull to have your own chatbox where you put private messages, or auctions in, to have a better overview.
Usage
Create tab: ~tab <name>
Close tab: ~close
Enable/Disable blinking on messages: ~blink [on|off]
Switch between the chatboxes: ~move tab 0 1 (I recommend to bind that to a key so you can switch fast)
Add tracking rule to chatbox: ~track <regex>
Add ignore rule to chatbox: ~ignore <regex>
Explanation: The tracking rule checks all incoming messages, and if the regex matches, it will be displayed in the tab (if there is no ignore rule to block it).
Example: Auction Tab
I wanted to have all the auctions in a seperate tab without getting spammed by them in the main chat. When a new auction is created, the Auction tab should blink, and I can quickly have a look and switch back to the main chatbox if it isn't interesting.
So first, I created a new tab called "Auction": ~tab Auction
Then, I defined, what messages should be "tracked" by this tab - everything starting with "[AUCTION]": ~track \[AUCTION\] (NOTE: "[" is a special regex-character, so it need to be prefixed with "\")
Then, I made a key binding to switch between chatboxes: ~bind r ~move tab 0 1
Then, I switched to the main chat and added the ignore rule for auctions: ~ignore \[AUCTION\]
And in the end, I enabled blinking, so I switched back to my auction tab and executed: ~blink on
And that's it - now I have the effect that all auction messages are getting redirected to a seperate chat window! You can modify this one a bit to create a "private message" tab also.
8. List and delete elements
Of course it's possible to display all your binds/filters/etc or delete them.
Usage:
~list <type> (<type> is "bind", "input", ... see ~list)
~delete <type> <id> (<id> is the number of the filter rule (check with ~list) or a key)
Examples: ~delete bind h, ~delete input 0,...
I hope you find this usefull and you're going to use some of these awesome features!
Last edited by Mati on 2011-06-20, 10:24; edited 1 time in total