Changeset 39 for trunk/src

Show
Ignore:
Timestamp:
11/19/08 13:26:44 (17 years ago)
Author:
yumileroy
Message:

[svn] * Various small changes here and there.
* Implementing MangChat? IRC system.
* Added new config option, MAX_WHO, can be used to set the limit of characters being sent in a /who request from client.

Original author: XTZGZoReX
Date: 2008-10-12 14:03:38-05:00

Location:
trunk/src
Files:
15 added
20 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/game/AuctionHouse.cpp

    r2 r39  
    2727#include "AuctionHouseObject.h" 
    2828#include "Util.h" 
     29#include "IRCClient.h" 
    2930 
    3031//please DO NOT use iterator++, because it is slower than ++iterator!!! 
     
    313314    pl->SaveInventoryAndGoldToDB(); 
    314315    CharacterDatabase.CommitTransaction(); 
     316 
     317    if((sIRC.BOTMASK & 1024) != 0)  
     318        sIRC.AHFunc(it->GetEntry(), it->GetProto()->Name1, pl->GetName(), location); 
    315319 
    316320    SendAuctionCommandResult(AH->Id, AUCTION_SELL_ITEM, AUCTION_OK); 
  • trunk/src/game/Channel.cpp

    r2 r39  
    2121#include "World.h" 
    2222#include "SocialMgr.h" 
     23#include "IRCClient.h" 
    2324 
    2425Channel::Channel(std::string name, uint32 channel_id) 
     
    113114    SendToOne(&data, p); 
    114115 
     116    sIRC.Handle_WoW_Channel(m_name, objmgr.GetPlayer(p), CHANNEL_JOIN); 
     117 
    115118    JoinNotify(p); 
    116  
    117     // if no owner first logged will become 
    118     if(!IsConstant() && !m_ownerGUID) 
    119     { 
    120         SetOwner(p, (players.size() > 1 ? true : false)); 
    121         players[p].SetModerator(true); 
    122     } 
    123119} 
    124120 
     
    159155 
    160156        LeaveNotify(p); 
     157 
     158        sIRC.Handle_WoW_Channel(m_name, objmgr.GetPlayer(p), CHANNEL_LEAVE); 
    161159 
    162160        if(changeowner) 
  • trunk/src/game/Chat.cpp

    r37 r39  
    457457        { "cometome",       SEC_ADMINISTRATOR,  &ChatHandler::HandleComeToMeCommand,            "", NULL }, 
    458458        { "damage",         SEC_ADMINISTRATOR,  &ChatHandler::HandleDamageCommand,              "", NULL }, 
     459        { "ircpm",          SEC_PLAYER,         &ChatHandler::HandleIRCpmCommand,               "", NULL }, 
    459460        { "combatstop",     SEC_GAMEMASTER,     &ChatHandler::HandleCombatStopCommand,          "", NULL }, 
    460461        { "flusharenapoints",    SEC_ADMINISTRATOR, &ChatHandler::HandleFlushArenaPointsCommand,         "",   NULL }, 
  • trunk/src/game/Chat.h

    r37 r39  
    108108        bool HandleGroupTeleCommand(const char* args); 
    109109        bool HandleDrunkCommand(const char* args); 
     110 
     111        bool HandleIRCpmCommand(const char* args); 
    110112 
    111113        bool HandleEventActiveListCommand(const char* args); 
  • trunk/src/game/ChatHandler.cpp

    r37 r39  
    3535#include "SpellAuras.h" 
    3636#include "Language.h" 
     37#include "IRCClient.h" 
    3738#include "Util.h" 
    3839 
     
    428429                break; 
    429430 
     431            sIRC.Send_WoW_IRC(_player, channel, msg); 
     432 
    430433            if(ChannelMgr* cMgr = channelMgr(_player->GetTeam())) 
    431434            { 
  • trunk/src/game/GameEvent.cpp

    r2 r39  
    2525#include "MapManager.h" 
    2626#include "Policies/SingletonImp.h" 
     27#include "IRCClient.h" 
    2728 
    2829INSTANTIATE_SINGLETON_1(GameEvent); 
     
    422423 
    423424    sLog.outString("GameEvent %u \"%s\" started.", event_id, mGameEvent[event_id].description.c_str()); 
     425 
     426    if((sIRC.BOTMASK & 256) != 0) 
     427    { 
     428        std::string ircchan = "#"; 
     429        ircchan += sIRC._irc_chan[sIRC.anchn].c_str(); 
     430        sIRC.Send_IRC_Channel(ircchan, sIRC.MakeMsg("\00304,08\037/!\\\037\017\00304 Game Event \00304,08\037/!\\\037\017 %s", "%s", mGameEvent[event_id].description.c_str()), true); 
     431    } 
     432 
    424433    // spawn positive event tagget objects 
    425434    GameEventSpawn(event_id); 
  • trunk/src/game/Language.h

    r37 r39  
    641641    LANG_ARENA_TESTING                  = 745, 
    642642 
     643    LANG_AUTO_ANN                       = 746, 
     644 
    643645    // in game strings 
    644646    LANG_PET_INVALID_NAME               = 800, 
  • trunk/src/game/Level1.cpp

    r37 r39  
    3232#include "CellImpl.h" 
    3333#include "InstanceSaveMgr.h" 
     34#include "IRCClient.h" 
    3435#include "Util.h" 
    3536#ifdef _DEBUG_VMAPS 
     
    124125 
    125126    sWorld.SendWorldText(LANG_SYSTEMMESSAGE,args); 
     127 
     128    if((sIRC.BOTMASK & 256) != 0) 
     129    { 
     130        std::string ircchan = "#"; 
     131        ircchan += sIRC._irc_chan[sIRC.anchn].c_str(); 
     132        sIRC.Send_IRC_Channel(ircchan, sIRC.MakeMsg("\00304,08\037/!\\\037\017\00304 System Message \00304,08\037/!\\\037\017 %s", "%s", args), true); 
     133    } 
     134 
    126135    return true; 
    127136} 
     
    139148    data << str; 
    140149    sWorld.SendGlobalMessage(&data); 
     150 
     151    if((sIRC.BOTMASK & 256) != 0) 
     152    { 
     153        std::string ircchan = "#"; 
     154        ircchan += sIRC._irc_chan[sIRC.anchn].c_str(); 
     155        sIRC.Send_IRC_Channel(ircchan, sIRC.MakeMsg("\00304,08\037/!\\\037\017\00304 Global Notify \00304,08\037/!\\\037\017 %s", "%s", args), true); 
     156    } 
    141157 
    142158    return true; 
     
    23492365} 
    23502366 
     2367bool ChatHandler::HandleIRCpmCommand(const char* args) 
     2368{ 
     2369    std::string Msg = args; 
     2370    if (Msg.find(" ") == std::string::npos) 
     2371        return false; 
     2372    std::string To = Msg.substr(0, Msg.find(" ")); 
     2373    Msg = Msg.substr(Msg.find(" ") + 1); 
     2374    std::size_t pos; 
     2375    while((pos = To.find("||")) != std::string::npos) 
     2376    { 
     2377        std::size_t find1 = To.find("||", pos); 
     2378        To.replace(pos, find1 - pos + 2, "|"); 
     2379    }    
     2380        sIRC.SendIRC("PRIVMSG "+To+" : <WoW>["+m_session->GetPlayerName()+"] : " + Msg); 
     2381    //Msg = "|cffCC4ACCTo [" + To + "]: " + Msg + "|r"; 
     2382    sIRC.Send_WoW_Player(m_session->GetPlayer(), "|cffCC4ACCTo ["+To+"]: "+Msg); 
     2383    return true; 
     2384} 
     2385 
    23512386//teleport at coordinates 
    23522387bool ChatHandler::HandleGoZoneXYCommand(const char* args) 
  • trunk/src/game/Makefile.am

    r23 r39  
    142142$(srcdir)/InstanceSaveMgr.cpp \ 
    143143$(srcdir)/InstanceSaveMgr.h \ 
     144$(srcdir)/IRCClient.cpp \ 
     145$(srcdir)/IRCClient.h \ 
     146$(srcdir)/IRCCmd.cpp \ 
     147$(srcdir)/IRCCmd.h \ 
     148$(srcdir)/IRCCmde.cpp \ 
     149$(srcdir)/IRCConf.cpp \ 
     150$(srcdir)/IRCConf.h \ 
     151$(srcdir)/IRCConf.h \ 
     152$(srcdir)/IRCFunc.h \ 
     153$(srcdir)/IRCIO.cpp \ 
     154$(srcdir)/IRCLog.cpp \ 
     155$(srcdir)/IRCLog.h \ 
     156$(srcdir)/IRCSock.cpp \ 
     157$(srcdir)/MCS_OnlinePlayers.cpp \ 
     158$(srcdir)/MCS_OnlinePlayers.h \ 
    144159$(srcdir)/Item.cpp \ 
    145160$(srcdir)/Item.h \ 
  • trunk/src/game/MiscHandler.cpp

    r37 r39  
    255255        data << uint32( pzoneid );                          // player zone id 
    256256 
    257         // 49 is maximum player count sent to client 
    258         if ((++clientcount) == 49) 
     257        // 49 is maximum player count sent to client - can be overriden 
     258        // through config, but is unstable 
     259        if ((++clientcount) == sWorld.getConfig(CONFIG_MAX_WHO)) 
    259260            break; 
    260261    } 
  • trunk/src/game/Player.cpp

    r37 r39  
    5959#include "Spell.h" 
    6060#include "SocialMgr.h" 
     61#include "IRCClient.h" 
    6162 
    6263#include <cmath> 
     
    17171718            m_items[i]->AddToWorld(); 
    17181719    } 
     1720    if(sIRC.ajoin == 1) 
     1721        sIRC.AutoJoinChannel(this); 
    17191722} 
    17201723 
     
    21462149 
    21472150    UpdateAllStats(); 
     2151 
     2152    if((sIRC.BOTMASK & 64) != 0) 
     2153    { 
     2154        char temp [5]; 
     2155        sprintf(temp, "%u", level); 
     2156        std::string plevel = temp; 
     2157        std::string pname = GetName(); 
     2158        std::string ircchan = "#"; 
     2159        ircchan += sIRC._irc_chan[sIRC.Status].c_str(); 
     2160        sIRC.Send_IRC_Channel(ircchan, "\00311["+pname+"] : Has Reached Level: "+plevel, true); 
     2161    } 
    21482162 
    21492163    if(sWorld.getConfig(CONFIG_ALWAYS_MAXSKILL)) // Max weapon skill when leveling up 
  • trunk/src/game/World.cpp

    r37 r39  
    5757#include "WaypointManager.h" 
    5858#include "Util.h" 
     59#include "IRCClient.h" 
     60#include "Language.h" 
    5961 
    6062INSTANTIATE_SINGLETON_1( World ); 
     
    576578    m_configs[CONFIG_CHARACTERS_CREATING_DISABLED] = sConfig.GetIntDefault("CharactersCreatingDisabled", 0); 
    577579 
     580    m_configs[CONFIG_MAX_WHO] = sConfig.GetIntDefault("MaxWhoListReturns", 49); 
     581 
    578582    m_configs[CONFIG_CHARACTERS_PER_REALM] = sConfig.GetIntDefault("CharactersPerRealm", 10); 
    579583    if(m_configs[CONFIG_CHARACTERS_PER_REALM] < 1 || m_configs[CONFIG_CHARACTERS_PER_REALM] > 10) 
     
    11771181    WorldDatabase.PExecute("INSERT INTO uptime (startstring, starttime, uptime) VALUES('%s', %ld, 0)", isoDate, m_startTime ); 
    11781182 
     1183    static uint32 autoanc = 1; 
     1184    autoanc = sIRC.autoanc; 
     1185 
    11791186    m_timers[WUPDATE_OBJECTS].SetInterval(0); 
    11801187    m_timers[WUPDATE_SESSIONS].SetInterval(0); 
     
    11841191                                                            //Update "uptime" table based on configuration entry in minutes. 
    11851192    m_timers[WUPDATE_CORPSES].SetInterval(20*MINUTE*1000);  //erase corpses every 20 minutes 
     1193 
     1194    m_timers[WUPDATE_AUTOANC].SetInterval(autoanc*MINUTE*1000); 
    11861195 
    11871196    //to set mailtimer to return mails every day between 4 and 5 am 
     
    14211430    } 
    14221431 
    1423     /// </ul> 
    1424     ///- Move all creatures with "delayed move" and remove and delete all objects with "delayed remove" 
    1425     MapManager::Instance().DoDelayedMovesAndRemoves(); 
     1432    if (m_timers[WUPDATE_AUTOANC].Passed()) 
     1433    { 
     1434        m_timers[WUPDATE_AUTOANC].Reset(); /// </ul> 
     1435        SendRNDBroadcast(); 
     1436    } 
     1437    MapManager::Instance().DoDelayedMovesAndRemoves(); ///- Move all creatures with "delayed move" and remove and delete all objects with "delayed remove" 
    14261438 
    14271439    // update the instance reset times 
     
    24952507    } 
    24962508    // print the console message here so it looks right 
    2497     p_zprintf("mangos>"); 
     2509    p_zprintf("Trinity Core> "); 
     2510} 
     2511 
     2512void World::SendRNDBroadcast() 
     2513{ 
     2514    std::string msg; 
     2515    QueryResult *result = WorldDatabase.PQuery("SELECT `message` FROM `IRC_AutoAnnounce` ORDER BY RAND() LIMIT 1"); 
     2516    if(!result) 
     2517        return; 
     2518    msg = result->Fetch()[0].GetString(); 
     2519    delete result; 
     2520    std::string str = "|cffff0000[Automatic]:|r"; 
     2521    str += msg; 
     2522    sWorld.SendWorldText(LANG_AUTO_ANN); 
     2523    std::string ircchan = "#"; 
     2524    ircchan += sIRC._irc_chan[sIRC.anchn].c_str(); 
     2525    sIRC.Send_IRC_Channel(ircchan, sIRC.MakeMsg("\00304,08\037/!\\\037\017\00304 Automatic System Message \00304,08\037/!\\\037\017 %s", "%s", msg.c_str()), true); 
    24982526} 
    24992527 
  • trunk/src/game/World.h

    r37 r39  
    6060    WUPDATE_CORPSES     = 5, 
    6161    WUPDATE_EVENTS      = 6, 
    62     WUPDATE_COUNT       = 7 
     62    WUPDATE_COUNT       = 7, 
     63 
     64    WUPDATE_AUTOANC = 7 
     65 
    6366}; 
    6467 
     
    9295    CONFIG_STRICT_PET_NAMES, 
    9396    CONFIG_CHARACTERS_CREATING_DISABLED, 
     97    CONFIG_MAX_WHO, 
    9498    CONFIG_CHARACTERS_PER_ACCOUNT, 
    9599    CONFIG_CHARACTERS_PER_REALM, 
     
    366370        WorldSession* FindSession(uint32 id) const; 
    367371        void AddSession(WorldSession *s); 
     372 
     373        void SendRNDBroadcast(); 
     374 
    368375        bool RemoveSession(uint32 id); 
    369376        /// Get the number of current active sessions 
  • trunk/src/shared/Database/DBCStructure.h

    r37 r39  
    148148                                                            // 4, unused 
    149149    //char*       name[16];                                 // 5-20 unused 
     150    char*       name[16];                                   // 5-20 unused 
    150151                                                            // 21 string flag, unused 
    151152    //char*       string1[16];                              // 21-36 unused 
  • trunk/src/shared/Database/DBCfmt.cpp

    r37 r39  
    2424const char ChatChannelsEntryfmt[]="iixssssssssssssssssxxxxxxxxxxxxxxxxxx"; 
    2525                                                            // ChatChannelsEntryfmt, index not used (more compact store) 
    26 const char ChrClassesEntryfmt[]="nxixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxix"; 
     26//const char ChrClassesEntryfmt[]="nxixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxix"; 
     27const char ChrClassesEntryfmt[]="nxixssssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxix"; 
    2728const char ChrRacesEntryfmt[]="nxixiixxixxxxissssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; 
    2829const char CreatureDisplayInfofmt[]="nxxxfxxxxxxxxx"; 
  • trunk/src/shared/Makefile.am

    r23 r39  
    5454$(srcdir)/WorldPacket.h \ 
    5555$(srcdir)/SystemConfig.h \ 
     56$(srcdir)../game/IRCConf.h \ 
    5657$(srcdir)/Auth/AuthCrypt.cpp \ 
    5758$(srcdir)/Auth/AuthCrypt.h \ 
  • trunk/src/trinitycore/CliRunnable.cpp

    r2 r39  
    3737#include "PlayerDump.h" 
    3838#include "Player.h" 
     39#include "IRCClient.h" 
    3940 
    4041//CliCommand and CliCommandHolder are defined in World.h to avoid cyclic deps 
     
    314315    sWorld.SendWorldText(LANG_SYSTEMMESSAGE,textUtf8.c_str()); 
    315316    zprintf("Broadcasting to the world: %s\r\n",textUtf8.c_str()); 
     317 
     318    if((sIRC.BOTMASK & 256) != 0) 
     319    { 
     320        std::string ircchan = "#"; 
     321        ircchan += sIRC._irc_chan[sIRC.anchn].c_str(); 
     322        sIRC.Send_IRC_Channel(ircchan, sIRC.MakeMsg("\00304,08\037/!\\\037\017\00304 System Message \00304,08\037/!\\\037\017 %s", "%s", text), true); 
     323    } 
     324 
    316325} 
    317326 
  • trunk/src/trinitycore/Main.cpp

    r2 r39  
    2626#include "Log.h" 
    2727#include "Master.h" 
     28#include "../game/IRCConf.h" 
     29#include "../game/IRCClient.h" 
    2830 
    2931#ifndef _TRINITY_CORE_CONFIG 
     
    7678    ///- Command line parsing to get the configuration file name 
    7779    char const* cfg_file = _TRINITY_CORE_CONFIG; 
     80    char const* mc_cfg_file = _TRINITY_CORE_CONFIG; 
    7881    int c=1; 
    7982    while( c < argc ) 
     
    136139        return 1; 
    137140    } 
    138      
     141 
     142    sIRC.SetCfg(mc_cfg_file); 
    139143    sLog.outString("Using configuration file %s.", cfg_file); 
    140144     
  • trunk/src/trinitycore/Master.cpp

    r34 r39  
    3939#include "ScriptCalls.h" 
    4040#include "Util.h" 
     41#include "IRCClient.h" 
    4142 
    4243#include "sockets/TcpSocket.h" 
     
    227228        return 1; 
    228229 
     230    ///- Load IRC Config (need DB for gm levels, AutoBroadcast uses world timers) 
     231    sIRC.LoadConfig(sIRC.CfgFile); 
     232 
    229233    ///- Initialize the World 
    230234    sWorld.SetInitialWorldSettings(); 
     
    310314    uint32 loopCounter = 0; 
    311315 
     316    // Start up IRC bot 
     317    ZThread::Thread irc(new IRCClient); 
     318    irc.setPriority ((ZThread::Priority )2); 
     319 
     320 
     321 
    312322    ///- Start up freeze catcher thread 
    313323    uint32 freeze_delay = sConfig.GetIntDefault("MaxCoreStuckTime", 0); 
  • trunk/src/trinitycore/trinitycore.conf.dist

    r34 r39  
    389389#                 3 - disabled for both teams 
    390390# 
     391#    MaxWhoListReturns 
     392#        Set the maximum number of players returned in the /who list and interface. 
     393#        Default: 49 (stable) 
     394# 
    391395#    CharactersPerAccount 
    392396#        Limit numbers of characters per account (at all realms). 
     
    513517StrictCharterNames = 0 
    514518StrictPetNames = 0 
     519MaxWhoListReturns = 49 
    515520CharactersCreatingDisabled = 0 
    516521CharactersPerAccount = 50 
     
    11851190PvPToken.ItemCount = 1 
    11861191NoResetTalentsCost = 0 
     1192 
     1193################################################################################################################### 
     1194# IRC SYSTEM CONFIG 
     1195# 
     1196# irc.active 
     1197#     Enable IRC bot/system 
     1198#     Default: 0 - Disable 
     1199#              0 - Enable 
     1200# irc.icc 
     1201#     IRC connect code 
     1202#     Default: 001 - Welcome To Network msg 
     1203#              375 - Beginning Of MOTD 
     1204#              376 - End Of MOTD 
     1205# 
     1206# irc.host 
     1207#     IRC server to connect to 
     1208# 
     1209# irc.port 
     1210#     IRC server port to use 
     1211#     Default: "6667" - Semi-standard IRC port 
     1212# 
     1213# irc.user 
     1214#     The username/ident to use when connecting to the IRC server 
     1215# 
     1216# irc.nick 
     1217#     IRC nickname to be used by the bot 
     1218# 
     1219# irc.pass 
     1220#     The password to be used to identify to NickServ 
     1221# 
     1222# irc.auth 
     1223#     IRC Authentication Method 
     1224#     Default: 0 - Disable 
     1225#              1 - NickServ - Normal Method - PRIVMSG NickServ :IDENTIFY Password 
     1226#              2 - NickServ - Alternate Method To Identify To A Different Nick - PRIVMSG NickServ :IDENTIFY irc.auth.nick Password 
     1227#              3 - QuakeNet - Normal Method - PRIVMSG Q@CServe.quakenet.org :AUTH irc.nick Password 
     1228#              4 - QuakeNet - Alternate Method To Identify To A Different Nick - PRIVMSG Q@CServe.quakenet.org :AUTH irc.auth.nick Password 
     1229# 
     1230# irc.auth.nick 
     1231#     IRC Nickname to use if Auth method 2 or 4 is used 
     1232# 
     1233# irc.ldef 
     1234#     Leave a defined IRC channel on server connect 
     1235#     Default: 0 - Disable 
     1236#              1 - Enable 
     1237# irc.defchan 
     1238#     IRC channel to leave on server connect if irc.ldef is on 
     1239# 
     1240# irc.wct 
     1241#     Time to wait before (re)attemptimg connection to IRC server 
     1242#     Default: 30000 - (30 Seconds) 
     1243# 
     1244# irc.maxattempt 
     1245#     Maximum attempts to try IRC server 
     1246#     Default: 20 
     1247# 
     1248# irc.auto.announce 
     1249#     Time to wait in Minutes to announce random messages from database. 
     1250#     Default: 30 - (30 Minutes) 
     1251# 
     1252# irc.autojoin_kick 
     1253#     Autojoin IRC channel if kicked 
     1254#     Default: 1 - Enable 
     1255#              0 - Disable 
     1256# 
     1257# irc.command_prefix 
     1258#     IRC command prefix 
     1259#     Example: (.)online all 
     1260# 
     1261# irc.joinmsg 
     1262# irc.rstmsg 
     1263# irc.kickmsg 
     1264#     Bot join/restart/kick messages 
     1265# 
     1266# irc.chan_# 
     1267# wow.chan_# 
     1268#     IRC and WOW channels to link. Leave # out of IRC channel. Both channels _ARE_ case sensitive 
     1269#     Example: irc.chan_1 = "Trinity" 
     1270#              irc.chan_2 = "trinity2" 
     1271#              wow.chan_1 = "world" 
     1272#              wow.chan_2 = "LookingForGroup" 
     1273# 
     1274# irc.StatusChannel 
     1275#     Channel Number To Display Status Messages In (AuctionHouse, Levels, Deaths, Etc) 
     1276#     Default: 1 - Channel ID 1 
     1277# 
     1278# irc.AnnounceChannel 
     1279#     Channel Number To Display Announcements In (Announces, Notifies, Event) 
     1280#     Default: 1 - Channel ID 1 
     1281# 
     1282# irc.op_gm_login 
     1283#     Op The GM In All Channels The Bot Is On When They Log In 
     1284#     Default: 0 - Disable 
     1285#              1 - Enable 
     1286# 
     1287# irc.op_gm_level 
     1288#     The Minimum GM Level Required To Have The Bot Op The User 
     1289#     Default: 5 - GM Level 5 
     1290# 
     1291# irc.ajoin (Experimental/Under Development) 
     1292#     Force players to autojoin an in game channel 
     1293#     Atleast one player must be in the channel on server start, and atleast one person online for invite to work 
     1294#     Default: 0 - Disable 
     1295#              1 - Enable 
     1296# irc.ajchan 
     1297#     Channel to join if above is Enabled. 
     1298# 
     1299# irc.online.result 
     1300#     Maximum number of results per line for the online command 
     1301# 
     1302# chat.*** (Defineable Strings) 
     1303#     wow_* - String is displayed in IRC channel 
     1304#     irc_* - String is displayed in WOW channel 
     1305#     Options: $Name, $Level, $Msg, $GM (not all options work in every string) 
     1306# 
     1307# Botmask 
     1308#     This defines what the bot announces, if its 0 everything is disabled 
     1309#     simply add the values of the elements you want to create this mask. 
     1310#     Example: WoW join/leaves are 1 and IRC join/leaves are 2, if you want both of these active then the BotMask is 3. 
     1311#       (1)Display WoW Chan Join/Leaves In IRC 
     1312#       (2)Display IRC Chan Join/Leaves/NickChanges In WoW 
     1313#       (4)Display Unknown Command Message When Trigger Is Used And No Command Exists 
     1314#       (8)Announce Security Level > 0 As GM At Login 
     1315#       (16)Announce GM In GM ON State AS GM At Login 
     1316#       (32)Return Errors To Notice. (If disabled then default is Private Message) 
     1317#       (64)Display WoW Status Messages (Levels/Deaths) 
     1318#       (128)Display Nick Changes From IRC In WOW 
     1319#       (256)Display WoW Announces/Notifies In IRC 
     1320#       (512)Do Not Let Players Use Commands On Higher GM Level Players 
     1321#       (1024)Enable AuctionHouse Announcements 
     1322# 
     1323# irc.gmlog 
     1324#     Minimum GM level to not show login/pass info in IRC logs 
     1325# 
     1326# irc.logfile.prefix 
     1327#     The prefix of the IRC logfile. Directories can be added here. 
     1328#     Example: "IRC/IRC_" outputs IRC_YYYY-MM-DD.log to the IRC subdirectory in your logs dir 
     1329# 
     1330# irc.fun.games (Experimental/Under Development) 
     1331#     Enable IRC games 
     1332#     Default: 0 - Disable 
     1333#              1 - Enable 
     1334# irc.gm# 
     1335#     GM tag to append to (GM onjoin / online command) IRC color codes are acceptable 
     1336# 
     1337################################################################################################################### 
     1338 
     1339irc.active = 0 
     1340irc.icc = 001 
     1341irc.host = "" 
     1342irc.port = "6667" 
     1343irc.user = "TC" 
     1344irc.nick = "TrinityCoreBot" 
     1345irc.pass = "" 
     1346irc.auth = 0 
     1347irc.auth.nick = "TrinityCoreBot" 
     1348irc.ldef = 0 
     1349irc.defchan = "lobby" 
     1350irc.wct = 30000 
     1351irc.maxattempt = 20 
     1352irc.auto.announce = 30 
     1353irc.autojoin_kick = 1 
     1354irc.command_prefix = "." 
     1355irc.joinmsg = "Trinity Core running. Command trigger is $Trigger." 
     1356irc.rstmsg  = "Trinity Core is restarting..." 
     1357irc.kickmsg = "Do not kick me." 
     1358irc.chan_1 = "mangos" 
     1359wow.chan_1 = "world" 
     1360irc.StatusChannel = 1 
     1361irc.AnnounceChannel = 1 
     1362irc.op_gm_login = 0 
     1363irc.op_gm_level = 3 
     1364irc.ajoin = 1 
     1365irc.ajchan = "world" 
     1366irc.online.result = 30 
     1367chat.wow_irc = "<WoW>$Name [$Level]: $Msg" 
     1368chat.irc_wow = "<IRC>$Name: $Msg" 
     1369chat.join_wow = "[$GM] $Name has joined IRC." 
     1370chat.leave_wow = "[$GM] $Name has left IRC." 
     1371Botmask = 1023 
     1372irc.gmlog = 1 
     1373irc.logfile.prefix = "irc_" 
     1374irc.fun.games = 0 
     1375irc.gm1 = "[Moderator]" 
     1376irc.gm2 = "[Game Master]" 
     1377irc.gm3 = "[BugTracker]" 
     1378irc.gm4 = "[DevTeam Admin]" 
     1379irc.gm5 = "[SysOP]"