Improved Chat: Difference between revisions
(→Highlighting your own name: Fixed self-highlight not resetting color) |
mNo edit summary |
||
(9 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
'''Improved Chat''' (abbreviated IC) is an essential [[mods|mod]] for Minecraft. Get it at [http://www.minecraftforum.net/topic/123409-v173-wdmods-creepers-sneak-and-chat/ minecraftforums.net]. [http://www.mediafire.com/?wqp6ehh65buj78 Direct download for 1.1] [http://www.minecraftforum.net/topic/123409-v181-wdmods-creepers-sneak-and-chat/page__view__findpost__p__13257785 1.2] | |||
Here are some cool tips you should definitely try out. | |||
==Long messages== | |||
IC automatically splits long messages, but for / commands, such a private messages, you would need to type the command as a prefix for each line. IC lets you do that automattically like this: | IC automatically splits long messages, but for / commands, such a private messages, you would need to type the command as a prefix for each line. IC lets you do that automattically like this: | ||
Line 13: | Line 9: | ||
~(/msg Skuld )very long message | ~(/msg Skuld )very long message | ||
==Quick Reply== | |||
IC can store text from specific chat messages into memory. You have to tell it how to select information of interest with a regular expression. IC happens to use [http://download.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html java regular expressions]. However, IC's use of regexp is rather sloppy, so you might not be able to fine-tune your regular expressions as much as you'd wish. Everything the pattern matches is stored, even if you set capturing groups, so you have to use zero-width lookahead/lookbehind constructs to check for the right context. Thankfully, these groups can be of variable length. | IC can store text from specific chat messages into memory. You have to tell it how to select information of interest with a regular expression. IC happens to use [http://download.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html java regular expressions]. However, IC's use of regexp is rather sloppy, so you might not be able to fine-tune your regular expressions as much as you'd wish. Everything the pattern matches is stored, even if you set capturing groups, so you have to use zero-width lookahead/lookbehind constructs to check for the right context. Thankfully, these groups can be of variable length. | ||
Incomming messages look like this: | Incomming messages look like this: | ||
Line 40: | Line 34: | ||
* <code>\</code> tells IC to keep the chat prompt open (so you can type your message) | * <code>\</code> tells IC to keep the chat prompt open (so you can type your message) | ||
==Highlighting == | |||
You can hilight your nick or other text. IC's <code>input</code> command lets you browse over inbound text and replace it. | |||
IC's <code>input</code> command lets you browse over inbound text and replace it. | |||
~input pattern replacement | ~input pattern replacement | ||
Line 52: | Line 45: | ||
~input \bepsy\b &c9epsy/&c | ~input \bepsy\b &c9epsy/&c | ||
Other good thing to highlight is server restart message. | |||
~input \bRESTART\b &cfRESTART/&c | |||
==Command shortcuts / autocorrector== | |||
<code>output</code>, in the same way as input, changes the messages you send out. You can use it to make your own short commands. | <code>output</code>, in the same way as input, changes the messages you send out. You can use it to make your own short commands. | ||
Line 68: | Line 65: | ||
~output ^/claum /claim | ~output ^/claum /claim | ||
== | == Private Message Notification Using Tabs== | ||
# Make a new tab called PM (or whatever): ~tab PM | |||
# Set up a track to send PMs to your PM tab: ~track me\] | |||
# Set tab name to blink on new message: ~blink on | |||
# Use ctrl+tab to switch between tabs. (ctrl+atl+tab for Mac) Switching to your PM tab and hitting T will clear the blinking notification. | |||
Note: In step 2, the \ is used because ] is a special character. “me]” appears in every incoming PM on the PvE server currently, so that’s why we use it in this case. This could be different on different servers, so add new ~track commands accordingly. Note this is case-sensitive iirc. | |||
==Moderator stuff == | |||
===Quick clear inventory/banned items=== | ===Quick clear inventory/banned items=== | ||
Line 87: | Line 93: | ||
<code>/cb</code> clears banned items from the player's inventory, and <code>/ci</code> clears all items. You may remove the <code>\</code> if you wish, but I like having to confirm the action, in case I accidentally press one of those keys. | <code>/cb</code> clears banned items from the player's inventory, and <code>/ci</code> clears all items. You may remove the <code>\</code> if you wish, but I like having to confirm the action, in case I accidentally press one of those keys. | ||
===Quick /lookup=== | |||
Runs /lookup on the last "x has 1 ban and 3 notes." message. | |||
~var tolookup ^[^ ]+(?= has ([0-9] bans?)?( and )?([0-9] notes?)?.$) | |||
~bind l /lookup $tolookup | |||
===CAPSLOCK KICKER=== | |||
This will save the nickname of the last person whose chat line <strike>is it anyway?</strike> contains only capital letters and non-letters. (The regexp is adjusted to only match 3 capital letters or more.) | |||
~var allcapser (?<=<)[^>]+(?=> ([^A-Za-z]*[A-Z][^A-Za-z]*){3,}$) | |||
Bind it just like other vars. | |||
~bind z /kick '$allcapser'\ | |||
===Who recently griefed?=== | ===Who recently griefed?=== | ||
Line 100: | Line 121: | ||
I strongly suggest you to read <code>/lb params</code>, as you can use each and every of these in both lookup mode(<code>/lb <all your params></code>), rollback mode(<code>/lb rollback <all your params></code>) and redo mode(<code>/lb redo <all your params></code>). But ''please, please, please'', use them safely. Use <code>area</code> or <code>selection</code> when you can. | I strongly suggest you to read <code>/lb params</code>, as you can use each and every of these in both lookup mode(<code>/lb <all your params></code>), rollback mode(<code>/lb rollback <all your params></code>) and redo mode(<code>/lb redo <all your params></code>). But ''please, please, please'', use them safely. Use <code>area</code> or <code>selection</code> when you can. | ||
==Example IC configs== | ==Example IC configs== | ||
Line 107: | Line 127: | ||
* forty_two's: http://forty-two.nu/minecraft/ImprovedChat.xml | * forty_two's: http://forty-two.nu/minecraft/ImprovedChat.xml | ||
[[Category:Help]] |
Latest revision as of 15:37, 18 May 2012
Improved Chat (abbreviated IC) is an essential mod for Minecraft. Get it at minecraftforums.net. Direct download for 1.1 1.2
Here are some cool tips you should definitely try out.
Long messages
IC automatically splits long messages, but for / commands, such a private messages, you would need to type the command as a prefix for each line. IC lets you do that automattically like this:
~(/msg Skuld )very long message
Quick Reply
IC can store text from specific chat messages into memory. You have to tell it how to select information of interest with a regular expression. IC happens to use java regular expressions. However, IC's use of regexp is rather sloppy, so you might not be able to fine-tune your regular expressions as much as you'd wish. Everything the pattern matches is stored, even if you set capturing groups, so you have to use zero-width lookahead/lookbehind constructs to check for the right context. Thankfully, these groups can be of variable length.
Incomming messages look like this:
[epsy->Me] Hello!
So, to store "epsy", we have to do this:
~var messager (?<=^\[)[^ -]+(?=->Me\])
Now, the variable messager
will be set to whoever last messaged
you. To have a key let you message that person, use the bind command:
~bind r ~(/msg '$messager' )\
Explanation:
r
is the key to bind~(...)
is for long messages/msg
is the Private Message command$messager
is replaced with the contents of themessager
variable. Quoting it makes the substitution happen as you press the bind, instead of just before the message is sent to the server\
tells IC to keep the chat prompt open (so you can type your message)
Highlighting
You can hilight your nick or other text. IC's input
command lets you browse over inbound text and replace it.
~input pattern replacement
Note the two spaces.
Simply match your own nickname as a word(that's what \b
does) and replace it with your nickname with a color. Here's mine in blue, it really sticks out and I feel important when chatting.
~input \bepsy\b &c9epsy/&c
Other good thing to highlight is server restart message.
~input \bRESTART\b &cfRESTART/&c
Command shortcuts / autocorrector
output
, in the same way as input, changes the messages you send out. You can use it to make your own short commands.
~output (^/e$) /empty -all
This will make /e
run /empty -all
.
~output (^/l ) /lookup
Don't forget to leave a space at the end of the line in case the command needs an argument
You can also use it to fix your most common spelling mistakes.
~output ^/claum /claim
Private Message Notification Using Tabs
- Make a new tab called PM (or whatever): ~tab PM
- Set up a track to send PMs to your PM tab: ~track me\]
- Set tab name to blink on new message: ~blink on
- Use ctrl+tab to switch between tabs. (ctrl+atl+tab for Mac) Switching to your PM tab and hitting T will clear the blinking notification.
Note: In step 2, the \ is used because ] is a special character. “me]” appears in every incoming PM on the PvE server currently, so that’s why we use it in this case. This could be different on different servers, so add new ~track commands accordingly. Note this is case-sensitive iirc.
Moderator stuff
Quick clear inventory/banned items
Using the var
command, you can select the last person who has triggered a WorldGuard warning:
WG: Creeper (place) TNT (#46).
This gives
~var placer (?<=WG: )[^ ]+(?= \()
and
~bind b /cb '$placer'\ ~bind c /ci '$placer'\
/cb
clears banned items from the player's inventory, and /ci
clears all items. You may remove the \
if you wish, but I like having to confirm the action, in case I accidentally press one of those keys.
Quick /lookup
Runs /lookup on the last "x has 1 ban and 3 notes." message.
~var tolookup ^[^ ]+(?= has ([0-9] bans?)?( and )?([0-9] notes?)?.$) ~bind l /lookup $tolookup
CAPSLOCK KICKER
This will save the nickname of the last person whose chat line is it anyway? contains only capital letters and non-letters. (The regexp is adjusted to only match 3 capital letters or more.)
~var allcapser (?<=<)[^>]+(?=> ([^A-Za-z]*[A-Z][^A-Za-z]*){3,}$)
Bind it just like other vars.
~bind z /kick '$allcapser'\
Who recently griefed?
You can use LogBlock to check who recently placed a lot of obsidian. For instance:
/lb block 49 since 5h sum players
block 49
filters results to obsidian blockssince 5h
filters by timesum players
prints the result as a summarized list of players instead of a long list of each block place event
I strongly suggest you to read /lb params
, as you can use each and every of these in both lookup mode(/lb <all your params>
), rollback mode(/lb rollback <all your params>
) and redo mode(/lb redo <all your params>
). But please, please, please, use them safely. Use area
or selection
when you can.
Example IC configs
You can list your full config here, but it would be way nicer if you can add individual tips to the above sections!
- forty_two's: http://forty-two.nu/minecraft/ImprovedChat.xml