#pragma once #define MAX_IP_SIZE 64 #define MAX_NAME_SIZE 128 #define MAX_CLIENT_BUF_SIZE 1024 #define MAX_QUERY_STRING 1024 #define MAX_PATCH_VER_SIZE 32 #define MAX_WORLD_NAME_SIZE 64 #define MAX_USERID_SIZE 64 #define MAX_PASSWORD_SIZE 64 #define MAX_SERVERKEY_COUNT_PER_AGENT 10 #define MAX_GAMESERVER_COUNT_PER_AGENT 10 #define TOTAL_PATCH_VALUE 250 #define MAX_USER_COUNT 256 #define MAX_FTP_CONNECT_COUNT 100 #define MAX_PATCHDATA_COUNT 50 #define STRING_TABLE_ID_START_VALUE 10000 //Stream Size #define MAX_SERVER_INFO_STREAM_SIZE 2048 #define MAX_VERSION_COUNT 3 //¹öÀü ±¸ºÐÀÚÀÇ °³¼ö #define MAX_VERSION_CHAR_SIZE 32 //ÃÖ¼Ò Ä³¸¯ÅÍ »çÀÌÁî #define MAX_FOLDER_NAME 64 //ÃÖ´ë Æú´õÀ̸§ÀÇ »çÀÌÁî #define MAX_FILE_NAME 64 //ÃÖ´ë ÆÄÀÏÀ̸§ »çÀÌÁî #define DEFAULT_BUFFER_SIZE 128 //±âº» ¹öÆÛ »çÀÌÁî //#define MAX_UPDATE_FOLDER_COUNT 100 //ÃÖ´ë ¾÷µ¥ÀÌÆ® Æú´õ °³¼ö //#define MAX_PARAM_COUNT 10 //ÃÖ´ë ÆÄ¶ó¹ÌÅÍ °³¼ö //#define LAUNCHER_UPDATE_NUM 100 //½ºÅ©¸³Æ®¿¡¼­ ¼³Á¤ÇÏ´Â ¾÷µ¥ÀÌÆ® ³Ñ¹ö..·±Ã³´Â ¾øÀ¸¹Ç·Î 100À¸·Î ÇÑ´Ù. #define SAFE_DELETE( p) { if ( p) { delete ( p); ( p) = NULL; } } #define SAFE_DELETE_ARRAY( p) { if ( p) { delete[] ( p); ( p) = NULL; } } #define SAFE_RELEASE( p) { if ( p) { ( p)->Release(); ( p) = NULL; } } #define SAFE_RELEASENDELETE(p) if (p) { (p)->Release(); delete (p); (p) = NULL; } #define SWAP_32BIT_DATATYPE(dwOldSK) \ (( ((dwOldSK)&0x000000FF) << 24) | (((dwOldSK)&0x0000FF00) << 8) | (((dwOldSK)&0x00FF0000) >> 8) | (((dwOldSK)&0xFF000000) >> 24)) #define IN #define OUT #define INOUT #define DISPMSG printf #ifdef _DEBUG #include #include #define UASSERT(expr) _ASSERTE(expr) #define ASSERTMSG(expr,m) if(!(expr)) \ { \ printf(m); \ } // ¸±¸®Áî½Ã¿¡µµ Assert°¡ °É¸± ¼ö ÀÖ°Ô break // ½ºÅ©¸³Æ® ¿À·ù½Ã¿¡ #define FASSERT(expr) _ASSERTE(expr) #define DEBUG_CODE(c) c #else #define StartMemoryLeakCheck() __noop #define BreakPointOnMemoryLeak __noop #define UASSERT(expr) _ASSERTE(expr) #define ASSERTMSG(expr,m) __noop #define DEBUG_CODE(c) c // ¸±¸®Áî½Ã¿¡µµ Assert°¡ °É¸± ¼ö ÀÖ°Ô break // ½ºÅ©¸³Æ® ¿À·ù½Ã¿¡ #define FASSERT(expr) {if( !(expr) ) { printf("Assertion failed: "###expr##", file %s, line: %d\n", __FILE__, __LINE__);__asm int 3}} #endif ////////////////////////////////////////////////////////////////////////// // define #define __20070521__CHANGE_SERVER_TYPE #define __20080310__CHANGE_SET_SERVERKEY // ¹ö¼­Å° »ý¼º ¹æ½Ä º¯°æ #define __20080312__SOLARAUTH_SERVER_PATCH // ¼Ö¶ó ÆÐÄ¡±â´É ÀÛ¾÷ #define __20120306__SOLARAUTH_SERVER_PATCH_RESULT// ¼Ö¶ó ÆÐÄ¡±â´É ÀÛ¾÷ #ifdef __20080312__SOLARAUTH_SERVER_PATCH #define __VERSIONEX_CLASS // ¹öÀü Ŭ·¡½º #endif #define __20101123__UPDATE_AGENT_AUTO_RESTART // UpdateAgent¿¡¼­ ƯÁ¤ ¼­¹öµé Àç½ÃÀÛ Áö¿ø #define _NA_006254_20121119_SERVER_LIST_MODIFY // 2012.11.19 / ±èÁøÈÖ / ºÒÇÊ¿ä ¼­¹ö¸®½ºÆ® Á¦°Å¹× ¼­¹ö¸®½ºÆ® ¼öÁ¤ #define _NA_006543_20130318_HEARTBEAT // 2013.3.18 / ¹Î°æ½Â / UpdateAgentÀÇ »óŸ¦ È®ÀÎÇϱâ À§ÇÑ HeartBeatÆÐŶ ÀÛ¾÷ // µ¿ÀÛ°úÁ¤( ÀÛ¼º : ¹Î°æ½Â ) // UpdateServer¿Í UpdateAgentµéÀÌ heatbeatÆÐŶÀ¸·Î Åë½ÅÇϰí ÀÀ´äÀÌ ¾øÀ» °æ¿ì, Agent°¡ Á¾·áµÈ °ÍÀ¸·Î °£ÁÖÇÑ´Ù. // 1. ÇØ´ç agentKey¸¦ °¡Áø ¼­¹ö¸¦ ã°í ¿ªÀ¸·Î ¿ùµå¸¦ ã¾Æ³½´Ù. // 2. ¿ùµå ³»ÀÇ Ã¤³ÎµéÀ» µ¹¸ç ÇØ´ç AgentÀÇ Key¸¦ °¡Áö°í ÀÖÀ¸¸é »¡°£ºÒ·Î ¹Ù²Û´Ù.(»¡°£ºÒÀº 'ÆÐÄ¡Áß'»óÅ¿¡¼­ »ç¿ëÇϹǷΠ'ÆÐÄ¡Áß'»óŸ¦ ÀÚÁÖ »ç¿ëÇÏ´Â °æ¿ì Çò°¥¸± ¼ö ÀÖ´Ù.) // // ÀÌ ÀÛ¾÷Àº // (1) ÇϳªÀÇ AgentKey¸¦ 2°³ ÀÌ»óÀÇ ¿ùµå¿¡¼­ °¡Áö°í ÀÖÁö ¾Ê´Â´Ù. (ÇϳªÀÇ ¿ùµå¿¡¼­¸¸ Ž»öÇÔ) // (2) ÇϳªÀÇ Channel¾Æ·¡ÀÇ ¼­¹öµéÀº ¸ðµÎ °°Àº AgentKey¸¦ °¡Áö°í ÀÖ´Ù. // (3) ´Ù¼öÀÇ Channel¿¡ ¶È°°Àº AgentKey°¡ µé¾î°¥ ¼ø ÀÖÁö¸¸, ChannelµéÀÌ ¸ðµÎ ÇϳªÀÇ World¿¡ ÀÖ¾î¾ß ÇÑ´Ù. ( (1)ÀÇ ¿¹½Ã) // ÀÌ¿Í °°Àº ³»¿ëÀ» ÀüÁ¦·Î ÀÛ¾÷µÇ¾ú±â ¶§¹®¿¡ ÀÌ¿Í ´Ù¸¥ °æ¿ì, Á¤»óÀûÀÎ µ¿ÀÛÀ» ÇÏÁö ¾ÊÀ½. #define _NA_006662_20130423_SVNPATCH //2013.04.23 / ¹Î°æ½Â / SVN½ºÅ©¸³Æ® °ü¸®¿¡¼­ ÆÐÄ¡±â´É Ãß°¡ //////////////////////////////////////////////////////////////////////////