Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
411
GameTools/GLOBALSCRIPT/DB/DBdefine.h
Normal file
411
GameTools/GLOBALSCRIPT/DB/DBdefine.h
Normal file
@@ -0,0 +1,411 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// DB Struct Define
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
#ifndef _DBDefine
|
||||
#define _DBDefine
|
||||
|
||||
#pragma pack(push, 1) // 1byte order로 패킹
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 유저 정보 테이블 구조체(툴)
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _USERINFO_TABLE
|
||||
{
|
||||
unsigned long UID; // 아이디
|
||||
unsigned long Char1; // 캐릭터 아이디 (첫번째)
|
||||
unsigned long Char2; // 캐릭터 아이디 (두번째)
|
||||
unsigned long Char3; // 캐릭터 아이디 (세번째)
|
||||
}USERINFO_TABLE, *LPUSERINFO_TABLE;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 시간
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _TIME
|
||||
{
|
||||
unsigned short Year; // 연도
|
||||
unsigned short Month; // 달
|
||||
unsigned short Day; // 날짜
|
||||
unsigned short Hour; // 시간
|
||||
unsigned short Minute; // 분
|
||||
unsigned short Second; // 초
|
||||
unsigned long MSecond; // 밀리초
|
||||
}TIME, *LPTIME;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 요시랜드 인증
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _AUTH
|
||||
{
|
||||
unsigned long Errcode; // 에러 코드
|
||||
unsigned long Type; // 인증 타입
|
||||
unsigned long UID; // 유저 아이디
|
||||
union COMMENT
|
||||
{
|
||||
unsigned long Point; // 포인트 양
|
||||
TIME Time; // 시간
|
||||
}Comment;
|
||||
|
||||
unsigned long Dumy[4]; // 규격에 맞지 않은 사이즈의 데이터 대비
|
||||
}AUTH, *LPAUTH;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 한게임 인증
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _HAN_UID
|
||||
{
|
||||
unsigned long hUID; // 유저 아이디
|
||||
unsigned long lUID; // 유저 아이디
|
||||
}HAN_UID, *LPHAN_UID;
|
||||
|
||||
typedef struct _HAN_AUTH
|
||||
{
|
||||
unsigned char Num; // 자리수
|
||||
unsigned short Extra; // 뭐하는 건지 모름
|
||||
unsigned long UID; // 유저 아이디
|
||||
unsigned char Dump; // 빈공간
|
||||
}HAN_AUTH, *LPHAN_AUTH;
|
||||
|
||||
typedef union _HAN_CONVERT
|
||||
{
|
||||
unsigned _int64 iValue; // 64 Bit 값
|
||||
HAN_AUTH sValue; // 구조체
|
||||
}HAN_CONVERT, *LPHAN_CONVERT;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 위치
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _POS
|
||||
{
|
||||
float fPointX; // Point X 좌표
|
||||
float fPointY; // Point Y 좌표
|
||||
float fPointZ; // Point Z 좌표
|
||||
}POS, *LPPOS;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 스킬 슬롯 // modified 2002/10/3 11:20 by sparrowhawk
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
union SKILLSLOT
|
||||
{
|
||||
enum {
|
||||
MAX_SKILL_LEVEL = 7, // 0~6
|
||||
MAX_LOCKCOUNT = 5 // 0~4
|
||||
};
|
||||
|
||||
struct
|
||||
{
|
||||
unsigned short wSkill; // 스킬 아이디
|
||||
char cLockCount; // 스킬 락 카운트 ( 0~4 )
|
||||
char cSkillLevel; // 스킬 레벨 ( -127 ~ 128 )
|
||||
}SKILLINFO;
|
||||
|
||||
unsigned long dwSkillSlot;
|
||||
|
||||
SKILLSLOT() : dwSkillSlot(0) { }
|
||||
SKILLSLOT(unsigned short skill, char lockcount, char skillLevel)
|
||||
{ SKILLINFO.wSkill = skill; SKILLINFO.cLockCount = lockcount; SKILLINFO.cSkillLevel = skillLevel; }
|
||||
};
|
||||
typedef SKILLSLOT* LPSKILLSLOT;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 스킬 // modified 2002/10/3 11:20 by sparrowhawk
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
struct SKILL
|
||||
{
|
||||
enum { MAX_SLOT_NUM = 20 };
|
||||
|
||||
unsigned short wSkillNum; // 스킬 수
|
||||
unsigned short wSlotNum; // 슬롯 수
|
||||
|
||||
SKILLSLOT SSlot[MAX_SLOT_NUM]; // 스킬
|
||||
|
||||
SKILL() : wSkillNum(0), wSlotNum(0) { }
|
||||
SKILL(unsigned short usSkillNum, unsigned short usSlotNum)
|
||||
: wSkillNum(usSkillNum), wSlotNum(usSlotNum) { }
|
||||
};
|
||||
typedef SKILL* LPSKILL;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 타이틀
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _TITLE
|
||||
{
|
||||
__int64 dlTitle; // 타이틀 아이디
|
||||
unsigned short wScore; // 타이틀 점수
|
||||
}TITLE, *LPTITLE;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 장비
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _EQUIP
|
||||
{
|
||||
enum { MAX_EQUIP_SIZE = 1436 }; // + 4 = 1440
|
||||
|
||||
unsigned long dwSize;
|
||||
char Data[MAX_EQUIP_SIZE];
|
||||
} EQUIP, *LPEQUIP;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 인벤
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _INVEN
|
||||
{
|
||||
enum { MAX_INVEN_SIZE = 5116 }; // + 4 = 5120
|
||||
|
||||
unsigned long dwSize;
|
||||
char Data[MAX_INVEN_SIZE];
|
||||
} INVEN, *LPINVEN;
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Extra
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _EXTRA
|
||||
{
|
||||
enum { MAX_EXTRA_SIZE = 508 }; // + 4 = 512
|
||||
|
||||
unsigned long dwSize;
|
||||
char Data[MAX_EXTRA_SIZE];
|
||||
} EXTRA, *LPEXTRA;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Exchange
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _EXCHANGE
|
||||
{
|
||||
enum { MAX_EXCHANGE_SIZE = 1280 }; // + 4 = 1284
|
||||
|
||||
unsigned long dwSize;
|
||||
char Data[MAX_EXCHANGE_SIZE];
|
||||
} EXCHANGE, *LPEXCHANGE;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 퀵 슬롯
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
struct QUICKSLOT {
|
||||
|
||||
enum Type { NONE = 0, SKILL = 1, ITEM = 2 };
|
||||
char nType;
|
||||
char nSkillLockCount;
|
||||
char nSkillLevel;
|
||||
unsigned short wID; // Skill_ID 또는 아이템 ProtoType ID
|
||||
|
||||
QUICKSLOT() : nType(NONE), nSkillLockCount(0), nSkillLevel(0), wID(0) { }
|
||||
QUICKSLOT(char type, char lockCount, char skillLevel, unsigned short wid)
|
||||
: nType(type), nSkillLockCount(lockCount), nSkillLevel(skillLevel), wID(wid) { }
|
||||
};
|
||||
typedef QUICKSLOT* LPQUICKSLOT;
|
||||
|
||||
typedef struct _QUICK
|
||||
{
|
||||
enum { MAX_QUICK_NUM = 10 };
|
||||
QUICKSLOT Slots[MAX_QUICK_NUM];
|
||||
|
||||
}QUICK, *LPQUICK;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 캐릭터 생성 구조체
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
struct CHAR_CREATE
|
||||
{
|
||||
enum { MAX_NAME_LEN = 16 };
|
||||
|
||||
enum _Nationality {
|
||||
HUMAN = 0,
|
||||
AKHAN = 1
|
||||
};
|
||||
|
||||
char Name[MAX_NAME_LEN]; // 캐릭터 이름
|
||||
char Sex; // 캐릭터 성
|
||||
char Hair; // 캐릭터 머리 모양
|
||||
char Face; // 캐릭터 얼굴 모양
|
||||
char Nationality; // 캐릭터 국가
|
||||
unsigned short Class; // 캐릭터 클래스
|
||||
|
||||
unsigned short Equip[15]; // 장비
|
||||
|
||||
unsigned short STR; // 캐릭터 STR
|
||||
unsigned short DEX; // 캐릭터 DEX
|
||||
unsigned short CON; // 캐릭터 CON
|
||||
unsigned short INT; // 캐릭터 INT
|
||||
unsigned short WIS; // 캐릭터 WIS
|
||||
};
|
||||
typedef CHAR_CREATE* LPCHAR_CREATE;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 캐릭터 모양 구조체
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
struct CHAR_VIEW
|
||||
{
|
||||
enum { MAX_NAME_LEN = 16 };
|
||||
enum _Nationality {
|
||||
HUMAN = 0,
|
||||
AKHAN = 1
|
||||
};
|
||||
|
||||
unsigned long UID;
|
||||
|
||||
char Name[MAX_NAME_LEN]; // 캐릭터 이름
|
||||
char Sex; // 캐릭터 성
|
||||
char Hair; // 캐릭터 머리 모양
|
||||
char Face; // 캐릭터 얼굴 모양
|
||||
char Nationality; // 캐릭터 국가
|
||||
unsigned short Class; // 캐릭터 클래스
|
||||
|
||||
unsigned long Merits; // 공헌도
|
||||
unsigned short Fame; // 명성
|
||||
unsigned long Guild; // 캐릭터 길드
|
||||
unsigned long Party; // 캐릭터 파티
|
||||
char Level; // 캐릭터 레벨
|
||||
|
||||
unsigned short Equip[15]; // 장비(겉보기)
|
||||
};
|
||||
typedef CHAR_VIEW* LPCHAR_VIEW;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 캐릭터 정보 DB Table
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _USER_INFO
|
||||
{
|
||||
unsigned long Char1; // 캐릭터 아이디 (첫번째)
|
||||
unsigned long Char2; // 캐릭터 아이디 (두번째)
|
||||
unsigned long Char3; // 캐릭터 아이디 (세번째)
|
||||
unsigned long Zone; // 캐릭터 최근 존
|
||||
}USER_INFO, *LPUSER_INFO;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 캐릭터 정보 DB Table
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _CHAR_INFOST
|
||||
{
|
||||
enum { MAX_NAME_LEN = 16 };
|
||||
|
||||
unsigned long UID;
|
||||
|
||||
char Name[MAX_NAME_LEN]; // 캐릭터 이름
|
||||
char Sex; // 캐릭터 성
|
||||
char Hair; // 캐릭터 머리 모양
|
||||
char Face; // 캐릭터 얼굴 모양
|
||||
char Nationality; // 캐릭터 국가
|
||||
unsigned short Class; // 캐릭터 클래스
|
||||
|
||||
unsigned long Merits; // 공헌도
|
||||
unsigned short Fame; // 명성
|
||||
unsigned long Guild; // 캐릭터 길드
|
||||
unsigned long Party; // 캐릭터 파티
|
||||
char Level; // 캐릭터 레벨
|
||||
|
||||
unsigned long Gold; // 돈
|
||||
|
||||
unsigned short IP; // 증가 포인트
|
||||
unsigned short STR; // 캐릭터 STR
|
||||
unsigned short DEX; // 캐릭터 DEX
|
||||
unsigned short CON; // 캐릭터 CON
|
||||
unsigned short INT; // 캐릭터 INT
|
||||
unsigned short WIS; // 캐릭터 WIS
|
||||
|
||||
short HP; // 캐릭터 HP
|
||||
short MP; // 캐릭터 MP
|
||||
__int64 Exp; // 캐릭터 경험점
|
||||
|
||||
} CHAR_INFOST, *LPCHAR_INFOST;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 캐릭터 추가 정보
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _CHAR_INFOEX
|
||||
{
|
||||
unsigned long Total; // 총 이용 시간(분)
|
||||
unsigned long ServerID; // 존
|
||||
} CHAR_INFOEX, *LPCHAR_INFOEX;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 캐릭터 위치 정보 DB Table
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _CHAR_POS
|
||||
{
|
||||
POS LastPoint; // 마지막 위치
|
||||
POS SavePoint; // 세이브 위치
|
||||
} CHAR_POS, *LPCHAR_POS;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 파티 정보 DB Table
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _PARTY_INFO
|
||||
{
|
||||
enum { MAX_MEM = 10, MAX_NAME_LEN = 16 };
|
||||
|
||||
unsigned long MemberCID[MAX_MEM]; // 멤버 CID
|
||||
char Name[MAX_MEM][MAX_NAME_LEN]; // 멤버 이름
|
||||
|
||||
} PARTY_INFO, *LPPARTY_INFO;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// 파티
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
typedef struct _PARTY
|
||||
{
|
||||
enum { MAX_MEM = 10, MAX_NAME_LEN = 16 };
|
||||
|
||||
unsigned long m_dwPartyID;
|
||||
unsigned long m_dwLeaderID;
|
||||
|
||||
unsigned char m_cMemberNum;
|
||||
|
||||
char Name[MAX_MEM][MAX_NAME_LEN];
|
||||
unsigned long MemberCID[MAX_MEM];
|
||||
unsigned long ServerID[MAX_MEM];
|
||||
}PARTY, *LPPARTY;
|
||||
|
||||
typedef struct _PARTY_EX : PARTY
|
||||
{
|
||||
unsigned short m_wClass[MAX_MEM];
|
||||
char m_cLevel[MAX_MEM];
|
||||
}PARTY_EX, *LPPARTY_EX;
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user