[1.6.4] EiraIRC - Fancy IRC & Twitch Connector Mod

  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord

blay09

New Member
Jul 29, 2019
34
0
0
EiraIRC - a fancy IRC & Twitch Chat Connector Mod
irc.png


Brought to you straight from the highly popular EiraCraft server...
This is an IRC connector that works on both client and server independently. It also adds some neat features like name colors, aliases and supports private IRC messages as well as Twitch chat.
Note that this is a mod that has just been released – there might be occasions where things don’t work as intended and there might be some hidden crashes left, however, there should be no worldbreaking things as this mod does not touch any of those areas.

Download & Source Code
Download links are now located over at Minecraft Forum for convenience.

Source Code on Github
You don’t need this if you just want to use the mod.

Installation Instructions
  1. Download the recommended Minecraft Forge for your Minecraft version.
  2. Download the latest EiraIRC version for your Minecraft version.
  3. For Minecraft verison 1.5.2, put it in the coremods folder. For 1.6.2+, there is no coremods folder anymore – put it in mods instead.
  4. Start the game and read the section below to learn how to setup the IRC conneciton.
Features
  • Connect your client or a whole server to one or multiple IRC servers and channels.
  • Easily share screenshots with other players or users on IRC!
  • Notify fellow players if you start recording or livestreaming by the push of a button.
  • Extras like name colors, aliases, link filter!
  • IRC Bot Commands, for example to find out who is online ingame
  • /irc who command to find out who is in the IRC channel
  • Private Message Support (both IRC -> Minecraft and vice versa, has to be enabled in the config)
  • NickServ Support (the Q-bot of irc.quakenet.org will also work)
  • Relays join/leave/death messages to IRC, all configurable (even on a channel-wide basis)
  • Ingame Config using the /[serc]irc config command or the GUI
  • Customize the way messages are displayed!
  • Easy twitch support using the Twitch Chat GUI (on servers using the /servirc twitch command)
How does it work?
  • I want to connect my client to IRC
    If you want it quick and simple, just type /irc connect <server> and then /irc join <channel>. Alternatively, you can press the IRC Settings key (default: “i”) and add a new connection in the server list.

  • I want to connect my server to IRC
    For this matter, there is no GUI, you’re forced to use the command variants. In order to connect the server, you need to use the /servirc command rather than the /irc command. The procedure and syntax remains the same though.

  • I want to use NickServ on my client
    If you want to use NickServ on a client, you’re bound to use the GUI you can access with the IRC Settings key (default: “i”). Select the server in the server list and enter the credentials into the nickserv fields. Unlike when typing it in as a command, the password field will not show your password in plain-text.

  • I want to use NickServ on my server
    The GUI only works for the client, so you’re bound to use commands again. /servirc nickserv <username> <password> will identify the bot with nickserv. If you want the server to save those credentials (in plain-text in the config file), you will need to set the config option for that to true:
    /servirc config irc.esper.net saveCredentials true
  • I want to connect my client to my Twitch’s channel chat
    For this, you also have to use the GUI (default: “i”). Choose “Twitch” and enter your Twitch username and oauth key.
    Note that they will be stored in plaintext in the config file if you choose to turn “Save Credentials” on, so don’t do this on public computers. It will automatically create a connection to Twitch’s IRC and join your channel.
  • I want to change config option XYZ
    For the client, you can either use the GUI or the /irc config command. For servers, you need to use the /servirc config command. Alternatively, you can edit the config file directly (which is needed for some options), which will require a restart.
  • What other commands are there?
    Find out yourself! Type in /irc to see what commands are available. With /irc help you can get more indepth information on a certain topic. For most users, the commands I provided in this topic will be enough though.
On clients, you can also easily switch between who you want to chat to by pressing the TAB key when connected to IRC. This works on basic levels such as “All, IRC only, Minecraft only”, but if you hold SHIFT you can also switch between channels and even users you had a private chat with this session.

The Bot
This mod will use a bot to connect to IRC and join the channels you setup. Even on servers it will only create one connection, rather than having one for each user, which makes it safe to use on servers like irc.esper.net. You should still read up about the guidelines for IRC bots on your server to see if this bot is compatible with their rules.
If the bot is coming from a server, it will have some IRC commands available:

HELP – Prints Command List
WHO – Prints out a list of all players online
ALIAS – Look up the username of an online player by his alias
MSG – Send a private message to an online player
OP - Performs an op-command on the server (if authenticated)

Or, when used directly in a channel:

!help - Prints out this list
!who - Prints out a list of all players online
!op - Performs an op-command on the server (if authenticated)

If it is a clientside bot, it will simply transfer direct messages as private chat, if enabled.

Future Plans
  • Friends List - notify when user logs on IRC, restrict private messages to friends only, keep him in chat target list
  • Ignore List - ignore messages from a certain user
  • Nick Linking & Completion (@blay09, Bla...[+y09])
  • Split Chat into Tabs (All, Minecraft, #ExampleChannel, ExampleUser)
  • List IRC users on player list if SHIFT is held
  • Server-side config GUI
  • You would like to see something added? Contact me.
License

This mod along with it’s sourcecode is licensed under the CC BY-NC-ND 3.0 license.
Read this to learn what you may and may not do with it.
 
Last edited:
  • Like
Reactions: russjr08

blay09

New Member
Jul 29, 2019
34
0
0
Released a hotfix that fixes the crash that happened when opening the chat with the latest Forge versions, Minecraft 1.6.2. only. You don't need to download this if you're using the currently Recommended Forge.

@draeath: As of now, I don't have any plans to include a XMPP bridge. For now I'd like to concentrate on making the IRC & Twitch part better (-> work through the TODO-list at "Future Plans").
I might consider porting this mod to more chat protocols in the far future, when I run out of other things to do.
 

maxlowry123

New Member
Jul 29, 2019
11
0
0
I just tried putting this on my server and all it says in the log file is:
[SEVERE] [ForgeModLoader] The coremod EiraIRC-latest-1.5.2.jar does not contain a valid jar manifest- it will be ignored
Here is the first part of the log file (whole thing to big for pastebin): http://pastebin.com/EXqvHa2F
Error above is on line 31.
 

blay09

New Member
Jul 29, 2019
34
0
0
Whoops. Released a hotfix for Minecraft 1.5.2 that fixes the above. Thanks for reporting!
 

blay09

New Member
Jul 29, 2019
34
0
0
Updated to 1.6.4 and fixed recent Twitch connection issues (on all three supported Minecraft versions) and some other minor bugs.
Twitch users should read the big red message at the top of the minecraft forum topic.
 

Lathanael

New Member
Jul 29, 2019
959
0
0
First of all, nice work. The IRC client works well and handles most things as expected.
Future Plans
  • InterOP commands – perform Minecraft OP commands using the bot and vice-versa
I'd really like to see this implemented soon as i think it is a neat feature to monitor the server without having to open a console all the time.

Future Plans
  • You would like to see something added? Contact me.

Maybe the possibility to join password/keyword protected channels. I have tried it several times today and it did not work. Is this even possible atm?
 

blay09

New Member
Jul 29, 2019
34
0
0
Glad to hear someone's still interested in this mod. I'm currently working on an update that will contain a few of the features people requested, including the ability to join password-protected channels.
InterOP will be coming after that. Wouldn't want to release such a powerful feature without proper thinking-through and testing ;)
 

blay09

New Member
Jul 29, 2019
34
0
0
I just released a new version of EiraIRC, both for Minecraft versions 1.5.2 and 1.6.4.
This update adds some things people requested, fixes lots of bugs (especially in the 1.6.x versions)
and has quite a bit of rewriting and improving on the inside to prepare for further updates.
No 1.6.2 version this time. If you're still on 1.6.2...the 1.6.4 version will work on servers, but because of the
coremod the client requires, it won't run there. I am looking into solutions to make the coremod optional or get
rid of it entirely, but that probably won't happen until after the InterOP update.

Here's most of the additions/changes for EiraIRC v1.4.0:
Code:
- [Added] It is now possible to join keyword protected channels
- [Added] registerShortCommands config option, registers commands like /join, /leave, /nick, ...
- [Added] persistentConnection config option, if true will keep the IRC connection up even when leaving a world
- [Added] relayNickChanges config option, will determine whether nick changes on IRC / MC will be shown
- [Added] enableLinkFilter config option, still has some quirks but works for the most part
- [Added] Proper channel config, removed old flag system.
- [Added] autoWho config option (channel-wide), will automatically perform /irc who or !who when joining
- [Added] Topic of channel is now displayed when joining Minecraft
- [Added] Channel List GUI, Channel Config GUI
- [Added] Proper death message handling
- [Added] Message display modes (config option displayMode), choose one of the defaults or add a custom one in the config file
- [Added] emoteColor config option, will color emotes (/me)
- [Changed] Command Syntax for when you're connected to multiple servers: [server/]<channel> (ex. irc.esper.net/#EiraCraft)
- [Changed] Improved the readability of the /irc usage message
- [Changed] Changed default key for ToggleChatTarget to F4 as it was conflicting with the player list on TAB
- [Changed] The config format changed. For this, config files had to be reset.
- [Changed] Lots of other things that kinda improve everything.
- [Fixed] Many bugs, can't list them all here.

As of now, this is going to be the last update for the 1.5.2 version of EiraIRC.
Further updates will be exclusive to 1.6.4.
Even though there's not much difference between the versions due to the simple nature of the mod,
it's still a hassle to switch between versions and backport/forwardport bugfixes.
I'd rather spend that time on making awesome things.

Download links are in the opening post over at Minecraft forums.
Next big update should be the InterOP one, including a friends and ignore list and some other cool things.
 

blay09

New Member
Jul 29, 2019
34
0
0
I just released EiraIRC v1.5.0 for Minecraft 1.6.4 only.

Note that I decided to label all my releases BETA from now on.
I don't have enough time to spend on doing intense testing, especially with the ever-growing functionality.
Things are settling down slowly as I'm fixing inconsistencies in IRC protocols and stuff, but there might still be things going wrong. If you encounter bugs, please take the time to report them, either in this topic, on GitHub or on my CurseForge page.

This update adds the long-awaited InterOp-feature that will allow you to run op-commands on a server (if authenticated with NickServ and added in interOpAuthList in the config) or run IRC-channelop-commands if the bot is opped in the specific channel.

It also adds the new screenshot feature: You can set EiraIRC up to automatically upload screenshots when you take them, and share them or copy them to your clipboard. Right now it can only uploadto directupload.net, but more hosters (+ custom FTP support) is planned.

Finally, for you Youtubers and Livestreamers out there, you can set up a hotkey to send a persistent notification to your fellow players when you start recording or streaming.

The full changelog can be found on the CurseForge download page.
The link to that is in the opening post as always.
The files are now hosted on CurseForge only.


Updates there will be delayed a bit since they have to be verified first, but it seems to still work with the direct link from the topic.

1.5.2 users: Download counts for the 1.5.2 version have decreased to the point where I am dropping support for it. Mods are updated to 1.6.4 now and it's time to move on.

A version for Minecraft 1.7.x will be coming once Minecraft Forge is out of Alpha and when other mods start updating.