• This is a read only backup of the old Emudevs forum. If you want to have anything removed, please message me on Discord: KittyKaev

Flood protection

Jameyboor

Retired Staff
Hello everyone,

This flood protection system will currently only defend your server against the infamous CMSG_CHAR_ENUM opcode.
I made it somewhat dynamic so you can add a part of the code inside other packet handling functions aswell so you can defend your server against those packets too.

I was too lazy to create a patch ( Git and stuff ), so below you'll find a guide that guides you through the adding process.

Guide to add it:
If you're sure you haven't edited anything in WorldSession.h, WorldSession.cpp or CharacterHandler.cpp and you are on the latest TC revision ( the latest rev at the time of writing this ) you can download the already edited files here, simply replacing the files and adding the custom script 'packet_prot.cpp' to your core will do the trick.

else, you'll have to read a boring guide and add multiple lines on far too many places( I don't make the rules):
1. Open up WorldSession.h

2. Find the PartyOperations enumeration, looking like this :
Code:
enum PartyOperation
{
    PARTY_OP_INVITE = 0,
    PARTY_OP_UNINVITE = 1,
    PARTY_OP_LEAVE = 2,
    PARTY_OP_SWAP = 4
};
3. Add this code below that enumeration:
Code:
enum ProtectedPackets
{
	PACKET_CMSG_CHAR_ENUM,
	MAX_PROTECTED_PACKETS
};

4. Now, scroll all the way down or just use CTRL+F to find "void InvalidateRBACData();"

5. Below that function declaration, add a new array :
Code:
uint32 protectedPacketsCounter[MAX_PROTECTED_PACKETS];

6. Now open up WorldSession.cpp and head to the WorldSession class constructor, looking like this :
Code:
/// WorldSession constructor
WorldSession::WorldSession(uint32 id, WorldSocket* sock, AccountTypes sec, uint8 expansion, time_t mute_time, LocaleConstant locale, uint32 recruiter, bool isARecruiter):
    m_muteTime(mute_time),
    m_timeOutTime(0),
    _player(NULL),
    m_Socket(sock),
    _security(sec),
    _accountId(id),
    m_expansion(expansion),
    _warden(NULL),
    _logoutTime(0),
    m_inQueue(false),
    m_playerLoading(false),
    m_playerLogout(false),
    m_playerRecentlyLogout(false),
    m_playerSave(false),
    m_sessionDbcLocale(sWorld->GetAvailableDbcLocale(locale)),
    m_sessionDbLocaleIndex(locale),
    m_latency(0),
    m_TutorialsChanged(false),
    recruiterId(recruiter),
    isRecruiter(isARecruiter),
    timeLastWhoCommand(0),
    _RBACData(NULL)
{
    if (sock)
    {
        m_Address = sock->GetRemoteAddress();
        sock->AddReference();
        ResetTimeOutTime();
        LoginDatabase.PExecute("UPDATE account SET online = 1 WHERE id = %u;", GetAccountId());     // One-time query
    }

    InitializeQueryCallbackParameters();
}

7. Now, head to this line
Code:
_RBACData(NULL)
add a comma ( , ) after the statement. press the enter key ( good job :trollsd: ) and add this line:
Code:
protectedPacketsCounter()

8. Last edit we need to make is in the Characterhandler.cpp, so open it up.

9. Find
Code:
void WorldSession::HandleCharEnumOpcode(WorldPacket & /*recvData*/)

10. Replace the function ( just cause I'm too lazy to actually tell you where you need to add it exactly ) with mine :
Code:
void WorldSession::HandleCharEnumOpcode(WorldPacket & /*recvData*/)
{
	if(++protectedPacketsCounter[PACKET_CMSG_CHAR_ENUM] >= 3)
	{
		std::ostringstream ss;
			if(protectedPacketsCounter[PACKET_CMSG_CHAR_ENUM] < 5 || protectedPacketsCounter[PACKET_CMSG_CHAR_ENUM] % 25 == 0)
			{
				ss << "[Overflood Protection] : Session with ";
				ss << "IP address ";
				ss << GetRemoteAddress();
				ss << " triggered OverFlood Protection for packet CMSG_CHAR_ENUM. info : ";
				ss << "Account ID : ";
				ss << GetAccountId();
				ss << " Account Name : ";
				std::string accountName;
				sAccountMgr->GetName(GetAccountId(), accountName);
				ss << accountName;
				ss << " Player Name : ";
			    if(GetPlayer() && GetPlayer()->IsInWorld())
				    ss << GetPlayer()->GetName();
			    else
				    ss << " No Name ( not logged in )";
				ss << " current packet count : ";
				ss << (uint32)protectedPacketsCounter[PACKET_CMSG_CHAR_ENUM];
				ss << ", ignoring.";
				sLog->outError(LOG_FILTER_GENERAL, ss.str().c_str());
			}
		return;
	}
    // remove expired bans
    PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_EXPIRED_BANS);
    CharacterDatabase.Execute(stmt);

    /// get all the data necessary for loading all characters (along with their pets) on the account

    if (sWorld->getBoolConfig(CONFIG_DECLINED_NAMES_USED))
        stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_ENUM_DECLINED_NAME);
    else
        stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_ENUM);

    stmt->setUInt8(0, PET_SAVE_AS_CURRENT);
    stmt->setUInt32(1, GetAccountId());

    _charEnumCallback = CharacterDatabase.AsyncQuery(stmt);
}

11. last step, add this custom script to your core : http://pastebin.com/iNhK2jMj

That's that, you're done, recompile.

Atm, this will only log that there are too many packets and will just not handle them, no further action is taken.

To add protection against another packet you will need to add a new enumeration, like this :
Code:
enum ProtectedPackets
{
	PACKET_CMSG_CHAR_ENUM,
        PACKET_ANOTHER_PACKET_NAME,
	MAX_PROTECTED_PACKETS
};
Then just copy the if statement of the CMSG_CHAR_ENUM, change any appearances with CMSG_CHAR_ENUM to your own packet name and paste it inside the other function that handles the packet ( at the top of the function ).

I will NOT give support to people having trouble adding this, I think that you should be able to add this to your core if you're running a server... or in other words:
"you can supply toilet paper, doesn't mean you have to wipe every retards ass" ( Thanks Foe )

Adios :yo:
 

Neth

BETA Tester
speaking of that packet being "floodable" we should make a global system so it protect all of them
 

Jameyboor

Retired Staff
You should extend the opcode handler. If you're gonna count opcodes.

Uhm, I don't really care if its hacky or something, it does work and this method looks fine to me.

I only focused on the cmsg_char_enum opcode so thats why I edited the specific char enum opcode handler function, I do know what place you meant, and it is better if you're going to do multiple packets, but that's not the case.
 
Last edited:

botixrt8

Enthusiast
Not able to compile?

I've updated my core 2 days ago, so it's still fresh. I've tried adding your code manually, but these errors came up :

Code:
WorldSession.cpp(124): warning C4351: new behavior: elements of array 'WorldSession::protectedPacketsCounter' will be default initialized
CharacterHandler.cpp(289): error C2447: '{' : missing function header (old-style formal list?)

I've pasted a part of CharacterHandler.cpp here : http://pastebin.com/fcpaiPjj I also commented the 289 row, but I've got no idea what to do about WorldSession.cpp

I've even tried copying your files, but it was full of errors after I compiled it.

Could you help me out? My core keeps freezing randomly without no errors.

Thanks in advance
 
Last edited:

Tommy

Founder
I've updated my core 2 days ago, so it's still fresh. I've tried adding your code manually, but these errors came up :

Code:
WorldSession.cpp(124): warning C4351: new behavior: elements of array 'WorldSession::protectedPacketsCounter' will be default initialized
CharacterHandler.cpp(289): error C2447: '{' : missing function header (old-style formal list?)

I've pasted a part of CharacterHandler.cpp here : http://pastebin.com/fcpaiPjj I also commented the 289 row, but I've got no idea what to do about WorldSession.cpp

I've even tried copying your files, but it was full of errors after I compiled it.

Could you help me out? My core keeps freezing randomly without no errors.

Thanks in advance

I'm assuming when you copied/pasted the code you must've overwritten a bracket. I overlooked his code and it is fine, that's the only explanation I have towards your issue. Can you paste your whole HandleCharEnumOpcode function code?
 

botixrt8

Enthusiast
This is what I get removing the bracket you said :

Code:
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(310): error C2601: 'WorldSession::HandleCharCreateOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(464): error C2601: 'WorldSession::HandleCharCreateCallback' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(743): error C2601: 'WorldSession::HandleCharDeleteOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(810): error C2601: 'WorldSession::HandlePlayerLoginOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(843): error C2601: 'WorldSession::HandlePlayerLogin' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1079): error C2601: 'WorldSession::HandleSetFactionAtWar' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1093): error C2601: 'WorldSession::HandleSetFactionCheat' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1099): error C2601: 'WorldSession::HandleTutorialFlag' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1115): error C2601: 'WorldSession::HandleTutorialClear' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1121): error C2601: 'WorldSession::HandleTutorialReset' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1127): error C2601: 'WorldSession::HandleSetWatchedFactionOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1135): error C2601: 'WorldSession::HandleSetFactionInactiveOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1145): error C2601: 'WorldSession::HandleShowingHelmOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1152): error C2601: 'WorldSession::HandleShowingCloakOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1159): error C2601: 'WorldSession::HandleCharRenameOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1211): error C2601: 'WorldSession::HandleChangePlayerNameOpcodeCallBack' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1256): error C2601: 'WorldSession::HandleSetPlayerDeclinedNames' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1353): error C2601: 'WorldSession::HandleAlterAppearance' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1425): error C2601: 'WorldSession::HandleRemoveGlyph' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1447): error C2601: 'WorldSession::HandleCharCustomize' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1574): error C2601: 'WorldSession::HandleEquipmentSetSave' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1626): error C2601: 'WorldSession::HandleEquipmentSetDelete' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1636): error C2601: 'WorldSession::HandleEquipmentSetUse' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1691): error C2601: 'WorldSession::HandleCharFactionOrRaceChange' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(2239): fatal error C1075: end of file found before the left brace '{' at '..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245)' was matched
 

Tommy

Founder
Well, I meant removed it and put it on the bottom of all the code to close the open bracket at the start of that function.
 

botixrt8

Enthusiast
I did that too, this is what I get now :

9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(310): error C2601: 'WorldSession::HandleCharCreateOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(464): error C2601: 'WorldSession::HandleCharCreateCallback' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(743): error C2601: 'WorldSession::HandleCharDeleteOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(810): error C2601: 'WorldSession::HandlePlayerLoginOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(843): error C2601: 'WorldSession::HandlePlayerLogin' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1079): error C2601: 'WorldSession::HandleSetFactionAtWar' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1093): error C2601: 'WorldSession::HandleSetFactionCheat' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1099): error C2601: 'WorldSession::HandleTutorialFlag' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1115): error C2601: 'WorldSession::HandleTutorialClear' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1121): error C2601: 'WorldSession::HandleTutorialReset' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1127): error C2601: 'WorldSession::HandleSetWatchedFactionOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1135): error C2601: 'WorldSession::HandleSetFactionInactiveOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1145): error C2601: 'WorldSession::HandleShowingHelmOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1152): error C2601: 'WorldSession::HandleShowingCloakOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1159): error C2601: 'WorldSession::HandleCharRenameOpcode' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1211): error C2601: 'WorldSession::HandleChangePlayerNameOpcodeCallBack' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1256): error C2601: 'WorldSession::HandleSetPlayerDeclinedNames' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1353): error C2601: 'WorldSession::HandleAlterAppearance' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1425): error C2601: 'WorldSession::HandleRemoveGlyph' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1447): error C2601: 'WorldSession::HandleCharCustomize' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1574): error C2601: 'WorldSession::HandleEquipmentSetSave' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1626): error C2601: 'WorldSession::HandleEquipmentSetDelete' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1636): error C2601: 'WorldSession::HandleEquipmentSetUse' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1691): error C2601: 'WorldSession::HandleCharFactionOrRaceChange' : local function definitions are illegal
9> ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(308): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(2240): fatal error C1075: end of file found before the left brace '{' at '..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(289)' was matched

Also, I've pasted it on pastebin, please take a look: http://pastebin.com/DSrhfYkz
 

botixrt8

Enthusiast
I did that too...

this is what i get now :

Code:
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(310): error C2601: 'WorldSession::HandleCharCreateOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
8>  boss_faction_champions.cpp
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(464): error C2601: 'WorldSession::HandleCharCreateCallback' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(743): error C2601: 'WorldSession::HandleCharDeleteOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
8>  boss_lord_jaraxxus.cpp
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(810): error C2601: 'WorldSession::HandlePlayerLoginOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(843): error C2601: 'WorldSession::HandlePlayerLogin' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1079): error C2601: 'WorldSession::HandleSetFactionAtWar' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1093): error C2601: 'WorldSession::HandleSetFactionCheat' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1099): error C2601: 'WorldSession::HandleTutorialFlag' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1115): error C2601: 'WorldSession::HandleTutorialClear' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1121): error C2601: 'WorldSession::HandleTutorialReset' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
8>  boss_northrend_beasts.cpp
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1127): error C2601: 'WorldSession::HandleSetWatchedFactionOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1135): error C2601: 'WorldSession::HandleSetFactionInactiveOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1145): error C2601: 'WorldSession::HandleShowingHelmOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1152): error C2601: 'WorldSession::HandleShowingCloakOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1159): error C2601: 'WorldSession::HandleCharRenameOpcode' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1211): error C2601: 'WorldSession::HandleChangePlayerNameOpcodeCallBack' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1256): error C2601: 'WorldSession::HandleSetPlayerDeclinedNames' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1353): error C2601: 'WorldSession::HandleAlterAppearance' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1425): error C2601: 'WorldSession::HandleRemoveGlyph' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1447): error C2601: 'WorldSession::HandleCharCustomize' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1574): error C2601: 'WorldSession::HandleEquipmentSetSave' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1626): error C2601: 'WorldSession::HandleEquipmentSetDelete' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1636): error C2601: 'WorldSession::HandleEquipmentSetUse' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
9>..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(1691): error C2601: 'WorldSession::HandleCharFactionOrRaceChange' : local function definitions are illegal
9>          ..\..\..\..\test\src\server\game\Handlers\CharacterHandler.cpp(245): this line contains a '{' which has not yet been matched
 
Top