2024-12-21 10:04:04 +08:00
# pragma once
# include "DNServerPacketCash.h"
# include "Util.h"
# pragma pack(push, 1)
struct TQHeader
{
BYTE cThreadID ;
char cWorldSetID ;
UINT nAccountDBID ;
} ;
struct TAHeader
{
UINT nAccountDBID ;
int nRetCode ;
} ;
//--------------------------------------------------------------
// DB Packet
//--------------------------------------------------------------
namespace DBPacket
{
struct TSkillCoolTime
{
int nSkillID ;
int nCoolTime ;
} ;
struct TItemCoolTime
{
INT64 biItemSerial ;
int nCoolTime ;
} ;
struct TDurabilityInfo
{
INT64 biSerial ;
USHORT wDur ;
} ;
struct TItemCountInfo
{
INT64 biSerial ;
short wCount ;
} ;
struct TExchangeItem
{
BYTE cSlotIndex ;
int nItemID ;
INT64 biSerial ;
INT64 biNewSerial ;
short wCount ;
} ;
struct TSendMailItem : public TItemInfo
{
INT64 biNewSerial ;
} ;
struct TAttachMail
{
int nMailDBID ;
char cItemAttachCount ; // ÷<> ξ<EFBFBD> <CEBE> <EFBFBD> <EFBFBD> ۰ <EFBFBD> <DBB0> <EFBFBD>
INT64 biAttachCoin ; // ÷<> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> ΰ<EFBFBD>
# ifdef PRE_ADD_JOINGUILD_SUPPORT
BYTE cMailType ;
# endif //#ifdef PRE_ADD_JOINGUILD_SUPPORT
TItem Item [ MAILATTACHITEMMAX ] ;
} ;
struct TRequestTakeAttachInfo
{
int nMailDBID ;
char cAttachSlotIndex ; // -1: 5ĭ <20> <> <EFBFBD> <EFBFBD> <20> ޱ<EFBFBD> , 0 - 4: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ޱ<EFBFBD>
bool bAttachCoin ;
INT64 biSerial [ MAILATTACHITEMMAX ] ;
BYTE cSlotIndex [ MAILATTACHITEMMAX ] ;
} ;
struct TTakeAttachInfo
{
int nMailDBID ;
INT64 biAttachCoin ; // ÷<> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> ΰ<EFBFBD>
# ifdef PRE_ADD_JOINGUILD_SUPPORT
bool bAddGuildWare ;
# endif //#ifdef PRE_ADD_JOINGUILD_SUPPORT
TItemInfo TakeItem [ MAILATTACHITEMMAX ] ;
} ;
struct TPetalInfo
{
char cSlotIndex ;
int nItemSN ;
INT64 biSerial ;
int nItemID ;
int nPetal ;
} ;
struct TPetalInfoEx : TPetalInfo
{
int nFKey ;
} ;
struct TCashFailItem
{
INT64 biPurchaseOrderID ;
INT64 biSenderCharacterDBID ;
bool bGift ;
int nItemSN ;
int nItemID ;
char cItemOption ;
int nPaidCashAmount ;
} ;
struct TModCashFailItemEx : TCashItemBase
{
INT64 biPurchaseOrderID ;
INT64 biSenderCharacterDBID ;
bool bGift ;
} ;
struct TMaterialItemInfo
{
DBDNWorldDef : : ItemLocation : : eCode Code ;
TItemInfo ItemInfo ;
} ;
struct TVehicleInfo : public TVehicleItem , TVehicleBase
{
int nPetIndex ;
__time64_t tLastHungerModifyDate ;
} ;
struct TAddMaterializedPet
{
BYTE cSlotIndex ;
int nItemID ;
INT64 biItemSerial ;
} ;
struct TItemIndexSerial
{
BYTE cSlotIndex ;
INT64 biItemSerial ;
} ;
struct TItemIDOption
{
int nItemID ;
char cOption ;
} ;
struct TItemSNIDOption
{
int nItemSN ;
int nItemID ;
char cOption ;
} ;
struct TReceiveGift
{
TReceiveGiftData GiftData ;
int nItemSN ;
DBPacket : : TItemIDOption ItemIDOptions [ PACKAGEITEMMAX ] ;
bool bFail ;
} ;
} ;
struct TDBListCharData
{
# if defined(PRE_MOD_SELECT_CHAR)
BYTE cWorldID ;
# endif // #if defined(PRE_MOD_SELECT_CHAR)
INT64 biCharacterDBID ;
# if !defined(PRE_MOD_SELECT_CHAR)
BYTE cCharIndex ;
# endif // #if defined(PRE_MOD_SELECT_CHAR)
WCHAR wszCharacterName [ NAMELENMAX ] ;
BYTE cLevel ;
BYTE cJob ;
int nLastVillageMapID ;
int nLastSubVillageMapID ;
int nMapID ;
int nDefaultBody ; // ó<> <C3B3> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> equip
int nDefaultLeg ;
int nDefaultHand ;
int nDefaultFoot ;
DWORD dwHairColor ;
DWORD dwEyeColor ;
DWORD dwSkinColor ;
bool bVillageFirstVisit ;
int nChecksum ;
int nEquipArray [ EQUIPMAX ] ;
int nCashEquipArray [ CASHEQUIPMAX ] ;
bool bDeleteFlag ;
__time64_t DeleteDate ;
__time64_t LastLoginDate ;
__time64_t CreateDate ;
# if defined( PRE_ADD_NEWCOMEBACK )
bool bCombackEffectItem ;
# endif
# if defined( PRE_ADD_DWC )
BYTE cAccountLevel ;
# endif // #if defined( PRE_ADD_DWC )
} ;
struct TCreateCharacterItem
{
int nItemID ;
BYTE cCount ;
USHORT wDur ;
} ;
struct TRestraintForAccountAndCharacter
{
char cLevelCode ;
__time64_t _tStartDate ;
__time64_t _tEndDate ;
WCHAR wszRestraintReason [ RESTRAINTREASONMAX ] ;
int iReasonID ;
} ;
//#########################################################################################################################################
// MAINCMD_ETC
//#########################################################################################################################################
// Query-Queue
struct TDBQueryData : public DNTPacketHeader
{
public :
void Set ( const int iMainCmd , const int iSubCmd , const char * cBuf , const unsigned short uLen )
{
DN_ASSERT ( iMainCmd < 255 , " Invalid! " ) ;
DN_ASSERT ( iSubCmd < 255 , " Invalid! " ) ;
DN_ASSERT ( NULL ! = cBuf , " Invalid! " ) ;
DN_ASSERT ( uLen > 0 , " Invalid! " ) ;
iLen = uLen ;
cMainCmd = iMainCmd ;
cSubCmd = iSubCmd ;
: : memcpy ( buf , cBuf , uLen ) ;
}
void Reset ( )
{
iLen = 0 ;
cMainCmd = 0 ;
cSubCmd = 0 ;
}
public :
char buf [ 1 ] ; // TDBQueryData <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> DNTPacket <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ߱<EFBFBD> <20> <> <EFBFBD> <EFBFBD> DNTPacket::buf <20> <> <20> Ϻ η<CFBA> <20> ̸<EFBFBD> <CCB8> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϰ<EFBFBD> <20> Ͽ<EFBFBD> <CFBF> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> ũ<> <C5A9> <EFBFBD> <EFBFBD> <20> ּ<EFBFBD> 1 <20> <> <20> <> <EFBFBD> <EFBFBD>
} ;
struct TDBQueryQueue
{
public :
TDBQueryQueue ( ) {
Reset ( ) ;
}
bool IsEmpty ( ) const
{
return ( 0 > = m_nSize ) ;
}
bool IsFull ( ) const
{
return ( sizeof ( m_Buffer ) < = m_nSize ) ;
}
bool CheckIntegrity ( ) const
{
if ( IsEmpty ( ) ) {
return false ;
}
if ( GetSize ( ) > sizeof ( * this ) ) {
return false ;
}
return true ;
}
void Reset ( )
{
m_nCheckSum = DBQUERYAUTOCHKSUM ; // 20091022 <20> <> Ŷ ó<> <C3B3> <20> <> <20> <> <EFBFBD> Ἲ üũ<C3BC> <C5A9> <20> <> <EFBFBD> <EFBFBD> <20> ӽ<EFBFBD> <20> ߰<EFBFBD> ??? (b4nfter)
m_nSize = 0 ;
/*
// P.S.> IsEmpty() <20> <> <20> <> <EFBFBD> <EFBFBD> üũ<C3BC> <C5A9> ö<> <C3B6> <EFBFBD> <EFBFBD> <20> ؾ<EFBFBD> <D8BE> <EFBFBD>
for ( int iIndex = 0 ; _countof ( m_Queue ) > iIndex ; + + iIndex ) {
m_Queue [ iIndex ] . Reset ( ) ;
}
*/
}
bool Add ( const int iMainCmd , const int iSubCmd , const char * cBuf , const unsigned short uLen )
{
DN_ASSERT ( iMainCmd < 255 , " Invalid! " ) ;
DN_ASSERT ( iSubCmd < 255 , " Invalid! " ) ;
DN_ASSERT ( NULL ! = cBuf , " Invalid! " ) ;
if ( MAINCMD_ETC = = iMainCmd & & DB : : QUERY_UPDATEQUERYQUEUE = = iSubCmd ) {
DN_ASSERT ( 0 , " Invalid! " ) ; // <20> <> <20> <> Ŷ<EFBFBD> <C5B6> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> DB <20> ۾<EFBFBD> <DBBE> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> Ǿ<C7BE> <EEBCAD> <20> ʵ<EFBFBD>
}
if ( IsFull ( ) | | static_cast < int > ( sizeof ( DNTPacketHeader ) + uLen ) > GetFreeBufferSize ( ) ) {
DN_RETURN ( false ) ;
}
TDBQueryData * pQueryData = reinterpret_cast < TDBQueryData * > ( & m_Buffer [ m_nSize ] ) ;
DN_ASSERT ( NULL ! = pQueryData , " Invalid! " ) ;
pQueryData - > Set ( iMainCmd , iSubCmd , cBuf , uLen ) ;
m_nSize + = ( sizeof ( DNTPacketHeader ) + uLen ) ;
DN_ASSERT ( GetTotalBufferSize ( ) > = m_nSize , " Invalid! " ) ;
return true ;
}
TDBQueryData * At ( const int nCurPtr )
{
DN_ASSERT ( GetTotalBufferSize ( ) > = m_nSize , " Invalid! " ) ;
DN_ASSERT ( m_nSize > static_cast < int > ( nCurPtr + sizeof ( TDBQueryData ) ) , " Invalid! " ) ;
return ( reinterpret_cast < TDBQueryData * > ( & m_Buffer [ nCurPtr ] ) ) ;
}
const TDBQueryData * At ( const int nCurPtr ) const
{
return ( const_cast < TDBQueryQueue * > ( this ) - > At ( nCurPtr ) ) ;
}
int GetTotalBufferSize ( ) const
{
return ( sizeof ( m_Buffer ) ) ;
}
int GetFreeBufferSize ( ) const
{
return ( sizeof ( m_Buffer ) - m_nSize ) ;
}
int GetSize ( ) const
{
return ( static_cast < int > ( ( sizeof ( * this ) - ( sizeof ( this - > m_Buffer [ 0 ] ) * ( _countof ( m_Buffer ) - m_nSize ) ) ) & ULONG_MAX ) ) ;
}
public :
unsigned int m_nCheckSum ; // <20> ӽ<EFBFBD> ???
int m_nSize ;
char m_Buffer [ DBQUERYSTREAMDATAMAX ] ;
} ;
//QUERY_EVENTLIST
struct TQEventList : public TQHeader
{
} ;
struct TEventInfo
{
int EventID ;
int WroldID ;
# if defined(PRE_ADD_WORLD_EVENT)
# else
WCHAR wszMapIndex [ EVENTMAPSTRMAX ] ;
# endif //#if defined(PRE_ADD_WORLD_EVENT)
time_t _tBeginTime ;
time_t _tEndTime ;
union
{
struct
{
int EventType1 ;
int EventType2 ;
int EventType3 ;
} ;
int EventType [ 3 ] ;
} ;
union
{
struct
{
int Att1 ;
int Att2 ;
int Att3 ;
int Att4 ;
int Att5 ;
} ;
int Att [ 5 ] ;
} ;
} ;
struct TAEventList : public TAHeader
{
char cWorldSetID ;
BYTE cCount ;
TEventInfo EventList [ EVENTLISTMAX ] ;
} ;
# ifdef PRE_MOD_RESTRICT_IDENTITY_IP
struct TQSimpleConfig : public TQHeader
{
} ;
struct TASimpleConfig : public TAHeader
{
BYTE cCount ;
SimpleConfig : : ConfigData Configs [ SimpleConfig : : ConfigDataCountMax ] ;
} ;
# endif //#ifdef PRE_MOD_RESTRICT_IDENTITY_IP
struct TQGetDBSID : public TQHeader
{
} ;
struct TAGetDBSID : public TAHeader
{
int nServerID ;
} ;
// QUERY_LOGOUT
struct TQLogout : public TQHeader
{
UINT nSessionID ;
# if defined (_KR)
BYTE szMachineID [ MACHINEIDMAX ] ;
# endif
} ;
// QUERY_LOGINCHARACTER
struct TQLoginCharacter : public TQHeader
{
INT64 biCharacterDBID ;
UINT uiSessionID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
// QUERY_LOGOUTCHARACTER
struct TQLogoutCharacter : public TQHeader
{
INT64 biCharacterDBID ;
UINT uiSessionID ;
char cViewCashEquipBitmap [ VIEWCASHEQUIPMAX_BITSIZE ] ; // <20> Ϲ <EFBFBD> /ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> bitmap<61> <70> <EFBFBD> <EFBFBD> ó<> <C3B3>
} ;
// GameOption ----------------------------------------------------------------------
// QUERY_GETGAMEOPTION
struct TQGetGameOption : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetGameOption : public TAHeader
{
INT64 biCharacterDBID ;
TGameOptions Option ;
} ;
//QUERY_SETGAMEOPTION
struct TQSetGameOption : public TQHeader
{
INT64 biCharacterDBID ;
TGameOptions Option ;
} ;
struct TQUpdateSecondAuthPassword : public TQHeader
{
WCHAR wszOldPW [ SecondAuth : : Common : : PWMaxLength + 1 ] ;
WCHAR wszNewPW [ SecondAuth : : Common : : PWMaxLength + 1 ] ;
} ;
struct TAUpdateSecondAuthPassword : public TAHeader
{
char cFailCount ;
} ;
struct TQUpdateSecondAuthLock : public TQHeader
{
bool bIsLock ;
WCHAR wszPW [ SecondAuth : : Common : : PWMaxLength + 1 ] ; // UnLock <20> ϰ<EFBFBD> <CFB0> <EFBFBD> Password
} ;
struct TAUpdateSecondAuthLock : public TAHeader
{
bool bIsLock ;
char cFailCount ;
} ;
struct TQInitSecondAuth : public TQHeader
{
} ;
struct TQValidateSecondAuth : public TQHeader
{
int nAuthCheckType ;
WCHAR wszPW [ SecondAuth : : Common : : PWMaxLength + 1 ] ;
} ;
struct TAValidateSecondAuth : public TAHeader
{
int nAuthCheckType ;
BYTE cFailCount ;
} ;
// Restraint ----------------------------------------------------------------------
struct TQRestraint : public TQHeader //QUERY_RESTRAINT
{
} ;
struct TARestraint : public TAHeader
{
BYTE cCount ;
TRestraint restraint [ RESTRAINTMAX ] ;
} ;
struct TQSetRestraint : public TQHeader //QUERY_SETRESTRAINT
{
BYTE cTargetCode ; //DBDNWorldDef::RestraintTargetCode::eCode
BYTE cRestraintCode ; //DBDNWorldDef::RestraintTypeCode::eCode
INT64 biCharacterDBID ; //if target code "character"
WCHAR wszRestraintreason [ RESTRAINTREASONMAX ] ; //Reason String
WCHAR wszRestraintreasonForDolis [ RESTRAINTREASONFORDOLISMAX ] ;
USHORT nDurationDays ; //duration
int nDolisReasonCode ; //<2F> ⺻<EFBFBD> <E2BABB> 110 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> α <CEB1> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 111 <20> ڵ<EFBFBD> <20> <> ȣ <EFBFBD> <C8A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ǵ<EFBFBD> <20> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ǹٶ<C7B9> )
} ;
// QUERY_GET_KEYSETTINGOPTION
struct TQGetKeySettingOption : public TQHeader
{
} ;
struct TAGetKeySettingOption : public TAHeader
{
TKeySetting sKeySetting ;
} ;
// QUERY_MOD_KEYSETTINGOPTION
struct TQModKeySettingOption : public TQHeader
{
bool bUseDefault ;
TKeySetting sKeySetting ;
} ;
struct TAModKeySettingOption : public TAHeader
{
} ;
// QUERY_GET_PADSETTINGOPTION
struct TQGetPadSettingOption : public TQHeader
{
} ;
struct TAGetPadSettingOption : public TAHeader
{
TPadSetting sPadSetting ;
} ;
// QUERY_MOD_PADSETTINGOPTION
struct TQModPadSettingOption : public TQHeader
{
bool bUseDefault ;
TPadSetting sPadSetting ;
} ;
struct TAModPadSettingOption : public TAHeader
{
} ;
struct TQGetProfile : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetProfile : public TAHeader
{
TProfile sProfile ;
} ;
struct TQSetProfile : public TQHeader
{
INT64 biCharacterDBID ;
TProfile sProfile ;
} ;
struct TASetProfile : public TAHeader
{
TProfile sProfile ;
} ;
struct TQAddAbuseLog : public TQHeader
{
BYTE cAbuseCode ;
INT64 biCharacterDBID ;
USHORT unLen ;
WCHAR wszBuf [ 1024 ] ;
} ;
struct TQAddAbuseMonitor : public TQHeader
{
INT64 biCharacterDBID ;
int iCount ;
# if defined(PRE_ADD_ANTI_CHAT_SPAM)
int iCount2 ; // ä<> <C3A4> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
# endif
} ;
struct TQDelAbuseMonitor : public TQHeader
{
INT64 biCharacterDBID ;
# if defined(PRE_ADD_ANTI_CHAT_SPAM)
char cType ; // 1-<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¡, 2-ä<> þ<EFBFBD> <C3BE> <EFBFBD> ¡, 3-<2D> Ѵ <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
# endif
} ;
struct TQGetAbuseMonitor : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetAbuseMonitor : public TAHeader
{
int iAbuseCount ;
int iCallCount ;
int iPlayRestraintValue ;
int iDBResetRestraintValue ;
} ;
struct TQGetWholeAbuseMonitor : public TQHeader
{
UINT nAccountDBID ;
# if defined(PRE_ADD_MULTILANGUAGE)
char cSelectedLang ;
# endif //#if defined(PRE_ADD_MULTILANGUAGE)
} ;
struct TAbuseMonitor
{
INT64 biCharacterDBID ;
int iAbuseCount ;
int iCallCount ;
int iPlayRestraintValue ;
int iDBResetRestraintValue ;
} ;
struct TAGetWholeAbuseMonitor : public TAHeader
{
# if defined(PRE_ADD_MULTILANGUAGE)
char cSelectedLang ;
# endif //#if defined(PRE_ADD_MULTILANGUAGE)
BYTE cCount ;
TAbuseMonitor Abuse [ CHARCOUNTMAX ] ;
} ;
// QUERY_DBRESULTERROR
struct TADBResultError : public TAHeader
{
char cMainCmd ;
char cSubCmd ;
} ;
# if defined( _US )
struct TQKeepAlive : public TQHeader
{
} ;
# endif // #if defined( _US )
// QUERY_CHANGECHARACTERNAME // ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQChangeCharacterName : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
WCHAR wszOriginName [ NAMELENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD>
WCHAR wszCharacterName [ NAMELENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD>
BYTE btChangeCode ; // 1 = <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ں<EFBFBD> <DABA> <EFBFBD> , 2 = ij<> <C4B3> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD> <CCB8> <EFBFBD> <EFBFBD> <EFBFBD>
int nReservedPeriodDay ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD> <CCB8> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ǵ<EFBFBD> <20> Ⱓ
INT64 biItemSerial ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID
int nNextPeriodDay ; // <20> ֱ<EFBFBD> <20> ̸<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ڷκ<DAB7> <CEBA> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ⱓ <20> <> <EFBFBD> <EFBFBD> . <20> <> <EFBFBD> <EFBFBD> : day
} ;
struct TAChangeCharacterName : public TAHeader
{
char cWorldSetID ;
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
INT64 biItemSerial ;
WCHAR wszOriginName [ NAMELENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD>
WCHAR wszCharacterName [ NAMELENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD>
__time64_t tNextChangeDate ;
} ;
// QUERY_GETLIST_ETCPOINT
struct TQGetListEtcPoint : public TQHeader
{
INT64 nCharacterDBID ;
} ;
struct TAGetListEtcPoint : public TAHeader
{
INT64 nCharacterDBID ;
INT64 biEtcPoint [ DBDNWorldDef : : EtcPointCode : : Max ] ;
} ;
struct TQAddEtcPoint : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cType ;
INT64 biAddPoint ;
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TAAddEtcPoint : public TAHeader
{
BYTE cType ;
INT64 biLeftPoint ;
} ;
struct TQUseEtcPoint : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cType ;
INT64 biUsePoint ;
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TAUseEtcPoint : public TAHeader
{
BYTE cType ;
INT64 biLeftPoint ;
} ;
struct TQSaveConnectDurationTime : public TQHeader
{
INT64 biCharacterDBID ;
char cCount ;
TTimeEvent Event [ TIMEEVENTMAX ] ;
} ;
struct TQModTimeEventDate : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TQChangeJobCode : public TQHeader
{
INT64 biCharacterDBID ;
int nFirstJobIDBefore ;
int nFirstJobIDAfter ;
int nSecondJobIDBefore ;
int nSecondJobIDAfter ;
int nChannelID ;
int nMapID ;
char cSkillPage ;
} ;
struct TAChangeJobCode : public TAHeader
{
USHORT wSkillPoint ; // <20> <> ų <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> ų <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
USHORT wTotalSkillPoint ; // <20> <> ų <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> ų <20> <> <EFBFBD> <EFBFBD> Ʈ.
} ;
struct TQGetListVariableReset : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListVariableReset : public TAHeader
{
BYTE cCount ;
CommonVariable : : Data Data [ CommonVariable : : Type : : Max ] ;
} ;
struct TQModVariableReset : public TQHeader
{
INT64 biCharacterDBID ;
CommonVariable : : Type : : eCode Type ;
INT64 biValue ;
__time64_t tResetTime ;
} ;
# if defined(PRE_ADD_GAMEQUIT_REWARD)
struct TQModNewbieRewardFlag : public TQHeader
{
bool bRewardFlag ;
} ;
# endif // #if defined(PRE_ADD_GAMEQUIT_REWARD)
# if defined(PRE_ADD_CP_RANK)
struct TQAddStageClearBest : public TQHeader
{
int nMapID ;
INT64 biCharacterDBID ;
DBDNWorldDef : : ClearGradeCode : : eCode Code ;
int nClearPoint ;
int nLimitLevel ;
} ;
struct TQGetStageClearBest : public TQHeader
{
int nMapID ;
} ;
struct TAGetStageClearBest : public TAHeader
{
TStageClearBest sLegendClearBest ;
TStageClearBest sMonthlyClearBest ;
} ;
struct TQGetStageClearPersonalBest : public TQHeader
{
int nMapID ;
INT64 biCharacterDBID ;
} ;
struct TAGetStageClearPersonalBest : public TAHeader
{
DBDNWorldDef : : ClearGradeCode : : eCode Code ;
int nClearPoint ;
} ;
struct TQInitStageCP : public TQHeader
{
char cInitType ;
} ;
# endif //#if defined(PRE_ADD_CP_RANK)
// QUERY_MODCHARACTERSLOTCOUNT
struct TQModCharacterSlotCount : public TQHeader
{
INT64 biCharacterDBID ;
} ;
//#########################################################################################################################################
// MAINCMD_STATUS
//#########################################################################################################################################
// QUERY_SELECTCHARACTER
struct TQSelectCharacter : public TQHeader
{
INT64 biCharacterDBID ;
# if !defined( PRE_PARTY_DB )
TPARTYID PartyID ;
# endif
UINT nLastServerType ;
WCHAR wszAccountName [ IDLENMAX ] ;
} ;
const int nItemListMaxCount = EQUIPMAX + INVENTORYMAX + WAREHOUSEMAX + QUESTINVENTORYMAX + CASHEQUIPMAX + GLYPHMAX + TALISMAN_MAX + PERIODINVENTORYMAX + PERIODWAREHOUSEMAX ;
struct TASelectCharacter : public TAHeader
{
INT64 biCharacterDBID ;
TRestraintData RestraintData ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> Ÿ
TKeySetting KeySetting ; // Ű<> <C5B0> <EFBFBD> ð<EFBFBD> <C3B0> <EFBFBD>
TPadSetting PadSetting ;
# if !defined( PRE_PARTY_DB )
TPARTYID PartyID ;
# endif
TGuildSelfView GuildSelfView ; // <20> <> <EFBFBD> <EFBFBD> <20> ð<EFBFBD> <C3B0> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> )
bool bIsSetSecondAuthPW ; // 2<> <32> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> й<EFBFBD> ȣ <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
bool bIsSetSecondAuthLock ; // 2<> <32> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Lock <20> <> <EFBFBD> <EFBFBD>
# if defined(PRE_ADD_VIP)
int nVIPTotalPoint ; // <20> <> VIP <20> <> <EFBFBD> <EFBFBD> Ʈ
__time64_t tVIPEndDate ; // VIP <20> Ⱓ <20> <> <20> <> <EFBFBD> <EFBFBD>
bool bAutoPay ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 1=<3D> ڵ<EFBFBD> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD>
# endif // #if defined(PRE_ADD_VIP)
# if defined(_CH)
bool bIntroducer ; // <20> ߱<EFBFBD> <20> <> <EFBFBD> θ<EFBFBD> <CEB8> <EFBFBD> <20> <> õ<EFBFBD> <C3B5>
# endif // #if defined(_CH)
TVehicleCompact VehicleEquip ;
TVehicleCompact PetEquip ;
TUserData UserData ;
# ifdef PRE_ADD_JOINGUILD_SUPPORT
BYTE cGuildJoinLevel ; //<2F> <> <EFBFBD> 尡<EFBFBD> <E5B0A1> <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> ѹ<EFBFBD> )
bool bWasRewardedGuildMaxLevel ; //<2F> <> <EFBFBD> 忡<EFBFBD> <E5BFA1> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ҵ<DEBE> <D2B4> <EFBFBD> <20> ÷<EFBFBD> <C3B7> <EFBFBD>
# endif //#ifdef PRE_ADD_JOINGUILD_SUPPORT
# if defined(PRE_ADD_TALISMAN_SYSTEM)
int nTalismanOpenFlag ;
# endif
# if defined( PRE_ADD_CHARACTERCHECKSUM )
__time64_t tLastLoginDate ;
__time64_t tLastLogoutDate ;
UINT uiCheckSum ;
# endif // #if defined( PRE_ADD_CHARACTERCHECKSUM )
int nItemListCount ;
DBPacket : : TMaterialItemInfo ItemList [ nItemListMaxCount ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ؿ<EFBFBD> <D8BF> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> Դ<EFBFBD> ~
} ;
// QUERY_UPDATEUSERDATA, QUERY_CHANGESERVERUSERDATA, QUERY_LASTUPDATEUSERDATA
struct TQUpdateCharacter : public TQHeader
{
UINT uiDBRandomSeed ;
INT64 biCharacterDBID ;
int nMapIndex ; // <20> <> <EFBFBD> <EFBFBD> <20> ʹ <EFBFBD> ȣ
int nLastVillageMapIndex ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ʹ <EFBFBD> ȣ
int nLastSubVillageMapIndex ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Sub<75> <62> <EFBFBD> <EFBFBD> <20> ʹ <EFBFBD> ȣ
char cLastVillageGateNo ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> ȣ
int nPosX ; // <20> <> <EFBFBD> <EFBFBD> X<> <58> ǥ
int nPosY ; // <20> <> <EFBFBD> <EFBFBD> Y<> <59> ǥ
int nPosZ ; // <20> <> <EFBFBD> <EFBFBD> Z<> <5A> ǥ
float fRotate ; // Rotate
int nGlyphDelayTime ;
int nGlyphRemainTime ;
bool bExecuteScheduleedTask ;
char cViewCashEquipBitmap [ VIEWCASHEQUIPMAX_BITSIZE ] ; // <20> Ϲ <EFBFBD> /ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> bitmap<61> <70> <EFBFBD> <EFBFBD> ó<> <C3B3>
TQuickSlot QuickSlot [ QUICKSLOTMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> â (10<31> <30> <EFBFBD> <EFBFBD> 2<> <32> )
DBPacket : : TSkillCoolTime SkillCoolTime [ SKILLMAX ] ; // <20> <> ų
DBPacket : : TSkillCoolTime SkillCoolTime2 [ SKILLMAX ] ; // <20> <> ų2
DBPacket : : TItemCoolTime Equip [ EQUIPMAX ] ; // <20> <> <EFBFBD> <EFBFBD> â
# if defined(PRE_PERIOD_INVENTORY)
DBPacket : : TItemCoolTime Inventory [ INVENTORYTOTALMAX ] ; // <20> κ<EFBFBD> â
DBPacket : : TItemCoolTime Warehouse [ WAREHOUSETOTALMAX ] ; // â<> <C3A2> â
# else // #if defined(PRE_PERIOD_INVENTORY)
DBPacket : : TItemCoolTime Inventory [ INVENTORYMAX ] ; // <20> κ<EFBFBD> â
DBPacket : : TItemCoolTime Warehouse [ WAREHOUSEMAX ] ; // â<> <C3A2> â
# endif // #if defined(PRE_PERIOD_INVENTORY)
DBPacket : : TItemCoolTime CashEquip [ CASHEQUIPMAX ] ; // <20> <> <EFBFBD> <EFBFBD> â (ij<> <C4B3> )
DBPacket : : TItemCoolTime CashInventory [ CASHINVENTORYDBMAX ] ; // <20> κ<EFBFBD> â (ij<> <C4B3> )
# if defined( PRE_ITEMBUFF_COOLTIME )
DBPacket : : TItemCoolTime ServerWare [ WAREHOUSEMAX ] ; // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2>
DBPacket : : TItemCoolTime ServerWareCash [ WAREHOUSEMAX ] ; // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> (ij<> <C4B3> )
# endif
} ;
struct TAUpdateCharacter : public TAHeader
{
} ;
struct TQMWTest : public TQHeader
{
int iCount ;
} ;
// QUERY_CHANGESTAGEUSERDATA
struct TQChangeStageUserData : public TQHeader
{
INT64 biCharacterDBID ;
int nChannelID ;
int nMapID ;
TPARTYID PartyID ;
int nExp ;
INT64 biCoin ;
BYTE cRebirthCoin ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ϲ <EFBFBD> <20> <> Ȱ <20> <> <EFBFBD> <EFBFBD>
BYTE cPCBangRebirthCoin ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> PC<50> <43> <20> <> Ȱ <20> <> <EFBFBD> <EFBFBD>
short nCount ;
short nDeathCount ; // <20> <> <EFBFBD> <EFBFBD> Ƚ<EFBFBD> <C8BD>
BYTE cDifficult ; // <20> <> <EFBFBD> ̵<EFBFBD>
INT64 biPetItemSerial ;
int nPetExp ;
INT64 biPickUpCoin ;
DBPacket : : TDurabilityInfo ItemDurArr [ INVENTORYMAX + EQUIPMAX ] ;
} ;
struct TAChangeStageUserData : public TAHeader
{
BYTE cRebirthCoin ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ϲ <EFBFBD> <20> <> Ȱ <20> <> <EFBFBD> <EFBFBD>
BYTE cPCBangRebirthCoin ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> PC<50> <43> <20> <> Ȱ <20> <> <EFBFBD> <EFBFBD>
} ;
// QUERY_GETCHARACTERPARTIALYBYNAME,
struct TQGetCharacterPartialyByName : public TQHeader
{
WCHAR wszName [ NAMELENMAX ] ;
BYTE cReqType ; //eReqCharacterPartialy
} ;
// QUERY_GETCHARACTERPARTIALYBYDBID
struct TQGetCharacterPartialyByDBID : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cReqType ; //eReqCharacterPartialy
} ;
struct TAGetCharacterPartialy : public TAHeader
{
INT64 biCharacterDBID ;
BYTE cClass ;
BYTE cLevel ;
BYTE cJob ;
BYTE cReqType ; //eReqCharacterPartialy
} ;
// QUERY_CHECKFIRSTVILLAGE
struct TQCheckFirstVillage : public TQHeader
{
INT64 biCharacterDBID ;
} ;
// QUERY_LEVEL, // <20> <> <EFBFBD> <EFBFBD>
struct TQLevel : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cLevel ;
char cChangeCode ; // CharacterLevelChangeCode
int nChannelID ;
int nMapID ;
WCHAR wszCharName [ NAMELENMAX ] ;
} ;
// QUERY_EXP, // exp
struct TQExp : public TQHeader
{
INT64 biCharacterDBID ;
int nExp ;
char cChangeCode ; // eCharacterExpChangeCode
int nChannelID ;
int nMapID ;
INT64 biFKey ; // CharacterExpChangeCode<64> <65> <20> <> <EFBFBD> <EFBFBD> Ű. 1:QuestID, 2:PartyID or NULL, 3:NULL, 4:AuditLogID 5:ItemSerial
} ;
// QUERY_COIN
struct TQCoin : public TQHeader
{
INT64 biCharacterDBID ;
char cCoinChangeCode ; // CoinChangeCode
INT64 biChangeKey ; // <20> <> <EFBFBD> <EFBFBD> Ʈ<EFBFBD> <C6AE> <EFBFBD> ̵<EFBFBD>
INT64 nChangeCoin ; // <20> <> <EFBFBD> κ<EFBFBD> <CEBA> <EFBFBD> ġ<EFBFBD> <C4A1> (+/-)
int nChannelID ;
int nMapID ;
INT64 nTotalCoin ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ϰ<EFBFBD> <CFB0> ̶<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> <CFB1> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
// QUERY_WAREHOUSECOIN
struct TQWarehouseCoin : public TQHeader
{
INT64 biCharacterDBID ;
char cCoinChangeCode ; // CoinChangeCode
INT64 nChangeCoin ; // <20> <> <EFBFBD> κ<EFBFBD> <CEBA> <EFBFBD> ġ<EFBFBD> <C4A1> (+/-)
int nChannelID ;
int nMapID ;
INT64 nTotalCoin ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ϰ<EFBFBD> <CFB0> ̶<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> <CFB1> <EFBFBD> <EFBFBD> <EFBFBD>
INT64 nTotalWarehouseCoin ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ϰ<EFBFBD> <CFB0> ̶<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> <CFB1> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
// QUERY_MAPINFO
struct TQMapInfo : public TQHeader
{
INT64 biCharacterDBID ;
char cLastVillageGateNo ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> ȣ
int nLastVillageMapIndex ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ʹ <EFBFBD> ȣ
int nLastSubVillageMapIndex ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Sub<75> <62> <EFBFBD> <EFBFBD> <20> ʹ <EFBFBD> ȣ
int nMapIndex ; // <20> <> <EFBFBD> <EFBFBD> <20> ʹ <EFBFBD> ȣ
} ;
// QUERY_ADDCASHREBIRTHCOIN
struct TQAddCashRebirthCoin : public TQHeader
{
INT64 biCharacterDBID ;
int nRebirthCount ;
int nRebirthPrice ;
int nRebirthCode ;
int nRebirthKey ;
} ;
// QUERY_CASHREBIRTHCOIN
struct TQCashRebirthCoin : public TQHeader
{
INT64 biCharacterDBID ;
int nChannelID ;
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
// QUERY_FATIGUE
struct TQFatigue : public TQHeader
{
INT64 biCharacterDBID ;
char cFatigueTypeCode ; // FatigueTypeCode
int nChangeFatigue ; // <20> <> <EFBFBD> <EFBFBD> ġ
int nChannelID ;
int nMapID ;
} ;
// QUERY_EVENTFATIGUE
struct TQEventFatigue : public TQHeader
{
INT64 biCharacterDBID ;
int nChangeFatigue ; // <20> <> <EFBFBD> <EFBFBD> ġ
bool bReset ; // <20> ̺<EFBFBD> Ʈ <20> Ƿε<C7B7> <20> ʱ<EFBFBD> ȭ <20> <> <EFBFBD> <EFBFBD> . 0=<3D> ʱ<EFBFBD> ȭ <20> ƴ<EFBFBD> , 1=<3D> ʱ<EFBFBD> ȭ
char cInitTime ; // <20> ̺<EFBFBD> Ʈ <20> Ƿε<C7B7> <CEB5> <EFBFBD> <20> ʱ<EFBFBD> ȭ<EFBFBD> Ǵ<EFBFBD> <20> ð<EFBFBD> . 0 ~ 23
int nChannelID ;
int nMapID ;
} ;
// QUERY_JOB
struct TQJob : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cJob ;
} ;
// QUERY_GLYPHDELAYTIME
// QUERY_GLYPHREMAINTIME
struct TQGlyphAttributeTime : public TQHeader
{
INT64 biCharacterDBID ;
int nTime ;
} ;
// QUERY_NOTIFIER
struct TQNotifier : public TQHeader
{
INT64 biCharacterDBID ;
char cNotifierSlot ; // Notifier_
char cNotifierType ; // DNNotifier::Type <20> <>
int nID ;
} ;
// QUERY_DUNGEONCLEAR
struct TQDungeonClear : public TQHeader
{
INT64 biCharacterDBID ;
char cType ;
int nMapIndex ;
} ;
// QUERY_ETERNITYITEM
struct TQEternityItem : public TQHeader
{
INT64 biCharacterDBID ;
char cEternityCode ; // eEternityItem
int nEternityValue ;
} ;
// QUERY_COLOR
struct TQColor : public TQHeader
{
INT64 biCharacterDBID ;
char cItemType ;
DWORD dwColor ;
} ;
# ifdef PRE_FIX_63822
struct TAColor : public TAHeader
{
} ;
# endif //#ifdef PRE_FIX_63822
// QUERY_REBIRTHCOIN
struct TQRebirthCoin : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cRebirthCoin ;
BYTE cPCBangRebirthCoin ;
} ;
struct TAEffectItem : public TAHeader
{
int iOffset ;
TEffectItemInfo ItemInfo ;
} ;
// QUERY_NESTCLEARCOUNT, // NEST Ŭ<> <C5AC> <EFBFBD> <EFBFBD> Ƚ<> <C8BD> UPSERT
struct TQNestClearCount : public TQHeader
{
INT64 biCharacterDBID ;
int nMapIndex ;
char cClearType ; // eNestClearType
} ;
// QUERY_INITNESTCLEARCOUNT, // NEST <20> ְ<EFBFBD> Ŭ<> <C5AC> <EFBFBD> <EFBFBD> Ƚ<> <C8BD> <20> ʱ<EFBFBD> ȭ
struct TQInitNestClearCount : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAOwnChracterLevel : public TAHeader //MAINCMD_STATUS / QUERY_OWNCHRACTERLEVEL
{
BYTE cCount ;
TChracterLevel Level [ CHARCOUNTMAX ] ;
} ;
struct TQChangeSkillPage : public TQHeader
{
INT64 biCharacterDBID ;
char cSkillPage ;
} ;
# if defined( PRE_ADD_TOTAL_LEVEL_SKILL )
struct TQGetTotalLevelSkill : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetTotalLevelSkill : public TAHeader
{
int nTotalSkillLevel ;
TotalLevelSkill : : TTotalLevelSkillData TotalSkill [ TotalLevelSkill : : Common : : MAXSLOTCOUNT ] ;
} ;
struct TQAddTotalLevelSkill : public TQHeader
{
INT64 biCharacterDBID ;
int nSlotIndex ;
int nSkillID ;
} ;
# endif
# ifdef PRE_ADD_PRESET_SKILLTREE
struct TQGetSKillPreSetList : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetSKillPreSetList : public TAHeader
{
TSkillSetIndexData SKillIndex [ SKILLPRESETMAX ] ;
TSkillSetPartialData SKills [ SKILLMAX * SKILLPRESETMAX ] ;
} ;
struct TQAddSkillPreSet : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cIndex ;
WCHAR wszName [ SKILLPRESETNAMEMAX ] ;
BYTE cCount ;
TSkillSetPartialData SKill [ SKILLMAX ] ;
} ;
struct TAAddSkillPreSet : public TAHeader
{
} ;
struct TQDelSkillPreSet : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cIndex ;
} ;
struct TADelSkillPreSet : public TAHeader
{
} ;
# endif //#ifdef PRE_ADD_PRESET_SKILLTREE
//#########################################################################################################################################
// MAINCMD_MISSION
//#########################################################################################################################################
// QUERY_MISSIONGAIN
struct TQMissionGain : public TQHeader
{
INT64 biCharacterDBID ;
char MissionGain [ MISSIONMAX_BITSIZE ] ; // ȹ<> 濩<EFBFBD> <E6BFA9>
} ;
// QUERY_MISSIONACHIEVE
struct TQMissionAchieve : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionID ;
char cMissionType ; // eMissionType
char MissionAchieve [ MISSIONMAX_BITSIZE ] ; // <20> <> ǥ<EFBFBD> <EFBFBD> (on/off)
} ;
// QUERY_SETDAILYMISSION, // <20> <> <EFBFBD> <EFBFBD> <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> (ó<> <C3B3> <20> <> ~ <20> ־<EFBFBD> <D6BE> ٶ<EFBFBD> )
struct TQSetDailyMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ DAILYMISSIONMAX ] ;
} ;
// QUERY_SETWEEKLYMISSION, // <20> ְ<EFBFBD> <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> (ó<> <C3B3> <20> <> ~ <20> ־<EFBFBD> <D6BE> ٶ<EFBFBD> )
struct TQSetWeeklyMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ WEEKLYMISSIONMAX ] ;
} ;
# if defined(PRE_ADD_MONTHLY_MISSION)
// QUERY_SETMONTHLYMISSION, // <20> <> <EFBFBD> <EFBFBD> <20> ̺<EFBFBD> Ʈ <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> (ó<> <C3B3> <20> <> ~ <20> ־<EFBFBD> <D6BE> ٶ<EFBFBD> )
struct TQSetMonthlyMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ MONTHLYMISSIONMAX ] ;
} ;
# endif // #if defined(PRE_ADD_MONTHLY_MISSION)
// QUERY_SETWEEKENDEVENTMISSION, // <20> ָ<EFBFBD> <20> ̺<EFBFBD> Ʈ <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> (ó<> <C3B3> <20> <> ~ <20> ־<EFBFBD> <D6BE> ٶ<EFBFBD> )
struct TQSetWeekendEventMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ WEEKENDEVENTMISSIONMAX ] ;
} ;
// QUERY_SETGUILDWARMISSION, // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD>
struct TQSetGuildWarMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ GUILDWARMISSIONMAX ] ;
} ;
// QUERY_SETGUILDCOMMONMISSION, // <20> <> <EFBFBD> <EFBFBD> <20> Ϲ <EFBFBD> <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD>
struct TQSetGuildCommonMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ GUILDCOMMONMISSIONMAX ] ;
} ;
struct TQSetWeekendRepeatMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ WEEKENDREPEATMISSIONMAX ] ;
} ;
// QUERY_SETPCBANGMISSION, // <20> <> <EFBFBD> <EFBFBD> <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> (ó<> <C3B3> <20> <> ~ <20> ־<EFBFBD> <D6BE> ٶ<EFBFBD> )
struct TQSetPCBangMission : public TQHeader
{
INT64 biCharacterDBID ;
int nMissionIDs [ PCBangMissionMax ] ; // 0: silver, 1: gold
} ;
// QUERY_MODDAILYWEEKLYMISSION, // <20> <> <EFBFBD> <EFBFBD> /<2F> ְ<EFBFBD> <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD>
struct TQModDailyWeeklyMission : public TQHeader
{
INT64 biCharacterDBID ;
char cDailyMissionType ; // eDailyMissionType
char cMissionIndex ;
TDailyMission Mission ;
int nMissionScore ;
} ;
struct TQClearMission : public TQHeader
{
INT64 biCharacterDBID ;
} ;
//#########################################################################################################################################
// MAINCMD_APPELLATION
//#########################################################################################################################################
// QUERY_ADDAPPELLATION
struct TQAddAppellation : public TQHeader
{
INT64 biCharacterDBID ;
int nAppellationID ;
char Appellation [ APPELLATIONMAX_BITSIZE ] ; // ȣĪ
} ;
// QUERY_SELECTAPPELLATION
struct TQSelectAppellation : public TQHeader
{
INT64 biCharacterDBID ;
int nSelectAppellation ;
char cAppellationKind ; // DBDNWorldDef::AppellationKind
} ;
// QUERY_DELAPPELLATION
struct TQDelAppellation : public TQHeader
{
INT64 biCharacterDBID ;
int nDelAppellation ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Īȣ(<28> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> )
} ;
//#########################################################################################################################################
// MAINCMD_SKILL
//#########################################################################################################################################
// QUERY_ADDSKILL, // <20> <> ų <20> ߰<EFBFBD>
struct TQAddSkill : public TQHeader
{
INT64 biCharacterDBID ;
int nSkillID ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> ̵<EFBFBD>
char cSkillLevel ;
int nCoolTime ; // <20> <> Ÿ<EFBFBD> <C5B8>
char cSkillChangeCode ; // SkillChangeCode
INT64 biCoin ; // <20> <> ų<EFBFBD> <C5B3> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> . <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 찡 <20> ƴϸ<C6B4> 0<> <30> <20> Է<EFBFBD> <D4B7> մϴ<D5B4> .
int nChannelID ;
int nMapID ;
char cSkillPage ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> ų<EFBFBD> ڵ<EFBFBD> )
INT64 biCurrentCoin ;
INT64 biPickUpCoin ;
} ;
// QUERY_MODSKILLLEVEL, // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
struct TQModSkillLevel : public TQHeader
{
INT64 biCharacterDBID ;
int nSkillID ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> ̵<EFBFBD>
BYTE cSkillLevel ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD>
int nCoolTime ; // <20> <> Ÿ<EFBFBD> <C5B8>
USHORT wUsedSkillPoint ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> ø<EFBFBD> <C3B8> µ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> Ʈ
char cSkillChangeCode ; // SkillChangeCode (2=<3D> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> & <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> , 13=<3D> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (by <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ))
int nChannelID ;
int nMapID ;
char cSkillPage ;
} ;
// QUERY_INCREASESKILLPOINT, // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD>
struct TQIncreaseSkillPoint : public TQHeader
{
INT64 biCharacterDBID ;
USHORT wSkillPoint ;
int nChannelID ;
int nMapID ;
char cSkillPointChangeCode ;
char cSkillPage ;
} ;
// QUERY_DELSKILL
struct TQDelSkill : public TQHeader
{
INT64 biCharacterDBID ;
int nSkillID ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> ̵<EFBFBD>
char cSkillChangeCode ; // SkillChangeCode (9=<3D> <> ų <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> ), 10=<3D> <> ų <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> Ʈ), 11=<3D> <> ų <20> <> <EFBFBD> <EFBFBD> (<28> ̺<EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> ), 12=<3D> <> ų <20> <> <EFBFBD> <EFBFBD> (by <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ))
bool bSkillPointBack ; // <20> <> ų <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> ų <20> <> <EFBFBD> <EFBFBD> Ʈ<EFBFBD> <C6AE> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> . 0=<3D> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 1=<3D> <> ų <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int nChannelID ;
int nMapID ;
char cSkillPage ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> ų<EFBFBD> ڵ<EFBFBD> )
} ;
// QUERY_RESETSKILL
struct TQResetSkill : public TQHeader
{
INT64 biCharacterDBID ;
int nChannelID ;
int nMapID ;
char cSkillPage ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> ų<EFBFBD> ڵ<EFBFBD> )
} ;
struct TAResetSkill : public TAHeader
{
USHORT wSkillPoint ; // <20> <> ų <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> ų <20> <> <EFBFBD> <EFBFBD> Ʈ
USHORT wTotalSkillPoint ; // <20> <> ų <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> ų <20> <> <EFBFBD> <EFBFBD> Ʈ
char cSkillPage ; // <20> <> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> ų<EFBFBD> ڵ<EFBFBD> )
} ;
// QUERY_RESETSKILLBYSKILLIDS
struct TQResetSkillBySkillIDS : public TQHeader
{
INT64 biCharacterDBID ;
int iSkillIDs [ SKILLMAX ] ;
int iChannelID ;
int iMapID ;
char cSkillPage ;
} ;
struct TAResetSkillBySkillIDS : public TAHeader
{
short nSkillPoint ;
short nTotalSkillPoint ;
char cSkillPage ;
} ;
struct TQDecreaseSkillPoint : public TQHeader
{
INT64 biCharacterDBID ;
short nDecreaseSkillPoint ;
int iChannelID ;
int iMapID ;
char cSkillPage ;
} ;
struct TQUseExpandSkillPage : public TQHeader
{
INT64 biCharacterDBID ;
int nSkillArray [ DEFAULTSKILLMAX ] ;
short wSkillPoint ;
} ;
struct TAUseExpandSkillPage : public TAHeader
{
} ;
struct TQSetSkillPoint : public TQHeader
{
INT64 biCharacterDBID ;
short nSkillPoint ;
char cSkillPage ;
} ;
//#########################################################################################################################################
// MAINCMD_ITEM
//#########################################################################################################################################
struct TQAddMaterializedItem : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cItemLocationIndex ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ġ<EFBFBD> <C4A1> <20> ε<EFBFBD> <CEB5> <EFBFBD> <20> <>
DBDNWorldDef : : AddMaterializedItem : : eCode Code ;
INT64 biFKey ;
TItem AddItem ;
bool bStackableFlag ;
INT64 biItemPrice ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ġ. <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> 0<> <30> <20> Է<EFBFBD> <D4B7> մϴ<D5B4> . <20> <> , <20> <> Ű<EFBFBD> <C5B0> <20> <> ǰ<EFBFBD> <C7B0> <20> <> <EFBFBD> <EFBFBD> <20> Ǵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , <20> <> ǰ<EFBFBD> <C7B0> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ǰ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1/n<> <6E> <20> Է<EFBFBD> <D4B7> մϴ<D5B4>
INT64 biSenderCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> ID
BYTE cItemLocationCode ; // 2=<3D> κ<EFBFBD> <CEBA> 丮, 4=<3D> <> <EFBFBD> <EFBFBD> Ʈ <20> κ<EFBFBD> <CEBA> 丮, 5=ij<> <C4B3> <20> κ<EFBFBD> <CEBA> 丮, 6=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 7=ij<> <C4B3> <20> <> Ţ<EFBFBD> <C5A2> Ʈ
BYTE cPayMethodCode ; // NULL=<3D> <> <EFBFBD> Ծƴ<D4BE> , 1=<3D> <> <EFBFBD> <EFBFBD> , 2=ij<> <C4B3> , 3=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 4=DNA<4E> <41> <EFBFBD> <EFBFBD> Ʈ
int iChannelID ;
int iMapIndex ;
WCHAR wszIP [ IPLENMAX ] ;
bool bMerge ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> merge<67> <65> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 1=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> merge<67> <65>
INT64 biMergeTargetItemSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> merge<67> Ǵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> , target <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ø<EFBFBD> <C3B8> <EFBFBD>
DWORD dwPetPartsColor1 ;
DWORD dwPetPartsColor2 ;
int nPetSkillID1 ;
int nPetSkillID2 ;
char cPetCount ; // <20> <> , Ż<> <C5BB> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
DBPacket : : TAddMaterializedPet PetList [ Pet : : Slot : : Max ] ;
} ;
struct TQUseItem : public TQHeader
{
DBDNWorldDef : : UseItem : : eUseItemCode Code ;
INT64 biItemSerial ;
short nUsedItemCount ;
int iChannelID ;
int iMapID ;
WCHAR wszIP [ IPLENMAX ] ;
bool bAllFlag ;
int iTargetLogItemID ;
char cTargetLogItemLevel ;
} ;
struct TQResellItem : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biItemSerial ;
short nItemCount ;
INT64 biResellPrice ;
int iNpcID ;
int iChannelID ;
int iMapID ;
WCHAR wszIP [ IPLENMAX ] ;
bool bAllFlag ;
bool bRebuyFlag ;
# ifdef PRE_MOD_SELL_SEALEDITEM
bool bBelongFlag ;
# endif //#ifdef PRE_MOD_SELL_SEALEDITEM
} ;
struct TQEnchantItem : public TQHeader
{
INT64 biItemSerial ;
INT64 biCoin ; // <20> <> ȭ <20> <> <EFBFBD> <EFBFBD>
bool bEnchantSuccessFlag ; // 0=<3D> <> <EFBFBD> <EFBFBD> , 1=<3D> <> <EFBFBD> <EFBFBD>
bool bItemDestroyFlag ; // <20> <> ȭ<EFBFBD> <C8AD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ı <EFBFBD> <C4B1> Ǿ<EFBFBD> <C7BE> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> . 0=<3D> ı <EFBFBD> <C4B1> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 1=<3D> ı <EFBFBD> <C4B1> <EFBFBD>
BYTE cCurrentItemLevel ; // <20> <> ȭ <20> <> <20> <> <EFBFBD> <EFBFBD>
char cCurrentItemPotential ; // <20> <> ȭ <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int iChannelID ;
int iMapID ;
int iNpcID ;
//Optional
TItem NewItem ; // <20> <> ȭ <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
BYTE cMaterialCount ;
INT64 biCharacterDBID ; // <20> <> ȭ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int nSupportItemID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ȭ <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ItemID(<28> <> ..<2E> <> ȭ<EFBFBD> <C8AD> ȣ <EFBFBD> <C8A3> <EFBFBD> <EFBFBD> )
# if defined(PRE_ADD_EXCHANGE_ENCHANT)
INT64 biExtractItemSerial ; // <20> <> ȭ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ҷ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> DB<44> <42> <EFBFBD> <EFBFBD> <20> ˾Ƽ <CBBE> <20> <> ȭ <20> <> <EFBFBD> <EFBFBD> 0<> <30> <EFBFBD> <EFBFBD> <20> ٲ<EFBFBD> <D9B2> <EFBFBD> )
# endif
DBPacket : : TItemCountInfo MaterialArray [ INVENTORYMAX ] ;
} ;
struct TQChangeItemLocation : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biItemSerial ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ
INT64 biNewItemSerial ; // (optional) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ϻ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ .
int iItemID ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID
DBDNWorldDef : : ItemLocation : : eCode Code ; // <20> ̵<EFBFBD> <20> <> ItemLocationCode 1=<3D> <> Ţ<EFBFBD> <C5A2> Ʈ, 2=<3D> κ<EFBFBD> <CEBA> 丮, 3=â<> <C3A2> , 4=<3D> <> <EFBFBD> <EFBFBD> Ʈ <20> κ<EFBFBD> <CEBA> 丮, 5=ij<> <C4B3> <20> κ<EFBFBD> <CEBA> 丮, 6=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 7=ij<> <C4B3> <20> <> Ţ<EFBFBD> <C5A2> Ʈ
BYTE cItemLocationIndex ; // <20> ̵<EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ġ <20> ε<EFBFBD> <CEB5> <EFBFBD>
short nItemCount ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int iChannelID ;
int iMapID ;
bool bVehicleParts ; // <20> ̵<EFBFBD> <CCB5> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> "Ż<> <C5BB> or <20> 꿡 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> "<22> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> . 0=false, 1=true -> <20> <> ì<EFBFBD> <C3AC> (?)<29> <> true<75> <65> !
INT64 biVehicleSerial ; // Ż<> <C5BB> or <20> 꿡 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> -> Ż<> <C5BB> or <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ
char cVehicleSlotIndex ; // Ż<> <C5BB> or <20> 꿡 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> -> <20> <> <EFBFBD> <EFBFBD> <20> <> ġ
bool bMerge ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> merge<67> <65> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 1=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> merge<67> <65>
INT64 biMergeTargetItemSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> merge<67> Ǵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> , target <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ø<EFBFBD> <C3B8> <EFBFBD>
bool bMergeAll ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> merge<67> Ǵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> . 0=merge<67> Ǵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> original<61> <6C> <20> <> ü <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ƴ<EFBFBD> , 1= merge<67> Ǵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> original<61> <6C> <20> <> ü <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
# if defined(PRE_ADD_SERVER_WAREHOUSE)
int nGoldFee ; // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
# endif
} ;
struct TQSwitchItemLocation : public TQHeader
{
INT64 biCharacterDBID ;
DBDNWorldDef : : ItemLocation : : eCode SrcCode ; // <20> ̵<EFBFBD> <20> <> ItemLocationCode 1=<3D> <> Ţ<EFBFBD> <C5A2> Ʈ, 2=<3D> κ<EFBFBD> <CEBA> 丮, 3=â<> <C3A2> , 4=<3D> <> <EFBFBD> <EFBFBD> Ʈ <20> κ<EFBFBD> <CEBA> 丮, 5=ij<> <C4B3> <20> κ<EFBFBD> <CEBA> 丮, 6=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 7=ij<> <C4B3> <20> <> Ţ<EFBFBD> <C5A2> Ʈ
BYTE cSrcSlotIndex ;
INT64 biDestItemSerial ;
DBDNWorldDef : : ItemLocation : : eCode DestCode ; // <20> ̵<EFBFBD> <20> <> ItemLocationCode 1=<3D> <> Ţ<EFBFBD> <C5A2> Ʈ, 2=<3D> κ<EFBFBD> <CEBA> 丮, 3=â<> <C3A2> , 4=<3D> <> <EFBFBD> <EFBFBD> Ʈ <20> κ<EFBFBD> <CEBA> 丮, 5=ij<> <C4B3> <20> κ<EFBFBD> <CEBA> 丮, 6=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 7=ij<> <C4B3> <20> <> Ţ<EFBFBD> <C5A2> Ʈ
BYTE cDestSlotIndex ;
INT64 biSrcItemSerial ;
} ;
struct TQModItemDurability : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biTax ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> .
int iChannelID ;
int iMapID ;
short nCount ;
INT64 biCurrentCoin ;
INT64 biPickUpCoin ;
DBPacket : : TDurabilityInfo ItemDurArr [ INVENTORYMAX + EQUIPMAX ] ;
} ;
struct TQModMaterializedItem : public TQHeader
{
INT64 biItemSerial ;
int iChannelID ;
int iMapID ;
int iModFieldBitmap ;
USHORT nItemDurability ;
BYTE cItemLevel ;
char cItemPotential ;
bool bSoudBoundFlag ;
BYTE cSealCount ;
BYTE cItemOption ;
WCHAR wszIP [ IPLENMAX ] ;
int nEnchantJewelID ; // <20> <> ȭ<EFBFBD> ڵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ۾<EFBFBD> <DBBE> ̵<EFBFBD>
# if defined(PRE_MOD_POTENTIAL_JEWEL_RENEWAL)
char cItemPotentialMoveCount ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ƚ<> <C8BD>
# endif // #if defined(PRE_MOD_POTENTIAL_JEWEL_RENEWAL)
} ;
struct TQGetListMaterializedItem : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListMaterializedItem : public TAHeader
{
short nItemCount ;
DBPacket : : TMaterialItemInfo MaterialItemInfoArr [ 256 ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ִ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ӽ÷<D3BD> 256 <20> ־<EFBFBD> <D6BE> д<EFBFBD> .
} ;
struct TQExchangeProperty : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
DBPacket : : TExchangeItem ExchangeItem [ EXCHANGEMAX ] ;
INT64 biExchangeCoin ; // <20> <> ȯ<EFBFBD> <C8AF> <20> <> <EFBFBD> <EFBFBD>
int nExchangeTax ; // <20> <> ȯ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
INT64 biTargetCharacterDBID ;
DBPacket : : TExchangeItem TargetExchangeItem [ EXCHANGEMAX ] ;
INT64 biTargetExchangeCoin ;
int nTargetExchangeTax ; // <20> <> ȯ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int nChannelID ;
int nMapID ;
UINT uiTargetAccountDBID ;
} ;
// QUERY_GETPAGEMATERIALIZEDITEM
struct TQGetPageMaterializedItem : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
int nPageNumber ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ȣ .
int nPageSize ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
} ;
struct TAGetPageMaterializedItem : public TAHeader
{
short wPageNumber ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ȣ .
int nTotalListCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ 1<> <31> <EFBFBD> ϶<EFBFBD> <CFB6> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ִ<EFBFBD> (<28> <> ü <20> <> <EFBFBD> <EFBFBD> )
char cCount ;
TItem CashItem [ CASHINVENTORYMAX ] ;
} ;
// QUERY_UPSEQUIP
struct TQUpsEquip : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
char cItemLocation ;
char cEquipSlotIndex ;
INT64 biSerial ;
} ;
// QUERY_PUTONEPIECEON, // <20> <> <EFBFBD> ǽ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQPutOnepieceOn : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biOnepieceItemSerial ;
char cOnepieceCashEquipIndex ;
char cCashEquipTotalCount ;
BYTE cSubCashEquipIndexArray [ CASHEQUIPMAX ] ;
} ;
// QUERY_TAKECASHEQUIPMENTOFF, // <20> Ѳ<EFBFBD> <D1B2> <EFBFBD> <EFBFBD> <EFBFBD> Ż<> <C5BB> (cashequip -> cashinven)
struct TQTakeCashEquipmentOff : public TQHeader
{
INT64 biCharacterDBID ;
char cCashEquipTotalCount ;
BYTE cCashEquipIndexArray [ CASHEQUIPMAX ] ;
} ;
// QUERY_GETPAGEVEHICLE
struct TQGetPageVehicle : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
int nPageNumber ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ȣ .
int nPageSize ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
} ;
struct TAGetPageVehicle : public TAHeader
{
short wPageNumber ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ȣ .
int nTotalListCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ 1<> <31> <EFBFBD> ϶<EFBFBD> <CFB6> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ִ<EFBFBD> (<28> <> ü <20> <> <EFBFBD> <EFBFBD> )
char cCount ;
TVehicleCompact VehicleItem [ VEHICLEINVENTORYPAGEMAX ] ;
} ;
// QUERY_DELPETEQUIPMENT
struct TQDelPetEquipment : public TQHeader
{
INT64 biBodySerial ;
INT64 biPartsSerial ;
WCHAR wszIp [ IPLENMAX ] ;
} ;
struct TADelPetEquipment : public TAHeader
{
} ;
// QUERY_MODPETSKINCOLOR
struct TQModPetSkinColor : public TQHeader
{
INT64 biBodySerial ;
DWORD dwSkinColor ;
DWORD dwSkinColor2 ;
} ;
struct TAModPetSkinColor : public TAHeader
{
} ;
// QUERY_MISSINGITEMLIST,
struct TAMissingItemList : public TAHeader
{
char cCount ;
TItem MissingList [ MISSINGITEMMAX ] ;
} ;
// QUERY_RECOVERMISSINGITEM,
struct TQRecoverMissingItem : public TQHeader
{
INT64 biCharacterDBID ;
//INT64 biItemSerial;
char cItemLocationCode ;
BYTE cSlotIndex ;
TItem RecoverItem ;
} ;
struct TARecoverMissingItem : public TAHeader
{
char cItemLocationCode ;
BYTE cSlotIndex ;
TItem RecoverItem ;
} ;
struct TQGetListRepurchaseItem : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListRepurchaseItem : public TAHeader
{
BYTE cCount ;
TRepurchaseItemInfo ItemList [ Shop : : Repurchase : : MaxList ] ;
} ;
struct TQDelExpiritem : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TADelExpiritem : public TAHeader
{
BYTE cCount ;
INT64 biItemSerial [ MAXDELEXPIREITEM ] ;
} ;
struct TQDelCashItem : public TQHeader // QUERY_DELCASHITEM,
{
INT64 biItemSerial ;
short wCount ;
int nWatingTime ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> Ⱓ. <20> <> <EFBFBD> <EFBFBD> : <20> <>
} ;
struct TADelCashItem : public TAHeader
{
INT64 biItemSerial ;
__time64_t tExpireDate ;
} ;
struct TQRecoverCashItem : public TQHeader // QUERY_RECOVERCASHITEM,
{
INT64 biItemSerial ;
short wCount ;
} ;
struct TARecoverCashItem : public TAHeader
{
INT64 biItemSerial ;
bool bEternity ;
__time64_t tExpireDate ;
} ;
# if defined( PRE_ADD_NAMEDITEM_SYSTEM )
struct TQCheckNamedItemCount : public TQHeader // QUERY_CHECK_NAMEDITEMCOUNT
{
int nItemID ;
BYTE cIndex ;
} ;
struct TACheckNamedItemCount : public TAHeader
{
int nItemID ;
int nCount ;
BYTE cIndex ;
} ;
# endif
# if defined (PRE_ADD_EXCHANGE_POTENTIAL)
struct TQMovePotential : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biExtractSerial ;
char cExtractPotential ;
INT64 biInjectSerial ;
char cInjectPotential ;
char cMoveableLimitCount ;
int nMapID ;
} ;
struct TAMovePotential : public TAHeader
{
} ;
# endif //#if defined (PRE_ADD_EXCHANGE_POTENTIAL)
// QUERY_MODDEGREEOFHUNGER
struct TQModDegreeOfHunger : public TQHeader
{
INT64 biBodySerial ;
DWORD nDegreeOfHunger ;
} ;
struct TQItemExpire : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biSerial ;
} ;
struct TAItemExpire : public TAHeader
{
INT64 biSerial ;
} ;
struct TQChangePetName : public TQHeader
{
INT64 itemSerial ;
INT64 petSerial ;
WCHAR name [ NAMELENMAX ] ;
} ;
struct TAChangePetName : public TAHeader
{
INT64 itemSerial ;
INT64 petSerial ;
WCHAR name [ NAMELENMAX ] ;
} ;
struct TQClearPetVehicleInven : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAClearPetVehicleInven : public TAHeader
{
} ;
struct TQModItemExpireDate : public TQHeader
{
int iMapID ;
WCHAR wszIP [ IPLENMAX ] ;
INT64 biItemSerial ;
INT64 biExpireDateItemSerial ;
INT64 biCharacterDBID ;
int nMin ;
} ;
struct TAModItemExpireDate : public TAHeader
{
INT64 biCharacterDBID ;
INT64 biItemSerial ;
int nMin ;
} ;
struct TQModPetExp : public TQHeader
{
INT64 biPetSerial ;
int nExp ;
} ;
struct TAModPetExp : public TAHeader
{
} ;
struct TQModPetSkill : public TQHeader
{
INT64 biItemSerial ;
char cSkillSlot ;
int nSkillID ;
} ;
struct TQModPetSkillExpand : public TQHeader
{
INT64 biItemSerial ;
} ;
struct TQModAdditiveItem : public TQHeader
{
INT64 biCharacterDBID ;
int nAdditiveItemID ;
INT64 biItemSerial ; // <20> ɷ<EFBFBD> ġ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
INT64 biAdditiveSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
INT64 biMixItemSerial ; // <20> ռ <EFBFBD> <D5BC> <EFBFBD>
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ſ <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TAModAdditiveItem : public TAHeader
{
INT64 biItemSerial ;
int nAdditiveItemID ;
int nInvenIndex ;
INT64 biAdditiveSerial ;
} ;
# if defined (PRE_ADD_COSRANDMIX)
struct TQModRandomItem : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biStuffSerialA ;
INT64 biStuffSerialB ;
INT64 biMixItemSerial ; // <20> ռ <EFBFBD> <D5BC> <EFBFBD>
short wMixItemCount ;
INT64 biFee ;
DBDNWorldDef : : AddMaterializedItem : : eCode Code ;
TItem RandomItem ;
BYTE cItemLocationCode ;
int nChannelID ;
int nMapIndex ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TAModRandomItem : public TAHeader
{
INT64 biStuffSerialA ;
INT64 biStuffSerialB ;
INT64 biMixItemSerial ; // <20> ռ <EFBFBD> <D5BC> <EFBFBD>
INT64 biFee ;
TItem RandomItem ;
} ;
# endif
// QUERY_SAVEITEMLOCATIONINDEX, // P_SaveItemLocationIndex
struct TQSaveItemLocationIndex : public TQHeader
{
INT64 biCharacterDBID ;
int nTotalInvenWareCount ; // <20> κ<EFBFBD> /â<> <C3A2> <20> <> <EFBFBD> о <EFBFBD> <D0BE> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> Ѽ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ȴ<EFBFBD> .
DBPacket : : TItemIndexSerial SaveList [ INVENTORYMAX + WAREHOUSEMAX ] ;
} ;
# if defined( PRE_ADD_LIMITED_SHOP )
struct TQGetLimitedShopItem : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetLimitedShopItem : public TAHeader
{
int nCount ;
LimitedShop : : LimitedItemData ItemData [ INVENTORYMAX + WAREHOUSEMAX ] ;
} ;
struct TQAddLimitedShopItem : public TQHeader
{
INT64 biCharacterDBID ;
int nBuyCount ;
LimitedShop : : LimitedItemData ItemData ;
} ;
struct TQResetLimitedShopItem : public TQHeader
{
INT64 biCharacterDBID ;
int nResetCycle ;
} ;
# endif
struct TQDelEffectItem : public TQHeader
{
INT64 biCharacterDBID ;
INT64 nItemSerial ;
} ;
# if defined(PRE_ADD_TALISMAN_SYSTEM)
struct TQModTalismanSlotOpenFlag : public TQHeader
{
INT64 biCharacterDBID ;
int nTalismanOpenflag ;
} ;
# endif
# if defined(PRE_ADD_CHNC2C)
struct TQGetGameMoney : public TQHeader
{
INT64 biCharacterDBID ;
char szSeqID [ 64 ] ;
} ;
struct TAGetGameMoney : public TAHeader
{
INT64 biCharacterDBID ;
INT64 biCoinBalance ;
char szSeqID [ 64 ] ;
} ;
struct TQKeepGameMoney : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biReduceCoin ;
char szBookID [ 50 ] ;
char szSeqID [ 64 ] ;
} ;
struct TAKeepGameMoney : public TAHeader
{
char cWorldSetID ;
INT64 biCharacterDBID ;
INT64 biReduceCoin ;
char szSeqID [ 64 ] ;
} ;
struct TQTransferGameMoney : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biAddCoin ;
char szBookID [ 50 ] ;
char szSeqID [ 64 ] ;
} ;
struct TATransferGameMoney : public TAHeader
{
char cWorldSetID ;
INT64 biCharacterDBID ;
INT64 biAddCoin ;
char szSeqID [ 64 ] ;
} ;
# endif //#if defined(PRE_ADD_CHNC2C)
# if defined(PRE_ADD_EQUIPLOCK)
struct TQLockItemInfo : public TQHeader //<2F> <> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
INT64 biCharacterDBID ;
DBDNWorldDef : : ItemLocation : : eCode Code ;
BYTE cItemSlotIndex ;
int nItemID ;
INT64 biItemSerial ;
} ;
struct TALockItemInfo : public TAHeader //<2F> <> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
DBDNWorldDef : : ItemLocation : : eCode Code ;
BYTE cItemSlotIndex ;
__time64_t tLockDate ;
} ;
struct TQUnLockRequsetItemInfo : public TQHeader //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
INT64 biCharacterDBID ;
DBDNWorldDef : : ItemLocation : : eCode Code ;
BYTE cItemSlotIndex ;
int nItemID ;
int nUnLockWaitTime ;
INT64 biItemSerial ;
} ;
struct TAUnLockRequestItemInfo : public TAHeader //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
DBDNWorldDef : : ItemLocation : : eCode Code ;
BYTE cItemSlotIndex ;
__time64_t tUnLockDate ;
__time64_t tUnLockRequestDate ;
} ;
struct TQGetListLockedItems : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListLockedItems : public TAHeader
{
int nCount ;
TDBLockItemInfo LockItem [ EQUIPMAX + CASHEQUIPMAX ] ;
} ;
# endif // #if defined(PRE_ADD_EQUIPLOCK)
//#########################################################################################################################################
// MAINCMD_QUEST
//#########################################################################################################################################
// QUERY_ADDQUEST
struct TQAddQuest : public TQHeader
{
INT64 biCharacterDBID ;
char cIdx ;
TQuest Quest ;
} ;
// QUERY_DELQUEST
struct TQDelQuest : public TQHeader
{
INT64 biCharacterDBID ;
char cIdx ;
int nQuestID ;
bool bComplete ; // 0=<3D> ܼ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> , 1=<3D> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <20> Ϸ<EFBFBD> <CFB7> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
bool bRepeat ; // 0=1ȸ <20> <> <EFBFBD> <EFBFBD> Ʈ, 1=<3D> ݺ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ
char CompleteQuest [ COMPLETEQUEST_BITSIZE ] ;
} ;
// QUERY_MODQUEST, // <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD>
struct TQModQuest : public TQHeader
{
INT64 biCharacterDBID ;
char cQuestStatusCode ;
char cIndex ;
TQuest Quest ;
} ;
// QUERY_CLEARQUEST
struct TQClearQuest : public TQHeader
{
INT64 biCharacterDBID ;
} ;
// QUERY_FORCECOMPLETEQUEST
struct TQForceCompleteQuest : public TQHeader
{
public :
TQForceCompleteQuest ( )
{
Reset ( ) ;
}
void Set ( BYTE pThreadID , char pWorldID , UINT pAccountDBID , INT64 pCharacterDBID , int pQuestID , int pQuestCode , char pCompleteQuest [ COMPLETEQUEST_BITSIZE ] )
{
cThreadID = pThreadID ;
cWorldSetID = pWorldID ;
nAccountDBID = pAccountDBID ;
biCharacterDBID = pCharacterDBID ;
nQuestID = pQuestID ;
nQuestCode = pQuestCode ;
: : memcpy_s ( CompleteQuest , sizeof ( CompleteQuest ) , pCompleteQuest , sizeof ( CompleteQuest ) ) ;
}
void Reset ( )
{
cThreadID = 0 ;
cWorldSetID = 0 ;
nAccountDBID = 0 ;
biCharacterDBID = 0 ;
nQuestID = 0 ;
nQuestCode = 0 ;
}
int GetSize ( ) const
{
return ( static_cast < int > ( sizeof ( * this ) ) ) ;
}
public :
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
int nQuestID ; // <20> <> <EFBFBD> <EFBFBD> Ʈ ID
int nQuestCode ; // <20> <> <EFBFBD> <EFBFBD> Ʈ <20> ڵ<EFBFBD> (0:<3A> Ϲ <EFBFBD> / 1:<3A> ð<EFBFBD> <C3B0> <EFBFBD> )
char CompleteQuest [ COMPLETEQUEST_BITSIZE ] ; // <20> Ϸ<EFBFBD> <CFB7> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> ̳ʸ<CCB3> <20> <> <EFBFBD> <EFBFBD>
} ;
// QUERY_DELETE_CHARACTER_PERIODQUEST
struct TQDeletePeriodQuest : public TQHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
int nPeriodQuestType ;
int nQuestCount ;
int nQuestIDs [ MAX_PERIODQUEST_LIST ] ;
} ;
struct TADeletePeriodQuest : public TAHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
__time64_t tAssignDate ;
int nPeriodQuestType ;
int nQuestCount ;
int nQuestIDs [ MAX_PERIODQUEST_LIST ] ;
} ;
// QUERY_GET_CHARACTER_PERIODQUESTDATE
struct TQGetPeriodQuestDate : public TQHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
} ;
struct TAGetPeriodQuestDate : public TAHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
int nCount ;
TPeriodQuestDate PeriodQuestDate [ PERIODQUEST_RESET_MAX ] ;
} ;
// QUERY_GET_LISTCOMPLETE_EVENTQUEST
struct TQGetListCompleteEventQuest : public TQHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
} ;
struct TAGetListCompleteEventQuest : public TAHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
int nCount ;
TCompleteEventQuest EventQuestList [ EVENTQUESTMAX ] ;
} ;
// QUERY_COMPLETE_EVENTQUEST
struct TQCompleteEventQuest : public TQHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
int nScheduleID ;
__time64_t tExpireDate ;
} ;
struct TACompleteEventQuest : public TAHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
int nScheduleID ;
short wCompleteCount ;
} ;
// QUERY_GET_WORLDEVENTQUESTCOUNTER
struct TQGetWorldEventQuestCounter : public TQHeader
{
int nScheduleID ;
} ;
struct TAGetWorldEventQuestCounter : public TAHeader
{
char cWorldSetID ;
int nScheduleID ;
int nCount ;
} ;
// QUERY_MOD_WORLDEVENTQUESTCOUNTER
struct TQModWorldEventQuestCounter : public TQHeader
{
INT64 biCharacterDBID ;
int nScheduleID ;
int nCounterDelta ;
} ;
struct TAModWorldEventQuestCounter : public TAHeader
{
char cWorldSetID ;
int nScheduleID ;
int nCounterDelta ;
int nCountAfter ;
} ;
//#########################################################################################################################################
// MAINCMD_MAIL
//#########################################################################################################################################
// QUERY_GETCOUNTRECEIVEMAIL
struct TQGetCountReceiveMail : public TQHeader
{
INT64 biReceiverCharacterDBID ;
} ;
struct TAGetCountReceiveMail : public TAHeader
{
int iTotalMailCount ;
int iNotReadMailCount ;
int i7DaysLeftMailCount ;
} ;
// QUERY_GETPAGERECEIVEMAIL
struct TQGetPageReceiveMail : public TQHeader
{
int iPageNumber ;
INT64 biReceiverCharacterDBID ;
} ;
struct TAGetPageReceiveMail : public TAHeader
{
int iBasicMailCount ;
int iTotalMailCount ;
int iNotReadMailCount ;
int i7DaysLeftMailCount ;
BYTE cMailCount ;
TMailBoxInfo sMail [ MAILPAGEMAX ] ;
} ;
// QUERY_SENDMAIL
struct TQSendMail : public TQHeader
{
INT64 biSenderCharacterDBID ;
wchar_t wszReceiverCharacterName [ MAILNAMELENMAX ] ;
MailType : : Delivery Code ;
wchar_t wszSubject [ MAILTITLELENMAX ] ;
wchar_t wszContent [ MAILTEXTLENMAX ] ;
INT64 biAttachCoin ;
int iChannelID ;
int iMapID ;
int nTax ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
BYTE cAttachItemCount ;
DBPacket : : TSendMailItem AttachItemArr [ MAILATTACHITEMMAX ] ;
} ;
struct TASendMail : public TAHeader
{
UINT nReceiverAccountDBID ;
INT64 biReceiverCharacterDBID ;
int nReceiverTotalMailCount ;
int nReceiverNotReadMailCount ;
int nReceiver7DaysLeftMailCount ;
int nBasicMailCount ;
MailType : : Delivery Code ;
INT64 biAttachCoin ;
int nTax ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
BYTE cAttachItemCount ;
DBPacket : : TSendMailItem AttachItemArr [ MAILATTACHITEMMAX ] ;
} ;
// QUERY_SENDSYSTEMMAIL
struct TQSendSystemMail : public TQHeader
{
wchar_t wszSenderName [ MAILNAMELENMAX ] ;
INT64 biReceiverCharacterDBID ;
DBDNWorldDef : : MailTypeCode : : eCode Code ;
INT64 biFKey ;
wchar_t wszSubject [ MAILTITLELENMAX ] ;
wchar_t wszContent [ MAILTEXTLENMAX ] ;
INT64 biAttachCoin ;
int iChannelID ;
int iMapID ;
bool bNewFlag ;
char cAttachItemCount ;
TItem sAttachItem [ MAILATTACHITEMMAX ] ;
} ;
struct TASendSystemMail : public TAHeader
{
INT64 biReceiverCharacterDBID ;
int nMailDBID ;
# if defined( PRE_ADD_NPC_REPUTATION_SYSTEM )
BYTE cWorldSetID ;
# endif // #if defined( PRE_ADD_NPC_REPUTATION_SYSTEM )
int iTotalMailCount ;
int iNotReadMailCount ;
int i7DaysLeftMailCount ;
} ;
// QUERY_READMAIL
struct TQReadMail : public TQHeader
{
int iMailID ;
} ;
struct TAReadMail : public TAHeader
{
int nMailDBID ; // mail db table id
int iNotReadMailCount ;
wchar_t wszContent [ MAILTEXTLENMAX ] ;
__time64_t SendDate ;
INT64 biAttachCoin ;
char cDeliveryType ;
bool bNewFlag ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ý<EFBFBD> <C3BD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
BYTE cMailType ;
BYTE cAttachItemCount ;
TItem sAttachItem [ MAILATTACHITEMMAX ] ;
} ;
// QUERY_GETLISTMAILATTACHMENT
struct TQGetListMailAttachment : public TQHeader
{
INT64 biCharacterDBID ;
int nMailDBIDArray [ MAILPAGEMAX ] ;
} ;
struct TAGetListMailAttachment : public TAHeader
{
char cCount ;
DBPacket : : TAttachMail MailAttachArray [ MAILPAGEMAX ] ;
} ;
// QUERY_TAKEATTACHMAILLIST
struct TQTakeAttachMailList : public TQHeader
{
int nChannelID ;
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
# ifdef PRE_ADD_JOINGUILD_SUPPORT
UINT nGuildDBID ;
# endif //PRE_ADD_JOINGUILD_SUPPORT
char cPageCount ;
DBPacket : : TRequestTakeAttachInfo Info [ MAILPAGEMAX ] ;
} ;
struct TATakeAttachMailList : public TAHeader
{
char cPageCount ;
DBPacket : : TTakeAttachInfo TakeMailList [ MAILPAGEMAX ] ;
} ;
// QUERY_TAKEATTACHMAIL
struct TQTakeAttachMail : public TQHeader
{
int nChannelID ;
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
# ifdef PRE_ADD_JOINGUILD_SUPPORT
UINT nGuildDBID ;
# endif //PRE_ADD_JOINGUILD_SUPPORT
DBPacket : : TRequestTakeAttachInfo Info ;
} ;
struct TATakeAttachMail : public TAHeader
{
char cAttachSlotIndex ; // -1: 5ĭ <20> <> <EFBFBD> <EFBFBD> <20> ޱ<EFBFBD> , 0 - 4: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ޱ<EFBFBD>
DBPacket : : TTakeAttachInfo TakeMail ;
} ;
// QUERY_DELMAIL
struct TQDelMail : public TQHeader
{
INT64 biReceiverCharacterDBID ;
int iMailIDArray [ MAILPAGEMAX ] ;
} ;
struct TADelMail : public TAHeader
{
int iTotalMailCount ;
} ;
// QUERY_GETWILLSENDMAIL
struct TQGetWillMails : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetWillMails : public TAHeader
{
BYTE cCount ;
WillSendMail : : TWillSendInfo Mails [ WillSendMail : : Common : : WIllMailPacketMax ] ;
} ;
// QUERY_DELWILLSENDMAIL
struct TQDelWillMail : public TQHeader
{
INT64 biCharacterDBID ;
int nMailID ;
} ;
// QUERY_SENDWISHMAIL, // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <EFBFBD>
struct TQSendWishMail : public TQHeader
{
INT64 biSenderCharacterDBID ;
WCHAR wszReceiverCharacterName [ MAILNAMELENMAX ] ;
WCHAR wszSubject [ MAILTITLELENMAX ] ;
WCHAR wszContent [ MAILTEXTLENMAX ] ;
int nWishLimitCount ; // 1<> <31> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<> <C8BD>
int nPackageSN ;
char cWishListCount ;
DBPacket : : TItemSNIDOption WishList [ PACKAGEITEMMAX ] ;
} ;
struct TASendWishMail : public TAHeader
{
UINT nReceiverAccountDBID ;
INT64 biReceiverCharacterDBID ;
int nReceiverTotalMailCount ;
int nReceiverNotReadMailCount ;
int nReceiver7DaysLeftMailCount ;
} ;
// QUERY_READWISHMAIL, // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> б <EFBFBD>
struct TQReadWishMail : public TQHeader
{
int nMailID ;
} ;
struct TAReadWishMail : public TAHeader
{
int nMailDBID ; // mail db table id
wchar_t wszContent [ MAILTEXTLENMAX ] ;
__time64_t SendDate ;
INT64 biPurchaseOrderID ;
int nNotReadMailCount ;
bool bNewFlag ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ý<EFBFBD> <C3BD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nPackageSN ;
char cWishListCount ;
DBPacket : : TItemSNIDOption WishList [ PACKAGEITEMMAX ] ;
} ;
# if defined(PRE_SPECIALBOX)
// QUERY_ADDEVENTREWARD
struct TQAddEventReward : public TQHeader
{
BYTE cReceiveTypeCode ; // SpecialBox::ReceiveTypeCode
BYTE cTargetTypeCode ; // SpecialBox::TargetTypeCode
WCHAR wszAccountName [ IDLENMAX ] ;
INT64 biCharacterDBID ;
WCHAR wszCharacterName [ NAMELENMAX ] ;
BYTE cTargetClassCode ;
BYTE cTargetMinLevel ;
BYTE cTargetMaxLevel ;
int nEventNameUIString ;
int nSenderNameUIString ;
int nContentUIString ;
int nRewardCoin ;
char cEventRewardTypeCode ; // eEventRewardType
BYTE cCount ;
TSpecialBoxItemInfo EventRewardItems [ SpecialBox : : Common : : RewardSelectMax ] ;
} ;
struct TAAddEventReward : public TAHeader
{
int nEventRewardID ;
int nEventTotalCount ;
} ;
// QUERY_GETCOUNTEVENTREWARD
struct TQGetCountEventReward : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetCountEventReward : public TAHeader
{
int nEventTotalCount ;
} ;
// QUERY_GETLISTEVENTREWARD
struct TQGetListEventReward : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cClassCode ;
int nLevel ;
} ;
struct TAGetListEventReward : public TAHeader
{
BYTE cCount ;
TSpecialBoxInfo SpecialBoxInfo [ SpecialBox : : Common : : ListMax ] ;
} ;
// QUERY_GETLISTEVENTREWARDITEM
struct TQGetListEventRewardItem : public TQHeader
{
int nEventRewardID ;
INT64 biCharacterDBID ;
} ;
struct TAGetListEventRewardItem : public TAHeader
{
int nEventRewardID ;
char cCharacterCount ;
BYTE cCount ;
TSpecialBoxItemInfo SpecialBoxItem [ SpecialBox : : Common : : RewardSelectMax ] ;
} ;
// QUERY_ADDEVENTREWARDRECEIVER
struct TQAddEventRewardReceiver : public TQHeader
{
int nEventRewardID ;
int nItemID ;
INT64 biCharacterDBID ;
} ;
struct TAAddEventRewardReceiver : public TAHeader
{
int nEventRewardID ;
int nItemID ;
} ;
# endif // #if defined(PRE_SPECIALBOX)
# ifdef PRE_ADD_JOINGUILD_SUPPORT
// QUERY_GUILDSUPPORT_REWARDINFO
struct TQGuildSupportRewardInfo : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGuildSupportRewardInfo : public TAHeader
{
INT64 biCharacterDBID ;
bool bWasGuildSupportRewardFlag ;
BYTE cJoinGuildLevel ;
} ;
// QUERY_SENDGUILDMAIL
struct TQSendGuildMail : public TQHeader
{
wchar_t wszSenderName [ MAILNAMELENMAX ] ;
UINT nReceiverAccountDBID ;
INT64 biReceiverCharacterDBID ;
INT64 biAchivementCharacterDBID ;
DBDNWorldDef : : MailTypeCode : : eCode Code ;
INT64 biFKey ;
wchar_t wszSubject [ MAILTITLELENMAX ] ;
wchar_t wszContent [ MAILTEXTLENMAX ] ;
INT64 biAttachCoin ;
int iChannelID ;
int iMapID ;
bool bNewFlag ;
char cAttachItemCount ;
TItem sAttachItem [ MAILATTACHITEMMAX ] ;
} ;
struct TASendGuildMail : public TAHeader
{
UINT nReceiverAccountDBID ;
INT64 biReceiverCharacterDBID ;
int nMailDBID ;
BYTE cWorldSetID ;
int iTotalMailCount ;
int iNotReadMailCount ;
int i7DaysLeftMailCount ;
} ;
# endif //#ifdef PRE_ADD_JOINGUILD_SUPPORT
//#########################################################################################################################################
// MAINCMD_MARKET
//#########################################################################################################################################
// QUERY_MARKETTAX
struct TQMarketTax : public TQHeader
{
INT64 biCharacterDBID ;
int nMarketRegisterTax ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int nMarketSellTax ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> Ǹ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
// QUERY_GETPAGETRADE
struct TQGetPageTrade : public TQHeader
{
short wPageNum ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ȣ
char cMinLevel ; // <20> ּҷ<D6BC> <D2B7> <EFBFBD>
char cMaxLevel ; // <20> ִ뷹<D6B4> <EBB7B9>
char cItemGrade [ ITEMRANK_MAX ] ; // <20> <> <EFBFBD> з<DEBA>
char cJob ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
short nMainType ; // <20> ⺻<EFBFBD> з<EFBFBD>
char cDetailType ; // <20> з<F3BCBCBA>
WCHAR wszSearchWord1 [ SEARCHLENMAX ] ; // <20> ˻<EFBFBD> <CBBB> ܾ<EFBFBD>
WCHAR wszSearchWord2 [ SEARCHLENMAX ] ; // <20> ˻<EFBFBD> <CBBB> ܾ<EFBFBD>
WCHAR wszSearchWord3 [ SEARCHLENMAX ] ; // <20> ˻<EFBFBD> <CBBB> ܾ<EFBFBD>
char cSortType ; // eSortType
char cItemExchange [ ITEMCATAGORY_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ī<> װ<EFBFBD> <D7B0> <EFBFBD>
WCHAR wszSearchItemName [ SEARCHLENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
char cJobCode [ ITEMJOB_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ڵ<EFBFBD>
bool bCash ; // 0=<3D> Ϲ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 1=ij<> <C4B3> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
char cMethodCode ; // 1=<3D> <> <EFBFBD> ӸӴ<D3B8> , 3=<3D> <> Ż
} ;
struct TAGetPageTrade : TAHeader
{
int nMarketTotalCount ;
char cMarketCount ;
TMarketInfo MarketInfo [ MARKETMAX ] ;
} ;
// QUERY_GETLISTMYTRADE
struct TQGetListMyTrade : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListMyTrade : public TAHeader
{
short wSellingCount ; // <20> Ǹ<EFBFBD> <C7B8> <EFBFBD>
short wExpiredCount ;
short wWeeklyRegisterCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> AM 04:00 <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϰ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ŷ<EFBFBD> Ƚ<> <C8BD> / <20> <> <EFBFBD> ݵ<EFBFBD> <DDB5> <EFBFBD> <EFBFBD> Ҽ<EFBFBD> <D2BC> ִ<EFBFBD> Ƚ<> <C8BD>
short wRegisterItemCount ; // <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
char cMarketCount ;
TMyMarketInfo MarketInfo [ MYMARKETMAX ] ;
} ;
// QUERY_ADDTRADE
struct TQAddTrade : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
short wRegisterMaxCount ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ƚ<> <C8BD>
short wItemRegisterMaxCount ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
char cInvenType ; // eItemPositionType
BYTE cInvenIndex ; // <20> κ<EFBFBD> <CEBA> ε<EFBFBD> <CEB5> <EFBFBD>
char cSkillUsingType ; // <20> Ǹ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nPrice ; // <20> ŷ<EFBFBD> <C5B7> ҵ<EFBFBD> <D2B5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int nSellTax ; // <20> ŷ<EFBFBD> <C5B7> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> ȸ<EFBFBD> <C8B8> <EFBFBD> <EFBFBD> ǰ<EFBFBD> ã<> <C3A3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
char cSellPeriod ; // <20> ǸűⰣ
WCHAR wszItemName [ EXTDATANAMELENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
short nMainType ; // <20> <> <EFBFBD> <EFBFBD> Ÿ<EFBFBD> <C5B8>
char cDetailType ; // <20> <> <EFBFBD> <EFBFBD> Ÿ<EFBFBD> <C5B8>
char cItemGrade ; // 0=<3D> <> <EFBFBD> <EFBFBD> , 1=<3D> <> <EFBFBD> <EFBFBD> , 2=<3D> <> <EFBFBD> <EFBFBD> , 3=<3D> <> <EFBFBD> <EFBFBD> , 4=<3D> <> <EFBFBD> <EFBFBD> ũ, 5=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
char cLimitLevel ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ּ<EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
char cJob ; // <20> <> <EFBFBD> <EFBFBD> <20> ڵ<EFBFBD>
int nItemID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID
INT64 nSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
short wCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
char cLevel ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
INT64 biNewSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ϻ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ItemSerial<61> <6C> <20> Է<EFBFBD> <D4B7> ϰ<EFBFBD> <20> <EFBFBD> <D7B7> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> NULL<4C> <4C> <20> Է<EFBFBD> <D4B7> մϴ<D5B4>
int nUnitPrice ; // <20> ǸŴܰ<C5B4>
int nRegisterTax ; // <20> ŷ<EFBFBD> <C5B7> ҵ<EFBFBD> <D2B5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
bool bDisplayFlag1 ; // 0<> <30> <20> Է<EFBFBD> <D4B7> <EFBFBD> <20> ּ<EFBFBD> <D6BC> <EFBFBD> . <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ʴ<EFBFBD> <20> ʵ<EFBFBD>
bool bDisplayFlag2 ; // 0<> <30> <20> Է<EFBFBD> <D4B7> <EFBFBD> <20> ּ<EFBFBD> <D6BC> <EFBFBD> . <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ʴ<EFBFBD> <20> ʵ<EFBFBD>
int nChannelID ; // ä<> <C3A4> ID
int nMapID ; // <20> <> ID
bool bPremiumTrade ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> ̾<EFBFBD> <20> ƴ<EFBFBD> , 1=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> ̾<EFBFBD>
bool bCash ; // 0=<3D> Ϲ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 1=ij<> <C4B3> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
char cMethodCode ; // 1=<3D> <> <EFBFBD> ӸӴ<D3B8> , 3=<3D> <> Ż
int nExchangeCode ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ī<> װ<EFBFBD> <D7B0> <EFBFBD> ID
} ;
struct TAAddTrade : TAHeader
{
int nMarketDBID ; // <20> ŷ<EFBFBD> <C5B7> <EFBFBD> <20> ŷ<EFBFBD> ID
char cInvenType ; // eItemPositionType
INT64 biSerial ; // <20> ø<EFBFBD> <C3B8> <EFBFBD>
BYTE cInvenIndex ; // <20> κ<EFBFBD> <20> ε<EFBFBD> <CEB5> <EFBFBD>
short wCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nPrice ; // <20> ŷ<EFBFBD> <C5B7> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
bool bPremiumTrade ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> ̾<EFBFBD> <20> ƴ<EFBFBD> , 1=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> ̾<EFBFBD>
# if defined(PRE_ADD_PETALTRADE)
char cMethodCode ; // 1=<3D> <> <EFBFBD> ӸӴ<D3B8> , 3=<3D> <> Ż
# endif
} ;
// QUERY_CANCELTRADE
struct TQCancelTrade : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
int nMarketDBID ; // <20> ŷ<EFBFBD> ID
BYTE cInvenSlotIndex ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <20> ε<EFBFBD> <CEB5> <EFBFBD> <20> <> ȣ
int nChannelID ; // ä<> <C3A4> ID
int nMapID ; // <20> <> ID
bool bCashItem ;
} ;
struct TACancelTrade : public TAHeader
{
int nMarketDBID ;
BYTE cInvenSlotIndex ;
TItem Item ;
int nPrice ;
bool bCashItem ;
} ;
// QUERY_BUYTRADEITEM
struct TQBuyTradeItem : public TQHeader
{
INT64 biCharacterDBID ;
int nMarketDBID ;
BYTE cInvenSlotIndex ;
int nChannelID ;
int nMapID ;
bool bCashItem ;
# if defined(PRE_ADD_DIRECT_BUY_UPGRADEITEM)
bool bMini ;
# else // #if defined(PRE_ADD_DIRECT_BUY_UPGRADEITEM)
# if defined(PRE_ADD_PETALTRADE)
int nPetalPrice ;
# endif
# endif // #if !defined(PRE_ADD_DIRECT_BUY_UPGRADEITEM)
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TABuyTradeItem : public TAHeader
{
int nMarketDBID ;
BYTE cInvenSlotIndex ;
TItem Item ;
UINT nSellerADBID ; // <20> Ǹ<EFBFBD> <C7B8> <EFBFBD> ADBID
INT64 biSellerCharacterDBID ; // <20> Ǹ<EFBFBD> <C7B8> <EFBFBD> CDBID
int nPrice ;
char cPayMethodCode ;
# if defined(PRE_ADD_DIRECT_BUY_UPGRADEITEM)
bool bMini ;
# endif // #if defined(PRE_ADD_DIRECT_BUY_UPGRADEITEM)
} ;
// QUERY_GETLISTTRADEFORCALCULATION
struct TQGetListTradeForCalculation : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListTradeForCalculation : public TAHeader
{
char cMarketCount ;
TMarketCalculationInfo MarketInfo [ MYMARKETMAX ] ;
} ;
// QUERY_TRADECALCULATE
struct TQTradeCalculate : public TQHeader
{
INT64 biCharacterDBID ;
int nMarketDBID ;
int nChannelID ;
int nMapID ;
} ;
struct TATradeCalculate : public TAHeader
{
int nMarketDBID ;
int nCalculatePrice ;
# if defined(PRE_ADD_PETALTRADE)
char cPayMethodCode ;
# endif
} ;
// QUERY_TRADECALCULATEALL
struct TQTradeCalculateAll : public TQHeader
{
INT64 biCharacterDBID ;
int nChannelID ;
int nMapID ;
} ;
struct TATradeCalculateAll : public TAHeader
{
int nCalculatePrice ;
# if defined(PRE_ADD_PETALTRADE)
int nCalculatePetal ;
# endif
} ;
# if !defined(PRE_ADD_DIRECT_BUY_UPGRADEITEM)
// QUERY_GETTRADEITEMID, // MarketDBID<49> <44> ItemID<49> ˾Ƴ<CBBE> <C6B3> <EFBFBD>
struct TQGetTradeItemID : public TQHeader
{
int nMarketDBID ;
} ;
# endif // #if defined(PRE_ADD_DIRECT_BUY_UPGRADEITEM)
struct TAGetTradeItemID : public TAHeader
{
int nMarketDBID ;
int nMarketItemID ;
# if defined(PRE_ADD_PETALTRADE)
char cMethodCode ;
int nPrice ;
# endif
} ;
// QUERY_GETPETALBALANCE, // <20> <> Ż <20> ܾ<EFBFBD> <20> <> ȸ
struct TAGetPetalBalance : public TAHeader
{
int nPetalBalance ;
} ;
// QUERY_GETTRADEPRICE
struct TQGetTradePrice : public TQHeader
{
int nMarketDBID ;
int nItemID ;
BYTE cLevel ;
BYTE cOption ;
} ;
struct TAGetTradePrice : public TAHeader
{
int nMarketDBID ;
int nItemID ;
BYTE cLevel ;
BYTE cOption ;
TMarketPrice ItemPrices [ 2 ] ; // Index 0 : <20> <> <EFBFBD> ӸӴ<D3B8> 1: <20> <> Ż
} ;
//QUERY_GETLISTMINITRADE
struct TQGetListMiniTrade : public TQHeader
{
INT64 biCharacterDBID ;
int nItemID ;
char cPayMethodCode ; // 0-ȥ<> <C8A5> , 1-<2D> <> <EFBFBD> <EFBFBD> , 3-<2D> <> Ż
} ;
typedef TAGetPageTrade TAGetListMiniTrade ;
//#########################################################################################################################################
// MAINCMD_FRIEND
//#########################################################################################################################################
//QUERY_FRIENDLIST,
struct TQFriendList : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TDBFriendGroupData
{
UINT nGroupDBID ;
WCHAR wszGroupName [ FRIEND_GROUP_NAMELENMAX ] ;
} ;
struct TDBFriendData
{
UINT nGroupDBID ;
WCHAR wszGroupName [ FRIEND_GROUP_NAMELENMAX ] ;
INT64 biCharacterDBID ;
UINT nFriendAccountDBID ;
INT64 biFriendCharacterDBID ;
WCHAR wszFriendCharacterName [ NAMELENMAX ] ;
WCHAR wszMemo [ FRIEND_MEMO_LEN_MAX ] ;
bool bMobileAuthentication ;
} ;
struct TAFriendList : public TAHeader
{
INT64 biCharacterDBID ;
BYTE cCount ;
TDBFriendData FriendData [ FRIEND_MAXCOUNT + FRIEND_GROUP_MAX ] ;
} ;
// QUERY_ADDGROUP, // <20> <EFBFBD> <20> ߰<EFBFBD>
struct TQAddGroup : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszGroupName [ FRIEND_GROUP_NAMELENMAX ] ;
int nGroupCountLimit ; // ģ<> <C4A3> <20> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ġ
} ;
struct TAAddGroup : public TAHeader
{
WCHAR wszGroupName [ FRIEND_GROUP_NAMELENMAX ] ;
UINT nGroupDBID ;
} ;
// QUERY_MODGROUPNAME, // <20> <EFBFBD> <D7B7> ̸<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQModGroupName : public TQHeader
{
INT64 biCharacterDBID ;
int nGroupDBID ;
WCHAR wszGroupName [ FRIEND_GROUP_NAMELENMAX ] ;
} ;
struct TAModGroupName : public TAHeader
{
UINT nGroupDBID ;
WCHAR wszGroupName [ FRIEND_GROUP_NAMELENMAX ] ;
} ;
// QUERY_DELGROUP, // <20> <EFBFBD> <D7B7> <EFBFBD> <EFBFBD> <EFBFBD>
struct TQDelGroup : public TQHeader
{
INT64 biCharacterDBID ;
UINT nGroupDBID ;
} ;
struct TADelGroup : public TAHeader
{
UINT nGroupDBID ;
} ;
// QUERY_MODFRIENDANDGROUPMAPPING, // ģ<> <C4A3> <EFBFBD> <EFBFBD> ģ<> <C4A3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> μ<EFBFBD> <CEBC> <EFBFBD>
struct TQModFriendAndGroupMapping : public TQHeader
{
INT64 biCharacterDBID ;
int nGroupDBID ;
char cCount ;
INT64 biFriendCharacterDBIDs [ FRIEND_MAXCOUNT ] ;
} ;
struct TAModFriendAndGroupMapping : public TAHeader
{
int nGroupDBID ;
char cCount ;
INT64 biFriendCharacterDBIDs [ FRIEND_MAXCOUNT ] ;
} ;
//QUERY_ADDFRIEND,
struct TQAddFriend : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszFriendName [ NAMELENMAX ] ;
UINT nGroupDBID ;
int nFriendCountLimit ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<> <C4A3> <20> <> <20> <> <EFBFBD> <EFBFBD> ġ
} ;
struct TAAddFriend : public TAHeader
{
INT64 biCharacterDBID ;
UINT nFriendAccountDBID ;
INT64 biFriendCharacterDBID ;
UINT nGroupDBID ;
WCHAR wszFriendName [ NAMELENMAX ] ;
BYTE cNeedDelIsolate ;
} ;
// QUERY_MODFRIENDMEMO, // ģ<> <C4A3> <EFBFBD> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD>
struct TQModFriendMemo : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biFriendCharacterDBID ;
WCHAR wszMemo [ FRIEND_MEMO_LEN_MAX ] ;
} ;
struct TAModFriendMemo : public TAHeader
{
INT64 biCharacterDBID ;
} ;
//QUERY_DELFRIEND,
struct TQDelFriend : public TQHeader
{
INT64 biCharacterDBID ;
//<2F> ϴ<EFBFBD> <20> ϳ <EFBFBD> ¥<EFBFBD> <C2A5> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> <CCBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
WCHAR wszDelCharacterName [ NAMELENMAX ] ;
char cCount ;
INT64 biFriendCharacterDBIDs [ FRIEND_MAXCOUNT ] ;
} ;
struct TADelFriend : public TAHeader
{
char cCount ;
INT64 biFriendCharacterDBIDs [ FRIEND_MAXCOUNT ] ;
} ;
//#########################################################################################################################################
// MAINCMD_ISOLATE
//#########################################################################################################################################
struct TIsolateItem : public TBoostMemoryPool < TIsolateItem >
{
INT64 biIsolateCharacterDBID ;
WCHAR wszIsolateName [ NAMELENMAX ] ;
} ;
//QUERY_GETISOLATELIST
struct TQGetIsolateList : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetIsolateList : public TAHeader
{
BYTE cCount ;
TIsolateItem Isolate [ ISOLATELISTMAX ] ;
} ;
//QUERY_ADDISOLATE
struct TQAddIsolate : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszIsolateName [ NAMELENMAX ] ;
INT64 biFriendCharacterDBID ;
} ;
struct TAAddIsolate : public TAHeader
{
BYTE cNeedDelFriend ;
TIsolateItem IsolateItem ;
} ;
//QUERY_DELISOLATE
struct TQDelIsolate : public TQHeader
{
INT64 biCharacterDBID ;
char cCount ;
INT64 biIsolateCharacterDBIDs [ ISOLATELISTMAX ] ;
} ;
struct TADelIsolate : public TAHeader
{
char cCount ;
INT64 biIsolateCharacterDBIDs [ ISOLATELISTMAX ] ;
} ;
//#########################################################################################################################################
// MAINCMD_GUILD
//#########################################################################################################################################
// QUERY_CREATEGUILD // <20> <> <EFBFBD> <EFBFBD> â<> <C3A2> <20> <> û/<2F> <> <EFBFBD> <EFBFBD>
struct TQCreateGuild : public TQHeader
{
INT64 nCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
int wGuildRoleAuth [ GUILDROLE_TYPE_CNT ] ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMapID ; // <20> ʹ <EFBFBD> ȣ
int nEstablishExpense ; // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <EFBFBD> ݾ<EFBFBD>
char cLevel ; // â<> <C3A2> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
INT nRoleMaxItem [ GUILDROLE_TYPE_CNT ] ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> Һ<EFBFBD> â<> <C3A2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<> <C8BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> ε<EFBFBD> <CEB5> <EFBFBD> )
INT nRoleMaxCoin [ GUILDROLE_TYPE_CNT ] ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> Һ<EFBFBD> <20> ִ<EFBFBD> <20> <> <EFBFBD> ݾ<EFBFBD> (<28> ε<EFBFBD> <CEB5> <EFBFBD> )
} ;
struct TACreateGuild : public TAHeader
{
INT64 nCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> õ<EFBFBD> )
__time64_t JoinDate ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ¥
int nEstablishExpense ; // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <EFBFBD> ݾ<EFBFBD>
} ;
// QUERY_GETGUILDINFO // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> û
struct TQGetGuildInfo : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
bool bNeedMembList ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ϵ<EFBFBD> <20> ʿ<EFBFBD> <CABF> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
struct TAGetGuildInfo : public TAHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
TGuild Info ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> õ<EFBFBD> )
} ;
struct TAGetGuildMember : public TAHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
bool bFirstPage ; // ó<> <C3B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> üũ
bool bEndPage ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> üũ
int nCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> õ<EFBFBD> )
TGuildMember MemberList [ SENDGUILDMEMBER_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
// QUERY_DISMISSGUILD // <20> <> <EFBFBD> <EFBFBD> <20> <> ü <20> <> û
struct TQDismissGuild : public TQHeader
{
INT64 nCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
} ;
struct TADismissGuild : public TAHeader
{
INT64 nCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
} ;
// QUERY_ADDGUILDMEMBER // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ߰<EFBFBD> <20> <> û
struct TQAddGuildMember : public TQHeader
{
UINT nAccountDBID ; // <20> ߰<EFBFBD> <DFB0> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> DBID
INT64 nCharacterDBID ; // <20> ߰<EFBFBD> <DFB0> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cLevel ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wGuildSize ; // <20> ִ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <>
} ;
struct TAAddGuildMember : public TAHeader
{
INT64 nCharacterDBID ; // <20> ߰<EFBFBD> <DFB0> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
__time64_t JoinDate ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ¥
} ;
// QUERY_DELGUILDMEMBER // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (Ż<> <C5BB> /<2F> ߹<EFBFBD> ) <20> <> û
struct TQDelGuildMember : public TQHeader
{
UINT nReqAccountDBID ; // <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> <EFBFBD> DBID (<28> ߹<EFBFBD> <DFB9> <EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> Ŵ<EFBFBD> <C5B4> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
INT64 nReqCharacterDBID ; // <20> <> û<EFBFBD> <C3BB> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID (<28> ߹<EFBFBD> <DFB9> <EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> Ŵ<EFBFBD> <C5B4> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
UINT nDelAccountDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> DBID
INT64 nDelCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
bool bIsExiled ; // <20> ߹<EFBFBD> <DFB9> ϴ<EFBFBD> <CFB4> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (true : <20> ߹<EFBFBD> / false : Ż<> <C5BB> )
char cLevel ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
# ifdef PRE_ADD_BEGINNERGUILD
bool bIsGraduateBeginnerGuild ;
# endif //#ifdef PRE_ADD_BEGINNERGUILD
} ;
struct TADelGuildMember : public TAHeader
{
UINT nReqAccountDBID ; // <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> <EFBFBD> DBID (<28> ߹<EFBFBD> <DFB9> <EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> Ŵ<EFBFBD> <C5B4> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
INT64 nReqCharacterDBID ; // <20> <> û<EFBFBD> <C3BB> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID (<28> ߹<EFBFBD> <DFB9> <EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> Ŵ<EFBFBD> <C5B4> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
UINT nDelAccountDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> DBID
INT64 nDelCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
bool bIsExiled ; // <20> ߹<EFBFBD> <DFB9> ϴ<EFBFBD> <CFB4> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (true : <20> ߹<EFBFBD> / false : Ż<> <C5BB> )
# ifdef PRE_ADD_BEGINNERGUILD
bool bIsGraduateBeginnerGuild ;
# endif //#ifdef PRE_ADD_BEGINNERGUILD
} ;
// QUERY_CHANGEGUILDINFO // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> û
struct TQChangeGuildInfo : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
BYTE btGuildUpdate ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ÿ<> <C5B8> (eGuildUpdateType)
long nAddCommonPoint ; // <20> <> <EFBFBD> <EFBFBD> <20> Ϲ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> ȭ<EFBFBD> <C8AD> (0 : <20> <> ȭ<EFBFBD> <C8AD> <EFBFBD> <EFBFBD> / <20> <EFBFBD> : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̾<EFBFBD> <CCBE> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> !!!)
int nInt1 ;
int nInt2 ;
int nInt3 ;
int nInt4 ;
INT64 biInt64 ;
WCHAR Text [ GUILDHISTORYTEXT_MAX + 1 ] ;
} ;
struct TAChangeGuildInfo : public TAHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
BYTE btGuildUpdate ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ÿ<> <C5B8> (eGuildUpdateType)
long nCurCommonPoint ; // <20> <> <EFBFBD> <EFBFBD> <20> Ϲ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> 緮 (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> ä<> <C3A4> <EFBFBD> <EFBFBD> )
long nTotCommonPoint ; // <20> <> <EFBFBD> <EFBFBD> <20> Ϲ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> ä<> <C3A4> <EFBFBD> <EFBFBD> )
int nInt1 ;
int nInt2 ;
int nInt3 ;
int nInt4 ;
INT64 biInt64 ;
WCHAR Text [ GUILDHISTORYTEXT_MAX + 1 ] ;
} ;
// QUERY_CHANGEGUILDMEMBERINFO // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> û
struct TQChangeGuildMemberInfo : public TQHeader
{
UINT nReqAccountDBID ; // <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> <EFBFBD> DBID (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
INT64 nReqCharacterDBID ; // <20> <> û<EFBFBD> <C3BB> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
UINT nChgAccountDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> DBID
INT64 nChgCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
BYTE btGuildMemberUpdate ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ÿ<> <C5B8> (eGuildMemberUpdateType)
int nInt1 ;
int nInt2 ;
INT64 biInt64 ;
WCHAR Text [ GUILDHISTORYTEXT_MAX + 1 ] ;
char cLevel ;
} ;
struct TAChangeGuildMemberInfo : public TAHeader
{
UINT nReqAccountDBID ; // <20> <> û<EFBFBD> <C3BB> <20> <> <EFBFBD> <EFBFBD> DBID (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
INT64 nReqCharacterDBID ; // <20> <> û<EFBFBD> <C3BB> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <20> <> <EFBFBD> 쿡<EFBFBD> <ECBFA1> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <EFBFBD> <DEB6> <EFBFBD> )
UINT nChgAccountDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> DBID
INT64 nChgCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
BYTE btGuildMemberUpdate ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ÿ<> <C5B8> (eGuildMemberUpdateType)
int nInt1 ;
int nInt2 ;
INT64 biInt64 ;
WCHAR Text [ GUILDHISTORYTEXT_MAX + 1 ] ;
} ;
// QUERY_ADDGUILDHISTORY: // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> ߰<EFBFBD> <20> <> û
struct TQAddGuildHistory : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
TGuildHistory History ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD>
} ;
// QUERY_GETGUILDHISTORYLIST // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD> <20> <> û
struct TQGetGuildHistoryList : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
INT64 biIndex ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD> <20> ε<EFBFBD> <CEB5> <EFBFBD> (0 <20> ̸<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ֱ<EFBFBD> <20> <> <EFBFBD> Ϻ <EFBFBD> <CFBA> <EFBFBD> Ȯ<> <C8AE> ?)
bool bDirection ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (0:<3A> ε<EFBFBD> <CEB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> / 1:<3A> ε<EFBFBD> <CEB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> )
} ;
struct TAGetGuildHistoryList : public TAHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
INT64 biIndex ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD> <20> ε<EFBFBD> <CEB5> <EFBFBD> (0 <20> ̸<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ֱ<EFBFBD> <20> <> <EFBFBD> Ϻ <EFBFBD> <CFBA> <EFBFBD> Ȯ<> <C8AE> ?)
bool bDirection ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (0:<3A> ε<EFBFBD> <CEB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> / 1:<3A> ε<EFBFBD> <CEB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> )
int nCurCount ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD> <20> ε<EFBFBD> <CEB5> <EFBFBD> <20> <> <20> Է<EFBFBD> <20> ε<EFBFBD> <CEB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nTotCount ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> ü <20> <> <EFBFBD> <EFBFBD>
int nCount ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> õ<EFBFBD> )
TGuildHistory HistoryList [ GUILDHISTORYLIST_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> õ<EFBFBD> )
} ;
//QUERY_INVITEGUILDMEMBER: // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ʴ<EFBFBD> <20> <> û
struct TQInviteGuildMember : public TQHeader
{
TQGetGuildInfo GuildInfo ;
UINT nToSessionID ; // <20> ʴ뿡 <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct TAInviteGuildMember : public TAHeader
{
TAGetGuildInfo GuildInfo ;
UINT nToSessionID ; // <20> ʴ뿡 <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ID
} ;
// QUERY_MOVE_ITEM_IN_GUILDWARE // <20> κ<EFBFBD> -> <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̵<EFBFBD>
struct TQMoveItemInGuildWare : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
int nItemID ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID
INT64 biItemSerial ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
INT64 biNewItemSerial ; // Split<69> Ǿ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ
INT64 biMergeTargetItemSerial ; // Merge <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ
short wItemCount ; // @inbItemSerial <20> <> <EFBFBD> <EFBFBD> <20> ش<EFBFBD> <D8B4> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <20> <> <EFBFBD> <EFBFBD>
short wSplitItemCount ; // @inbNewItemSerial <20> <> <EFBFBD> <EFBFBD> <20> ش<EFBFBD> <D8B4> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wMergeItemCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMapIndex ; // <20> <> ID
DBPacket : : TExchangeItem SrcItem ;
DBPacket : : TExchangeItem DestItem ;
} ;
struct TAMoveItemInGuildWare : public TAHeader
{
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
DBPacket : : TExchangeItem SrcItem ;
DBPacket : : TExchangeItem DestItem ;
} ;
// QUERY_MOVE_INVEN_TO_GUILDWARE // <20> κ<EFBFBD> -> <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̵<EFBFBD>
struct TQMoveInvenToGuildWare : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
int nItemID ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID
INT64 biItemSerial ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
INT64 biNewItemSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ϻ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ű<EFBFBD> <C5B1> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , Split<69> Ǿ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ . Split <20> <> <EFBFBD> <EFBFBD> <20> ʴ´ ٸ<C2B4> NULL<4C> <4C> <20> Է<EFBFBD> <D4B7> մϴ<D5B4> .
INT64 biMergeTargetItemSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ۿ<EFBFBD> Merge<67> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ . Merge <20> <> <EFBFBD> <EFBFBD> <20> ʴ´ ٸ<C2B4> NULL<4C> <4C> <20> Է<EFBFBD> <D4B7> մϴ<D5B4> .
short wItemCount ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wMovingItemCount ; // <20> ű<EFBFBD> <C5B1> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wMergeItemCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMapIndex ; // <20> <> ID
DBPacket : : TExchangeItem InvenItem ;
DBPacket : : TExchangeItem GuildWareItem ;
} ;
struct TAMoveInvenToGuildWare : public TAHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
DBPacket : : TExchangeItem InvenItem ;
DBPacket : : TExchangeItem GuildWareItem ;
} ;
// QUERY_MOVE_GUILDWARE_TO_INVEN // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> -> <20> κ<EFBFBD> <CEBA> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̵<EFBFBD>
struct TQMoveGuildWareToInven : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
int nItemID ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID
INT64 biItemSerial ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
INT64 biNewItemSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> Ϻ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ű<EFBFBD> <C5B1> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , Split<69> Ǿ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ . Split <20> <> <EFBFBD> <EFBFBD> <20> ʴ´ ٸ<C2B4> NULL<4C> <4C> <20> Է<EFBFBD> <D4B7> մϴ<D5B4> .
INT64 biMergeTargetItemSerial ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ۿ<EFBFBD> Merge<67> ϴ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ȣ . Merge <20> <> <EFBFBD> <EFBFBD> <20> ʴ´ ٸ<C2B4> NULL<4C> <4C> <20> Է<EFBFBD> <D4B7> մϴ<D5B4> .
short wItemCount ; // <20> ̵<EFBFBD> <CCB5> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wMovingItemCount ; // <20> ű<EFBFBD> <C5B1> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wMergeItemCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMaxDailyTakeItemCount ;
int nMapIndex ; // <20> <> ID
DBPacket : : TExchangeItem GuildWareItem ;
DBPacket : : TExchangeItem InvenItem ;
} ;
struct TAMoveGuildWareToInven : public TAHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
int nDailyTakeItemCount ;
__time64_t tUseDate ;
DBPacket : : TExchangeItem GuildWareItem ;
DBPacket : : TExchangeItem InvenItem ;
} ;
struct TQGuildWareHouseCoin : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cMoveType ;
bool bInOutFlag ; // 0:<3A> Ա<EFBFBD> 1:<3A> <> <EFBFBD> <EFBFBD>
INT64 nMoveCoin ; // <20> Աݾ<D4B1>
int nMapIndex ; // <20> <> ID
char szIP [ IPLENMAX ] ; // IP<49> ּ<EFBFBD>
} ;
struct TAGuildWareHouseCoin : public TAHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
char cMoveType ;
bool bInOutFlag ; // 0:<3A> Ա<EFBFBD> 1:<3A> <> <EFBFBD> <EFBFBD>
INT64 nMoveCoin ; // <20> ̵<EFBFBD> <20> ݾ<EFBFBD>
INT64 biTotalCoin ; // <20> <> ü <20> ݾ<EFBFBD>
__time64_t tUseDate ;
} ;
// QUERY_GET_GUILDWAREINFO // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û
struct TQGetGuildWareInfo : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
short wMaxCount ; // â<> <C3A2> <20> ִ<EFBFBD> <D6B4> <EFBFBD>
} ;
struct TAGetGuildWareInfo
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
int nErrNo ; // <20> <> <EFBFBD> <EFBFBD>
BYTE cItemListCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ۸<EFBFBD> <DBB8> <EFBFBD> Ʈ ī<> <C4AB> Ʈ
TItemInfo ItemList [ GUILD_WAREHOUSE_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ۸<EFBFBD> <DBB8> <EFBFBD> Ʈ
} ;
//QUERY_SET_GUILDWAREINFO // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQSetGuildWareInfo : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
BYTE cSlotListCount ; // <20> <> <EFBFBD> <EFBFBD> ī<EFBFBD> <C4AB> Ʈ
TGuildWareSlot WareSlotList [ GUILD_WAREHOUSE_MAX ] ; // <20> <> <EFBFBD> Ը<EFBFBD> <D4B8> <EFBFBD> Ʈ
} ;
struct TASetGuildWareInfo
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
int nRetCode ;
} ;
// QUERY_GET_GUILDWAREHISTORY // <20> <> <EFBFBD> <EFBFBD> â<EFBFBD> <C3A2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> û
struct TQGetGuildWareHistory : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
int nIndex ; // <20> <> û <20> ε<EFBFBD> <CEB5> <EFBFBD>
} ;
struct TAGetGuildWareHistory
{
UINT nAccountDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
int nErrNo ;
int nCurrCount ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <>
int nTotalCount ; // <20> <> ü <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <>
int nCount ;
TGuildWareHistory HistoryList [ GUILD_WAREHOUSE_HISTORYLIST_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 丮 <20> <> <EFBFBD> <EFBFBD> Ʈ
} ;
// QUERY_CHANGEGUILDNAME // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQChangeGuildName : public TQHeader
{
UINT nGuildDBID ;
INT64 biItemSerial ;
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
struct TAChangeGuildName : public TAHeader
{
char cWorldSetID ;
UINT nGuildDBID ;
INT64 biItemSerial ;
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
// QUERY_MOD_GUILDEXP // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ġ <20> <> <EFBFBD> <EFBFBD>
struct TQModGuildExp : public TQHeader
{
UINT nGuildDBID ;
char cPointType ;
int nPointValue ;
int nMaxPoint ;
int nLevel ;
INT64 biCharacterDBID ;
int nMissionID ;
# if defined(PRE_ADD_GUILD_CONTRIBUTION)
bool IsGuildLevelMax ;
# endif // #if defined(PRE_ADD_GUILD_CONTRIBUTION)
} ;
struct TAModGuildExp : public TAHeader
{
char cWorldSetID ;
UINT nGuildDBID ;
char cPointType ;
int nPointValue ;
int nTotalGuildExp ;
int nDailyPointValue ;
int nLevel ;
INT64 biCharacterDBID ;
int nMissionID ;
} ;
// QUERY_MOD_GUILDCHEAT // <20> <> <EFBFBD> <EFBFBD> ġƮ
struct TQModGuildCheat : public TQHeader
{
UINT nGuildDBID ;
char cCheatType ;
int nPoint ;
char cLevel ;
} ;
struct TAModGuildCheat : public TAHeader
{
char cWorldSetID ;
UINT nGuildDBID ;
char cCheatType ;
int nPoint ;
char cLevel ;
} ;
struct TQGetGuildRewardItem : public TQHeader
{
UINT nGuildDBID ;
} ;
struct TAGetGuildRewardItem : public TAHeader
{
char cWorldSetID ;
UINT nGuildDBID ;
int nCount ;
TGuildRewardItem RewardItemInfo [ GUILDREWARDEFFECT_TYPE_CNT ] ;
} ;
struct TQAddGuildRewardItem : public TQHeader
{
INT64 biCharacterDBID ;
UINT nGuildDBID ;
int nItemID ;
bool bEnternityFlag ;
int nLifeSpan ;
BYTE cItemBuyType ;
int nNeedGold ;
int nMpaID ;
int nRemoveItemID ;
} ;
struct TAAddGuildRewardItem : public TAHeader
{
INT64 biCharacterDBID ;
char cWorldSetID ;
UINT nGuildDBID ;
int nItemID ;
BYTE cItemBuyType ;
__time64_t m_tExpireDate ;
} ;
struct TQChangeGuildSize : public TQHeader
{
UINT nGuildDBID ;
short nGuildSize ;
} ;
struct TAChangeGuildSize : public TAHeader
{
char cWorldSetID ;
UINT nGuildDBID ;
short nGuildSize ;
} ;
struct TQDelGuildEffectItem : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
int nItemID ;
} ;
// QUERY_ENROLL_GUILDWAR
struct TQEnrollGuildWar : public TQHeader
{
short wScheduleID ;
UINT nGuildDBID ;
} ;
struct TAEnrollGuildWar : public TAHeader
{
char cWorldSetID ;
UINT nGuildDBID ;
short wScheduleID ;
BYTE cTeamColorCode ;
} ;
// QUERY_GET_GUILDWARSCHEDULE
struct TQGetGuildWarSchedule : public TQHeader
{
} ;
struct TAGetGuildWarSchedule : public TAHeader
{
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wWinersWeightRate ; // <20> ¸ <EFBFBD> <C2B8> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ġ
bool bFinalProgress ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
TGuildWarEventInfo EventInfo [ GUILDWAR_STEP_END ] ; // <20> Ⱓ<EFBFBD> <E2B0A3> <EFBFBD> <EFBFBD>
__time64_t tRewardExpireDate ; // <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ) <20> <> <EFBFBD> <EFBFBD> <20> Ⱓ
} ;
// QUERY_GET_GUILDWARFINALSCHEDULE // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
struct TQGetGuildWarFinalSchedule : public TQHeader
{
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
struct TAGetGuildWarFinalSchedule : public TAHeader
{
TGuildWarEventInfo GuildWarFinalSchedule [ GUILDWAR_FINALPART_MAX ] ;
} ;
// QUERY_ADD_GUILDWARPOINT // <20> <> <EFBFBD> <EFBFBD> <20> ̼<EFBFBD> Ŭ<> <C5AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD>
struct TQAddGuildWarPointRecodrd : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
int nMissionID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̼<EFBFBD> ID
int nOpeningPoint ; // ȹ<> <C8B9> <EFBFBD> <EFBFBD> <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ
UINT nGuildDBID ; // <20> Ҽ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> ID
char cTeamColorCode ; // 1-û<> <C3BB> , 2-ȫ<> <C8AB>
} ;
struct TAAddGuildWarPointRecodrd : public TAHeader
{
char cWorldSetID ;
char cTeamColorCode ; // 1-û<> <C3BB> , 2-ȫ<> <C8AB>
UINT nGuildDBID ; // <20> Ҽ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> ID
int nOpeningPoint ; // ȹ<> <C8B9> <EFBFBD> <EFBFBD> <20> ̼<EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ
} ;
// QUERY_GET_GUILDWARPOINT // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> ȸ
struct TQGetGuildWarPoint : public TQHeader
{
char cQueryType ; // 'C'=ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> ȸ, 'G'=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ʈ <20> <> ȸ, 'T'=<3D> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ʈ <20> <> ȸ
INT64 biDBID ; // C-ij<> <C4B3> <EFBFBD> <EFBFBD> ID, G-<2D> <> <EFBFBD> <EFBFBD> ID, T-0
} ;
struct TAGetGuildWarPoint : public TAHeader
{
char cQueryType ;
INT64 biDBID ;
int nCharOpeningPoint ;
int nGuildOpeningPoint ;
int nBlueTeamPoint ;
int nRedTeamPoint ;
} ;
// QUERY_GET_GUILDWARPOINT_PARTTOTAL // <20> ι <EFBFBD> <CEB9> <EFBFBD> 1<> <31> <20> <> ȸ(<28> <> <EFBFBD> <EFBFBD> )
struct TQGetGuildWarPointPartTotal : public TQHeader
{
char cQueryType ; // 'A' = <20> <> ü, 'C' = <20> <> <EFBFBD> <EFBFBD>
INT64 biCharacterDBID ;
} ;
struct SGuildWarPointPartTotal
{
short wRanking ; // <20> <> <EFBFBD> <EFBFBD>
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
WCHAR wszCharName [ NAMELENMAX ] ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
int nPoint ; // <20> <> <EFBFBD> <EFBFBD>
} ;
struct TAGetGuildWarPointPartTotal : public TAHeader
{
char cQueryType ;
SGuildWarPointPartTotal GuildWarPointPartTotal [ GUILDWAR_RANKINGTYPE_MAX ] ; // <20> <> <20> ι <EFBFBD> <CEB9> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
// QUERY_GET_GUILDWARPOINT_GUILD_PARTTOTAL // <20> ι <EFBFBD> <CEB9> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQGetGuildWarPointGuildPartTotal : public TQHeader
{
char cQueryType ; // 'A' = <20> <> ü, 'G' = <20> <> <EFBFBD> <EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct TAGetGuildWarPointGuildPartTotal : public TAHeader
{
char cQueryType ; // 'A' = <20> <> ü, 'G' = <20> <> <EFBFBD> <EFBFBD>
SGuildWarPointPartTotal GuildWarPointPartTotal [ GUILDWAR_RANKINGTYPE_MAX ] ; // <20> <> <20> ι <EFBFBD> <CEB9> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
// QUERY_GET_GUILDWARPOINT_DAILY // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> ں<EFBFBD> 1<> <31>
struct TQGetGuildWarPointDaily : public TQHeader
{
} ;
struct SGuildWarPointDaily
{
int nTotalPoint ;
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> ID
WCHAR wszCharName [ NAMELENMAX ] ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct TAGetGuildWarPointDaily : public TAHeader
{
SGuildWarPointDaily sGuildWarPointDaily [ GUILDWAR_DAILY_AWARD_MAX ] ;
} ;
// QUERY_GET_GUILDWARPOINT_GUILD_TOTAL // <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȳ(<28> <> <EFBFBD> ⼭ <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ȸ<EFBFBD> <C8B8> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
struct TQGetGuildWarPointGuildTotal : public TQHeader
{
bool bMasterServer ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> ..
char cQueryType ; // 'A' = <20> <> ü, 'G' = <20> <> <EFBFBD> <EFBFBD>
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct SGuildWarPointGuildTotal
{
short wRanking ; // <20> <> <EFBFBD> <EFBFBD> <20> <> ŷ
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
INT64 biMasterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> ID
WCHAR wszMasterName [ NAMELENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
short wGuildLevel ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
short wGuildMemberCount ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int nOpeningPointSum ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ջ<EFBFBD>
int nMaxMemberCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ִ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ο <EFBFBD> <CEBF> <EFBFBD>
} ;
struct TAGetGuildWarPointGuildTotal : public TAHeader
{
bool bMasterServer ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> ..
char cQueryType ; // 'A' = <20> <> ü, 'G' = <20> <> <EFBFBD> <EFBFBD>
int nTotalCount ;
SGuildWarPointGuildTotal sGuildWarPointGuildTotal [ GUILDWAR_FINALS_TEAM_MAX ] ;
} ;
//QUERY_GET_GUILDWARPOINT_RUNNING_TOTAL // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> Ȳ(24<32> <34> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
struct TQGetGuildWarPointRunningTotal : public TQHeader
{
//<2F> ϴ<EFBFBD> GUILD<4C> <44> <EFBFBD> <EFBFBD> <20> ̴°<CCB4> <20> Ⱦ<EFBFBD> <C8BE> <EFBFBD> <20> о <EFBFBD> ..
} ;
struct TAGetGuildWarPointRunningTotal : public TAHeader
{
int nTotalCount ;
SGuildWarPointGuildTotal sGuildWarPointGuildTotal [ GUILDWAR_TRIAL_POINT_TEAM_MAX ] ;
} ;
//QUERY_GET_GUILDWARPOINT_FINAL_REWARDS
struct TAGetGuildWarPointFinalRewards : public TAHeader
{
UINT nGuildDBID [ GUILDWAR_FINALS_TEAM_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> GuildDBID
int nGuildPoint [ GUILDWAR_FINALS_TEAM_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> GuildPoint
} ;
// QUERY_ADD_GUILDWAR_FINAL_MATCHLIST // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ǥ <20> <> <EFBFBD> <EFBFBD>
struct TQAddGuildWarFinalMatchList : public TQHeader
{
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
UINT nGuildDBID [ GUILDWAR_FINALS_TEAM_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> ǥ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ID(<28> ߰<EFBFBD> <DFB0> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> )
} ;
struct TAAddGuildWarFinalMatchList : public TAHeader
{
} ;
// QUERY_ADD_GUILDWARPOPULARITYVOTE // <20> α <EFBFBD> <20> <> ǥ <20> <> <EFBFBD> <EFBFBD>
struct TQAddGuildWarPopularityVote : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> ǥ <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct TAAddGuildWarPopularityVote : public TAHeader
{
} ;
// QUERY_GET_GUILDWARPOPULARITYVOTE // <20> α <EFBFBD> <20> <> ǥ <20> <> <EFBFBD> <EFBFBD> (ij<> <C4B3> <EFBFBD> Ͱ<EFBFBD> <20> <> ǥ<EFBFBD> <C7A5> <20> ߴ <EFBFBD> <DFB4> <EFBFBD> <20> <> ȸ<EFBFBD> <C8B8> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> )
struct TQGetGuildWarPopularityVote : public TQHeader
{
char cQueryType ; // 'C' - ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> ǥ<EFBFBD> <C7A5> <EFBFBD> <EFBFBD> , 'G'-<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȸ
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
} ;
struct TAGetGuildWarPopularityVote : public TAHeader
{
char cQueryType ; // 'C' - ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> ǥ<EFBFBD> <C7A5> <EFBFBD> <EFBFBD> , 'G'-<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȸ
UINT nGuildDBID ; // <20> <> ǥ or 1<> <31> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ID
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
int nPopularityVoteCount ; // <20> ѵ <EFBFBD> ǥ<EFBFBD> <C7A5>
} ;
// QUERY_ADD_GUILDWARFINALRESULTS // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQAddGuildWarFinalResults : public TQHeader
{
UINT nGuildDBID ; // <20> <> ǥ <20> <> <EFBFBD> <EFBFBD> ID
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
char cMatchSequence ; // <20> <> <EFBFBD> <EFBFBD> ǥ<EFBFBD> <C7A5> <20> <> ȣ
char cMatchTypeCode ; // 1=<3D> <> <EFBFBD> <EFBFBD> , 2=4<> <34> , 3=8<> <38> , 4=16<31> <36>
char cMatchResultCode ; // 1=<3D> ¸ <EFBFBD> , 2=<3D> й<EFBFBD> , 3=<3D> <> <EFBFBD> <EFBFBD> , 4=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
struct TAAddGuildWarFinalResults : public TAHeader
{
} ;
// QUERY_GET_GUILDWARFINALRESULTS // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
struct TQGetGuildWarFinalResults : public TQHeader
{
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
struct SGuildFinalResultInfo
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
WCHAR wszGuildName [ GUILDNAME_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
char cMatchSequence ; // <20> <> <EFBFBD> <EFBFBD> ǥ<EFBFBD> <C7A5> <20> <> ȣ
char cMatchTypeCode ; // 1=<3D> <> <EFBFBD> <EFBFBD> , 2=4<> <34> , 3=8<> <38> , 4=16<31> <36>
char cMatchResultCode ; // 1=<3D> ¸ <EFBFBD> , 2=<3D> й<EFBFBD> , 3=<3D> <> <EFBFBD> <EFBFBD> , 4=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
short wGuildMark ; // <20> <> <EFBFBD> 帶ũ <20> <> <EFBFBD> <EFBFBD>
short wGuildMarkBG ; // <20> <> <EFBFBD> 帶ũ <20> <> <EFBFBD> <EFBFBD>
short wGuildMarkBorder ; // <20> <> <EFBFBD> 帶ũ <20> θ<D7B5>
} ;
struct TAGetGuildWarFinalResults : public TAHeader
{
SGuildFinalResultInfo GuildFinalResultInfo [ GUILDWAR_FINALS_TEAM_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> ..
} ;
// QUERY_GET_GUILDWAR_PRE_WIN_GUILD // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
struct TQGetGuildWarPreWinGuild : public TQHeader
{
} ;
struct TAGetGuildWarPreWinGuild : public TAHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
//QUERY_ADD_GUILDWAR_REWARD_CHARACTER
struct TQAddGuildWarRewardCharacter : public TQHeader
{
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
char cRewardType ; // <20> <> <EFBFBD> <EFBFBD> <20> ڵ<EFBFBD> (1=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 2=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 3=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ)
} ;
struct TAAddGuildWarRewardCharacter : public TAHeader
{
char cRewardType ; // <20> <> <EFBFBD> <EFBFBD> <20> ڵ<EFBFBD> (1=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 2=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 3=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ)
} ;
//QUERY_GET_GUILDWAR_REWARD_CHARACTER
struct TQGetGuildWarRewardCharacter : public TQHeader
{
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
} ;
struct TAGetGuildWarRewardCharacter : public TAHeader
{
bool bRewardResults [ GUILDWAR_REWARD_CHAR_MAX ] ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> κ<EFBFBD> <CEBA> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
//QUERY_ADD_GUILDWAR_REWARD_GUILD // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQAddGuildWarRewardGuild : public TQHeader
{
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cRewardType ; // <20> <> <EFBFBD> <EFBFBD> <20> ڵ<EFBFBD> (1=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ų, 2=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 3=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 4=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ, 5=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ)
} ;
struct TAAddGuildWarRewardGuild : public TAHeader
{
char cWorldSetID ;
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cRewardType ; // <20> <> <EFBFBD> <EFBFBD> <20> ڵ<EFBFBD> (1=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ų, 2=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 3=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> , 4=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ, 5=<3D> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ)
} ;
//QUERY_GET_GUILDWAR_REWARD_GUILD // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
struct TQGetGuildWarRewardGuild : public TQHeader
{
char cQueryType ; // 'M' - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ȯ<> <C8AE> , 'V'-<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û
short wScheduleID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
} ;
struct TAGetGuildWarRewardGuild : public TAHeader
{
char cQueryType ; // 'M' - <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ȯ<> <C8AE> , 'V'-<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> û
char cWorldSetID ;
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
bool bRewardResults [ GUILDWAR_REWARD_GUILD_MAX ] ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 庸<EFBFBD> <E5BAB8> <20> <> <EFBFBD> <EFBFBD>
} ;
//QUERY_ADD_GUILDWAR_POINT_QUEUE (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> )
struct TQAddGuildWarPointQueue : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> ID
INT64 biAddPoint ;
WCHAR wszIP [ IPLENMAX ] ; // <20> ׳ <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ?
} ;
//QUERY_ADD_GUILDWAR_SYSTEM_MAIL_QUEUE
//<2F> <> <EFBFBD> <EFBFBD> TQSendSystemMail <20> <> <EFBFBD> <EFBFBD> ü <20> ״<EFBFBD> <D7B4> ξ<EFBFBD> ..
//QUERY_ADD_GUILDWAR_MAKE_GIFT_QUEUE
struct TQAddGuilWarMakeGiftQueue : public TQHeader
{
char cRewardType ;
INT64 biCharacterDBIDs [ GUILDSIZE_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ֵ<EFBFBD> <D6B5> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
char cClass [ GUILDSIZE_MAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ֵ<EFBFBD> <D6B5> <EFBFBD> Class
} ;
//QUERY_ADD_GUILDWAR_MAKE_GIFT_NOTGUILDINFO
struct TQAddGuildWarMakeGiftNotGuildInfo : public TQHeader
{
char cRewardType ;
UINT nGuildDBID ;
} ;
// QUERY_ADD_JOB_RESERVE
struct TQAddJobReserve : public TQHeader
{
char cJobType ;
} ;
struct TAAddJobReserve : public TAHeader
{
char cJobType ;
int nJobSeq ;
} ;
// QUERY_GET_JOB_RESERVE
struct TQGetJobReserve : public TQHeader
{
int nJobSeq ;
} ;
struct TAGetJobReserve : public TAHeader
{
int nJobSeq ;
char cJobStatus ;
} ;
struct TQGetListGuildWarItemTradeRecord : public TQHeader
{
INT64 characterDBID ;
} ;
struct TAGetListGuildWarItemTradeRecord : public TAHeader
{
int count ;
ItemCount itemCount [ INVENTORYMAX + WAREHOUSEMAX ] ;
} ;
struct TQAddGuildWarItemTradeRecord : public TQHeader
{
INT64 characterDBID ;
ItemCount itemCount ;
} ;
//QUERY_CHANGEGUILDWARESIZE
struct TQChangeGuildWareSize : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
short wStorageSize ; // â<> <C3A2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
struct TAChangeGuildWareSize : public TAHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
short wStorageSize ; // â<> <C3A2> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
//QUERY_CHANGEGUILDMARK
struct TQChangeGuildMark : public TQHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
short wGuildMark ; // <20> <> <EFBFBD> 帶ũ <20> <> <EFBFBD> <EFBFBD>
short wGuildMarkBG ; // <20> <> <EFBFBD> 帶ũ <20> <> <EFBFBD> <EFBFBD>
short wGuildMarkBorder ; // <20> <> <EFBFBD> 帶ũ <20> θ<D7B5>
} ;
struct TAChangeGuildMark : public TAHeader
{
INT64 nCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
short wGuildMark ; // <20> <> <EFBFBD> 帶ũ <20> <> <EFBFBD> <EFBFBD>
short wGuildMarkBG ; // <20> <> <EFBFBD> 帶ũ <20> <> <EFBFBD> <EFBFBD>
short wGuildMarkBorder ; // <20> <> <EFBFBD> 帶ũ <20> θ<D7B5>
} ;
# if defined(PRE_ADD_GUILD_CONTRIBUTION)
struct TQGetGuildContributionPoint : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetGuildContributionPoint : public TAHeader
{
int nWeeklyGuildContributionPoint ; // <20> ְ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 嵵
int nTotalGuildContributionPoint ; // <20> <> <EFBFBD> ±<EFBFBD> <C2B1> <EFBFBD> <20> ø<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> 嵵 <20> <> ġ
} ;
struct TQGetGuildContributionRanking : public TQHeader
{
UINT nGuildDBID ;
} ;
struct TAGetGuildContributionRanking : public TAHeader
{
int nCount ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
GuildContribution : : TGuildContributionRankingData ContributionRankingList [ GUILDSIZE_MAX ] ;
} ;
# endif
//#########################################################################################################################################
// MAINCMD_PVP
//#########################################################################################################################################
struct TQUpdatePvPData : public TQHeader
{
INT64 biCharacterDBID ;
PvPCommon : : QueryUpdatePvPDataType : : eCode Type ;
TPvPGroup PvP ;
} ;
struct TAUpdatePvPData : public TAHeader
{
PvPCommon : : QueryUpdatePvPDataType : : eCode Type ;
} ;
struct TQUpdatePvPRankCriteria : public TQHeader
{
UINT nThresholdPvPExp ;
} ;
struct TQForceCalcPvPRank : public TQHeader
{
} ;
struct LadderKillResult
{
BYTE cJobCode ;
short nKillCount ;
short nDeathCount ;
} ;
struct TQAddPvPLadderResult : public TQHeader
{
PvPCommon : : QueryUpdatePvPDataType : : eCode Type ;
INT64 biCharacterDBID ;
BYTE cPvPLadderCode ; // LadderSystem::MatchType::eCode
int iPvPLadderGradePoint ;
int iHiddenPvPLadderGradePoint ;
BYTE cResult ; // LadderSystem::MatchResult::eCode
BYTE cVersusCharacterJobCode ;
BYTE cKillDeathCount ;
LadderKillResult KillDeathCounts [ JOB_KIND_MAX ] ;
} ;
struct TAAddPvPLadderResult : public TAHeader
{
PvPCommon : : QueryUpdatePvPDataType : : eCode Type ;
} ;
struct TQGetListPvPLadderScore : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListPvPLadderScore : public TAHeader
{
TPvPLadderScoreInfo Data ;
} ;
struct TQGetListPvPLadderScoreByJob : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListPvPLadderScoreByJob : public TAHeader
{
TPvPLadderScoreInfoByJob Data ;
} ;
struct TQInitPvPLadderGradePoint : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cPvPLadderCode ;
int iPvPLadderPoint ; // <20> <> <EFBFBD> <EFBFBD> ġ <20> Է<EFBFBD> (-<2D> <> <EFBFBD> <EFBFBD> )
int iPvPLadderGradePoint ; // <20> ʱ<EFBFBD> ȭ<EFBFBD> <C8AD> PvP <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ
char szIP [ IPLENMAX ] ;
} ;
struct TAInitPvPLadderGradePoint : public TAHeader
{
} ;
struct TQUsePvPLadderPoint : public TQHeader
{
INT64 biCharacterDBID ;
int iPvPLadderPoint ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ
int iMapID ;
char szIP [ IPLENMAX ] ;
int iAfterLadderPoint ;
} ;
struct TAUsePvPLadderPoint : public TAHeader
{
int iPvPLadderPointAfter ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> PvP<76> <50> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
struct TQAddPvPLadderCUCount : public TQHeader
{
BYTE cPvPLadderCode ;
int iCUCount ;
} ;
struct TQModPvPLadderScoresForCheat : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cPvPLadderCode ;
int iPvPLadderPoint ;
int iPvPLadderGradePoint ;
int iHiddenPvPLadderGradePoint ;
} ;
struct TAModPvPLadderScoresForCheat : public TAHeader
{
BYTE cPvPLadderCode ;
int iPvPLadderPoint ;
int iPvPLadderGradePoint ;
int iHiddenPvPLadderGradePoint ;
} ;
struct TQGetListPvPLadderRanking : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cPvPLadderCode ;
} ;
struct TAGetListPvPLadderRanking : public TAHeader
{
TPvPLadderRanking MyRanking ;
TPvPLadderRanking Top [ LadderSystem : : Common : : RankingTop ] ;
} ;
# if defined(PRE_ADD_PVP_RANKING)
//<2F> Ϲ <EFBFBD> Ranking
struct TQGetPvPRankBoard : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetPvPRankBoard : public TAHeader
{
TPvPRankingDetail MyRanking ;
} ;
struct TQGetPvPRankList : public TQHeader
{
int iPage ;
BYTE cClassCode ;
BYTE cSubClassCode ;
WCHAR wszGuildName [ GUILDNAME_MAX ] ;
} ;
struct TAGetPvPRankList : public TAHeader
{
INT64 biRankingTotalCount ;
BYTE cRankingCount ;
TPvPRanking RankingInfo [ RankingSystem : : RANKINGMAX ] ;
} ;
struct TQGetPvPRankInfo : public TQHeader
{
WCHAR wszCharName [ NAMELENMAX ] ;
} ;
struct TAGetPvPRankInfo : public TAHeader
{
TPvPRankingDetail RankingInfo ;
} ;
//Ladder Ranking
struct TQGetPvPLadderRankBoard : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cPvPLadderCode ;
} ;
struct TAGetPvPLadderRankBoard : public TAHeader
{
BYTE cPvPLadderCode ;
TPvPLadderRankingDetail MyRanking ;
} ;
struct TQGetPvPLadderRankList : public TQHeader
{
int iPage ;
BYTE cClassCode ;
BYTE cSubClassCode ;
BYTE cPvPLadderCode ;
WCHAR wszGuildName [ GUILDNAME_MAX ] ;
} ;
struct TAGetPvPLadderRankList : public TAHeader
{
INT64 biRankingTotalCount ;
BYTE cRankingCount ;
BYTE cPvPLadderCode ;
TPvPLadderRanking2 RankingInfo [ RankingSystem : : RANKINGMAX ] ;
} ;
struct TQGetPvPLadderRankInfo : public TQHeader
{
WCHAR wszCharName [ NAMELENMAX ] ;
BYTE cPvPLadderCode ;
} ;
struct TAGetPvPLadderRankInfo : public TAHeader
{
BYTE cPvPLadderCode ;
TPvPLadderRankingDetail RankingInfo ;
} ;
struct TQForceAggregatePvPRank : public TQHeader
{
bool bIsPvPLadder ;
} ;
# endif
struct TQAddPVPGhoulScores : public TQHeader
{
INT64 biCharacterDBID ;
int nGhoulWin ;
int nHumanWin ;
int nTimeOver ;
int nGhoulKill ;
int nHumanKill ;
int nHolyWaterUse ;
} ;
struct TQGetPVPGhoulScores : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetPVPGhoulScores : public TAHeader
{
int nPlayCount ;
int nGhoulWin ;
int nHumanWin ;
int nTimeOver ;
int nGhoulKill ;
int nHumanKill ;
int nHolyWaterUse ;
} ;
# if defined(PRE_ADD_PVP_TOURNAMENT)
struct TQAddPVPTournamentResult : public TQHeader
{
int nTotalCount ;
# if defined( PRE_PVP_GAMBLEROOM )
INT64 nGambleDBID ;
# endif
INT64 biCharacterDBID [ PvPCommon : : Common : : PvPTournamentUserMax ] ;
char cTournamentStep [ PvPCommon : : Common : : PvPTournamentUserMax ] ;
bool bWin [ PvPCommon : : Common : : PvPTournamentUserMax ] ;
} ;
# endif
# if defined( PRE_PVP_GAMBLEROOM )
struct TQAddGambleRoom : public TQHeader
{
int nRoomID ;
BYTE cGambleType ;
int nGamblePrice ;
} ;
struct TAAddGambleRoom : public TAHeader
{
int nRetCode ;
char cWorldSetID ;
int nRoomID ;
INT64 nGambleDBID ;
} ;
struct TQAddGambleRoomMember : public TQHeader
{
INT64 nGambleDBID ;
INT64 biCharacterDBID ;
} ;
struct TQEndGambleRoom : public TQHeader
{
INT64 nGambleDBID ;
TPvPGambleRoomWinData Member [ PvPGambleRoom : : Max ] ;
} ;
# endif
//#########################################################################################################################################
// MAINCMD_DARKLAIR
//#########################################################################################################################################
struct SDarkLairUserData
{
USHORT unLevel ; // <20> <> <EFBFBD> <EFBFBD>
int iJobIndex ; // <20> <> <EFBFBD> <EFBFBD> Index
WCHAR wszCharacterName [ NAMELENMAX ] ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ̸<EFBFBD> (NULL<4C> <4C> <EFBFBD> <EFBFBD> )
SDarkLairUserData ( )
{
unLevel = 0 ;
iJobIndex = 0 ;
memset ( wszCharacterName , 0 , sizeof ( wszCharacterName ) ) ;
}
void Set ( USHORT _unLevel , int _iJob , WCHAR * _pwszName )
{
unLevel = _unLevel ;
iJobIndex = _iJob ;
if ( _pwszName )
_wcscpy ( wszCharacterName , _countof ( wszCharacterName ) , _pwszName , ( int ) wcslen ( _pwszName ) ) ;
}
} ;
struct SDarkLairUpdateUserData : public SDarkLairUserData
{
bool bUpdate ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> Ͽ<EFBFBD> <20> <> <EFBFBD> α <EFBFBD> <CEB1> <EFBFBD> Update <20> <> <EFBFBD> <EFBFBD> <20> ÷<EFBFBD> <C3B7> <EFBFBD>
INT64 i64CharacterDBID ; // CharDBID
SDarkLairUpdateUserData ( )
{
bUpdate = false ;
i64CharacterDBID = 0 ;
}
} ;
struct SDarkLairHistory
{
USHORT unPlayRound ; // <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> Round <20> <>
UINT uiPlaySec ; // <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> ѽð<D1BD> (<28> <> )
WCHAR wszPartyName [ PARTYNAMELENMAX ] ; // <20> <> Ƽ <EFBFBD> ̸<EFBFBD> (NULL<4C> <4C> <EFBFBD> <EFBFBD> )
BYTE cPartyUserCount ;
SDarkLairUserData sUserData [ DarkLair : : Common : : MaxPlayer ] ;
SDarkLairHistory ( )
{
unPlayRound = 0 ;
uiPlaySec = 0 ;
cPartyUserCount = 0 ;
memset ( wszPartyName , 0 , sizeof ( wszPartyName ) ) ;
}
void Set ( USHORT _unPlayRound , UINT _uiPlaySec , WCHAR * _pwszPartyName )
{
unPlayRound = _unPlayRound ;
uiPlaySec = _uiPlaySec ;
if ( _pwszPartyName )
_wcscpy ( wszPartyName , _countof ( wszPartyName ) , _pwszPartyName , ( int ) wcslen ( _pwszPartyName ) ) ;
}
void AddUserData ( USHORT _unLevel , int _iJob , WCHAR * _pwszName )
{
if ( cPartyUserCount > = DarkLair : : Common : : MaxPlayer )
return ;
sUserData [ cPartyUserCount + + ] . Set ( _unLevel , _iJob , _pwszName ) ;
}
} ;
struct SDarkLairBestHistory : public SDarkLairHistory
{
INT64 i64CharacterDBID ;
int iRank ;
SDarkLairBestHistory ( )
{
i64CharacterDBID = 0 ;
iRank = 0 ;
}
} ;
struct TQUpdateDarkLairResult : public TQHeader
{
int iRoomID ; // <20> <> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> RoomID
int iProtectionKey ; // <20> <> ȣ Ű
int iMapIndex ; // <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> MapIndex
USHORT unPlayRound ; // <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> Round <20> <>
UINT uiPlaySec ; // <20> ÷<EFBFBD> <C3B7> ̽ð<CCBD> (<28> <> )
WCHAR wszPartyName [ PARTYNAMELENMAX ] ; // <20> <> Ƽ <EFBFBD> ̸<EFBFBD> (NULL<4C> <4C> <EFBFBD> <EFBFBD> )
BYTE cPartyUserCount ;
SDarkLairUpdateUserData sUserData [ DarkLair : : Common : : MaxPlayer ] ;
} ;
struct TAUpdateDarkLairResult : public TBoostMemoryPool < TAUpdateDarkLairResult >
{
short nRetCode ;
int iRoomID ; // <20> <> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> RoomID
int iProtectionKey ; // <20> <> ȣ Ű
int iRank ; // <20> <> <EFBFBD> <EFBFBD> <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ũ<EFBFBD> <C5A9> <EFBFBD> <EFBFBD> <20> <> ŷ
SDarkLairHistory sHistoryTop [ DarkLair : : Rank : : SelectTop ] ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ŷ
BYTE cPartyUserCount ;
SDarkLairBestHistory sBestUserData [ DarkLair : : Common : : MaxPlayer ] ; // <20> <> <EFBFBD> κ<EFBFBD> <CEBA> <EFBFBD> Ʈ
} ;
struct TQGetDarkLairRankBoard : public TQHeader
{
INT64 biCharacterDBID ;
int iMapIndex ;
BYTE cPartyUserCount ;
} ;
struct TAGetDarkLairRankBoard : public TAHeader
{
SDarkLairBestHistory sBestHistory ;
BYTE cPartyUserCount ;
# if defined(PRE_ADD_CHALLENGE_DARKLAIR)
int iMapIndex ;
# endif
SDarkLairHistory sHistoryTop [ DarkLair : : Rank : : SelectRankBoardTop ] ;
} ;
//#########################################################################################################################################
// MAINCMD_AUTH
//#########################################################################################################################################
struct TABeginAuth : public TAHeader
{
UINT nSessionID ; // <20> <> <EFBFBD> <EFBFBD> ID
char cCertifyingStep ; // <20> <> <EFBFBD> <EFBFBD> <20> ܰ<EFBFBD>
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID (*)
} ;
struct TQStoreAuth : public TQHeader // GA, VI <20> <> <EFBFBD> <EFBFBD>
{
INT64 biCertifyingKey ; // <20> <> <EFBFBD> <EFBFBD> Ű
int nCurServerID ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID (*)
UINT nSessionID ; // <20> <> <EFBFBD> <EFBFBD> ID
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
WCHAR wszAccountName [ IDLENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
WCHAR wszCharacterName [ NAMELENMAX ] ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
BYTE bIsAdult ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
BYTE nAge ; // <20> <> <EFBFBD> <EFBFBD>
BYTE nDailyCreateCount ; // <20> <> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<> <C8BD>
int nPrmInt1 ; // <20> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> 1 (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ٸ<EFBFBD> <D9B8> <EFBFBD> )
char cLastServerType ; // <20> ֱ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ÿ<> <C5B8> (eServerType / 0 : <20> α <EFBFBD> <CEB1> <EFBFBD> , 2 : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 3 : <20> <> <EFBFBD> <EFBFBD> )
} ;
struct TAStoreAuth : public TAHeader // GA, VI <20> <> <EFBFBD> <EFBFBD>
{
UINT nSessionID ; // <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct TQCheckAuth : public TQHeader // GA, VI <20> <> <EFBFBD> <EFBFBD>
{
INT64 biCertifyingKey ; // <20> <> <EFBFBD> <EFBFBD> Ű
int nCurServerID ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
int nSessionID ;
} ;
struct TACheckAuth : public TAHeader // GA, VI <20> <> <EFBFBD> <EFBFBD>
{
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID (*)
UINT nSessionID ; // <20> <> <EFBFBD> <EFBFBD> ID
INT64 biCertifyingKey ; // <20> <> <EFBFBD> <EFBFBD> Ű
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
WCHAR wszAccountName [ IDLENMAX ] ; // <20> <> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
WCHAR wszCharacterName [ NAMELENMAX ] ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <20> ̸<EFBFBD>
char cAccountLevel ; // <20> <EFBFBD> <EEBFB5> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
BYTE bIsAdult ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
char nAge ; // <20> <> <EFBFBD> <EFBFBD>
BYTE nDailyCreateCount ; // <20> <> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<> <C8BD>
int nPrmInt1 ; // <20> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> 1 (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ٸ<EFBFBD> <D9B8> <EFBFBD> )
char cLastServerType ; // <20> ֱ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ÿ<> <C5B8> (eServerType / 0 : <20> α <EFBFBD> <CEB1> <EFBFBD> , 2 : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 3 : <20> <> <EFBFBD> <EFBFBD> )
} ;
struct TQResetAuth : public TQHeader // GA, VI <20> <> <EFBFBD> <EFBFBD>
{
UINT nSessionID ; // <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct TAResetAuth : public TAHeader // GA, VI <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> ???)
{
UINT nSessionID ; // <20> <> <EFBFBD> <EFBFBD> ID
} ;
struct TQResetAuthServer : public TQHeader
{
int nServerID ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
} ;
struct TAResetAuthServer
{
int nServerID ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ
int nResult ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
struct TQGetAuthWorldUserCnt : public TQHeader //QUERY_AUTHUSERCOUNT
{
int nServerID ;
} ;
struct TAuthWorldUserCnt
{
int nWorldSetID ;
UINT nWorldUserCnt ;
} ;
struct TAGetAuthWorldUserCnt
{
int nServerID ;
short nResult ;
BYTE cCount ;
TAuthWorldUserCnt User [ WORLDCOUNTMAX ] ;
} ;
struct TQSetWorldIDAuth : public TQHeader //QUERY_SETWOLRDID
{
} ;
//#########################################################################################################################################
// MAINCMD_CASH
//#########################################################################################################################################
// QUERY_GETLISTGIVEFAILITEM, // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ѱ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (select<63> Ҷ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> °<DEB4> <C2B0> <EFBFBD> )
struct TAGetListGiveFailItem : public TAHeader
{
int nCount ;
DBPacket : : TCashFailItem CashFailItem [ CASHINVENTORYDBMAX ] ;
} ;
// QUERY_MODGIVEFAILFLAG
struct TQModGiveFailFlag : public TQHeader
{
INT64 biCharacterDBID ;
int nMapID ;
int nChannelID ;
WCHAR wszIP [ IPLENMAX ] ;
int nCount ;
DBPacket : : TModCashFailItemEx CashItem [ CASHINVENTORYDBMAX ] ;
} ;
struct TAModGiveFailFlag : public TAHeader
{
int nCount ;
TCashItemBase CashItem [ CASHINVENTORYDBMAX ] ;
} ;
// QUERY_GETREMAINPETAL
struct TQGetRemainPetal : public TQHeader
{
} ;
struct TAGetRemainPetal : public TAHeader
{
int nPetal ;
} ;
// QUERY_PURCHASEITEMBYFAKEPETAL
struct TQPurchaseItemByFakePetal : public TQHeader
{
int nChannelID ;
int nMapID ;
char cCartType ;
char cCount ;
DBPacket : : TPetalInfo PetalInfo [ CARTLISTMAX ] ;
} ;
struct TAPurchaseItemByFakePetal : public TAHeader
{
char cCartType ;
char cCount ;
DBPacket : : TPetalInfoEx PetalInfo [ CARTLISTMAX ] ;
} ;
// QUERY_CHECKGIFTRECEIVER
struct TQCheckGiftReceiver : public TQHeader
{
WCHAR wszCharacterName [ NAMELENMAX ] ;
} ;
struct TACheckGiftReceiver : public TAHeader
{
BYTE cLevel ;
BYTE cJob ;
} ;
// QUERY_GETLISTGIFTBOX
struct TQGetListGiftBox : public TQHeader
{
INT64 biCharacterDBID ;
# if defined(PRE_ADD_MULTILANGUAGE)
char cSelectedLang ;
# endif //#if defined(PRE_ADD_MULTILANGUAGE)
} ;
struct TAGetListGiftBox : public TAHeader
{
# if defined(PRE_ADD_MULTILANGUAGE)
char cSelectedLang ;
# endif //#if defined(PRE_ADD_MULTILANGUAGE)
char cCount ;
TGiftInfo GiftBox [ GIFTBOXLISTMAX ] ;
} ;
// QUERY_MODGIFTRECEIVEFLAG
struct TQModGiftReceiveFlag : public TQHeader
{
INT64 biCharacterDBID ;
# if defined(PRE_RECEIVEGIFTALL)
bool bReceiveAll ;
# endif // #if defined(PRE_RECEIVEGIFTALL)
char cCount ;
TReceiveGiftData GiftData [ GIFTPAGEMAX ] ;
} ;
struct TAModGiftReceiveFlag : public TAHeader
{
# if defined(PRE_RECEIVEGIFTALL)
bool bReceiveAll ;
# endif // #if defined(PRE_RECEIVEGIFTALL)
char cCount ;
DBPacket : : TReceiveGift ReceiveGift [ GIFTPAGEMAX ] ;
} ;
// QUERY_RECEIVEGIFT, // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ޱ<EFBFBD>
struct TGiftItem
{
int nItemSN ;
TItem AddItem ;
DWORD dwPartsColor1 ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
DWORD dwPartsColor2 ;
TVehicleItem VehiclePart1 ;
TVehicleItem VehiclePart2 ;
} ;
struct TQReceiveGift : public TQHeader
{
# if defined(PRE_RECEIVEGIFTALL)
bool bReceiveAll ;
char cTotalCount ;
# endif // #if defined(PRE_RECEIVEGIFTALL)
TReceiveGiftData GiftData ;
int nChannelID ;
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
int nItemSN ;
char cCount ;
TGiftItem GiftItem [ PACKAGEITEMMAX ] ;
} ;
struct TAReceiveGift : public TAHeader
{
INT64 biPurchaseOrderID ;
UINT nReceiverAccountDBID ;
INT64 biReceiverCharacterDBID ;
int nReceiverTotalMailCount ;
int nReceiverNotReadMailCount ;
int nReceiver7DaysLeftMailCount ;
# if defined(PRE_ADD_VIP)
char cPayMethodCode ;
# endif // #if defined(PRE_ADD_VIP)
# if defined(PRE_RECEIVEGIFTALL)
bool bReceiveAll ;
char cTotalCount ;
# endif // #if defined(PRE_RECEIVEGIFTALL)
int nItemSN ;
char cCount ;
TGiftItem GiftItem [ PACKAGEITEMMAX ] ;
} ;
// QUERY_GIFTRETURN
# if defined(PRE_ADD_GIFT_RETURN)
struct TQGiftReturn : public TQHeader
{
INT64 biPurchaseOrderID ;
} ;
struct TAGiftReturn : public TAHeader
{
INT64 biPurchaseOrderID ;
UINT nReceiverAccountDBID ;
INT64 biReceiverCharacterDBID ;
int nReceiverTotalMailCount ;
} ;
# endif //#if defined(PRE_ADD_GIFT_RETURN)
# if defined(PRE_ADD_CASH_REFUND)
struct TQPaymentItemList : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAPaymentItemList : public TAHeader
{
int nPaymentCount ;
TPaymentItemInfoEx PaymentItemList [ CASHINVENTORYMAX ] ; // <20> <> <EFBFBD> Ѵ <EFBFBD> <D1B4> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> ϴµ<CFB4> ..<2E> ϴ<EFBFBD> 150<35> <30>
} ;
struct TAPaymentPackageItemList : public TAHeader
{
int nPaymentPackegeCount ;
TPaymentPackageItemInfoEx PaymentPackageItemList [ CASHINVENTORYMAX ] ;
} ;
# endif
// QUERY_NOTIFYGIFT, // <20> <> <EFBFBD> <EFBFBD> <20> ˸ <EFBFBD> <CBB8> <EFBFBD>
struct TQNotifyGift : public TQHeader
{
INT64 biCharacterDBID ;
bool bNew ;
} ;
struct TANotifyGift : public TAHeader
{
bool bNew ;
int nGiftCount ;
} ;
struct TQAddEffectItems : public TQHeader
{
INT64 biCharacterDBID ;
char cItemLifeSpanRenewal ;
int iItemID ;
DBDNWorldDef : : EffectItemGetCode : : eCode Code ;
INT64 biFKey ;
int iPrice ;
bool bEternityFlag ;
int iItemLifeSpan ;
int iProperty [ 5 ] ;
INT64 biItemSerial ;
int iRemoveItemID ;
} ;
// QUERY_MAKEGIFTBYQUEST, // <20> <> <EFBFBD> <EFBFBD> Ʈ <20> Ϸ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQMakeGiftByQuest : public TQHeader
{
INT64 biCharacterDBID ;
bool bPCBang ;
int nQuestID ;
WCHAR wszMemo [ GIFTMESSAGEMAX ] ;
int nLifeSpan ;
char szIp [ IPLENMAX ] ;
bool bNewFlag ;
char cRewardCount ;
int nRewardItemSN [ MAILATTACHITEMMAX ] ;
} ;
struct TAMakeGiftByQuest : public TAHeader
{
int nGiftCount ;
} ;
// QUERY_MAKEGIFTBYMISSION, // <20> ̼<EFBFBD> <20> Ϸ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQMakeGiftByMission : public TQHeader
{
INT64 biCharacterDBID ;
bool bPCBang ;
int nMissionID ;
WCHAR wszMemo [ GIFTMESSAGEMAX ] ;
int nLifeSpan ;
char szIp [ IPLENMAX ] ;
bool bNewFlag ;
char cRewardCount ;
int nRewardItemSN [ MISSIONREWARDITEMMAX ] ;
} ;
struct TAMakeGiftByMission : public TAHeader
{
int nGiftCount ;
} ;
// QUERY_MAKEGIFT
struct TQMakeGift : public TQHeader
{
INT64 biCharacterDBID ;
bool bPCBang ;
WCHAR wszMemo [ GIFTMESSAGEMAX ] ;
int nLifeSpan ;
char cPayMethodCode ; // PayMethodCode<64> <65> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> FKey<65> <79> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int iOrderKey ;
char szIp [ IPLENMAX ] ;
bool bNewFlag ;
char cRewardCount ;
int nRewardItemSN [ 5 ] ;
} ;
struct TAMakeGift : public TAHeader
{
int nGiftCount ;
} ;
// QUERY_INCREASEVIPPOINT, // VIP <20> ⺻ <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> <EFBFBD> <EFBFBD>
struct TQIncreaseVIPPoint : public TQHeader
{
INT64 biCharacterDBID ;
int nBasicPoint ; // VIP <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> ǰ <20> <> <EFBFBD> Կ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ⺻ <20> <> <EFBFBD> <EFBFBD> Ʈ
INT64 biPurchaseOrderID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ֹ<EFBFBD> ID
short wVIPPeriod ; // VIP <20> Ⱓ. <20> <> <EFBFBD> <EFBFBD> : Day. 30<33> <30> , 90<39> <30> , 180<38> <30> , 360<36> <30>
bool bAutoPay ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 1=<3D> ڵ<EFBFBD> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
struct TAIncreaseVIPPoint : public TAHeader
{
int nVIPTotalPoint ; // <20> <> VIP <20> <> <EFBFBD> <EFBFBD> Ʈ
__time64_t tVIPEndDate ; // VIP <20> Ⱓ <20> <> <20> <> <EFBFBD> <EFBFBD>
} ;
// QUERY_GETVIPPOINT, // VIP <20> Ⱓ <20> <> <20> <> <EFBFBD> <EFBFBD> Ʈ <20> <> ȸ
struct TQGetVIPPoint : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetVIPPoint : public TAHeader
{
int nVIPTotalPoint ; // <20> <> VIP <20> <> <EFBFBD> <EFBFBD> Ʈ
__time64_t tVIPEndDate ; // VIP <20> Ⱓ <20> <> <20> <> <EFBFBD> <EFBFBD>
bool bAutoPay ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 1=<3D> ڵ<EFBFBD> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
// QUERY_MODVIPAUTOPAYFLAG, // VIP <20> ڵ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
struct TQModVIPAutoPayFlag : public TQHeader
{
INT64 biCharacterDBID ;
bool bAutoPay ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 1=<3D> ڵ<EFBFBD> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
struct TAModVIPAutoPayFlag : public TAHeader
{
bool bAutoPay ; // 0=<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 1=<3D> ڵ<EFBFBD> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
// QUERY_GIFTBYCHEAT
struct TQGiftByCheat : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszCharacterName [ NAMELENMAX ] ;
int nItemSN ;
char szIp [ IPLENMAX ] ;
} ;
// QUERY_PETAL
struct TQPetal : public TQHeader
{
INT64 biCharacterDBID ;
int nUseItemID ;
int nAddPetal ;
char cInvenType ; // eItemPositionType
BYTE cInvenIndex ; // <20> Ϲ <EFBFBD> <CFB9> κ<EFBFBD> <CEBA> ϶<EFBFBD> <CFB6> <EFBFBD> index<65> ־<EFBFBD> <D6BE> ָ<EFBFBD> <20> <> (ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
INT64 biInvenSerial ;
int iMapID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TAPetal : public TAHeader
{
int nUseItemID ;
int nTotalPetal ;
char cInvenType ; // eItemPositionType
BYTE cInvenIndex ; // <20> Ϲ <EFBFBD> <CFB9> κ<EFBFBD> <CEBA> ϶<EFBFBD> <CFB6> <EFBFBD> index<65> ־<EFBFBD> <D6BE> ָ<EFBFBD> <20> <> (ij<> <C4B3> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
INT64 biInvenSerial ;
} ;
// QUERY_CHEAT_GIFTCLEAR
struct TQCheatGiftClear : public TQHeader
{
INT64 biCharacterDBID ;
} ;
# if defined( PRE_PVP_GAMBLEROOM )
struct TQAddPetalLogCode : public TQHeader
{
INT64 biCharacterDBID ;
int nUseItemID ;
int nAddPetal ;
BYTE cLogCode ;
INT64 nGambleDBID ;
} ;
struct TQUsePetal : public TQHeader
{
INT64 biCharacterDBID ;
int nDelPetal ;
BYTE cLogCode ;
INT64 nGambleDBID ;
} ;
# endif
//#########################################################################################################################################
// MAINCMD_MSGADJUST
//#########################################################################################################################################
struct TQMsgAdjust : public TQHeader
{
INT64 biCharacterDBID ;
int nChannelID ;
int nVerifyMapIndex ;
char cGateNo ;
} ;
struct TAMsgAdjust
{
UINT nAccountDBID ;
INT64 biCharacterDBID ;
int nChannelID ;
int nVerifyMapIndex ;
char cGateNo ;
} ;
# ifdef PRE_FIX_63822
struct TQMsgAdjustSeq : public TQHeader
{
} ;
struct TAMsgAdjustSeq : public TAHeader
{
} ;
# endif //#ifdef PRE_FIX_63822
//#########################################################################################################################################
// MAINCMD_LOG
//#########################################################################################################################################
struct TQAddPartyStartLog : public TQHeader
{
INT64 biPartyLogID ;
} ;
struct TQAddPartyEndLog : public TQHeader
{
INT64 biPartyLogID ;
} ;
struct TQAddStageStartLog : public TQHeader
{
INT64 biRoomLogID ;
INT64 biPartyLogID ;
BYTE cPartySize ;
int iMapID ;
DBDNWorldDef : : DifficultyCode : : eCode Code ;
} ;
struct TQAddStageClearLog : public TQHeader
{
INT64 biRoomLogID ;
INT64 biCharacterDBID ;
int iJobID ;
BYTE cCharacterLevel ;
bool bClearFlag ;
DBDNWorldDef : : ClearGradeCode : : eCode Code ;
int iMaxComboCount ;
BYTE cBossKillCount ;
int iRewardCharacterExp ;
int iBonusCharacterExp ;
int iClearPoint ;
int iBonusClearPoint ;
int iClearTimeSec ;
# if defined( PRE_ADD_36870 )
int iClearRound ;
# endif // #if defined( PRE_ADD_36870 )
} ;
struct TQAddStageRewardLog : public TQHeader
{
INT64 biRoomLogID ;
INT64 biCharacterDBID ;
DBDNWorldDef : : RewardBoxCode : : eCode Code ;
INT64 biRewardItemSerial ;
int iRewardItemID ;
int iRewardRet ;
} ;
struct TQAddStageEndLog : public TQHeader
{
INT64 biRoomLogID ;
DBDNWorldDef : : WhereToGoCode : : eCode Code ;
} ;
struct TQAddPvPStartLog : public TQHeader
{
INT64 biRoomID1 ;
int iRoomID2 ;
BYTE cMaxPlayerCount ;
DBDNWorldDef : : PvPModeCode : : eCode Code ;
int iPvPModeDetailValue ;
bool bBreakIntoFlag ;
bool bItemUseFlag ;
bool bSecretFlag ;
int iMapID ;
INT64 biRoomMasterCharacterDBID ;
INT64 biCreateRoomCharacterDBID ;
} ;
struct TQAddPvPResultLog : public TQHeader
{
INT64 biRoomID1 ;
int iRoomID2 ;
INT64 biCharacterDBID ;
DBDNWorldDef : : PvPTeamCode : : eCode TeamCode ;
bool bBreakIntoFlag ;
DBDNWorldDef : : PvPResultCode : : eCode ResultCode ;
int iPlayTimeSec ;
int iPvPKillPoint ;
int iPvPAssistPoint ;
int iPvPSupportPoint ;
int iVsKOWin [ PvPCommon : : Common : : MaxClass ] ;
int iVsKOLose [ PvPCommon : : Common : : MaxClass ] ;
int nOccupationCount ;
BYTE cOccupationWinType ;
} ;
struct TQAddPvPEndLog : public TQHeader
{
INT64 biRoomID1 ;
int iRoomID2 ;
} ;
struct TQAddNestGateStartLog : public TQHeader
{
INT64 biRoomID ;
BYTE cPartySize ;
int nGateID ;
} ;
struct TQAddNestGateEndLog : public TQHeader
{
INT64 biRoomID ;
BYTE cPartySize ;
} ;
struct TQAddNestGateClearLog : public TQHeader
{
INT64 biRoomID ;
bool bClearFlag ;
INT64 biChracterDBID ;
BYTE cCharacterJob ;
BYTE cCharacterLevel ;
} ;
# if defined( PRE_ADD_NPC_REPUTATION_SYSTEM )
struct TQModNPCLocation : public TQHeader
{
int iNPCID ;
int iMapID ;
} ;
struct TQModNPCFavor : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cCount ;
TNpcReputation UpdateArr [ NpcReputation : : Common : : MaxEffectNpcCount ] ;
} ;
struct TQGetListNpcFavor : public TQHeader
{
INT64 biCharacterDBID ;
int iMapID ;
} ;
struct TAGetListNpcFavor : public TAHeader
{
bool bLastPage ;
BYTE cCount ;
TNpcReputation ReputationArr [ 30 ] ;
} ;
# endif // #if defined( PRE_ADD_NPC_REPUTATION_SYSTEM )
struct TQGetMasterPupilInfo : public TQHeader
{
INT64 biCharacterDBID ;
bool bClientSend ;
MasterSystem : : EventType : : eCode EventCode ;
} ;
struct TAGetMasterPupilInfo : public TAHeader
{
bool bClientSend ;
MasterSystem : : EventType : : eCode EventCode ;
TMasterSystemSimpleInfo SimpleInfo ;
} ;
struct TQAddMasterCharacter : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszSelfIntroduction [ MasterSystem : : Max : : SelfIntrotuctionLen ] ;
} ;
struct TAAddMasterCharacter : public TAHeader
{
INT64 biCharacterDBID ;
WCHAR wszSelfIntroduction [ MasterSystem : : Max : : SelfIntrotuctionLen ] ;
} ;
struct TQDelMasterCharacter : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TADelMasterCharacter : public TAHeader
{
} ;
struct TQGetPageMasterCharacter : public TQHeader
{
UINT uiPage ;
BYTE cJobCode ; // 0 : <20> <> ü
BYTE cGenderCode ; // 0 : <20> <> ü 1 : <20> <> <EFBFBD> <EFBFBD> 2 : <20> <> <EFBFBD> <EFBFBD>
} ;
struct TAGetPageMasterCharacter : public TAHeader
{
UINT uiPage ;
BYTE cJobCode ;
BYTE cGenderCode ;
BYTE cCount ;
TMasterInfo MasterInfoList [ MasterSystem : : Max : : MasterPageRowCount ] ;
} ;
struct TQGetListPupil : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListPupil : public TAHeader
{
INT64 biCharacterDBID ;
BYTE cCount ;
TPupilInfo PupilInfoList [ MasterSystem : : Max : : PupilCount ] ;
} ;
struct TQAddMasterAndPupil : public TQHeader
{
INT64 biMasterCharacterDBID ;
INT64 biPupilCharacterDBID ;
bool bCheckRegisterFlag ;
bool bIsDirectMenu ;
DBDNWorldDef : : TransactorCode : : eCode Code ;
bool bIsSkip ;
} ;
struct TAAddMasterAndPupil : public TAHeader
{
INT64 biMasterCharacterDBID ;
INT64 biPupilCharacterDBID ;
bool bIsDirectMenu ;
DBDNWorldDef : : TransactorCode : : eCode Code ;
UINT uiOppositeAccountDBID ;
} ;
struct TQDelMasterAndPupil : public TQHeader
{
INT64 biMasterCharacterDBID ;
INT64 biPupilCharacterDBID ;
DBDNWorldDef : : TransactorCode : : eCode Code ;
int iPenaltyDay ;
int iPenaltyRespectPoint ;
bool bIsSkip ;
} ;
struct TADelMasterAndPupil : public TAHeader
{
INT64 biMasterCharacterDBID ;
INT64 biPupilCharacterDBID ;
DBDNWorldDef : : TransactorCode : : eCode Code ;
int iPenaltyRespectPoint ;
} ;
struct TQGetMasterCharacter : public TQHeader
{
DBDNWorldDef : : GetMasterCharacterCode : : eCode Code ;
INT64 biMasterCharacterDBID ;
INT64 biPupilCharacterDBID ;
} ;
struct TAGetMasterCharacterType1 : public TAHeader
{
INT64 biMasterCharacterDBID ;
TMasterCharacterInfo MasterCharacterInfo ;
} ;
struct TAGetMasterCharacterType2 : public TAHeader
{
INT64 biPupilCharacterDBID ;
INT64 biMasterCharacterDBID ;
TMyMasterInfo MasterInfo ;
} ;
struct TAGetMasterCharacterType3 : public TAHeader
{
INT64 biCharacterDBID ;
WCHAR wszCharName [ NAMELENMAX ] ;
WCHAR wszSelfIntroduction [ MasterSystem : : Max : : SelfIntrotuctionLen ] ;
BYTE cGenderCode ; // 0 : <20> <> ü 1 : <20> <> <EFBFBD> <EFBFBD> 2 : <20> <> <EFBFBD> <EFBFBD>
BYTE cLevel ;
BYTE cJob ;
int iGraduateCount ;
int iRespectPoint ;
} ;
struct TQGetListMyMasterAndClassmate : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListMyMasterAndClassmate : public TAHeader
{
INT64 biCharacterDBID ;
BYTE cCount ;
TMasterAndClassmateInfo MasterAndClassmateInfoList [ MasterSystem : : Max : : MasterAndClassmateCount ] ;
} ;
struct TQGetMyClassmate : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biClassmateCharacterDBID ;
} ;
struct TAGetMyClassmate : public TAHeader
{
TClassmateInfo ClassmateInfo ;
} ;
struct TQGraduate : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszPupilCharName [ NAMELENMAX ] ;
} ;
struct TAGraduate : public TAHeader
{
char cWorldSetID ;
WCHAR wszPupilCharName [ NAMELENMAX ] ;
BYTE cCount ;
INT64 biMasterCharacterDBIDList [ MasterSystem : : Max : : MasterCount ] ;
} ;
struct TQModRespectPoint : public TQHeader
{
INT64 biCharacterDBID ;
int iRespectPoint ;
} ;
struct TAModRespectPoint : public TAHeader
{
int iRespectPoint ;
} ;
struct TQModMasterFavorPoint : public TQHeader
{
INT64 biMasterCharacterDBID ;
INT64 biPupilCharacterDBID ;
int iFavorPoint ;
} ;
struct TAModMasterFavorPoint : public TAHeader
{
INT64 biMasterCharacterDBID ;
INT64 biPupilCharacterDBID ;
int iFavorPoint ;
} ;
struct TQGetMasterAndFavorPoint : public TQHeader
{
WCHAR wszPupilCharName [ NAMELENMAX ] ;
INT64 biPupilCharacterDBID ;
BYTE cLevel ;
} ;
struct TAGetMasterAndFavorPoint : public TAHeader
{
WCHAR wszPupilCharName [ NAMELENMAX ] ;
INT64 biPupilCharacterDBID ;
BYTE cLevel ;
BYTE cWorldSetID ;
BYTE cCount ;
TMasterAndFavorPoint MasterAndFavorPoint [ MasterSystem : : Max : : MasterCount ] ;
} ;
struct TQGetMasterSystemCountInfo : public TQHeader
{
bool bClientSend ;
INT64 biCharacterDBID ;
BYTE cCount ;
INT64 biPartyCharacterDBID [ PARTYCOUNTMAX - 1 ] ;
} ;
struct TAGetMasterSystemCountInfo : public TAHeader
{
INT64 biCharacterDBID ;
bool bClientSend ;
int iMasterCount ;
int iPupilCount ;
int iClassmateCount ;
} ;
struct TQModMasterSystemGraduateCount : public TQHeader
{
INT64 biCharacterDBID ;
int iGraduateCount ;
} ;
# if defined( PRE_ADD_SECONDARY_SKILL )
struct TQAddSecondarySkill : public TQHeader
{
INT64 biCharacterDBID ;
int iSecondarySkillID ;
SecondarySkill : : Type : : eType Type ;
} ;
struct TQDelSecondarySkill : public TQHeader
{
INT64 biCharacterDBID ;
int iSecondarySkillID ;
} ;
struct TQGetListSecondarySkill : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListSecondarySkill : public TAHeader
{
BYTE cCount ;
TSecondarySkill SkillList [ SecondarySkill : : Max : : LearnSecondarySkill ] ;
} ;
struct TQModSecondarySkillExp : public TQHeader
{
INT64 biCharacterDBID ;
int iSecondarySkillID ;
int iSecondarySkillExp ; // <20> <> <EFBFBD> <EFBFBD> ġ
int iSecondarySkillExpAfter ; // <20> <> <EFBFBD> <EFBFBD> <20> <> exp(<28> <EFBFBD> )
} ;
struct TQSetManufactureSkillRecipe : public TQHeader
{
INT64 biCharacterDBID ;
DBDNWorldDef : : ItemLocation : : eCode LocationCode ;
INT64 biItemSerial ;
int iSecondarySkillID ;
} ;
struct TQExtractManufactureSkillRecipe : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biItemSerial ;
DBDNWorldDef : : ItemLocation : : eCode LocationCode ;
} ;
struct TQDelManufactureSkillRecipe : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biItemSerial ;
char szIP [ IPLENMAX ] ;
} ;
struct TQGetListManufactureSkillRecipe : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListManufactureSkillRecipe : public TAHeader
{
BYTE cCount ;
TSecondarySkillRecipe RecipeList [ SecondarySkill : : Max : : LearnManufactureRecipe ] ;
} ;
struct TQModManufactureSkillRecipe : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biItemSerial ;
USHORT nDurability ; // <20> <> <EFBFBD> <EFBFBD> ġ
USHORT nDurabilityAfter ; // <20> <> <EFBFBD> <EFBFBD> <20> <> Durability(<28> <EFBFBD> )
} ;
# endif // #if defined( PRE_ADD_SECONDARY_SKILL )
struct TQGetListFarm : public TQHeader
{
char cEnableFlag ; // 0:Disable 1:Enable -1:ALL
} ;
struct TAGetListFarm : public TAHeader
{
BYTE cCount ;
TFarmItemFromDB Farms [ Farm : : Max : : FARMCOUNT ] ;
} ;
struct TQGetListField : public TQHeader
{
int iFarmDBID ;
int iRoomID ;
} ;
struct TAGetListField : public TAHeader
{
int iFarmDBID ;
int iRoomID ;
BYTE cCount ;
TFarmField Fields [ Farm : : Max : : FIELDCOUNT ] ;
} ;
struct TQGetListFieldForCharacter : public TQHeader
{
int iRoomID ;
INT64 biCharacterDBID ;
} ;
struct TAGetListFieldForCharacter : public TAHeader
{
int iRoomID ; // RoomID <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> մϴ<D5B4> !!!!!!
INT64 biCharacterDBID ;
BYTE cCount ;
TFarmFieldForCharacter Fields [ Farm : : Max : : PRIVATEFIELDCOUNT ] ;
} ;
struct TQGetListFieldByCharacter : public TQHeader
{
INT64 biCharacterDBID ;
bool bRefreshGate ;
} ;
struct TAGetListFieldByCharacter : public TAHeader
{
bool bRefreshGate ;
BYTE cCount ;
TFarmFieldPartial Fields [ Farm : : Max : : FIELDCOUNT_PERCHARACTER ] ;
} ;
struct TQAddField : public TQHeader
{
int iRoomID ;
int iFarmDBID ;
short nFieldIndex ;
INT64 biCharacterDBID ;
int iItemID ;
int iElapsedTimeSec ;
int iAttachItemID ;
int iMaxFieldCount ;
// <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ſ <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
BYTE cInvenIndex ;
INT64 biSeedItemSerial ;
int iMapID ;
WCHAR wszIP [ IPLENMAX ] ;
BYTE cAttachCount ;
TFarmAttachItemSerial AttachItems [ Farm : : Max : : PLANTING_ATTACHITEM ] ;
} ;
struct TAAddField : public TAHeader
{
int iRoomID ; // RoomID <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> մϴ<D5B4> !!!!!!
short nFieldIndex ;
INT64 biCharacterDBID ;
// <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ſ <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
BYTE cInvenIndex ;
INT64 biSeedItemSerial ;
BYTE cAttachCount ;
TFarmAttachItemSerial AttachItems [ Farm : : Max : : PLANTING_ATTACHITEM ] ;
} ;
struct TQDelField : public TQHeader
{
int iFarmDBID ;
int iRoomID ;
short nFieldIndex ;
} ;
struct TADelField : public TAHeader
{
int iRoomID ; // RoomID <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> մϴ<D5B4> !!!!!!
short nFieldIndex ;
} ;
struct TQDelFieldForCharacter : public TQHeader
{
int iRoomID ;
short nFieldIndex ;
INT64 biCharacterDBID ;
} ;
struct TADelFieldForCharacter : public TAHeader
{
int iRoomID ; // RoomID <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> մϴ<D5B4> !!!!!!
short nFieldIndex ;
INT64 biCharacterDBID ;
} ;
struct TQAddFieldAttachment : public TQHeader
{
int iRoomID ;
int iFarmDBID ;
INT64 biCharacterDBID ;
short nFieldIndex ;
int iAttachItemID ;
// AttachItem <20> <> <EFBFBD> ſ <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
# if defined( PRE_ADD_VIP_FARM )
bool bVirtualAttach ; // vip<69> <70> <EFBFBD> 忡 <20> <> <EFBFBD> <EFBFBD> boostitem <20> ִ°<D6B4> ó<> <C3B3> true <20> ΰ<EFBFBD> <CEB0> <EFBFBD> attach<63> <68> <20> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
# endif // #if defined( PRE_ADD_VIP_FARM )
BYTE cInvenType ;
BYTE cInvenIndex ;
INT64 biAttachItemSerial ;
int iMapID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TAAddFieldAttachment : public TAHeader
{
int iRoomID ; // RoomID <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> մϴ<D5B4> !!!!!!
INT64 biCharacterDBID ;
short nFieldIndex ;
int iAttachItemID ;
// AttachItem <20> <> <EFBFBD> ſ <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
# if defined( PRE_ADD_VIP_FARM )
bool bVirtualAttach ; // vip<69> <70> <EFBFBD> 忡 <20> <> <EFBFBD> <EFBFBD> boostitem <20> ִ°<D6B4> ó<> <C3B3> true <20> ΰ<EFBFBD> <CEB0> <EFBFBD> attach<63> <68> <20> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
# endif // #if defined( PRE_ADD_VIP_FARM )
BYTE cInvenType ;
BYTE cInvenIndex ;
INT64 biAttachItemSerial ;
} ;
struct TUpdateFieldElapsedTime
{
short nFieldIndex ;
int iElapsedTimeSec ;
} ;
struct TQModFieldElapsedTime : public TQHeader
{
int iFarmDBID ;
BYTE cCount ;
TUpdateFieldElapsedTime Updates [ Farm : : Max : : FIELDCOUNT ] ;
} ;
struct TQModFieldForCharacterElapsedTime : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cCount ;
TUpdateFieldElapsedTime Updates [ Farm : : Max : : PRIVATEFIELDCOUNT ] ;
} ;
struct TAModFieldForCharacterElapsedTime : public TAHeader
{
} ;
struct TAModFieldElapsedTime : public TAHeader
{
} ;
struct THarvestItem
{
INT64 biItemSerial ;
int iItemID ;
short nItemCount ;
bool bSoulBoundFlag ;
BYTE cSealCount ;
BYTE cItemOption ;
bool bEternityFlag ;
int iLifeSpan ;
} ;
struct TQHarvest : public TQHeader
{
int iFarmDBID ;
int iRoomID ;
short nFieldIndex ;
INT64 biCharacterDBID ;
INT64 biHarvestCharacterDBID ;
int iMapID ;
CHAR szIP [ IPLENMAX ] ;
THarvestItem HarvestItems [ Farm : : Max : : HARVESTITEM_COUNT ] ;
} ;
struct TAHarvest : public TAHeader
{
int iRoomID ; // RoomID <20> <> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <20> <> <EFBFBD> <EFBFBD> <20> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> մϴ<D5B4> !!!!!!
int nFieldIndex ;
INT64 biCharacterDBID ;
} ;
struct TQGetListHarvestDepotItem : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biLastUniqueID ;
} ;
struct TAGetListHarvestDepotItem : public TAHeader
{
INT64 biLastUniqueID ;
BYTE cCount ;
TFarmWareHouseItem Items [ Farm : : Max : : HARVESTDEPOT_COUNT ] ;
} ;
struct TQGetCountHarvestDepotItem : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetCountHarvestDepotItem : public TAHeader
{
int iCount ;
} ;
struct TQGetFieldCountByCharacter : public TQHeader
{
INT64 biCharacterDBID ;
bool bIsSend ;
} ;
struct TAGetFieldCountByCharacter : public TAHeader
{
int iFieldCount ;
bool bIsSend ;
} ;
struct TQUpdateFarmActivation : public TQHeader //QUERY_UPDATEFARM_ACTIVATION
{
int nFarmDBID ;
} ;
struct TFarmActivation
{
int nFarmDBID ;
bool bFarmActivation ;
} ;
struct TAUpdateFarmActivation : public TAHeader //QUERY_UPDATEFARM_ACTIVATION
{
BYTE cCount ;
TFarmActivation Farms [ Farm : : Max : : FARMCOUNT ] ;
} ;
struct TQGetFieldItemCount : public TQHeader
{
INT64 biCharacterDBID ;
int iItemID ;
int iRoomID ;
int iAreaIndex ;
UINT nSessionID ;
} ;
struct TAGetFieldItemCount : public TAHeader
{
int iRoomID ;
int iAreaIndex ;
int iItemCount ;
UINT nSessionID ;
} ;
struct TQGetGuildRecruit : public TQHeader
{
UINT uiPage ;
BYTE cJobCode ;
BYTE cLevel ;
# if defined( PRE_ADD_GUILD_EASYSYSTEM )
BYTE cPurposeCode ;
WCHAR wszGuildName [ GUILDNAME_MAX ] ;
BYTE cSortType ;
# endif
} ;
struct TAGetGuildRecruit : public TAHeader
{
UINT uiPage ;
BYTE cJobCode ;
BYTE cLevel ;
BYTE cCount ;
# if defined( PRE_ADD_GUILD_EASYSYSTEM )
BYTE cPurposeCode ;
WCHAR wszGuildName [ GUILDNAME_MAX ] ;
BYTE cSortType ;
# endif
TGuildRecruitInfo GuildRecruitList [ GuildRecruitSystem : : Max : : GuildRecruitRowCount ] ;
} ;
struct TQGetGuildRecruitCharacter : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
} ;
struct TAGetGuildRecruitCharacter : public TAHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
char cWorldSetID ; // <20> <> <EFBFBD> <EFBFBD> ID
BYTE cCount ;
TGuildRecruitCharacter GuildRecruitCharacterList [ GuildRecruitSystem : : Max : : GuildRecruitCharacterRowCount ] ;
} ;
struct TQGetMyGuildRecruit : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
} ;
struct TAGetMyGuildRecruit : public TAHeader
{
BYTE cCount ;
TGuildRecruitInfo GuildRecruitList [ GuildRecruitSystem : : Max : : MaxRequestCount ] ;
} ;
struct TQGetGuildRecruitRequestCount : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
} ;
struct TAGetGuildRecruitRequestCount : public TAHeader
{
BYTE cCount ;
} ;
struct TQRegisterInfoGuildRecruit : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
} ;
struct TARegisterInfoGuildRecruit : public TAHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
BYTE cClassCode [ CLASSKINDMAX ] ; // <20> <> <EFBFBD> <EFBFBD> Ŭ<EFBFBD> <C5AC> <EFBFBD> <EFBFBD>
int nMinLevel ; // <20> ּ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMaxLevel ; // <20> ִ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
WCHAR wszGuildIntroduction [ GUILDRECRUITINTRODUCE + 1 ] ; //<2F> <> <EFBFBD> <EFBFBD> <20> Ұ<EFBFBD> <D2B0> <EFBFBD>
# if defined( PRE_ADD_GUILD_EASYSYSTEM )
BYTE cPurposeCode ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (1:ģ<> <C4A3> 2:<3A> <> <EFBFBD> <EFBFBD> 3:<3A> <EFBFBD> Ʈ 4:<3A> ݷμ<DDB7> <CEBC> <EFBFBD>
bool bCheckHomePage ; //<2F> <> <EFBFBD> <EFBFBD> Ȩ<> <C8A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
# endif
} ;
struct TQRegisterOnGuildRecruit : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
BYTE cClassCode [ CLASSKINDMAX ] ; // <20> <> <EFBFBD> <EFBFBD> Ŭ<EFBFBD> <C5AC> <EFBFBD> <EFBFBD>
int nMinLevel ; // <20> ּ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMaxLevel ; // <20> ִ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
WCHAR wszGuildIntroduction [ GUILDRECRUITINTRODUCE + 1 ] ; //<2F> <> <EFBFBD> <EFBFBD> <20> Ұ<EFBFBD> <D2B0> <EFBFBD>
# if defined( PRE_ADD_GUILD_EASYSYSTEM )
BYTE cPurposeCode ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (1:ģ<> <C4A3> 2:<3A> <> <EFBFBD> <EFBFBD> 3:<3A> <EFBFBD> Ʈ 4:<3A> ݷμ<DDB7> <CEBC> <EFBFBD>
bool bCheckHomePage ; //<2F> <> <EFBFBD> <EFBFBD> Ȩ<> <C8A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
# endif
} ;
struct TARegisterOnGuildRecruit : public TAHeader
{
} ;
struct TQRegisterModGuildRecruit : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
BYTE cClassCode [ CLASSKINDMAX ] ; // <20> <> <EFBFBD> <EFBFBD> Ŭ<EFBFBD> <C5AC> <EFBFBD> <EFBFBD>
int nMinLevel ; // <20> ּ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
int nMaxLevel ; // <20> ִ<EFBFBD> <20> <> <EFBFBD> <EFBFBD>
WCHAR wszGuildIntroduction [ GUILDRECRUITINTRODUCE + 1 ] ; //<2F> <> <EFBFBD> <EFBFBD> <20> Ұ<EFBFBD> <D2B0> <EFBFBD>
# if defined( PRE_ADD_GUILD_EASYSYSTEM )
BYTE cPurposeCode ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (1:ģ<> <C4A3> 2:<3A> <> <EFBFBD> <EFBFBD> 3:<3A> <EFBFBD> Ʈ 4:<3A> ݷμ<DDB7> <CEBC> <EFBFBD>
bool bCheckHomePage ; //<2F> <> <EFBFBD> <EFBFBD> Ȩ<> <C8A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
# endif
} ;
struct TARegisterModGuildRecruit : public TAHeader
{
} ;
struct TQRegisterOffGuildRecruit : public TQHeader
{
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
} ;
struct TARegisterOffGuildRecruit : public TAHeader
{
} ;
struct TQGuildRecruitRequestOn : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
} ;
struct TAGuildRecruitRequestOn : public TAHeader
{
} ;
struct TQGuildRecruitRequestOff : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
} ;
struct TAGuildRecruitRequestOff : public TAHeader
{
} ;
struct TQGuildRecruitAcceptOn : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
INT64 biAcceptCharacterDBID ; // <20> <> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
WCHAR wszToCharacterName [ NAMELENMAX ] ;
short wGuildSize ; // <20> ִ<EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <>
} ;
struct TAGuildRecruitAcceptOn : public TAHeader
{
UINT nAddAccountDBID ; //<2F> ߰<EFBFBD> <DFB0> <EFBFBD> DBID
INT64 biAddCharacterDBID ; // <20> ߰<EFBFBD> <DFB0> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> DBID
WCHAR wszToCharacterName [ NAMELENMAX ] ;
BYTE cJob ; // <20> <> <EFBFBD> <EFBFBD>
BYTE cLevel ; // <20> <> <EFBFBD> <EFBFBD>
__time64_t JoinDate ; // <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> ¥
bool bDelGuildRecruit ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
} ;
struct TQGuildRecruitAcceptOff : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
INT64 biDenyCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
WCHAR wszToCharacterName [ NAMELENMAX ] ;
} ;
struct TAGuildRecruitAcceptOff : public TAHeader
{
WCHAR wszToCharacterName [ NAMELENMAX ] ;
INT64 biDenyCharacterDBID ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
} ;
struct TQDelGuildRecruit : public TQHeader
{
INT64 biCharacterDBID ; // ij<> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD>
UINT nGuildDBID ; // <20> <> <EFBFBD> <EFBFBD> DBID
BYTE nDelType ; // <20> <> <EFBFBD> <EFBFBD> Ÿ<EFBFBD> <C5B8> (1:<3A> <> <EFBFBD> <EFBFBD> 2:<3A> <> <EFBFBD> <EFBFBD> )
} ;
# if defined (PRE_ADD_DONATION)
struct TQDonate : public TQHeader
{
INT64 biCharacterDBID ;
time_t tDonationTime ;
INT64 nCoin ;
} ;
struct TADonate : public TAHeader
{
} ;
struct TQDonationRanking : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TADonationRaking : public TAHeader
{
Donation : : Ranking Ranking [ Donation : : MAX_RANKING ] ;
INT64 nMyCoin ;
int nMyRanking ;
} ;
struct TQDonationTopRanker : public TQHeader
{
} ;
struct TADonationTopRanker : public TAHeader
{
char cWorldID ;
INT64 biCharacterDBID ;
WCHAR wszCharacterName [ NAMELENMAX ] ;
INT64 nCoin ;
} ;
# endif // #if defined (PRE_ADD_DONATION)
struct TQMaintenanceInfo : public TQHeader
{
int nFlag ;
} ;
# if defined( PRE_PARTY_DB )
struct DBCreateParty
{
Party : : Data PartyData ;
# if defined(PRE_FIX_62281)
WCHAR wszAfterInviteCharacterName [ NAMELENMAX ] ;
# else
UINT uiAfterInviteAccountDBID ;
# endif
} ;
struct TQAddParty : public TQHeader
{
DBCreateParty Data ;
bool bCheat ;
} ;
struct TAAddParty : public TAHeader
{
DBCreateParty Data ;
bool bCheat ;
} ;
struct DBAddPartyMemberGame
{
INT64 biCharacterDBID ;
UINT nSessionID ;
# if defined( PRE_ADD_NEWCOMEBACK )
bool bCheckComebackAppellation ;
# endif
} ;
struct TQAddPartyAndMemberGame : public TQHeader
{
DBCreateParty Data ;
UINT nKickedMemberList [ PARTYKICKMAX ] ;
DBAddPartyMemberGame Member [ PARTYMAX ] ; // <20> <> Ƽ <EFBFBD> <C6BC> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̰<EFBFBD> <20> <> <EFBFBD> <EFBFBD> ű<> <C5B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> ƴ<EFBFBD>
} ;
struct TAAddPartyAndMemberGame : public TAHeader
{
DBCreateParty Data ;
UINT nKickedMemberList [ PARTYKICKMAX ] ;
} ;
struct TQAddPartyAndMemberVillage : public TQHeader
{
DBCreateParty Data ;
int nKickCount ;
UINT nVoiceChannelID ;
UINT nKickedMemberList [ PARTYKICKMAX ] ;
TMemberInfo MemberInfo [ PARTYMAX ] ;
} ;
struct TAAddPartyAndMemberVillage : public TAHeader
{
DBCreateParty Data ;
UINT nVoiceChannelID ;
UINT nKickedMemberList [ PARTYKICKMAX ] ;
TMemberInfo MemberInfo [ PARTYMAX ] ;
} ;
struct TQModParty : public TQHeader
{
Party : : Data PartyData ;
int iRoomID ; // <20> <> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
struct TAModParty : public TAHeader
{
Party : : Data PartyData ;
int iRoomID ; // <20> <> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
struct TQDelParty : public TQHeader
{
TPARTYID PartyID ;
} ;
struct TADelParty : public TAHeader
{
TPARTYID PartyID ;
} ;
struct TQDelPartyForServer : public TQHeader
{
int iServerID ;
} ;
struct TADelPartyForServer : public TAHeader
{
int iServerID ;
} ;
struct TQJoinParty : public TQHeader
{
TPARTYID PartyID ;
INT64 biCharacterDBID ;
UINT nSessionID ;
int iMaxUserCount ;
# if defined( PRE_ADD_NEWCOMEBACK )
bool bCheckComeBackParty ;
# endif
} ;
struct TAJoinParty : public TAHeader
{
TPARTYID PartyID ;
INT64 biCharacterDBID ;
UINT nSessionID ;
BYTE cThreadID ;
} ;
struct TQOutParty : public TQHeader
{
TPARTYID PartyID ;
INT64 biCharacterDBID ;
UINT nSessionID ;
Party : : QueryOutPartyType : : eCode Type ;
} ;
struct TAOutParty : public TAHeader
{
TPARTYID PartyID ;
INT64 biCharacterDBID ;
UINT nSessionID ;
Party : : QueryOutPartyType : : eCode Type ;
bool bIsDelParty ;
} ;
struct TQGetListParty : public TQHeader
{
int iExecptServerID ;
} ;
struct TAGetListParty : public TAHeader
{
bool bIsStart ;
short nCount ;
Party : : Data DataArr [ 100 ] ;
} ;
struct TQGetListPartyMember : public TQHeader
{
TPARTYID PartyID ;
} ;
struct TAGetListPartyMember : public TAHeader
{
TPARTYID PartyID ;
ePartyType PartyType ;
short nCount ;
Party : : MemberData MemberData [ PARTYCOUNTMAX ] ;
} ;
struct TQModPartyLeader : public TQHeader
{
TPARTYID PartyID ;
INT64 biCharacterDBID ;
} ;
struct TAModPartyLeader : public TAHeader
{
} ;
# if defined( PRE_ADD_NEWCOMEBACK )
struct TQModComebackFlag : public TQHeader
{
bool bRewardComeback ;
} ;
struct TQModPartyMemberComeback : public TQHeader
{
TPARTYID PartyID ;
INT64 biCharacterDBID ;
bool bComebackAppellation ;
} ;
# endif // #if defined( PRE_ADD_NEWCOMEBACK )
# endif // #if defined( PRE_PARTY_DB )
# if defined(PRE_ADD_DOORS_PROJECT)
struct TQSaveCharacterAbility : public TQHeader
{
INT64 biCharacterDBID ;
int nCharacterAblity [ Doors : : CharacterAbility : : MaxType ] ;
} ;
# endif // #if defined(PRE_ADD_DOORS_PROJECT)
# if defined (PRE_ADD_BESTFRIEND)
// QUERY_GET_BESTFRIEND
struct TQGetBestFriend : public TQHeader
{
bool bSend ;
INT64 biCharacterDBID ;
} ;
struct TAGetBestFriend : public TAHeader
{
bool bSend ;
TBestFriendInfo Info ;
} ;
// QUERY_REGIST_BESTFRIEND
struct TQRegistBestFriend : public TQHeader
{
UINT nFromAccountDBID ;
INT64 biFromCharacterDBID ;
WCHAR wszFromName [ NAMELENMAX ] ;
UINT nToAccountDBID ;
INT64 biToCharacterDBID ;
WCHAR wszToName [ NAMELENMAX ] ;
int nItemID ;
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ſ <EFBFBD> <C5BF> <EFBFBD> <EFBFBD> <EFBFBD>
INT64 biRegistSerial ;
int nMapID ;
WCHAR wszIP [ IPLENMAX ] ;
} ;
struct TARegistBestFriend : public TAHeader
{
UINT nFromAccountDBID ;
INT64 biFromCharacterDBID ;
WCHAR wszFromName [ NAMELENMAX ] ;
UINT nToAccountDBID ;
WCHAR wszToName [ NAMELENMAX ] ;
int nItemID ;
INT64 biRegistSerial ;
} ;
// QUERY_CANCEL_BESTFRIEND
struct TQCancelBestFriend : public TQHeader
{
INT64 biCharacterDBID ;
bool bCancel ;
} ;
struct TACancelBestFriend : public TAHeader
{
INT64 biCharacterDBID ;
bool bCancel ;
} ;
// QUERY_CLOSE_BESTFRIEND
struct TQCloseBestFriend : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TACloseBestFriend : public TAHeader
{
INT64 biCharacterDBID ;
} ;
// QUERY_EDIT_BESTFRIENDMEMO
struct TQEditBestFriendMemo : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszMemo [ BESTFRIENDMEMOMAX ] ;
} ;
struct TAEditBestFriendMemo : public TAHeader
{
INT64 biToCharacterDBID ;
WCHAR wszMemo [ BESTFRIENDMEMOMAX ] ;
} ;
# endif // #if defined (PRE_ADD_BESTFRIEND)
# if defined( PRE_ADD_58761 )
struct TQNestDeathLog : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biRoomID ;
int nMonterID ;
int nSkillID ;
BYTE cCharacterJob ;
BYTE cCharacterLevel ;
} ;
# endif
//#########################################################################################################################################
// MAINCMD_PRIVATECHATCHANNEL
//#########################################################################################################################################
# if defined( PRE_PRIVATECHAT_CHANNEL )
struct TQPrivateChatChannelInfo : public TQHeader
{
} ;
struct TAPrivateChatChannelInfo : public TAHeader
{
char cWorldSetID ;
int nCount ;
TPrivateChatChannelInfo tPrivateChatChannel [ PrivateChatChannel : : Common : : GetDBMaxChannel ] ;
} ;
struct TQPrivateChatChannelMember : public TQHeader
{
INT64 nPrivateChatChannelID ;
} ;
struct TAPrivateChatChannelMember : public TAHeader
{
char cWorldSetID ;
INT64 nPrivateChatChannelID ;
int nCount ;
TPrivateChatChannelMember Member [ PrivateChatChannel : : Common : : MaxMemberCount ] ;
} ;
struct TQAddPrivateChatChannel : public TQHeader
{
time_t tJoinDate ;
WCHAR wszCharacterName [ NAMELENMAX ] ;
TPrivateChatChannelInfo tPrivateChatChannel ;
} ;
struct TAAddPrivateChatChannel : public TAHeader
{
char cWorldSetID ;
time_t tJoinDate ;
WCHAR wszCharacterName [ NAMELENMAX ] ;
TPrivateChatChannelInfo tPrivateChatChannel ;
} ;
struct TQAddPrivateChatMember : public TQHeader
{
int nServerID ;
PrivateChatChannel : : Common : : eModType eType ;
INT64 nPrivateChatChannelID ;
TPrivateChatChannelMember Member ;
} ;
struct TAAddPrivateChatMember : public TAHeader
{
char cWorldSetID ;
INT64 nPrivateChatChannelID ;
TPrivateChatChannelMember Member ;
} ;
struct TQInvitePrivateChatMember : public TQHeader
{
int nServerID ;
UINT nMasterAccountDBID ;
INT64 nPrivateChatChannelID ;
TPrivateChatChannelMember Member ;
} ;
struct TAInvitePrivateChatMember : public TAHeader
{
char cWorldSetID ;
UINT nMasterAccountDBID ;
INT64 nPrivateChatChannelID ;
TPrivateChatChannelMember Member ;
} ;
struct TQDelPrivateChatMember : public TQHeader
{
PrivateChatChannel : : Common : : eModType eType ;
INT64 biCharacterDBID ;
WCHAR wszName [ NAMELENMAX ] ;
INT64 nPrivateChatChannelID ;
} ;
struct TADelPrivateChatMember : public TAHeader
{
char cWorldSetID ;
INT64 biCharacterDBID ;
WCHAR wszName [ NAMELENMAX ] ;
INT64 nPrivateChatChannelID ;
} ;
struct TQModPrivateChatChannelInfo : public TQHeader
{
PrivateChatChannel : : Common : : eModType eType ;
INT64 nPrivateChatChannelID ;
WCHAR wszChannelName [ PrivateChatChannel : : Common : : MaxNameLen ] ;
int nPassWord ;
INT64 biCharacterDBID ;
} ;
struct TAModPrivateChatChannelInfo : public TAHeader
{
char cWorldSetID ;
PrivateChatChannel : : Common : : eModType eType ;
INT64 nPrivateChatChannelID ;
WCHAR wszChannelName [ PrivateChatChannel : : Common : : MaxNameLen ] ;
int nPassWord ;
INT64 biCharacterDBID ;
} ;
struct TQModPrivateChatMemberServerID : public TQHeader
{
int nServerID ;
INT64 biCharacterDBID ;
} ;
struct TQDelPrivateChatMemberServerID : public TQHeader
{
int nServerID ;
} ;
struct TADelPrivateChatMemberServerID : public TAHeader
{
char cWorldSetID ;
int nCount ;
TPrivateMemberDelServer Member [ PrivateChatChannel : : Common : : MaxMemberCount ] ;
} ;
# endif
# if defined( PRE_FIX_67546 )
struct TQAddThreadCount : public TQHeader
{
BYTE cChoiceThreadID ;
} ;
struct TAAddThreadCount : public TAHeader
{
int nConnectionCount [ THREADMAX ] ;
} ;
# endif
# if defined( PRE_WORLDCOMBINE_PVP )
struct TQAddWorldPvPRoom : public TQHeader
{
TWorldPvPMissionRoom TMissionRoom ;
int nServerID ;
int nRoomID ;
WCHAR wszRoomName [ PARTYNAMELENMAX ] ;
bool bBreakIntoFlag ;
bool bRegulationFlag ;
bool bObserverFlag ;
bool bRandomFlag ;
int nPassWord ;
} ;
struct TAAddWorldPvPRoom : public TAHeader
{
char cWorldSetID ;
int nRoomIndex ;
int nRoomID ;
int nPvPRoomDBIndex ;
TWorldPvPRoomDBData Data ;
} ;
struct TQAddWorldPvPRoomMember : public TQHeader
{
int nWorldPvPRoomDBIndex ;
INT64 biCharacterDBID ;
bool bObserverFlag ;
BYTE cMaxPlayers ;
} ;
struct TQDelWorldPvPRoom : public TQHeader
{
int nWorldPvPRoomDBIndex ;
} ;
struct TQDelWorldPvPRoomMember : public TQHeader
{
int nWorldPvPRoomDBIndex ;
INT64 biCharacterDBID ;
} ;
struct TQDelWorldPvPRoomForServer : public TQHeader
{
int nServerID ;
} ;
struct TQGetListWorldPvPRoom : public TQHeader
{
int nCombineWorldID ;
} ;
struct TAGetListWorldPvPRoom : public TAHeader
{
int nCount ;
TWorldPvPRoomDBData WorldPvPRoomData [ WorldPvPMissionRoom : : Common : : MaxDBDataCount ] ;
} ;
struct TQUpdateWorldPvPRoom : public TQHeader
{
} ;
struct TAUpdateWorldPvPRoom : public TAHeader
{
bool bFlag ;
} ;
# endif
//#########################################################################################################################################
// MAINCMD_ACTOZCOMMON
//#########################################################################################################################################
// QUERY_UPDATECHARACTERINFO
struct TQActozUpdateCharacterInfo : public TQHeader
{
char cUpdateType ;
INT64 biCharacterDBID ;
BYTE cJob ;
int nLevel ;
int nExp ;
INT64 biCoin ;
char szIp [ IPLENMAX ] ;
} ;
// QUERY_UPDATECHARACTERNAME
struct TQActozUpdateCharacterName : public TQHeader
{
INT64 biCharacterDBID ;
char szCharacterName [ NAMELENMAX ] ;
} ;
//#########################################################################################################################################
// MAINCMD_ALTEIAWORLD
//#########################################################################################################################################
# if defined( PRE_ALTEIAWORLD_EXPLORE )
struct TQResetAlteiaWorldEvent : public TQHeader
{
} ;
struct TQAddAlteiaWorldEvent : public TQHeader
{
time_t tAlteiaEventStartTime ;
time_t tAlteiaEventEndTime ;
} ;
struct TQADDAlteiaWorldPlayResult : public TQHeader
{
INT64 biCharacterDBID ;
int nGoldKeyCount ;
DWORD dwPlayTime ;
int nGuildID ;
} ;
struct TQGetAlteiaWorldInfo : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetAlteiaWorldInfo : public TAHeader
{
int nBestGoldKeyCount ;
UINT uiBestPlayTime ;
int nDailyPlayCount ;
int nWeeklyPlayCount ;
} ;
struct TQGetAlteiaWorldRankInfo : public TQHeader
{
int nMaxRank ;
AlteiaWorld : : Info : : eInfoType eType ;
} ;
struct TAGetAlteiaWorldPrivateGoldKeyRank : public TAHeader
{
int nCount ;
AlteiaWorld : : GoldKeyRankMemberInfo RankMemberInfo [ AlteiaWorld : : Common : : MaxRankCount ] ;
} ;
struct TAGetAlteiaWorldPrivatePlayTimeRank : public TAHeader
{
int nCount ;
AlteiaWorld : : PlayTimeRankMemberInfo RankMemberInfo [ AlteiaWorld : : Common : : MaxRankCount ] ;
} ;
struct TAGetAlteiaWorldGuildGoldKeyRank : public TAHeader
{
int nCount ;
AlteiaWorld : : GuildGoldKeyRankInfo RankMemberInfo [ AlteiaWorld : : Common : : MaxRankCount ] ;
} ;
struct TQGetAlteiaWorldSendTicketList : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetAlteiaWorldSendTicketList : public TAHeader
{
int nSendTicketCount ;
int nRecvTicketCount ;
INT64 biCharacterDBID [ AlteiaWorld : : Common : : MaxSendCount ] ;
} ;
struct TQAddAlteiaWorldSendTicketList : public TQHeader
{
INT64 biCharacterDBID ;
INT64 biSendCharacterDBID ;
WCHAR wszSendCharacterName [ NAMELENMAX ] ;
int nSendMaxCount ;
} ;
struct TAAddAlteiaWorldSendTicketList : public TAHeader
{
INT64 biSendCharacterDBID ;
WCHAR wszSendCharacterName [ NAMELENMAX ] ;
} ;
struct TQResetAlteiaWorldPlayAlteia : public TQHeader
{
INT64 biCharacterDBID ;
AlteiaWorld : : ResetType : : eResetType eType ;
} ;
# endif // #if defined( PRE_ALTEIAWORLD_EXPLORE )
//#########################################################################################################################################
// MAINCMD_STAMPSYSTEM
//#########################################################################################################################################
# if defined( PRE_ADD_STAMPSYSTEM )
struct TQGetListCompleteChallenges : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TAGetListCompleteChallenges : public TAHeader
{
StampSystem : : StampCompleteInfo CompleteInfo [ StampSystem : : Common : : MaxStampSlotCount ] ;
} ;
struct TQInitCompleteChallenge : public TQHeader
{
INT64 biCharacterDBID ;
} ;
struct TQAddCompleteChallenge : public TQHeader
{
INT64 biCharacterDBID ;
BYTE cChallengeIndex ;
int nWeekDay ;
} ;
struct TAAddCompleteChallenge : public TAHeader
{
BYTE cChallengeIndex ;
} ;
# endif // #if defined( PRE_ADD_STAMPSYSTEM )
//#########################################################################################################################################
// MAINCMD_DWC
//#########################################################################################################################################
# if defined(PRE_ADD_DWC)
struct TQCreateDWCTeam : public TQHeader
{
INT64 biCharacterDBID ;
WCHAR wszTeamName [ GUILDNAME_MAX ] ;
} ;
struct TACreateDWCTeam : public TAHeader
{
INT64 biCharacterDBID ;
UINT nTeamID ;
WCHAR wszTeamName [ GUILDNAME_MAX ] ;
} ;
struct TQAddDWCTeamMember : public TQHeader
{
INT64 biCharacterDBID ;
UINT nTeamID ;
} ;
struct TAAddDWCTeamMember : public TAHeader
{
INT64 biCharacterDBID ;
UINT nTeamID ;
} ;
struct TQDWCInviteMember : public TQHeader
{
INT64 biCharacterDBID ;
UINT nTeamID ;
bool bNeedMembList ;
} ;
struct TADWCInviteMember : public TAHeader
{
INT64 biCharacterDBID ;
UINT nTeamID ;
BYTE cMemberCount ;
TDWCTeam Info ;
TDWCTeamMember MemberList [ DWC : : DWC_MAX_MEMBERISZE ] ;
} ;
struct TQDelDWCTeamMember : public TQHeader
{
INT64 biCharacterDBID ;
UINT nTeamID ;
} ;
struct TADelDWCTeamMember : public TAHeader
{
INT64 biCharacterDBID ;
UINT nTeamID ;
} ;
struct TQGetDWCTeamInfo : public TQHeader
{
INT64 biCharacterDBID ;
bool bNeedMembList ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> ϵ<EFBFBD> <20> ʿ<EFBFBD> <CABF> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD>
} ;
struct TAGetDWCTeamInfo : public TAHeader
{
UINT nTeamID ;
TDWCTeam Info ;
} ;
struct TAGetDWCTeamMember : public TAHeader
{
UINT nTeamID ;
BYTE cCount ; // <20> <> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> õ<EFBFBD> )
TDWCTeamMember MemberList [ DWC : : DWC_MAX_MEMBERISZE ] ;
} ;
struct TQAddPvPDWCResult : public TQHeader
{
int nRoomID ; // <20> <> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> RoomID
UINT nTeamID ;
UINT nOppositeTeamID ;
BYTE cPvPLadderCode ; // LadderSystem::MatchType::eCode
BYTE cResult ; // LadderSystem::MatchResult::eCode
int nDWCGradePoint ;
int nHiddenDWCGradePoint ;
} ;
struct TAAddPvPDWCResult : public TAHeader
{
int nRoomID ;
UINT nTeamID ;
TDWCScore DWCScore ;
} ;
struct TQGetListDWCScore : public TQHeader
{
int nRoomID ; // <20> <> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> RoomID
INT64 biATeamCharacterDBID ;
INT64 biBTeamCharacterDBID ;
} ;
struct TAGetListDWCScore : public TAHeader
{
int nRoomID ;
UINT nATeamID ;
TDWCTeam ATeamInfo ;
UINT nBTeamID ;
TDWCTeam BTeamInfo ;
} ;
struct TQGetDWCRankPage : public TQHeader
{
int nPageNum ;
int nPageSize ; //DWC::eCommon::RankPageMaxSize
} ;
struct TAGetDWCRankPage : public TAHeader
{
UINT nTotalRankSize ;
int nPageNum ;
int nPageSize ;
TDWCRankData RankList [ DWC : : Common : : RankPageMaxSize ] ;
} ;
struct TQGetDWCFindRank : public TQHeader
{
BYTE cFindType ; //DWC::FindRankType<70> <65> <EFBFBD> <EFBFBD>
WCHAR wszFindKey [ NAMELENMAX + GUILDNAME_MAX ] ;
} ;
struct TAGetDWCFindRank : public TAHeader
{
int nRetCode ;
TDWCRankData Rank ;
} ;
struct TQGetDWCChannelInfo : public TQHeader
{
} ;
struct TAGetDWCChannelInfo : public TAHeader
{
TDWCChannelInfo ChannelInfo ;
} ;
# endif
# pragma pack(pop)