Cevaplanmadı Boot: offline shop table size error

  • Konuyu başlatan Konuyu başlatan ☬CAN☬
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 531

☬CAN☬

Level 1
Katılım
5 Şub 2024
Konular
19
Mesajlar
46
Çözüm
3
Online süresi
29d 8h
Reaksiyon Skoru
8
Altın Konu
0
TM Yaşı
2 Yıl 3 Ay 29 Gün
Başarım Puanı
45
MmoLira
4,209
DevLira
3
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

[CODE title="Channel1 Sysser"]SYSERR: Feb 11 11:34:02 :: pid_init:
Start of pid: 897

SYSERR: Feb 11 11:34:04 :: Boot: offline shop table size error
SYSERR: Feb 11 11:34:04 :: SpawnEventHelper: cannot get map base position 1
SYSERR: Feb 11 11:34:04 :: SpawnEventHelper: cannot get map base position 3
SYSERR: Feb 11 11:34:04 :: SpawnEventHelper: cannot get map base position 21
SYSERR: Feb 11 11:34:04 :: SpawnEventHelper: cannot get map base position 23
SYSERR: Feb 11 11:34:04 :: SpawnEventHelper: cannot get map base position 41
SYSERR: Feb 11 11:34:04 :: SpawnEventHelper: cannot get map base position 43
SYSERR: Feb 11 11:34:04 :: pid_deinit:
End of pid[/CODE]

Kanallar açılmıyor bu sysseri veriyor Dali OfflineShop ekledim..
Tables.h Dosyasını Baştan baştan kontrol ettim sorun orayla alakalıdır diye fakat ben birşey bulamadım..

[CODE lang="cpp" title="tables.h"]#ifndef __INC_TABLES_H__
#define __I#defineES_H__

#include "l#include

typedef DWORD IDENT;

/**
* @version 05/06/10 Bang2ni - Myshop Pricelist °ü·Ã ÆĞŶ HEADER_XX_MYSHOP_PRICELIST_XXX Ãß°¡
*/
enum
{
HEADER_GD_LOGIN = 1,
HEADER_GD_LOGOUT = 2,

HEADER_GD_PLAYER_LOAD = 3,
HEADER_GD_PLAYER_SAVE = 4,
HEADER_GD_PLAYER_CREATE = 5,
HEADER_GD_PLAYER_DELETE = 6,

HEADER_GD_LOGIN_KEY = 7,
// 8 empty
HEADER_GD_BOOT = 9,
HEADER_GD_PLAYER_COUNT = 10,
HEADER_GD_QUEST_SAVE = 11,
HEADER_GD_SAFEBOX_LOAD = 12,
HEADER_GD_SAFEBOX_SAVE = 13,
HEADER_GD_SAFEBOX_CHANGE_SIZE = 14,
HEADER_GD_EMPIRE_SELECT = 15,

HEADER_GD_SAFEBOX_CHANGE_PASSWORD = 16,
HEADER_GD_SAFEBOX_CHANGE_PASSWORD_SECOND = 17, // Not really a packet, used internal
HEADER_GD_DIRECT_ENTER = 18,

HEADER_GD_GUILD_SKILL_UPDATE = 19,
HEADER_GD_GUILD_EXP_UPDATE = 20,
HEADER_GD_GUILD_ADD_MEMBER = 21,
HEADER_GD_GUILD_REMOVE_MEMBER = 22,
HEADER_GD_GUILD_CHANGE_GRADE = 23,
HEADER_GD_GUILD_CHANGE_MEMBER_DATA = 24,
HEADER_GD_GUILD_DISBAND = 25,
HEADER_GD_GUILD_WAR = 26,
HEADER_GD_GUILD_WAR_SCORE = 27,
HEADER_GD_GUILD_CREATE = 28,

HEADER_GD_ITEM_SAVE = 30,
HEADER_GD_ITEM_DESTROY = 31,

HEADER_GD_ADD_AFFECT = 32,
HEADER_GD_REMOVE_AFFECT = 33,

HEADER_GD_HIGHSCORE_REGISTER = 34,
HEADER_GD_ITEM_FLUSH = 35,

HEADER_GD_PARTY_CREATE = 36,
HEADER_GD_PARTY_DELETE = 37,
HEADER_GD_PARTY_ADD = 38,
HEADER_GD_PARTY_REMOVE = 39,
HEADER_GD_PARTY_STATE_CHANGE = 40,
HEADER_GD_PARTY_HEAL_USE = 41,

HEADER_GD_FLUSH_CACHE = 42,
HEADER_GD_RELOAD_PROTO = 43,

HEADER_GD_CHANGE_NAME = 44,

HEADER_GD_GUILD_CHANGE_LADDER_POINT = 46,
HEADER_GD_GUILD_USE_SKILL = 47,

HEADER_GD_REQUEST_EMPIRE_PRIV = 48,
HEADER_GD_REQUEST_GUILD_PRIV = 49,

HEADER_GD_MONEY_LOG = 50,

HEADER_GD_GUILD_DEPOSIT_MONEY = 51,
HEADER_GD_GUILD_WITHDRAW_MONEY = 52,
HEADER_GD_GUILD_WITHDRAW_MONEY_GIVE_REPLY = 53,

HEADER_GD_REQUEST_CHARACTER_PRIV = 54,

HEADER_GD_SET_EVENT_FLAG = 55,

HEADER_GD_PARTY_SET_MEMBER_LEVEL = 56,

HEADER_GD_GUILD_WAR_BET = 57,

HEADER_GD_CREATE_OBJECT = 60,
HEADER_GD_DELETE_OBJECT = 61,
HEADER_GD_UPDATE_LAND = 62,

HEADER_GD_MARRIAGE_ADD = 70,
HEADER_GD_MARRIAGE_UPDATE = 71,
HEADER_GD_MARRIAGE_REMOVE = 72,

HEADER_GD_WEDDING_REQUEST = 73,
HEADER_GD_WEDDING_READY = 74,
HEADER_GD_WEDDING_END = 75,

HEADER_GD_AUTH_LOGIN = 100,
HEADER_GD_LOGIN_BY_KEY = 101,

HEADER_GD_MALL_LOAD = 107,

HEADER_GD_MYSHOP_PRICELIST_UPDATE = 108, ///< °¡°İÁ¤º¸ °»½Å ¿äû
HEADER_GD_MYSHOP_PRICELIST_REQ = 109, ///< °¡°İÁ¤º¸ ¸®½ºÆ® ¿äû

HEADER_GD_BLOCK_CHAT = 110,

// PCBANG_IP_LIST_BY_AUTH
HEADER_GD_PCBANG_REQUEST_IP_LIST = 111,
HEADER_GD_PCBANG_CLEAR_IP_LIST = 112,
HEADER_GD_PCBANG_INSERT_IP = 113,
// END_OF_PCBANG_IP_LIST_BY_AUTH

HEADER_GD_HAMMER_OF_TOR = 114,
HEADER_GD_RELOAD_ADMIN = 115, ///<¿î¿µÀÚ Á¤º¸ ¿äû
HEADER_GD_BREAK_MARRIAGE = 116, ///< °áÈ¥ ÆÄ±â

HEADER_GD_REQ_CHANGE_GUILD_MASTER = 129,

HEADER_GD_REQ_SPARE_ITEM_ID_RANGE = 130,

HEADER_GD_UPDATE_HORSE_NAME = 131,
HEADER_GD_REQ_HORSE_NAME = 132,

HEADER_GD_DC = 133, // Login Key¸¦ Áö¿ò

HEADER_GD_VALID_LOGOUT = 134,

HEADER_GD_REQUEST_CHARGE_CASH = 137,

HEADER_GD_DELETE_AWARDID = 138, // delete gift notify icon

HEADER_GD_UPDATE_CHANNELSTATUS = 139,
HEADER_GD_REQUEST_CHANNELSTATUS = 140,

#ifdef WJ_OFFLINE_SHOP_SYSTEM
HEADER_GD_UPDATE_OFFLINE_SHOP = 141,
HEADER_#ifdef_OFFLINE_SHOP_TABLE = 142,
#endif

HEADER_GD_SETUP = 0xff,

/////////////////////////////////#endif////////
HEADER_DG_NOTICE = 1,

HEADER_DG_LOGIN_SUCCESS = 30,
HEADER_DG_LOGIN_NOT_EXIST = 31,
HEADER_DG_LOGIN_WRONG_PASSWD = 33,
HEADER_DG_LOGIN_ALREADY = 34,

HEADER_DG_PLAYER_LOAD_SUCCESS = 35,
HEADER_DG_PLAYER_LOAD_FAILED = 36,
HEADER_DG_PLAYER_CREATE_SUCCESS = 37,
HEADER_DG_PLAYER_CREATE_ALREADY = 38,
HEADER_DG_PLAYER_CREATE_FAILED = 39,
HEADER_DG_PLAYER_DELETE_SUCCESS = 40,
HEADER_DG_PLAYER_DELETE_FAILED = 41,

HEADER_DG_ITEM_LOAD = 42,

HEADER_DG_BOOT = 43,
HEADER_DG_QUEST_LOAD = 44,

HEADER_DG_SAFEBOX_LOAD = 45,
HEADER_DG_SAFEBOX_CHANGE_SIZE = 46,
HEADER_DG_SAFEBOX_WRONG_PASSWORD = 47,
HEADER_DG_SAFEBOX_CHANGE_PASSWORD_ANSWER = 48,

HEADER_DG_EMPIRE_SELECT = 49,

HEADER_DG_AFFECT_LOAD = 50,
HEADER_DG_MALL_LOAD = 51,

HEADER_DG_DIRECT_ENTER = 55,

HEADER_DG_GUILD_SKILL_UPDATE = 56,
HEADER_DG_GUILD_SKILL_RECHARGE = 57,
HEADER_DG_GUILD_EXP_UPDATE = 58,

HEADER_DG_PARTY_CREATE = 59,
HEADER_DG_PARTY_DELETE = 60,
HEADER_DG_PARTY_ADD = 61,
HEADER_DG_PARTY_REMOVE = 62,
HEADER_DG_PARTY_STATE_CHANGE = 63,
HEADER_DG_PARTY_HEAL_USE = 64,
HEADER_DG_PARTY_SET_MEMBER_LEVEL = 65,

HEADER_DG_TIME = 90,
HEADER_DG_ITEM_ID_RANGE = 91,

HEADER_DG_GUILD_ADD_MEMBER = 92,
HEADER_DG_GUILD_REMOVE_MEMBER = 93,
HEADER_DG_GUILD_CHANGE_GRADE = 94,
HEADER_DG_GUILD_CHANGE_MEMBER_DATA = 95,
HEADER_DG_GUILD_DISBAND = 96,
HEADER_DG_GUILD_WAR = 97,
HEADER_DG_GUILD_WAR_SCORE = 98,
HEADER_DG_GUILD_TIME_UPDATE = 99,
HEADER_DG_GUILD_LOAD = 100,
HEADER_DG_GUILD_LADDER = 101,
HEADER_DG_GUILD_SKILL_USABLE_CHANGE = 102,
HEADER_DG_GUILD_MONEY_CHANGE = 103,
HEADER_DG_GUILD_WITHDRAW_MONEY_GIVE = 104,

HEADER_DG_SET_EVENT_FLAG = 105,

HEADER_DG_GUILD_WAR_RESERVE_ADD = 106,
HEADER_DG_GUILD_WAR_RESERVE_DEL = 107,
HEADER_DG_GUILD_WAR_BET = 108,

HEADER_DG_RELOAD_PROTO = 120,
HEADER_DG_CHANGE_NAME = 121,

HEADER_DG_AUTH_LOGIN = 122,

HEADER_DG_CHANGE_EMPIRE_PRIV = 124,
HEADER_DG_CHANGE_GUILD_PRIV = 125,

HEADER_DG_MONEY_LOG = 126,

HEADER_DG_CHANGE_CHARACTER_PRIV = 127,

HEADER_DG_CREATE_OBJECT = 140,
HEADER_DG_DELETE_OBJECT = 141,
HEADER_DG_UPDATE_LAND = 142,

HEADER_DG_MARRIAGE_ADD = 150,
HEADER_DG_MARRIAGE_UPDATE = 151,
HEADER_DG_MARRIAGE_REMOVE = 152,

HEADER_DG_WEDDING_REQUEST = 153,
HEADER_DG_WEDDING_READY = 154,
HEADER_DG_WEDDING_START = 155,
HEADER_DG_WEDDING_END = 156,

HEADER_DG_MYSHOP_PRICELIST_RES = 157, ///< °¡°İÁ¤º¸ ¸®½ºÆ® ÀÀ´ä
HEADER_DG_RELOAD_ADMIN = 158, ///< ¿î¿µÀÚ Á¤º¸ ¸®·Îµå
HEADER_DG_BREAK_MARRIAGE = 159, ///< °áÈ¥ ÆÄ±â


HEADER_DG_ACK_CHANGE_GUILD_MASTER = 173,

HEADER_DG_ACK_SPARE_ITEM_ID_RANGE = 174,

HEADER_DG_UPDATE_HORSE_NAME = 175,
HEADER_DG_ACK_HORSE_NAME = 176,

HEADER_DG_NEED_LOGIN_LOG = 177,
HEADER_DG_RESULT_CHARGE_CASH = 179,
HEADER_DG_ITEMAWARD_INFORMER = 180, //gift notify
HEADER_DG_RESPOND_CHANNELSTATUS = 181,

#ifdef WJ_OFFLINE_SHOP_SYSTEM
HEADER_DG_SET_OFFLINE_SHOP_TABLE = 182,
#endif

HEADER_DG_MAP_LOCATIONS = 0xfe,#ifdefEADER_DG_P2P = 0xff,

};

/* -------------------------------#endif---------
* table
* ----------------------------------------------
*/

/* game Server -> DB Server */
#pragma pack(1)
enum ERequestChargeType
{
ERequestCharge_Cash = 0,
ERequestCharge_Mileage,
};

typedef struct SRequestC#pragmash
{
DWORD dwAID; // id(primary key) - Account Table
DWORD dwAmount;
ERequestChargeType eChargeType;

} TRequestChargeCash;

typedef struct SSimplePlayer
{
DWORD dwID;
char szName[CHARACTER_NAME_MAX_LEN + 1];
BYTE byJob;
BYTE byLevel;
DWORD dwPlayMinutes;
BYTE byST, byHT, byDX, byIQ;
WORD wMainPart;
BYTE bChangeName;
WORD wHairPart;
BYTE bDummy[4];
long x, y;
long lAddr;
WORD wPort;
BYTE skill_group;
} TSimplePlayer;

typedef struct SAccountTable
{
DWORD id;
char login[LOGIN_MAX_LEN + 1];
char passwd[PASSWD_MAX_LEN + 1];
char social_id[SOCIAL_ID_MAX_LEN + 1];
char status[ACCOUNT_STATUS_MAX_LEN + 1];
BYTE bEmpire;
TSimplePlayer players[PLAYER_PER_ACCOUNT];
} TAccountTable;

typedef struct SPacketDGCreateSuccess
{
BYTE bAccountCharacterIndex;
TSimplePlayer player;
} TPacketDGCreateSuccess;

typedef struct TPlayerItemAttribute
{
BYTE bType;
short sValue;
} TPlayerItemAttribute;

typedef struct SPlayerItem
{
DWORD id;
BYTE window;
WORD pos;
DWORD count;

DWORD vnum;
long alSockets[ITEM_SOCKET_MAX_NUM]; // ¼ÒÄϹøÈ£

TPlayerItemAttribute aAttr[ITEM_ATTRIBUTE_MAX_NUM];

DWORD owner;
#ifdef WJ_OFFLINE_SHOP_SYSTEM
int price;
#ifdef WJ_CHEQUE_SYSTEM
int cheque_price;
#endif
#endif
} TPlayerItem;

#ifdeff struct SQuickslot
{
BYTE type;
BY#ifdefpos;
} TQuickslot;

typedef struct SPlayerSkill#endif #endif bMasterType;
BYTE bLevel;
time_t tNextRead;
} TPlayerSkill;

struct THorseInfo
{
BYTE bLevel;
BYTE bRiding;
short sStamina;
short sHealth;
DWORD dwHorseHealthDropTime;
};

typedef struct SPlayerTable
{
DWORD id;

char name[CHARACTER_NAME_MAX_LEN + 1];
char ip[IP_ADDRESS_LENGTH + 1];

WORD job;
BYTE voice;

BYTE level;
BYTE level_step;
short st, ht, dx, iq;

DWORD exp;
INT gold;

BYTE dir;
INT x, y, z;
INT lMapIndex;

long lExitX, lExitY;
long lExitMapIndex;

int hp;
int sp;

short sRandomHP;
short sRandomSP;

int playtime;

short stat_point;
short skill_point;
short sub_skill_point;
short horse_skill_point;

TPlayerSkill skills[SKILL_MAX_NUM];

TQuickslot quickslot[QUICKSLOT_MAX_NUM];

BYTE part_base;
WORD parts[PART_MAX_NUM];

short stamina;

BYTE skill_group;
long lAlignment;

short stat_reset_count;

THorseInfo horse;

DWORD logoff_interval;

int aiPremiumTimes[PREMIUM_MAX_NUM];
} TPlayerTable;

typedef struct SMobSkillLevel
{
DWORD dwVnum;
BYTE bLevel;
} TMobSkillLevel;

typedef struct SEntityTable
{
DWORD dwVnum;
} TEntityTable;

typedef struct SMobTable : public SEntityTable
{
char szName[CHARACTER_NAME_MAX_LEN + 1];
char szLocaleName[CHARACTER_NAME_MAX_LEN + 1];

BYTE bType; // Monster, NPC
BYTE bRank; // PAWN, KNIGHT, KING
BYTE bBattleType; // MELEE, etc..
BYTE bLevel; // Level
BYTE bSize;

DWORD dwGoldMin;
DWORD dwGoldMax;
DWORD dwExp;
DWORD dwMaxHP;
BYTE bRegenCycle;
BYTE bRegenPercent;
WORD wDef;

DWORD dwAIFlag;
DWORD dwRaceFlag;
DWORD dwImmuneFlag;

BYTE bStr, bDex, bCon, bInt;
DWORD dwDamageRange[2];

short sAttackSpeed;
short sMovingSpeed;
BYTE bAggresiveHPPct;
WORD wAggressiveSight;
WORD wAttackRange;

char cEnchants[MOB_ENCHANTS_MAX_NUM];
char cResists[MOB_RESISTS_MAX_NUM];

DWORD dwResurrectionVnum;
DWORD dwDropItemVnum;

BYTE bMountCapacity;
BYTE bOnClickType;

BYTE bEmpire;
char szFolder[64 + 1];

float fDamMultiply;

DWORD dwSummonVnum;
DWORD dwDrainSP;
DWORD dwMobColor;
DWORD dwPolymorphItemVnum;

TMobSkillLevel Skills[MOB_SKILL_MAX_NUM];

BYTE bBerserkPoint;
BYTE bStoneSkinPoint;
BYTE bGodSpeedPoint;
BYTE bDeathBlowPoint;
BYTE bRevivePoint;
} TMobTable;

typedef struct SSkillTable
{
DWORD dwVnum;
char szName[32 + 1];
BYTE bType;
BYTE bMaxLevel;
DWORD dwSplashRange;

char szPointOn[64];
char szPointPoly[100 + 1];
char szSPCostPoly[100 + 1];
char szDurationPoly[100 + 1];
char szDurationSPCostPoly[100 + 1];
char szCooldownPoly[100 + 1];
char szMasterBonusPoly[100 + 1];
//char szAttackGradePoly[100 + 1];
char szGrandMasterAddSPCostPoly[100 + 1];
DWORD dwFlag;
DWORD dwAffectFlag;

// Data for secondary skill
char szPointOn2[64];
char szPointPoly2[100 + 1];
char szDurationPoly2[100 + 1];
DWORD dwAffectFlag2;

// Data for grand master point
char szPointOn3[64];
char szPointPoly3[100 + 1];
char szDurationPoly3[100 + 1];

BYTE bLevelStep;
BYTE bLevelLimit;
DWORD preSkillVnum;
BYTE preSkillLevel;

long lMaxHit;
char szSplashAroundDamageAdjustPoly[100 + 1];

BYTE bSkillAttrType;

DWORD dwTargetRange;
} TSkillTable;

typedef struct SShopItemTable
{
DWORD vnum;
BYTE count;

TItemPos pos; // PC »óÁ¡¿¡¸¸ ÀÌ¿ë
DWORD price; // PC, shop_table_ex.txt »óÁ¡¿¡¸¸ ÀÌ¿ë
BYTE display_pos; // PC, shop_table_ex.txt »óÁ¡¿¡¸¸ ÀÌ¿ë, º¸ÀÏ À§Ä¡.
} TShopItemTable;

typedef struct SShopTable
{
DWORD dwVnum;
DWORD dwNPCVnum;

BYTE byItemCount;
TShopItemTable items[SHOP_HOST_ITEM_MAX_NUM];
} TShopTable;

#ifdef WJ_OFFLINE_SHOP_SYSTEM
typedef struct SOfflineShopTable
{
DWORD dwOwnerID;
char szOwnerName[CHARACTER_NAME_MAX_LEN + 1];
char szSign[SHOP_SIGN_MAX_LEN #ifdef BYTE byChannel;
long lMapIndex;
long lPosX;
long lPosY;
int gold;
#ifdef WJ_CHEQUE_SYSTEM
int cheque;
#endif
bool bLocked;
DWORD dwTimeLeft;

TPlayerItem items[SHOP_HOST_ITEM_MAX_NUM];
} TOfflineShopTable;
#endif

#d#ifdefQUEST_NAME_MAX_LEN 32
#define QUEST_ST#endifX_LEN 64

typedef struct SQuestTable
{
DWORD dwPID;
char szName[QUEST_NAME_MAX_LEN + 1];
#endif #definezState[QUEST_STATE_MAX_LEN#define long lValue;
} TQuestTable;

typedef struct SItemLimit
{
BYTE bType;
long lValue;
} TItemLimit;

typedef struct SItemApply
{
BYTE bType;
long lValue;
} TItemApply;

typedef struct SItemTable : public SEntityTable
{
DWORD dwVnumRange;
char szName[ITEM_NAME_MAX_LEN + 1];
char szLocaleName[ITEM_NAME_MAX_LEN + 1];
BYTE bType;
BYTE bSubType;

BYTE bWeight;
BYTE bSize;

DWORD dwAntiFlags;
DWORD dwFlags;
DWORD dwWearFlags;
DWORD dwImmuneFlag;

DWORD dwGold;
DWORD dwShopBuyPrice;

TItemLimit aLimits[ITEM_LIMIT_MAX_NUM];
TItemApply aApplies[ITEM_APPLY_MAX_NUM];
long alValues[ITEM_VALUES_MAX_NUM];
long alSockets[ITEM_SOCKET_MAX_NUM];
DWORD dwRefinedVnum;
WORD wRefineSet;
BYTE bAlterToMagicItemPct;
BYTE bSpecular;
BYTE bGainSocketPct;

short int sAddonType; // ±âº» ¼Ó¼º

// ¾Æ·¡ limit flagµéÀº realtime¿¡ üũ ÇÒ ÀÏÀÌ ¸¹°í, ¾ÆÀÌÅÛ VNUM´ç °íÁ¤µÈ °ªÀε¥,
// ÇöÀç ±¸Á¶´ë·Î ¸Å¹ø ¾ÆÀÌÅÛ¸¶´Ù ÇÊ¿äÇÑ °æ¿ì¿¡ LIMIT_MAX_NUM±îÁö ·çÇÁµ¹¸é¼ üũÇÏ´Â ºÎÇϰ¡ Ä¿¼ ¹Ì¸® ÀúÀå ÇØ µÒ.
char cLimitRealTimeFirstUseIndex; // ¾ÆÀÌÅÛ limit Çʵ尪 Áß¿¡¼ LIMIT_REAL_TIME_FIRST_USE Ç÷¡±×ÀÇ À§Ä¡ (¾øÀ¸¸é -1)
char cLimitTimerBasedOnWearIndex; // ¾ÆÀÌÅÛ limit Çʵ尪 Áß¿¡¼ LIMIT_TIMER_BASED_ON_WEAR Ç÷¡±×ÀÇ À§Ä¡ (¾øÀ¸¸é -1)

} TItemTable;

struct TItemAttrTable
{
TItemAttrTable() :
dwApplyIndex(0),
dwProb(0)
{
szApply[0] = 0;
memset(&lValues, 0, sizeof(lValues));
memset(&bMaxLevelBySet, 0, sizeof(bMaxLevelBySet));
}

char szApply[APPLY_NAME_MAX_LEN + 1];
DWORD dwApplyIndex;
DWORD dwProb;
long lValues[5];
BYTE bMaxLevelBySet[ATTRIBUTE_SET_MAX_NUM];
};

typedef struct SConnectTable
{
char login[LOGIN_MAX_LEN + 1];
IDENT ident;
} TConnectTable;

typedef struct SLoginPacket
{
char login[LOGIN_MAX_LEN + 1];
char passwd[PASSWD_MAX_LEN + 1];
} TLoginPacket;

typedef struct SPlayerLoadPacket
{
DWORD account_id;
DWORD player_id;
BYTE account_index; /* account ¿¡¼ÀÇ À§Ä¡ */
} TPlayerLoadPacket;

typedef struct SPlayerCreatePacket
{
char login[LOGIN_MAX_LEN + 1];
char passwd[PASSWD_MAX_LEN + 1];
DWORD account_id;
BYTE account_index;
TPlayerTable player_table;
} TPlayerCreatePacket;

typedef struct SPlayerDeletePacket
{
char login[LOGIN_MAX_LEN + 1];
DWORD player_id;
BYTE account_index;
//char name[CHARACTER_NAME_MAX_LEN + 1];
char private_code[8];
} TPlayerDeletePacket;

typedef struct SLogoutPacket
{
char login[LOGIN_MAX_LEN + 1];
char passwd[PASSWD_MAX_LEN + 1];
} TLogoutPacket;

typedef struct SPlayerCountPacket
{
DWORD dwCount;
} TPlayerCountPacket;

#define SAFEBOX_MAX_NUM 135
#define SAFEBOX_PASSWORD_MAX_LEN 6

typedef struct SSafeboxTable
{
DWORD dwID;
BYTE bSize;
DWORD dwGold;
WORD wItemCount;
} TSafeboxTable;

typedef struct SSafeboxChangeSizePacket
{
DWORD dwID;
BYTE bSize;
} TSafeboxChangeSizePacket;

typedef struct SSafeboxLoadPacket
{
DWORD dwID;
char szLo#defineIN_MAX_LEN + 1];
char szP#define[SAFEBOX_PASSWORD_MAX_LEN + 1];
} TSafeboxLoadPacket;

typedef struct SSafeboxChangePasswordPacket
{
DWORD dwID;
char szOldPassword[SAFEBOX_PASSWORD_MAX_LEN + 1];
char szNewPassword[SAFEBOX_PASSWORD_MAX_LEN + 1];
} TSafeboxChangePasswordPacket;

typedef struct SSafeboxChangePasswordPacketAnswer
{
BYTE flag;
} TSafeboxChangePasswordPacketAnswer;

typedef struct SEmpireSelectPacket
{
DWORD dwAccountID;
BYTE bEmpire;
} TEmpireSelectPacket;

typedef struct SPacketGDSetup
{
char szPublicIP[16]; // Public IP which listen to users
BYTE bChannel; // ä³Î
WORD wListenPort; // Ŭ¶óÀÌ¾ğÆ®°¡ Á¢¼ÓÇÏ´Â Æ÷Æ® ¹øÈ£
WORD wP2PPort; // ¼¹ö³¢¸® ¿¬°á ½ÃŰ´Â P2P Æ÷Æ® ¹øÈ£
long alMaps[32];
DWORD dwLoginCount;
BYTE bAuthServer;
} TPacketGDSetup;

typedef struct SPacketDGMapLocations
{
BYTE bCount;
} TPacketDGMapLocations;

typedef struct SMapLocation
{
long alMaps[32];
char szHost[MAX_HOST_LENGTH + 1];
WORD wPort;
} TMapLocation;

typedef struct SPacketDGP2P
{
char szHost[MAX_HOST_LENGTH + 1];
WORD wPort;
BYTE bChannel;
} TPacketDGP2P;

typedef struct SPacketGDDirectEnter
{
char login[LOGIN_MAX_LEN + 1];
char passwd[PASSWD_MAX_LEN + 1];
BYTE index;
} TPacketGDDirectEnter;

typedef struct SPacketDGDirectEnter
{
TAccountTable accountTable;
TPlayerTable playerTable;
} TPacketDGDirectEnter;

typedef struct SPacketGuildSkillUpdate
{
DWORD guild_id;
int amount;
BYTE skill_levels[12];
BYTE skill_point;
BYTE save;
} TPacketGuildSkillUpdate;

typedef struct SPacketGuildExpUpdate
{
DWORD guild_id;
int amount;
} TPacketGuildExpUpdate;

typedef struct SPacketGuildChangeMemberData
{
DWORD guild_id;
DWORD pid;
DWORD offer;
BYTE level;
BYTE grade;
} TPacketGuildChangeMemberData;


typedef struct SPacketDGLoginAlready
{
char szLogin[LOGIN_MAX_LEN + 1];
} TPacketDGLoginAlready;

typedef struct TPacketAffectElement
{
DWORD dwType;
BYTE bApplyOn;
long lApplyValue;
DWORD dwFlag;
long lDuration;
long lSPCost;
} TPacketAffectElement;

typedef struct SPacketGDAddAffect
{
DWORD dwPID;
TPacketAffectElement elem;
} TPacketGDAddAffect;

typedef struct SPacketGDRemoveAffect
{
DWORD dwPID;
DWORD dwType;
BYTE bApplyOn;
} TPacketGDRemoveAffect;

typedef struct SPacketGDHighscore
{
DWORD dwPID;
long lValue;
char cDir;
char szBoard[21];
} TPacketGDHighscore;

typedef struct SPacketPartyCreate
{
DWORD dwLeaderPID;
} TPacketPartyCreate;

typedef struct SPacketPartyDelete
{
DWORD dwLeaderPID;
} TPacketPartyDelete;

typedef struct SPacketPartyAdd
{
DWORD dwLeaderPID;
DWORD dwPID;
BYTE bState;
} TPacketPartyAdd;

typedef struct SPacketPartyRemove
{
DWORD dwLeaderPID;
DWORD dwPID;
} TPacketPartyRemove;

typedef struct SPacketPartyStateChange
{
DWORD dwLeaderPID;
DWORD dwPID;
BYTE bRole;
BYTE bFlag;
} TPacketPartyStateChange;

typedef struct SPacketPartySetMemberLevel
{
DWORD dwLeaderPID;
DWORD dwPID;
BYTE bLevel;
} TPacketPartySetMemberLevel;

typedef struct SPacketGDBoot
{
DWORD dwItemIDRange[2];
char szIP[16];
} TPacketGDBoot;

typedef struct SPacketGuild
{
DWORD dwGuild;
DWORD dwInfo;
} TPacketGuild;

typedef struct SPacketGDGuildAddMember
{
DWORD dwPID;
DWORD dwGuild;
BYTE bGrade;
} TPacketGDGuildAddMember;

typedef struct SPacketDGGuildMember
{
DWORD dwPID;
DWORD dwGuild;
BYTE bGrade;
BYTE isGeneral;
BYTE bJob;
BYTE bLevel;
DWORD dwOffer;
char szName[CHARACTER_NAME_MAX_LEN + 1];
} TPacketDGGuildMember;

typedef struct SPacketGuildWar
{
BYTE bType;
BYTE bWar;
DWORD dwGuildFrom;
DWORD dwGuildTo;
long lWarPrice;
long lInitialScore;
} TPacketGuildWar;

// Game -> DB : »ó´ëÀû º¯È°ª
// DB -> Game : ÅäÅ»µÈ ÃÖÁ¾°ª
typedef struct SPacketGuildWarScore
{
DWORD dwGuildGainPoint;
DWORD dwGuildOpponent;
long lScore;
long lBetScore;
} TPacketGuildWarScore;

typedef struct SRefineMaterial
{
DWORD vnum;
int count;
} TRefineMaterial;

typedef struct SRefineTable
{
//DWORD src_vnum;
//DWORD result_vnum;
DWORD id;
BYTE material_count;
int cost; // ¼Ò¿ä ºñ¿ë
int prob; // È®·ü
TRefineMaterial materials[REFINE_MATERIAL_MAX_NUM];
} TRefineTable;

typedef struct SBanwordTable
{
char szWord[BANWORD_MAX_LEN + 1];
} TBanwordTable;

typedef struct SPacketGDChangeName
{
DWORD pid;
char name[CHARACTER_NAME_MAX_LEN + 1];
} TPacketGDChangeName;

typedef struct SPacketDGChangeName
{
DWORD pid;
char name[CHARACTER_NAME_MAX_LEN + 1];
} TPacketDGChangeName;

typedef struct SPacketGuildLadder
{
DWORD dwGuild;
long lLadderPoint;
long lWin;
long lDraw;
long lLoss;
} TPacketGuildLadder;

typedef struct SPacketGuildLadderPoint
{
DWORD dwGuild;
long lChange;
} TPacketGuildLadderPoint;

typedef struct SPacketGuildUseSkill
{
DWORD dwGuild;
DWORD dwSkillVnum;
DWORD dwCooltime;
} TPacketGuildUseSkill;

typedef struct SPacketGuildSkillUsableChange
{
DWORD dwGuild;
DWORD dwSkillVnum;
BYTE bUsable;
} TPacketGuildSkillUsableChange;

typedef struct SPacketGDLoginKey
{
DWORD dwAccountID;
DWORD dwLoginKey;
} TPacketGDLoginKey;

typedef struct SPacketGDAuthLogin
{
DWORD dwID;
DWORD dwLoginKey;
char szLogin[LOGIN_MAX_LEN + 1];
char szSocialID[SOCIAL_ID_MAX_LEN + 1];
DWORD adwClientKey[4];
int iPremiumTimes[PREMIUM_MAX_NUM];
} TPacketGDAuthLogin;

typedef struct SPacketGDLoginByKey
{
char szLogin[LOGIN_MAX_LEN + 1];
DWORD dwLoginKey;
DWORD adwClientKey[4];
char szIP[MAX_HOST_LENGTH + 1];
} TPacketGDLoginByKey;

/**
* @version 05/06/08 Bang2ni - Áö¼Ó½Ã°£ Ãß°¡
*/
typedef struct SPacketGiveGuildPriv
{
BYTE type;
int value;
DWORD guild_id;
time_t duration_sec; ///< Áö¼Ó½Ã°£
} TPacketGiveGuildPriv;
typedef struct SPacketGiveEmpirePriv
{
BYTE type;
int value;
BYTE empire;
time_t duration_sec;
} TPacketGiveEmpirePriv;
typedef struct SPacketGiveCharacterPriv
{
BYTE type;
int value;
DWORD pid;
} TPacketGiveCharacterPriv;
typedef struct SPacketRemoveGuildPriv
{
BYTE type;
DWORD guild_id;
} TPacketRemoveGuildPriv;
typedef struct SPacketRemoveEmpirePriv
{
BYTE type;
BYTE empire;
} TPacketRemoveEmpirePriv;

typedef struct SPacketDGChangeCharacterPriv
{
BYTE type;
int value;
DWORD pid;
BYTE bLog;
} TPacketDGChangeCharacterPriv;

/**
* @version 05/06/08 Bang2ni - Áö¼Ó½Ã°£ Ãß°¡
*/
typedef struct SPacketDGChangeGuildPriv
{
BYTE type;
int value;
DWORD guild_id;
BYTE bLog;
time_t end_time_sec; ///< Áö¼Ó½Ã°£
} TPacketDGChangeGuildPriv;

typedef struct SPacketDGChangeEmpirePriv
{
BYTE type;
int value;
BYTE empire;
BYTE bLog;
time_t end_time_sec;
} TPacketDGChangeEmpirePriv;

typedef struct SPacketMoneyLog
{
BYTE type;
DWORD vnum;
INT gold;
} TPacketMoneyLog;

typedef struct SPacketGDGuildMoney
{
DWORD dwGuild;
INT iGold;
} TPacketGDGuildMoney;

typedef struct SPacketDGGuildMoneyChange
{
DWORD dwGuild;
INT iTotalGold;
} TPacketDGGuildMoneyChange;

typedef struct SPacketDGGuildMoneyWithdraw
{
DWORD dwGuild;
INT iChangeGold;
} TPacketDGGuildMoneyWithdraw;

typedef struct SPacketGDGuildMoneyWithdrawGiveReply
{
DWORD dwGuild;
INT iChangeGold;
BYTE bGiveSuccess;
} TPacketGDGuildMoneyWithdrawGiveReply;

typedef struct SPacketSetEventFlag
{
char szFlagName[EVENT_FLAG_NAME_MAX_LEN + 1];
long lValue;
} TPacketSetEventFlag;

typedef struct SPacketLoginOnSetup
{
DWORD dwID;
char szLogin[LOGIN_MAX_LEN + 1];
char szSocialID[SOCIAL_ID_MAX_LEN + 1];
char szHost[MAX_HOST_LENGTH + 1];
DWORD dwLoginKey;
DWORD adwClientKey[4];
} TPacketLoginOnSetup;

typedef struct SPacketGDCreateObject
{
DWORD dwVnum;
DWORD dwLandID;
INT lMapIndex;
INT x, y;
float xRot;
float yRot;
float zRot;
} TPacketGDCreateObject;

typedef struct SPacketGDHammerOfTor
{
DWORD key;
DWORD delay;
} TPacketGDHammerOfTor;

typedef struct SGuildReserve
{
DWORD dwID;
DWORD dwGuildFrom;
DWORD dwGuildTo;
DWORD dwTime;
BYTE bType;
long lWarPrice;
long lInitialScore;
bool bStarted;
DWORD dwBetFrom;
DWORD dwBetTo;
long lPowerFrom;
long lPowerTo;
long lHandicap;
} TGuildWarReserve;

typedef struct
{
DWORD dwWarID;
char szLogin[LOGIN_MAX_LEN + 1];
DWORD dwGold;
DWORD dwGuild;
} TPacketGDGuildWarBet;

// Marriage

typedef struct
{
DWORD dwPID1;
DWORD dwPID2;
time_t tMarryTime;
char szName1[CHARACTER_NAME_MAX_LEN + 1];
char szName2[CHARACTER_NAME_MAX_LEN + 1];
} TPacketMarriageAdd;

typedef struct
{
DWORD dwPID1;
DWORD dwPID2;
INT iLovePoint;
BYTE byMarried;
} TPacketMarriageUpdate;

typedef struct
{
DWORD dwPID1;
DWORD dwPID2;
} TPacketMarriageRemove;

typedef struct
{
DWORD dwPID1;
DWORD dwPID2;
} TPacketWeddingRequest;

typedef struct
{
DWORD dwPID1;
DWORD dwPID2;
DWORD dwMapIndex;
} TPacketWeddingReady;

typedef struct
{
DWORD dwPID1;
DWORD dwPID2;
} TPacketWeddingStart;

typedef struct
{
DWORD dwPID1;
DWORD dwPID2;
} TPacketWeddingEnd;

/// °³ÀλóÁ¡ °¡°İÁ¤º¸ÀÇ Çì´õ. °¡º¯ ÆĞŶÀ¸·Î ÀÌ µÚ¿¡ byCount ¸¸ÅÀÇ TItemPriceInfo °¡ ¿Â´Ù.
typedef struct SPacketMyshopPricelistHeader
{
DWORD dwOwnerID; ///< °¡°İÁ¤º¸¸¦ °¡Áø Ç÷¹À̾î ID
BYTE byCount; ///< °¡°İÁ¤º¸ °¹¼ö
} TPacketMyshopPricelistHeader;

/// °³ÀλóÁ¡ÀÇ ´ÜÀÏ ¾ÆÀÌÅÛ¿¡ ´ëÇÑ °¡°İÁ¤º¸
typedef struct SItemPriceInfo
{
DWORD dwVnum; ///< ¾ÆÀÌÅÛ vnum
DWORD dwPrice; ///< °¡°İ
} TItemPriceInfo;

/// °³ÀλóÁ¡ ¾ÆÀÌÅÛ °¡°İÁ¤º¸ ¸®½ºÆ® Å×À̺í
typedef struct SItemPriceListTable
{
DWORD dwOwnerID; ///< °¡°İÁ¤º¸¸¦ °¡Áø Ç÷¹À̾î ID
BYTE byCount; ///< °¡°İÁ¤º¸ ¸®½ºÆ®ÀÇ °¹¼ö

TItemPriceInfo aPriceInfo[SHOP_PRICELIST_MAX_NUM]; ///< °¡°İÁ¤º¸ ¸®½ºÆ®
} TItemPriceListTable;

typedef struct
{
char szName[CHARACTER_NAME_MAX_LEN + 1];
long lDuration;
} TPacketBlockChat;

// PCBANG_IP_LIST
typedef struct SPacketPCBangIP
{
DWORD id;
DWORD ip;
} TPacketPCBangIP;
// END_OF_PCBANG_IP_LIST


//ADMIN_MANAGER
typedef struct TAdminInfo
{
int m_ID; //°íÀ¯ID
char m_szAccount[32]; //°èÁ¤
char m_szName[32]; //ij¸¯ÅÍÀ̸§
char m_szContactIP[16]; //Á¢±Ù¾ÆÀÌÇÇ
char m_szServerIP[16]; //¼¹ö¾ÆÀÌÇÇ
int m_Authority; //񀀥
} tAdminInfo;
//END_ADMIN_MANAGER

//BOOT_LOCALIZATION
struct tLocale
{
char szValue[32];
char szKey[32];
};
//BOOT_LOCALIZATION

//RELOAD_ADMIN
typedef struct SPacketReloadAdmin
{
char szIP[16];
} TPacketReloadAdmin;
//END_RELOAD_ADMIN

typedef struct tChangeGuildMaster
{
DWORD dwGuildID;
DWORD idFrom;
DWORD idTo;
} TPacketChangeGuildMaster;

typedef struct tItemIDRange
{
DWORD dwMin;
DWORD dwMax;
DWORD dwUsableItemIDMin;
} TItemIDRangeTable;

typedef struct tUpdateHorseName
{
DWORD dwPlayerID;
char szHorseName[CHARACTER_NAME_MAX_LEN + 1];
} TPacketUpdateHorseName;

typedef struct tDC
{
char login[LOGIN_MAX_LEN + 1];
} TPacketDC;

typedef struct tNeedLoginLogInfo
{
DWORD dwPlayerID;
} TPacketNeedLoginLogInfo;

//µ¶ÀÏ ¼±¹° ¾Ë¸² ±â´É Å×½ºÆ®¿ë ÆĞŶ Á¤º¸
typedef struct tItemAwardInformer
{
char login[LOGIN_MAX_LEN + 1];
char command[20]; //¸í·É¾î
unsigned int vnum; //¾ÆÀÌÅÛ
} TPacketItemAwardInfromer;
// ¼±¹° ¾Ë¸² ±â´É »èÁ¦¿ë ÆĞŶ Á¤º¸
typedef struct tDeleteAwardID
{
DWORD dwID;
} TPacketDeleteAwardID;

typedef struct SChannelStatus
{
short nPort;
BYTE bStatus;
} TChannelStatus;

#pragma pack()
#endif
[/CODE]#pragma#endif
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)