Thread: VoA Stuff
View Single Post
  #2  
Old 02-10-2012, 07:06 AM
Noport
Opcode Ninja
 
Join Date: Mar 2009
Location: San francisco
Posts: 426
Default

warning if it's not broken dont fix it.. Please don't try to add code if you don't known what your doing.
I may have skiped some other code that i have changed.

ServerFilesREV2100\trunk\EQEmuServer\common\patche s

patches.Cpp

#include "../debug.h"
#include "patches.h"

#include "Client62.h"
#include "Titanium.h"
#include "Anniversary.h"
#include "Underfoot.h"
#include "SoF.h"
#include "SoD.h"
#include "HoT.h"
#include "VoA.h"

void RegisterAllPatches(EQStreamIdentifier &into) {
Client62::Register(into);
Titanium::Register(into);
SoF::Register(into);
SoD::Register(into);
Underfoot::Register(into);
HoT::Register(into);
VoA::Register(into);
}

void ReloadAllPatches() {
Client62::Reload();
Titanium::Reload();
SoF::Reload();
SoD::Reload();
Underfoot::Reload();
HoT::Reload();
VoA::Reload();
}


Added VoA.cpp
Added VoA.h
Added VoA_itemfields.h
Added VoA_ops.h
Added VoA_structs.h

ServerFilesREV2100\trunk\EQEmuServer\common

eq_constants.c

#define BIT_Client62 1
#define BIT_Titanium 2
#define BIT_SoF 4
#define BIT_SoD 8
#define BIT_Underfoot 16
#define BIT_HoT 16
#define BIT_VoA 16
#define BIT_TitaniumAndEarlier 3
#define BIT_SoFAndLater 0xFFFFFFFC
#define BIT_SoDAndLater 0xFFFFFFF8
#define BIT_UnderfootAndLater 0xFFFFFFF0
#define BIT_HoTAndLater 0xFFFFFFFC
#define BIT_VoAAndLater 0xFFFFFFFC
#define BIT_AllClients 0xFFFFFFFF


ServerFilesREV2100\trunk\EQEmuServer\zone

bot.h

typedef enum EqExpansions {
ExpansionNone,
ExpansionEQ,
ExpansionRoK,
ExpansionSoV,
ExpansionSoL,
ExpansionPoP,
ExpansionLoY,
ExpansionLDoN,
ExpansionGoD,
ExpansionOoW,
ExpansionDoN,
ExpansionDoDH,
ExpansionPoR,
ExpansionTSS,
ExpansionSoF,
ExpansionSoD,
ExpansionUF,
ExpansionHoT,
ExpansionVoA
};

client.h

typedef enum {
EQClientUnknown = 0,
EQClient62,
EQClientTitanium,
EQClientSoF,
EQClientSoD,
EQClientUnderfoot,
EQClientHoT,
EQClientVoA,
} EQClientVersion;


client_packet.cpp

}
else if(StreamDescription == "Patch VoA")
{
ClientVersion = EQClientVoA;
ClientVersionBit = BIT_VoA;
}

ServerFilesReV2100\trunk\EQEmuServer\world

Client.cpp

}
else if(StreamDescription == "Patch VoA")
{
ClientVersionBit = BIT_VoA;
}
}


case OP_ZoneChange:
// HoT sends this to world while zoning and wants it echoed back.
if(!eqs->Describe().compare("Patch HoT"))
{
QueuePacket(app);
}
else if(!eqs->Describe().compare("Patch VoA"))
{
QueuePacket(app);
}
break;

\ServerFilesRev2100\trunk\EQEmuServer\world

Client.h

class Client {
public:
Client(EQStreamInterface* ieqs);
~Client();

bool Process();
void ReceiveData(uchar* buf, int len);
void SendLoginInfo();
void SendGuildList();
void SendLogServer();
void SendWorldComplete();
void SendApproveWorld();
void SendEnterWorld(std::string name);
void SendExpansionInfo();
void SendCharInfo();
void SendPostEnterWorld();
void EnterWorld(bool TryBootup = true);
void ZoneUnavail();
void QueuePacket(const EQApplicationPacket* app, bool ack_req = true);
void Clearance(sint8 response);
bool GenPassKey(char* key);

clientlist.cpp

void ClientList::SendClientVersionSummary(const char *Name)
{
uint32 Client62Count = 0;
uint32 ClientTitaniumCount = 0;
uint32 ClientAnniversaryCount = 0;
uint32 ClientSoFCount = 0;
uint32 ClientSoDCount = 0;
uint32 ClientUnderfootCount = 0;
uint32 ClientHoTCount = 0;
uint32 ClientVoACount = 0;


LinkedListIterator<ClientListEntry*> Iterator(clientlist);

Iterator.Reset();

while(Iterator.MoreElements())
{
ClientListEntry* CLE = Iterator.GetData();

if(CLE && CLE->zone())
{
switch(CLE->GetClientVersion())
{
case 1:
{
++Client62Count;
break;
}
case 2:
{
++ClientTitaniumCount;
break;
}
case 3:
{
++ClientAnniversaryCount;
break;
}
case 4:
{
++ClientSoFCount;
break;
}
case 5:
{
++ClientSoDCount;
break;
}
case 6:
{
++ClientUnderfootCount;
break;
}
case 7:
{
++ClientHoTCount;
break;
}
case 8:
{
++ClientVoACount;
break;
}
default:
break;
}
}

Iterator.Advance();

}

zoneserver_list.SendEmoteMessage(Name, 0, 0, 13, "There are %i 6.2, %i Titanium, %i SoF, %i SoD, %i UF,%i HoT and %i VoA clients currently connected.",
Client62Count, ClientTitaniumCount, ClientAnniversaryCount, ClientSoFCount, ClientSoDCount, ClientUnderfootCount, ClientHoTCount, ClientVoACount);
}
Reply With Quote