Solved LYCANLI SRC TABANLI BAŞLANGIÇTA GİYİLİ İTEM VERME (GIVE EQUIPMENTS TO THE PLAYERS LYCAN INCLUDED with src)

Status
Not open for further replies.
Banned
Member
Feb
Threads
6
51
89
18
HubMoney
216
Hello there I need the system which gives player beginner equipments with lycan included? I need the one with source code related not quest.
Can you share with me?

Merhaba arkadaşlar başlangıçta efsunlu item verme olayı elinizde var mı lycanının dahil olduğu? SRC tabanlısı lazım.
Lycansızı buldum:



extern BYTE g_bAuthServer;

en altına ekle:

extern bool RaceToJob(unsigned race, unsigned *ret_job);


void CInputDB::playerCreateSuccess(LPDESC d, const char * data)

arat


değiş

void CInputDB::playerCreateSuccess(LPDESC d, const char * data)
{
if (!d)
return;

TPacketDGCreateSuccess * pPacketDB = (TPacketDGCreateSuccess *) data;

if (pPacketDB->bAccountCharacterIndex >= PLAYER_PER_ACCOUNT)
{
d->Packet(encode_byte(HEADER_GC_CHARACTER_CREATE_FAILURE), 1);
return;
}

long lIndex = 0;

if (!CMapLocation::instance().Get(pPacketDB->player.x,
pPacketDB->player.y,
lIndex,
pPacketDB->player.lAddr,
pPacketDB->player.wPort))
{
sys_err("InputDB::playerCreateSuccess: cannot find server for mapindex %d %d x %d (name %s)",
lIndex,
pPacketDB->player.x,
pPacketDB->player.y,
pPacketDB->player.szName);
}

TAccountTable & r_Tab = d->GetAccountTable();
r_Tab.players[pPacketDB->bAccountCharacterIndex] = pPacketDB->player;

TPacketGCPlayerCreateSuccess pack;

pack.header = HEADER_GC_CHARACTER_CREATE_SUCCESS;
pack.bAccountCharacterIndex = pPacketDB->bAccountCharacterIndex;
pack.player = pPacketDB->player;

d->Packet(&pack, sizeof(TPacketGCPlayerCreateSuccess));

// NEW_GIVE_BASIC
TPlayerItem t;
memset(&t, 0, sizeof(t));

t.owner = r_Tab.players[pPacketDB->bAccountCharacterIndex].dwID;

struct SInitialItem
{
BYTE window;
WORD pos;
DWORD count;

DWORD dwVnum;

long socket0;
long socket1;
long socket2;
long socket3;
long socket4;
long socket5;
};

const int MAX_INITIAL_ITEM = 17;

static SInitialItem initialItems[JOB_MAX_NUM][MAX_INITIAL_ITEM] =
{
{
// WARRIOR
{EQUIPMENT, 0, 1, 11207, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12207, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 17 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
{
// ASSASSIN
{EQUIPMENT, 0, 1, 11407, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12347, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 1007 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
{
// SURA
{EQUIPMENT, 0, 1, 11607, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12487, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 17 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
{
// SHAMAN
{EQUIPMENT, 0, 1, 11807, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12627, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 7007 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
};

unsigned job = pPacketDB->player.byJob;

RaceToJob(job, &job);

for (int i=0; i < MAX_INITIAL_ITEM; i++)
{
if (initialItems[job].dwVnum == 0)
continue;

t.id = ITEM_MANAGER::instance().GetNewID();
t.window = initialItems[job].window;
t.pos = initialItems[job].pos;
t.count = initialItems[job].count;
t.vnum = initialItems[job].dwVnum;

t.alSockets[0] = initialItems[job].socket0;
t.alSockets[1] = initialItems[job].socket1;
t.alSockets[2] = initialItems[job].socket2;
t.alSockets[3] = initialItems[job].socket3;
t.alSockets[4] = initialItems[job].socket4;
t.alSockets[5] = initialItems[job].socket5;

db_clientdesc->DBPacketHeader(HEADER_GD_ITEM_SAVE, 0, sizeof(TPlayerItem));
db_clientdesc->Packet(&t, sizeof(TPlayerItem));
}
// END_OF_NEW_GIVE_BASIC

LogManager::instance().CharLog(pack.player.dwID, 0, 0, 0, "CREATE PLAYER", "", d->GetHostName());
}
 
Metin2Hub Bot
M2Hub Bot
Feb
Threads
65
2,003
2
842
113
HubMoney
1,212
Hello there I need the system which gives player beginner equipments with lycan included? I need the one with source code related not quest.
Can you share with me?

Merhaba arkadaşlar başlangıçta efsunlu item verme olayı elinizde var mı lycanının dahil olduğu? SRC tabanlısı lazım.
Lycansızı buldum:



extern BYTE g_bAuthServer;

en altına ekle:

extern bool RaceToJob(unsigned race, unsigned *ret_job);


void CInputDB::playerCreateSuccess(LPDESC d, const char * data)

arat


değiş

void CInputDB::playerCreateSuccess(LPDESC d, const char * data)
{
if (!d)
return;

TPacketDGCreateSuccess * pPacketDB = (TPacketDGCreateSuccess *) data;

if (pPacketDB->bAccountCharacterIndex >= PLAYER_PER_ACCOUNT)
{
d->Packet(encode_byte(HEADER_GC_CHARACTER_CREATE_FAILURE), 1);
return;
}

long lIndex = 0;

if (!CMapLocation::instance().Get(pPacketDB->player.x,
pPacketDB->player.y,
lIndex,
pPacketDB->player.lAddr,
pPacketDB->player.wPort))
{
sys_err("InputDB::playerCreateSuccess: cannot find server for mapindex %d %d x %d (name %s)",
lIndex,
pPacketDB->player.x,
pPacketDB->player.y,
pPacketDB->player.szName);
}

TAccountTable & r_Tab = d->GetAccountTable();
r_Tab.players[pPacketDB->bAccountCharacterIndex] = pPacketDB->player;

TPacketGCPlayerCreateSuccess pack;

pack.header = HEADER_GC_CHARACTER_CREATE_SUCCESS;
pack.bAccountCharacterIndex = pPacketDB->bAccountCharacterIndex;
pack.player = pPacketDB->player;

d->Packet(&pack, sizeof(TPacketGCPlayerCreateSuccess));

// NEW_GIVE_BASIC
TPlayerItem t;
memset(&t, 0, sizeof(t));

t.owner = r_Tab.players[pPacketDB->bAccountCharacterIndex].dwID;

struct SInitialItem
{
BYTE window;
WORD pos;
DWORD count;

DWORD dwVnum;

long socket0;
long socket1;
long socket2;
long socket3;
long socket4;
long socket5;
};

const int MAX_INITIAL_ITEM = 17;

static SInitialItem initialItems[JOB_MAX_NUM][MAX_INITIAL_ITEM] =
{
{
// WARRIOR
{EQUIPMENT, 0, 1, 11207, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12207, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 17 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
{
// ASSASSIN
{EQUIPMENT, 0, 1, 11407, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12347, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 1007 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
{
// SURA
{EQUIPMENT, 0, 1, 11607, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12487, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 17 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
{
// SHAMAN
{EQUIPMENT, 0, 1, 11807, 0, 0, 0, 0, 0, 0}, // Zirh
{EQUIPMENT, 1, 1, 12627, 0, 0, 0, 0, 0, 0}, // Kafalik
{EQUIPMENT, 2, 1, 15007, 0, 0, 0, 0, 0, 0}, // Ayakkabi
{EQUIPMENT, 3, 1, 14007, 0, 0, 0, 0, 0, 0}, // bracelet
{EQUIPMENT, 4, 1, 7007 , 0, 0, 0, 0, 0, 0}, // weapon
{EQUIPMENT, 5, 1, 16007, 0, 0, 0, 0, 0, 0}, // necklace
{EQUIPMENT, 6, 1, 17007, 0, 0, 0, 0, 0, 0}, // earring
{EQUIPMENT, 10, 1, 13007, 0, 0, 0, 0, 0, 0}, // shield

{INVENTORY, 0, 1, 50051, /* sockets => */ 0, 0, 0, 0, 0, 0}, // At Resmi
{INVENTORY, 2, 200, 27001, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Kirmizi iksir (K)
{INVENTORY, 3, 200, 27004, /* sockets => */ 0, 0, 200, 0, 0, 0}, // Mavi iksir (K)
{INVENTORY, 1, 1, 72701, /* sockets => */ 0, 0, 1800, 0, 0, 0}, // Rüzgarin Ayakkabilari
{INVENTORY, 4, 15, 27104, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Mor iksir (O)
{INVENTORY, 5, 15, 27111, /* sockets => */ 0, 0, 50, 0, 0, 0}, // Yesil iksir (O)
},
};

unsigned job = pPacketDB->player.byJob;

RaceToJob(job, &job);

for (int i=0; i < MAX_INITIAL_ITEM; i++)
{
if (initialItems[job].dwVnum == 0)
continue;

t.id = ITEM_MANAGER::instance().GetNewID();
t.window = initialItems[job].window;
t.pos = initialItems[job].pos;
t.count = initialItems[job].count;
t.vnum = initialItems[job].dwVnum;

t.alSockets[0] = initialItems[job].socket0;
t.alSockets[1] = initialItems[job].socket1;
t.alSockets[2] = initialItems[job].socket2;
t.alSockets[3] = initialItems[job].socket3;
t.alSockets[4] = initialItems[job].socket4;
t.alSockets[5] = initialItems[job].socket5;

db_clientdesc->DBPacketHeader(HEADER_GD_ITEM_SAVE, 0, sizeof(TPlayerItem));
db_clientdesc->Packet(&t, sizeof(TPlayerItem));
}
// END_OF_NEW_GIVE_BASIC

LogManager::instance().CharLog(pack.player.dwID, 0, 0, 0, "CREATE PLAYER", "", d->GetHostName());
}

Hello dear user,

Your post will be under surveillance by bots for the next few hours.

Forum description : Metin2 private server, Metin2 download, Metin2 support, Metin2 Forum, Metin2 Pvp Servers, Errors, Bugs, Requests, Metin2 Pvp Forum, Everything About Metin2.
 
Metin2Hub New World
Admin
Valuable
Premium
VIP
Metin2Hub Booster
Designer
Developer
Feb
Threads
151
932
3,009
93
HubMoney
3,755
Status
Not open for further replies.
Top