Originally made by Devicenull, then updated by twistedeuphoria and bloodmist, and now managed by yours truly and Feffe.
Changelog:
Version 2.4
-Added @chat/@csay/@tsay/@psay commands
Version 2.3
-Added more triggers for irc_from_hlds_say
Version 2.2
-Added amxbans integration
Version 2.1
-Added the amx_ban feature
-Added bolds to usernames from HLDS
Version 2.0
-Taken over by chowdown
Version 1.5 and below changelog can be found
Here
Documentation:
- Step 1: Download the .amxx file (Named irc.amxx)
- Step 2: Add the plugin to your /addons/amxmodx/plugins folder and to your plugins.ini in /addons/amxmodx/configs folder.
- Step 3: Configure your IRC bot by putting these cvars (Look below this) in your amxx.cfg
irc_server ("irc_network_address") The IRC server's address to connect to (For example; "irc.gamesurge.net")
irc_port ("port_here") - The irc server's port (normally 6667-666
irc_nick ("your_bot_nick_here") The nickname the bot will use on IRC (For example; "GamingDust2")
irc_username (normally "server_name_here") Name that shows when someone /whois or ucentral's you (For instance, mine is Paul Stan)
irc_channel ("#your_chan_here") Channel to join
irc_identify (normally "0") If you have a nickserv/auth account, set this to "1"
irc_ident (default "") - See info below
irc_map_change (normally "1) Display Server name, ip, map and players connected on map change and server start.
irc_show_joins (normally "1) Show a message when someone joins the server
irc_to_hlds_say_auto (normally "1") To be able to communicate from IRC to the server
irc_from_hlds_say_auto (normally "1") To be able to communicate from the server to IRC
irc_to_hlds_say_activator (normally @hlds)
irc_from_hlds_say_auto has to be 0
irc_from_hlds_say_activator (normally !irc)
irc_to_hlds_say_auto has to be 0
irc_from_hlds_say_activator2 (same thinig as above, but adding an option for more activators)
irc_from_hlds_say_activator3 (See above)
irc_from_hlds_say_activator4 (See above)
irc_amxbans (normally 1 if you have amxbans, 0 if you do not)
-------------------------------------------------------------------------------------
Custom Cvars (If you want to change something in the bot's special configuration, these are the cvars you can put in your amxx.cfg)
irc_msg_srvjoin (normally "$name ($steamid) has joined the server") Server player join message
irc_msg_srvpart (normally "$name ($steamid) has left the server") When someone leaves the server it says this.
irc_msg_srvsay (normally "$name : $message") Ingame user's chat is formatted with this cvar.
irc_msg_srvteamsay (normally "($team) $name : $message") Team_say chat format from ingame.
irc_msg_ircsay (normally "*IRC* $name : $message") The format that a player ingame sees IRC messages directed at HLDS.
irc_msg_startup (normally "$servername - $ip Current Map: $map $curplayers / $maxplayers players") Format for the join message and map change message said by the bot.
Note: All $name variables are bolded and so is the $servername due to request. To get a custom colored bot, please contact me via pm, or through IRC, and I will edit the plugin for you.
Variables you can use for irc_msg_serv(join/part/teamsay/say)
* $name - Person's name
* $steamid - Person's steamid
* $team - Person's team
* $teamn - Person's team number
* $message - What they said
* $connected - How long they have been connected
* $access - Persons access
Variables you can use for irc* (except irc_msg_startup)
* $name - Persons name
* $message - Message
Variables you can use for irc_msg_startup
* $servername - Name of the server
* $ip - IP of the server
* $map - Name of the current map
* $curplayers - Current number of players on the server
* $maxplayers - Maximum players allowed on server
-------------------------------------------------------------------------------------
Bot Commands
Commands to use via console when working with the bot:
irc connect - Connect to irc
irc disconnect - Disc from irc
irc say - Send message to irc
irc help - Get help
Commands to use in IRC when the bot is running:
-map (for current map)
-nextmap (for the next map)
-timeleft (for time left)
-ip (for the server ip)
-users (Displays nicknames of people currently playing on the server)
-login <username> <password> (Log into admin)
-logout (Log out of admin)
Admin Commands:
amx_cfg (config file)
amx_kick
amx_ban
amx_slap
amx_slay
amx_rcon (command line; for example amx_rcon restart)
@csay "color" "info"
@tsay "color" "info"
@chat (admin chat)
@psay "username"
Amxbans only:
amx_banid "authid"
amx_ban (if irc_amxbans = 1 then use amxbans format)
amx_tempban "time" "authid" "reason"
How to add admins:
Edit your ircadmins.ini (which has been created in /addons/amxmodx/configs)
Make sure to put it in this format:
"username" "password" "flags" "unique id"
*Flags should be the same as users.ini or your amxbans admins config
*Unique ID = SteamID
How to authenticate with gamesurge/quakenet:
In irc_ident put "authserv auth [account] [password]"
Of course this may not work if you have already used it on a different IP, so make sure you don't use it or go ahead and register a new authserv account. I have not yet added the authcookie fix feature.
Ingame commands for IRC menu:
/irc
amx_ircmenu
Note: It was requested that we make this plugin report hackers when someone said /hax (uniqueID or nickname. All you have to do is set the hlds_to_irc_say_activator to "/hax" and it will only report things when people say that ingame.
IMPORTANT: If your bot does not connect to the network, and you are sure you have all the settings right (Should work as long as you have the default cvars in amxx.cfg), it means that your host is blocking the ports. This is common among gameserver providers now (More likely on the datacenter's end). I am creating a service where you can use a proxy to connect to the network, which will virtually fix this problem. It will not be free as I cannot afford 99999 of these things, but it will be very cheap. I am in no way selling this plugin, and if this is a problem please contact me and I will edit this post. This is the only solution as of now to use your irc.amxx if your ports are blocked. Contact me in #logbots or pm me if you have questions. Otherwise, have fun
Again if you want custom colors please contact me and I will edit the plugin for you.
IMPORTANT: You must have the "sockets" module enabled.