animosity / craftirc Goto Github PK
View Code? Open in Web Editor NEWA Minecraft <-> IRC bot interface powered by Bukkit
Home Page: http://forums.bukkit.org/threads/craftirc.253/
A Minecraft <-> IRC bot interface powered by Bukkit
Home Page: http://forums.bukkit.org/threads/craftirc.253/
how do i forward ALL chat messages from minecraft to craftirc in 2.X??????????????????
Could you add in an option to set CraftIRC to look at the persons nickname set by the Essentials /nick command?
bright yellow on white (irc defaults since it's unspecified when a color code is sent) doesn't look great. Use 00,00 format? (Preferably (groupcolor),01 as I think that's black background or make it a tuneable?)
My plugin CraftIRC doesn't try to connect to my Esper channel since last night, yet it used to work and still works on my other server. This happend on my last server a few months ago, and now it's back.
--------------Heres all my information-------------
I suggest that, as long as the channel the bot will connect to is still set as #changeme, CraftIRC does not try to connect to the IRC network. Due to the amount of people who connect without editing their config Esper has set up an automated 60-minute k-line for joining #changeme. Now if you accidentally start up a server with an unedited CraftIRC config the ban you then have to sit out is kind of annoying.
CraftIRC only recognises messages sent to the channel with the same capitlization in config. For example, if the channel is set as #Channel in config.yml, anyones client who is sending to #channel will be ignored and not have their chat displayed ingame.
Buildfile: /home/diskmaster/minecraft-dev/CraftIRC/build.xml
compile:
[javac] Compiling 18 source files to /home/diskmaster/minecraft-dev/CraftIRC/build/classes
[javac] /home/diskmaster/minecraft-dev/CraftIRC/Minebot.java:263: warning: unmappable character for encoding UTF8
[javac] String[] splitPlayerColorPrefix = player.getColor().split("�");
[javac] ^
[javac] /home/diskmaster/minecraft-dev/CraftIRC/Minebot.java:265: warning: unmappable character for encoding UTF8
[javac] playerColorPrefix += Character.toString((char) 3) + this.getIRCColor("�" + splitPlayerColorPrefix[i].substring(0,1));
[javac] ^
[javac] Note: /home/diskmaster/minecraft-dev/CraftIRC/Minebot.java uses or overrides a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 2 warnings
Easy fix, oddly enough, though untested on my end.
my chat colour plugin uses &[number] like
&9
http://www.minecraftwiki.net/wiki/Classic_Server_Protocol#Color_Codes same colours from here
could it work for &x codes to be translated to irc?
When a spammer hits in-game, our mods are usually able to take care of it within a few seconds. The problem is that now CraftIRC has 3,000 messages backlogged and it'll faithfully spit them out at your configured rate-limit delay until it's caught up, making IRC totally unusable until it either runs out of messages after a half hour or somebody reloads the whole server.
I think the solutions to this would be one of:
When using a "" in the middle of a sentence, it is removed and ignored, but if you put it at the end of a sentence, it spews this error message:
2011-03-03 13:31:03 [SEVERE] java.lang.StringIndexOutOfBoundsException: String index out of range: 63
2011-03-03 13:31:03 [SEVERE] at java.lang.String.charAt(String.java:686)
2011-03-03 13:31:03 [SEVERE] at java.util.regex.Matcher.appendReplacement(Matcher.java:703)
2011-03-03 13:31:03 [SEVERE] at java.util.regex.Matcher.replaceAll(Matcher.java:813)
2011-03-03 13:31:03 [SEVERE] at java.lang.String.replaceAll(String.java:2189)
2011-03-03 13:31:03 [SEVERE] at com.ensifera.animosity.craftirc.RelayedMessage.asString(Unknown Source)
2011-03-03 13:31:03 [SEVERE] at com.ensifera.animosity.craftirc.RelayedMessage.asString(Unknown Source)
2011-03-03 13:31:03 [SEVERE] at com.ensifera.animosity.craftirc.CraftIRC.sendMessage(Unknown Source)
2011-03-03 13:31:03 [SEVERE] at com.ensifera.animosity.craftirc.CraftIRCListener.onPlayerChat(Unknown Source)
2011-03-03 13:31:03 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader$7.execute(JavaPluginLoader.java:160)
2011-03-03 13:31:03 [SEVERE] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
2011-03-03 13:31:03 [SEVERE] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:225)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:607)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:595)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.Packet3Chat.a(SourceFile:24)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.NetworkManager.a(SourceFile:230)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:70)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:338)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:253)
2011-03-03 13:31:03 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
2011-03-03 13:31:03 [INFO] Volumknappen: er ikke lag, det er en bug som skjer til tider :\
I've created a small patch to add a %group% formatter for Game-to-IRC
See it here
It compiles and works
Is it possible to disable the private notice that the bot sends when you use .c to execute a console command? For me that opens up a new private message window, which is a bit annoying; I'd prefer either a channel notice or nothing at all.
When the server exits and the plugin gets disabled the bot doesn't properly close down its connections to the server, instead leaving them is TIME_WAIT, which causes problems with jail environments at it prevents the clean shutdown due to hanging socket resources.
On disable the blot should close their connections cleanly to prevent this issue.
could you feed the DynMap web-chat to IRC?
http://forums.bukkit.org/threads/misc-dynmap-v0-19-2-realtime-minecraft-maps-953.489/
users in game flood causing bot to crash or be dropped from the irc server, anti-spam plugins seem to have no effect when using CraftIRC + HeroChat
example of log when a user is spamming * these are automated flood spams, 1000's of msgs per second.
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [INFO] CraftIRC - Connecting to --snip--
2011-07-22 17:56:43 [INFO] CraftIRC - Connecting to --snip--
2011-07-22 17:56:43 [INFO] CraftIRC - Connecting to --snip--
2011-07-22 17:56:43 [INFO] CraftIRC - Connected
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [INFO] CraftIRC - Connecting to --snip--
2011-07-22 17:56:43 [INFO] CraftIRC - Connected
2011-07-22 17:56:43 [INFO] CraftIRC - disconnected from IRC server... reconnecting!
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [SEVERE] java.io.IOException: The PircBot is already connected to an IRC server. Disconnect first.
2011-07-22 17:56:43 [SEVERE] at org.jibble.pircbot.PircBot.connect(PircBot.java:232)
2011-07-22 17:56:43 [SEVERE] at org.jibble.pircbot.PircBot.connect(PircBot.java:202)
2011-07-22 17:56:43 [SEVERE] at com.ensifera.animosity.craftirc.Minebot.start(Minebot.java:107)
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
2011-07-22 17:56:43 [INFO] CraftIRC v2.0 Preview 11 loading.
I would like to have a code (Like %ircRank%) to show the IRC Ranks (~/&/@/%/+) in-game.
Thanks,
TTSDA
Game colors work fine in game, and from IRC -> game, but do not get sent from game -> IRC.
user group colours are not being reflected in the irc chat. Everyones name appears as default black text.
2011-08-10 07:25:17 [SEVERE] Could not load 'plugins/CraftIRC.jar' in folder 'plugins':
unacceptable character #FFFD special characters are not allowed
in "", position 1286
at org.yaml.snakeyaml.reader.StreamReader.checkPrintable(StreamReader.java:68)
at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:159)
at org.yaml.snakeyaml.reader.StreamReader.forward(StreamReader.java:89)
at org.yaml.snakeyaml.reader.StreamReader.forward(StreamReader.java:79)
at org.yaml.snakeyaml.scanner.ScannerImpl.scanToNextToken(ScannerImpl.java:974)
at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:237)
at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:183)
at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingValue.produce(ParserImpl.java:592)
at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:163)
at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:148)
at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:132)
at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:122)
at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)
at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:124)
at org.yaml.snakeyaml.Yaml.load(Yaml.java:264)
at org.bukkit.util.config.Configuration.load(Configuration.java:82)
at org.bukkit.plugin.java.JavaPlugin.initialize(JavaPlugin.java:157)
at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:175)
at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:207)
at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:130)
at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:128)
at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:378)
at org.bukkit.command.SimpleCommandMap$ReloadCommand.execute(SimpleCommandMap.java:281)
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:320)
at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:713)
at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:677)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:670)
at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
Hello there,
This is an issue that I've been experiencing ever since I've started using this plugin D:
For some reason, when you type a message into the channel, it will come up twice in-game. The only way around this is to do:
.say [Message]
But that is highly inconvenient and it would be really helpful if it just worked normally :P
Could you please help me and highlight what the issue is? I'm really lost!
Cheers
Everyone has been reporting getting double messages from the irc channel to in-game. I do not have any other chat plugins affecting chat, so what is the problem?
I have used a clean 3.0 config, and enabled appropriate paths. If the bot is used on EFNet all of the IRC <-> game events work as expected, no problem here. Using it on irc.paradoxirc.net, the bot ONLY sends the IRC quit msg to the game. It does not respond to any .cmd from a channel or relay any text to the game, joins and parts are not shown. Text from the game is properly sent to IRC however. Turning on debug shows the PRIVMSG from IRC. The config file has just one network defined(I only want it on one). The only parameter changed is the server.
Console:
>say test
22:01:40 [WARNING] Unexpected exception while parsing console command
org.bukkit.command.CommandException: Unhandled exception executing command 'say' in plugin CommandBook v247-af5911a
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:165)
at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:378)
at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:374)
at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:564)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:541)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
Caused by: java.lang.NullPointerException
at com.sk89q.commandbook.CommandBookPlugin.onCommand(CommandBookPlugin.java:268)
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
... 7 more
Version:
Running Craftbukkit version git-Bukkit-1.0.1-R1-b1597jnks (MC: 1.0.1) (Implementing API version 1.0.1-R1)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.