//¹¦ÄÜÅäÖñí¸ñ #tagFuncConfig struct tagFuncConfig { char _Key; //±êʶ char Numerical1; //Êý¾Ý1 char Numerical2; //Êý¾Ý2 char Numerical3; //Êý¾Ý3 char Numerical4; //Êý¾Ý4 char Numerical5; //Êý¾Ý5 }; //´´½ÇÏÞÖÆ·þÎñÆ÷ÅäÖñí #tagCreateRoleLimitServer struct tagCreateRoleLimitServer { list LimitServerGroupIDRangeList; //ÏÞÖÆ´´½ÇµÄ·þÎñÆ÷×éID·¶Î§Áбí list LimitServerGroupIDList; //ÏÞÖÆ´´½ÇµÄ·þÎñÆ÷×éIDÁбí }; //Í·Ïñ±í struct tagPlayerFace { DWORD _FaceID; //Í·ÏñID BYTE UnlockDefault; //ÊÇ·ñĬÈϼ¤»î }; //Í·Ïñ¿ò±í struct tagPlayerFacePic { DWORD _FacePicID; //Í·Ïñ¿òID BYTE UnlockDefault; //ÊÇ·ñĬÈϼ¤»î }; //ÊÀ½çµÈ¼¶±í¸ñ #tagWorldLV struct tagWorldLV { WORD _WorldLV; //ÊÀ½çµÈ¼¶ DWORD OpenServerSecond; //¿ª·þʱ¼äÃë }; //ÏÉÃ˱í¸ñ #tagFamily struct tagFamily { BYTE _FamilyLV; //ÏÉÃ˵ȼ¶ WORD MemberCnt; //³ÉÔ±ÊýÁ¿ BYTE DeputyLeaderCnt; //¸±ÃËÖ÷ÊýÁ¿ BYTE EliteCnt; //¾«Ó¢ÊýÁ¿ DWORD NeedMoney; //Éý¼¶ÐèÒª×ʽð DWORD WeekMissionMoneyMax; //ÿÖÜÈÎÎñ×î´ó¿É»ñµÃÏÉÃË×ʽð BYTE BossFBCnt; //BOSS¸±±¾´ÎÊý DWORD ZhenbaogeWeights; //Õ䱦¸ó×ÜÈ¨ÖØ }; //ÏÉÃË»ÕÕ±í struct tagFamilyEmblem { BYTE _EmblemID; //»ÕÕÂID BYTE UnlockFamilyLV; //½âËøÏÉÃ˵ȼ¶£¬Îª0ʱ´ú±íÆäËû·½Ê½½âËø DWORD ExpireMinutes; //ÓÐЧʱ³¤£¬·ÖÖÓ DWORD CustomFamilyID; //¶¨ÖÆÏÉÃËID }; //ÏÉÃËÕ䱦¸ó¿³¼Û struct tagFamilyZhenbaogeCut { BYTE _CutNum; //¿³¼ÛÈË´Î DWORD CutWeight; //¿³¼ÛÈ¨ÖØ float MinRatio; //±£µ×±ÈÖµ float RandRatio; //Ëæ»ú±ÈÖµ }; //ÏÉÃËÕ䱦¸óÎïÆ· struct tagFamilyZhenbaogeItem { BYTE _ItemGroupNum; //ÎïÆ·×é±àºÅ DWORD ItemWeight; //Ëæ»úÈ¨ÖØ list ItemList; //ÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] }; //ÏÉÃËÊÔÁ¶ÉËѪ½±Àø±í struct tagFamilyBossHurtAward { BYTE _AwardType; //½±ÀøÀàÐÍ 1-¸öÈË£»2-ÏÉÃË BYTE _RecordIndex; //½±Àø¼Ç¼Ë÷Òý£¬Í¬½±ÀøÀàÐÍʱ¼Ç¼Ë÷Òý²»¿ÉÖØ¸´ DWORD NeedHurtTotal; //ËùÐè×ÜÉËѪ list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] }; //ÏÉÃËÕ󷨱í struct tagFamilyZhenfa { BYTE _ZhenfaType; // Õó·¨ÀàÐÍ WORD _ZhenfaLV; // Õ󷨵ȼ¶ DWORD LVUpNeedExp; //ÉýÏÂÒ»¼¶ËùÐè¾­Ñé }; //¼¯Êвéѯ±í struct tagMarketQuery { WORD _QueryType; //²éѯÀàÐÍ dict LimitInfo; //ÏÞÖÆÌõ¼þ }; //ÅÄÂôÎïÆ·±í struct tagAuctionItem { DWORD _AuctionItemID; BYTE NoticeSaleMinutes; //Ô¤¸æÅÄÂô·ÖÖÓ WORD FamilySaleMinutes; //ÏÉÃËÅÄÂô·ÖÖÓ WORD WorldSaleMinutes; //È«·þÅÄÂô·ÖÖÓ WORD BasePrice; //ÆðÅÄ¼Û WORD BuyoutPrice; //Ò»¿Ú¼Û WORD BiddingAdd; //¾º¼ÛÔö¼Ó BYTE NeedWorldNotify; //ÊÇ·ñÐèÒª¹ã²¥ BYTE Sortpriority; //ÅÅÐòÓÅÏȼ¶¹é×é }; //ÅÄÂôÐÐϵͳÅÄÆ·±í struct tagAuctionSystemItem { DWORD _CfgID; char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char StartTime; //¿ªÆôʱ¼ä char EndTime; //½áÊøÊ±¼ä list WorldLVRange; //ÊÀ½çµÈ¼¶·¶Î§ÏÞÖÆ list AddRandSecondRange; //ÿ¼þÅÄÆ·Ëæ»ú¼ä¸ôÉϼÜÃëÊý ÉÏÏÞ|ÏÂÏÞ WORD ReplenishCDMinutes; //¶¯Ì¬²¹³äÅÄÆ·¼ä¸ô·ÖÖÓ BYTE ReplenishAuctionCount; //¶¯Ì¬²¹³äÅÄÆ·±£µ×Êý DWORD ReplenishItemID; //¶¯Ì¬²¹³äÎïÆ·ID list ReplenishEquipInfo; //¶¯Ì¬²¹³ä×°±¸ÐÅÏ¢ [½×,ÑÕÉ«,ÊÇ·ñÌ××°] list ReplenishEquipPlaces; //¶¯Ì¬²¹³äÉϼÜ×°±¸Î»Áбí BYTE AuctionCount; //Ö¸¶¨ÉϼܴÎÊý list RandMinuteRange; //Ö¸¶¨ÉϼÜËæ»ú¼ä¸ô·ÖÖÓÏÂÏÞ|ÉÏÏÞ list ItemCountWeightList; //Ö¸¶¨ÉϼÜËæ»ú¼þÊýÈ¨ÖØÁбí, [[È¨ÖØ, ¼þÊý], ...] list AuctionItemWeightList; //Ö¸¶¨ÉϼÜÎïÆ·Ëæ»úÈ¨ÖØ, [[È¨ÖØ, ÎïÆ·ID],[È¨ÖØ, [½×,ÑÕÉ«,²¿Î»¼¯ºÏ,ÊÇ·ñÌ××°,ÐǼ¶]] ...] list RandMailKeyList; //Ö¸¶¨ÉϼÜËæ»úÓʼþÁÐ±í£¬ÓÐÅäÖÃʱÉϼܵÄʱºòÔÚÏßÍæ¼Ò»áÊÕµ½Ò»·âÉϼÜÓʼþÌáÐÑ }; //¿ç·þÈÕ³£»î¶¯±í struct tagCrossDailyAction { DWORD _DailyID; //»î¶¯ID dict OpenTimeDict; //¿ªÆôʱ¼ä DWORD Duration; //³ÖÐøÊ±¼ä, 0Ϊ²»ÏÞÖÆ dict NotifyInfo; //¹ã²¥ÌáʾÐÅÏ¢ }; //ÈÕ³£»î¶¯±í struct tagDailyAction { DWORD _DailyID; //»î¶¯ID dict OpenTimeDict; //¿ªÆôʱ¼ä DWORD Duration; //³ÖÐøÊ±¼ä, 0Ϊ²»ÏÞÖÆ dict NotifyInfo; //¹ã²¥ÌáʾÐÅÏ¢ }; //ÈÕ³£»î¶¯±í¶¨ÖƱí struct tagDailyActionCustom { DWORD ID; //ID BYTE _OpenServerWeek; //¿ª·þÊÇÖܼ¸ DWORD OpenServerDay; //¿ª·þµÚ¼¸Ìì BYTE DailyID; //ÈÕ³£»î¶¯ID list OpenTimeList; //¿ªÆôʱ¼äÁбí DWORD Duration; //³ÖÐøÊ±¼ä, 0Ϊ²»ÏÞÖÆ dict NotifyInfo; //¹ã²¥ÌáʾÐÅÏ¢ }; //ÈÕ³£»î¶¯±í¶¨ÖƱíºÏ·þ struct tagDailyActionCustomMix { DWORD ID; //ID DWORD _MixServerDay; //ºÏ·þµÚ¼¸Ìì BYTE DailyID; //ÈÕ³£»î¶¯ID list OpenTimeList; //¿ªÆôʱ¼äÁбí DWORD Duration; //³ÖÐøÊ±¼ä, 0Ϊ²»ÏÞÖÆ dict NotifyInfo; //¹ã²¥ÌáʾÐÅÏ¢ }; //¸±±¾×´Ì¬Ê±¼ä±í struct tagFBStateTime { DWORD _ID; //ID DWORD DataMapID; //ËùÊôµÄÍæ·¨Êý¾ÝµØÍ¼ID BYTE StartWeekday; //¿ªÊ¼ÐÇÆÚ BYTE StartHour; //¿ªÊ¼Ê± BYTE StartMinute; //¿ªÊ¼·Ö BYTE EndHour; //½áÊøÊ± BYTE EndMinute; //½áÊø·Ö BYTE CanEnter; //ÊÇ·ñ¿É½øÈ븱±¾ BYTE StateValue; //״ֵ̬ dict NotifyInfoDict; //¹ã²¥ÌáʾÐÅÏ¢ }; //¸±±¾×´Ì¬Ê±¼ä¶¨ÖƱí struct tagFBStateTimeCustom { DWORD ID; //ID BYTE _OpenServerWeek; //¿ª·þÊÇÖܼ¸ DWORD OpenServerDay; //¿ª·þµÚ¼¸Ìì DWORD DataMapID; //ËùÊôµÄÍæ·¨Êý¾ÝµØÍ¼ID BYTE StartHour; //¿ªÊ¼Ê± BYTE StartMinute; //¿ªÊ¼·Ö BYTE EndHour; //½áÊøÊ± BYTE EndMinute; //½áÊø·Ö BYTE CanEnter; //ÊÇ·ñ¿É½øÈ븱±¾ BYTE StateValue; //״ֵ̬ dict NotifyInfoDict; //¹ã²¥ÌáʾÐÅÏ¢ }; //¸±±¾×´Ì¬Ê±¼ä¶¨ÖƱíºÏ·þ struct tagFBStateTimeCustomMix { DWORD ID; //ID DWORD _MixServerDay; //ºÏ·þµÚ¼¸Ìì DWORD DataMapID; //ËùÊôµÄÍæ·¨Êý¾ÝµØÍ¼ID BYTE StartHour; //¿ªÊ¼Ê± BYTE StartMinute; //¿ªÊ¼·Ö BYTE EndHour; //½áÊøÊ± BYTE EndMinute; //½áÊø·Ö BYTE CanEnter; //ÊÇ·ñ¿É½øÈ븱±¾ BYTE StateValue; //״ֵ̬ dict NotifyInfoDict; //¹ã²¥ÌáʾÐÅÏ¢ }; //¸±±¾×ܱí struct tagFBFunc { DWORD _DataMapID; //Êý¾ÝµØÍ¼ID WORD HelpPoint; //ÖúÕ½ÏÉÔµ±Ò(0´ú±í²»¿ÉÖúÕ½) }; //¸±±¾¹¦ÄÜÏß·±í struct tagFBLine { DWORD _DataMapID; //Êý¾ÝµØÍ¼ID BYTE _LineID; //¹¦ÄÜÏß·ID DWORD MapID; //³¡¾°µØÍ¼ID }; //¸±±¾ÖúÕ½±í struct tagFBHelpBattle { DWORD _DataMapID; //Êý¾ÝµØÍ¼ID BYTE _LineID; //¹¦ÄÜÏß·ID DWORD FightPowerMin; //ÖúÕ½×îµÍÕ½Á¦£¬Ò²ÊǸ±±¾Õ½Á¦ DWORD FightPowerMax; //ÖúÕ½×î¸ßÕ½Á¦£¬0Ϊ²»ÏÞÖÆ WORD LVLimit; //ÖúÕ½µÈ¼¶ÏÞÖÆ, 0Ϊ²»ÏÞÖÆ list DayFreeHelpCount; //ÿÈÕÃâ·ÑÖúÕ½´ÎÊý£¬[ÿÈÕÃâ·ÑÖúÕ½´ÎÊý, ÊÇ·ñËùÓвãͨÓÃ] }; //¹¦ÄܶÓÎéÉ趨±í struct tagFuncTeamSet { DWORD _FuncMapID; //¹¦ÄܵØÍ¼ID BYTE NeedName; //ÐèÒª¶ÓÎéÃû BYTE MemberMax; //×î´óÈËÔ±Êý BYTE ApplyMax; //×î´ó½ÓÊÜÉêÇëÊý BYTE ReqApplyMax; //×î´óÉêÇëÊý BYTE SortType; //¶ÓÎéÁбíÅÅÐò·½°¸ BYTE SortReverse; //ÊÇ·ñµ¹Ðò BYTE OPLimitInAct; //»î¶¯ÆÚ¼äÏÞÖÆ¶ÓÎé²Ù×÷ }; //µØÍ¼±í struct tagChinMap { DWORD _MapID; //µØÍ¼ID char MapName; //µØÍ¼Ãû BYTE MapFBType; // µØÍ¼ÀàÐÍ BYTE TeamLimit; // ¶ÓÎéÏÞÖÆÀàÐÍ£»0²»ÏÞ£¬1-²»¿É±ä¸ü£¬2-²»¿É´æÔÚ¶ÓÎé }; //BOSSÐÅÏ¢±í struct tagBOSSInfo { DWORD _NPCID; //ID DWORD MapID; //µØÍ¼ID char RefreshTime; //Ë¢ÐÂʱ¼ä ²ÎÊý onlineCnt list LVLimit; //ÔÚÏßÈËÎïµÈ¼¶·¶Î§ BYTE DiffPer; //°Ù·Ö±ÈÓë֮ǰµÄÎó²îСÓÚX%,Ôò¸üÐÂʵʱÔÚÏßÊýÁ¿ BYTE NoUpdataCnt; //¶àÉÙ´Îδ¸üÐÂʵʱÔÚÏßÊýÁ¿×Ö¶ÎÊ±Ç¿ÖÆ¸üРDWORD StoneNPCID; //ű®NPCID WORD RebornPreNotifyTime; //¸´»îǰXÃë֪ͨ char SourceName; //BOSSÀ´Ô´ BYTE CanAssist; //ÊÇ·ñ¿ÉЭÖú }; //BossÊ×ɱ struct tagBOSSFirstKill { DWORD _NPCID; //ID list ServerFirstKillPlayerAward; // È«·þÊ×É±Íæ¼Ò½±Àø [[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] }; //È«Ãñ³å°ñÅÅÐн±Àø±í struct tagOSCBillRankAward { BYTE _OSCBillType; //³å°ñÀàÐÍ BYTE RankA; //ÅÅÃûA BYTE RankB; //ÖÁÅÅÃûB dict RankAward; //ÅÅÃû½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý],...], ...} }; //Ñç»áÌâ¿â±í struct tagQuestionBank { DWORD _ID; //ID char Answer; //´ð°¸ }; //ÏÉÃ˺ì°ü±í struct tagFamilyRedPack { WORD _ID; //ID WORD GetType; //»ñµÃ;¾¶ WORD MoneyNum; //ºì°ü¶î¶È BYTE MoneyType; //½ðÇ®ÀàÐÍ BYTE PacketCnt; //ºì°ü¸öÊý BYTE LeaderOwn; //ÊÇ·ñ¹éÊôÃËÖ÷ char PacketOpenTime; //·¢·Åºì°üʱ¼äyyyy-MM-dd hh:mm BYTE ValidMinutes; //ºì°üÓÐЧʱ³¤£¨·Ö£© }; //½ÚÈÕºì°üʱ¼ä±í struct tagActFeastRedPacket { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà list RedPacketIDList; //ÿÈÕ¶ÔÓ¦ºì°üIDÁбí[[µÚÒ»Ììºì°üIDÁбí], ...] WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //½ÚÈյǼ½±ÀøÊ±¼ä±í struct tagActFeastLogin { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ }; //½ÚÈÕ×£¸£Ê±¼ä±í struct tagActFeastWish { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] }; //½ÚÈÕÓÎÀúʱ¼ä±í struct tagActFeastTravel { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] }; //µÈ¼¶¿ªÆô¹¦ÄÜ #tagFuncOpenLV struct tagFuncOpenLV { DWORD _FuncId; //¹¦Äܱêʶ DWORD LimitLV; //¿ªÆôµÈ¼¶ DWORD LimitMagicWeapon; //ÐèÒª½âËø·¨±¦ID WORD LimiRealmLV; //ÐèÒª¾³½çµÈ¼¶ BYTE LimitVIPLV; //ÐèÒªVIPµÈ¼¶ }; //ÎïÆ·±í struct tagChinItem { DWORD _ItemID; //ÎïÆ·ID BYTE ItemType; //ÎïÆ·ÀàÐÍ DWORD Effect1; //µÀ¾ßʹÓÃЧ¹û1 DWORD EffectValueA1; //Ч¹û1µÄaÖµ DWORD EffectValueB1; //Ч¹û1µÄbÖµ DWORD EffectValueC1; //Ч¹û1µÄcÖµ }; //NPC±í struct tagChinNPC { DWORD _NPCID; char NPCName; WORD LV; }; //Íæ¼ÒµÈ¼¶±í struct tagPlayerLV { WORD _LV; //Íæ¼ÒµÈ¼¶ DWORD ReFightPower; //Õ½¶·Á¦ }; //VIPÌØÈ¨±í struct tagVipPrivilege { DWORD _VIPPriID; //ÌØÈ¨ID DWORD VIP0; //VIP0¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP1; //VIP1¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP2; //VIP2¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP3; //VIP3¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP4; //VIP4¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP5; //VIP5¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP6; //VIP6¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP7; //VIP7¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP8; //VIP8¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP9; //VIP9¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP10; //VIP10¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP11; //VIP11¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP12; //VIP12¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP13; //VIP13¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP14; //VIP14¶ÔÓ¦µÄÌØÈ¨Öµ DWORD VIP15; //VIP15¶ÔÓ¦µÄÌØÈ¨Öµ }; //ÏÞÊ±ÌØ»Ý±í struct tagActSpringSale { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ list StartTimeList; //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î list EndTimeList; //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î WORD AdvanceMinutes; //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] WORD LVLimit; //ÏÞÖÆµÈ¼¶ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //ÏÞʱÀñ°ü±í struct tagActFlashGiftbag { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ list StartTimeList; //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î list EndTimeList; //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î WORD AdvanceMinutes; //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] WORD LimitWorldLV; //ÏÞÖÆ¿ªÆôµÄ×îµÍÊÀ½çµÈ¼¶ WORD LVLimit; //ÏÞÖÆµÈ¼¶ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //ÿÈÕÀñ°ü±í struct tagActDailyGiftbag { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ }; //Ë«±¶¾­Ñé»î¶¯±í struct tagActExpRate { DWORD _CfgID; //ÅäÖÃID list ServerGroupIDList; //·þÎñÆ÷×éIDÁбí list ServerGroupIDListExcept; //ÅųýµÄ·þÎñÆ÷×éIDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ list StartTimeList; //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î list EndTimeList; //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key, [¿ÉÑ¡²ÎÊý1, ...]] WORD LVLimit; //ÏÞÖÆµÈ¼¶ DWORD AddExpRate; //¾­Ñé±¶Âʼӳɣ¬Íò·ÖÂÊ }; //Ïû·Ñ·µÀû»î¶¯±í struct tagActCostRebate { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //ÂòÒ»ËͶà»î¶¯±í struct tagActBuyOne { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //ÏÉÃ˳äֵЭÖú»î¶¯±í struct tagActFamilyCTGAssist { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //¼¯×ֻʱ¼ä±í struct tagActCollectWords { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] }; //À¬»ø·ÖÀà»î¶¯Ê±¼ä±í struct tagActGarbageSorting { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà }; //BossÀúÁ·»î¶¯±í struct tagActBossTrial { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà list TemplateIDList; //°ñµ¥Ä£°å±àºÅÁбí list FamilyTemplateIDList; //ÏÉÃ˰ñµ¥Ä£°å±àºÅÁбí }; //BossÀúÁ·°ñµ¥Ä£°æ±í struct tagActBossTrialTemplate { DWORD _TemplateID; //Ä£°å±àºÅ BYTE Rank; //Ãû´Î list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] ÏÉÃ˰ñʱΪÃËÖ÷½±Àø£¬Èç¹ûûÓÐÅäÖã¬Ôòͳһȡ³ÉÔ±½±Àø list MemAwardItemList; //ÏÉÃ˰ñ³ÉÔ±½±ÀøÎïÆ·ÐÅÏ¢Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] DWORD NeedScore; //ÉϰñËùÐè»ý·Ö dict ScoreAwardEx; //´ï±ê»ý·Ö¶îÍâ½±Àø {»ý·Ö:[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...], ...} WORD XiangongID; //½úÉýÏɹ¬ID }; //BossÀúÁ·¿ç·þ»î¶¯±í struct tagCrossActBossTrial { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[Ñ­»··ÖÖÓ, ¹ã²¥key, [¹ã²¥²ÎÊýÁбí¿ÉÑ¡]] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ WORD FamilyTemplateID; //ÏÉÃËÅÅÐÐÄ£°å±àºÅ }; //Æï³èÑø³É»î¶¯Ê±¼ä±í struct tagActHorsePetTrain { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ }; //Æï³èÑø³É»î¶¯¿ç·þ±í struct tagCrossActHorsePetTrain { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ }; //Æï³èÑø³É°ñµ¥Ä£°æ±í struct tagActHorsePetTrainBillTemp { DWORD _TemplateID; //Ä£°å±àºÅ BYTE Rank; //Ãû´Î list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] DWORD NeedScore; //ÉϰñËùÐè»ý·Ö dict ScoreAwardEx; //´ï±ê»ý·Ö¶îÍâ½±Àø {»ý·Ö:[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...], ...} WORD XiangongID; //½úÉýÏɹ¬ID }; //¹Å±¦Ñø³É»î¶¯Ê±¼ä±í struct tagActGubao { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ }; //¹Å±¦Ñø³É»î¶¯¿ç·þ±í struct tagCrossActGubao { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ }; //¹Å±¦Ñø³É°ñµ¥Ä£°æ±í struct tagActGubaoBillTemp { DWORD _TemplateID; //Ä£°å±àºÅ BYTE Rank; //Ãû´Î list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] DWORD NeedScore; //ÉϰñËùÐè»ý·Ö dict ScoreAwardEx; //´ï±ê»ý·Ö¶îÍâ½±Àø {»ý·Ö:[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...], ...} WORD XiangongID; //½úÉýÏɹ¬ID }; //Á¶Æ÷»î¶¯¿ç·þ±í struct tagCrossActLianqi { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã WORD LVLimit; //ÏÞÖÆµÈ¼¶ WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ }; //Á¶Æ÷°ñµ¥Ä£°æ±í struct tagActLianqiBillTemp { DWORD _TemplateID; //Ä£°å±àºÅ BYTE Rank; //Ãû´Î list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] DWORD NeedScore; //ÉϰñËùÐè»ý·Ö dict ScoreAwardEx; //´ï±ê»ý·Ö¶îÍâ½±Àø {»ý·Ö:[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...], ...} }; //»î¶¯Ê±¼äÁ÷³Ì±í struct tagActTimeFlow { DWORD _FlowID; BYTE StartDay; //¿ªÊ¼Ìì BYTE StartHour; //¿ªÊ¼Ê± BYTE StartMinute; //¿ªÊ¼·Ö BYTE EndDay; //½áÊøÌì BYTE EndHour; //½áÊøÊ± BYTE EndMinute; //½áÊø·Ö WORD StateValue; //״ֵ̬ }; //»î¶¯°ñµ¥½±ÀøÄ£°æ±í struct tagActBillboardAwardTemp { DWORD _TemplateID; //Ä£°å±àºÅ BYTE Rank; //Ãû´Î DWORD NeedValue; //ÉϰñËùÐèÖµ dict ValueAwardEx; //´ï±êÖµ¶îÍâ½±Àø {Öµ:[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...], ...} list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] list LeaderAwardItemList; //ÏÉÃ˰ñÃËÖ÷½±ÀøÎïÆ·ÐÅÏ¢Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] list EliteAwardItemList; //ÏÉÃ˰ñ¾«Ó¢½±ÀøÎïÆ·ÐÅÏ¢Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] }; //»î¶¯¾º²Â±í struct tagActGuess { DWORD _TemplateID; //Ä£°å±àºÅ DWORD AwardID; //½±ÀøID list RightRankList; //²Â¶ÔÃû´ÎÁбí list AwardItemList; //¶ÔÓ¦½±ÀøÁбí [[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] }; //ÏÉÃ˹¥³ÇÕ½»î¶¯±í struct tagCrossActFamilyGCZ { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄ·þÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE JoinFamilyCnt; //²ÎÓëÏÉÃËÊý WORD ActFlowID; //»î¶¯Á÷³ÌID£¬¶ÔÓ¦H.»î¶¯Ê±¼äÁ÷³Ì±í WORD GuessTemplateID; //¾º²Â½±ÀøÄ£°æ£¬¶ÔÓ¦H.»î¶¯¾º²Â±í WORD PersonalTemplateID; //¸öÈËÉ˺¦ÅÅÐн±ÀøÄ£°æ£¬¶ÔÓ¦H.»î¶¯°ñµ¥½±ÀøÄ£°æ±í WORD FamilyTemplateID; //ÏÉÃË»ý·ÖÅÅÐн±ÀøÄ£°æ£¬¶ÔÓ¦H.»î¶¯°ñµ¥½±ÀøÄ£°æ±í }; //ÏÉÃ˹¥³ÇÕ½´ó±¾ÓªµÈ¼¶±í struct tagCrossActFamilyGCZCampLV { DWORD _CampLV; //´ó±¾ÓªµÈ¼¶ DWORD LVUPNeedExp; //ÉýÏÂÒ»¼¶ËùÐè¾­Ñé DWORD AddHPPer; //ÉúÃüÀÛ¼Æ×Ü¼Ó³É°Ù·Ö±È }; //ÏÉÏ»ÃØ¾³»î¶¯Ê±¼ä±í struct tagActXianXiaMJ { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ }; //ÏÉÏ»ÃØ¾³»î¶¯¿ç·þ±í struct tagCrossActXianXiaMJ { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ char JoinStartTime; //²ÎÓ뿪ʼʱ¼äµã char JoinEndTime; //²ÎÓë½áÊøÊ±¼äµã BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà WORD PersonalTemplateID; //¸öÈËÅÅÐÐÄ£°å±àºÅ }; //ÏÉÏ»ÃØ¾³°ñµ¥Ä£°æ±í struct tagActXianXiaMJBillTemp { DWORD _TemplateID; //Ä£°å±àºÅ BYTE Rank; //Ãû´Î list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] DWORD NeedScore; //ÉϰñËùÐè»ý·Ö dict ScoreAwardEx; //´ï±ê»ý·Ö¶îÍâ½±Àø {»ý·Ö:[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...], ...} WORD XiangongID; //½úÉýÏɹ¬ID }; //ÌìµÛÀñ°ü»î¶¯Ê±¼ä±í struct tagActGodGift { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //Æï³èÊ¢Ñç»î¶¯ struct tagActHorsePetFeast { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ list StartTimeList; //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î list EndTimeList; //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //BOSS¸´»î»î¶¯Ê±¼ä±í struct tagActBossReborn { DWORD _CfgID; //ÅäÖÃID list ServerGroupIDList; //·þÎñÆ÷×éIDÁбí list ServerGroupIDListExcept; //ÅųýµÄ·þÎñÆ÷×éIDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä WORD LVLimit; //ÏÞÖÆµÈ¼¶ BYTE TemplateID; //Ä£°å±àºÅ }; //ÏɽçÊ¢µä»î¶¯Ê±¼ä±í struct tagActFairyCeremony { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖã»2-5µã¿ªÊ¼0µã½áÊø dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //ÏɽçÊ¢µä-¾ø°æ½µÁÙ±í struct tagUniquenessArrive { BYTE _WorldLvNum; //ÊÀ½çµÈ¼¶µµ DWORD _Rank; //ÅÅÃû dict Award; //½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨],...], ...} }; //¶à±¶ÐÞÐеã»î¶¯Ê±¼ä±í struct tagActRealmPoint { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä WORD Multiple; //±¶Êý WORD LVLimit; //ÏÞÖÆµÈ¼¶ DWORD PointLimit; //ÏÞÖÆ¶îÍâÐÞÐеã }; //ÏÞʱÇÀ¹º±í struct tagActFlashSale { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ list StartTimeList; //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î list EndTimeList; //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î WORD AdvanceMinutes; //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] WORD LVLimit; //ÏÞÖÆµÈ¼¶ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà dict ShopTypeList; //É̵êÀàÐÍÁбí }; //É̳DZí struct tagStore { DWORD _ID; //ID DWORD ShopType; //É̵êÀàÐÍ BYTE RefreshType; //Ë¢ÐÂÀàÐÍ 0-²»ÖØÖÃ,1-onWeek0µã,2-onWeek5µã,3-OnDay0µã,4-OnDay5µã DWORD ServerLimitCnt; //È«·þÏÞÖÆÊýÁ¿ }; //ÐíÔ¸³Ø»î¶¯Ê±¼ä±í struct tagActWishingWell { DWORD _CfgID; //ÅäÖÃID list ServerGroupIDList; //·þÎñÆ÷×éIDÁбí list ServerGroupIDListExcept; //ÅųýµÄ·þÎñÆ÷×éIDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //³äÖµ·µÀû»î¶¯±í struct tagActRechargePrize { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //ÀۼƳäÖµ·µÀûÏÉÓñ»î¶¯±í struct tagActRechargeRebateGold { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //³É³¤±ØÂò»î¶¯±í struct tagActGrowupBuy { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] }; //µ¥±ÊÀÛ³ä»î¶¯±í struct tagActSingleRecharge { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //תÅ̻±í struct tagActTurntable { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //¶àÈÕÁ¬³ä»î¶¯±í struct tagActManyDayRecharge { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] }; //ÀۼƳäÖµ»î¶¯±í struct tagActTotalRecharge { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà }; //¿ç·þ·ÖÇø±íͨÓà struct tagCrossZoneComm { char _CrossZoneName; //¿ç·þ·ÖÇøÃû BYTE _ZoneID; //ÈüÇøID list ServerGroupIDList; //ÈüÇø·þÎñÆ÷×éIDÁбí }; //¿ç·þ·ÖÇø±í¹ÅÉñÕ½³¡ struct tagCrossZoneBattlefield { char _CrossZoneName; //¿ç·þ·ÖÇøÃû BYTE _ZoneID; //ÈüÇøID list ServerGroupIDList; //ÈüÇø·þÎñÆ÷×éIDÁбí }; //¿ç·þ·ÖÇø±í¾º¼¼³¡ struct tagCrossZonePK { char _CrossZoneName; //¿ç·þ·ÖÇøÃû BYTE _ZoneID; //ÈüÇøID char ZoneName; //ÈüÇøÃû×Ö list ServerGroupIDList; //ÈüÇø·þÎñÆ÷×éIDÁбí }; //¿ç·þÅÅλÈüÁ÷³Ì±í struct tagChampionshipTime { DWORD _ID; BYTE StartDay; //¿ªÊ¼Ìì BYTE StartHour; //¿ªÊ¼Ê± BYTE StartMinute; //¿ªÊ¼·Ö BYTE EndDay; //½áÊøÌì BYTE EndHour; //½áÊøÊ± BYTE EndMinute; //½áÊø·Ö WORD StateValue; //״ֵ̬ dict NotifyInfo; //¹ã²¥ÌáʾÐÅÏ¢ }; //¿ç·þÅÅλ½±Àø±í struct tagChampionshipRank { BYTE _Rank; // Ãû´Î list RankAwardItemList; //Ãû´Î½±ÀøÎïÆ·Áбí WORD MainOfficialID; //Ö÷¹ÙÖ°ID WORD XiangongID; //½úÉýÏɹ¬ID }; //¿ç·þÅÅλ¹ÙÖ°±í struct tagChampionshipOfficial { WORD _OfficialID; // ¹ÙÖ°ID list JuniorOfficialIDList; //ϼ¶¹ÙÖ°IDÁбí list DailyAwardItemList; //¹ÙְÿÈÕÓʼþ½±ÀøÎïÆ·Áбí BYTE CanBeReplace; //ÊÇ·ñ¿É±»ÌôÕ½Ìæ»» }; //¿ç·þ¾º¼¼³¡Èü¼¾±í struct tagCrossRealmPKSeason { char _CrossZoneName; //¿ç·þ·ÖÇøÃû BYTE _ZoneID; //ÈüÇøID WORD SeasonID; //Èü¼¾ID char StartDate; //¿ªÊ¼ÈÕÆÚ yyyy-MM-dd char EndDate; //½áÊøÈÕÆÚ yyyy-MM-dd char EndTime; //½áËãʱ¼ä hh:mm }; //¿ç·þ¾º¼¼³¡¶Îλ±í struct tagCrossRealmPKDan { BYTE _DanLV; //¶ÎλµÈ¼¶ WORD LVUpScore; //Éý¶ÎλËùÐè»ý·Ö BYTE MatchRobotRate; //Æ¥Åä»úÆ÷ÈË»ù´¡¸ÅÂÊ£¬°Ù·ÖÂÊ BYTE MatchRobotRateEx; //Æ¥Åä»úÆ÷ÈËʧ°Ü´ÎÊý¸½¼Ó¸ÅÂÊ£¬°Ù·ÖÂÊ }; //¿ç·þBossÅîÀ³Ïɾ³·ÖÇøµØÍ¼±í struct tagCrossPenglaiZoneMap { BYTE ZoneID; //·ÖÇøID DWORD _MapID; //³¡¾°µØÍ¼ID DWORD _DataMapID; //Êý¾ÝµØÍ¼ID BYTE _CopyMapID; //ÐéÄâÏß·ID }; //¿ç·þBossħ»¯Ö®µØ·ÖÇøµØÍ¼±í struct tagCrossDemonLandZoneMap { BYTE ZoneID; //·ÖÇøID DWORD _MapID; //³¡¾°µØÍ¼ID DWORD _DataMapID; //Êý¾ÝµØÍ¼ID BYTE _CopyMapID; //ÐéÄâÏß·ID }; //¿ç·þ·ÖÇøµØÍ¼Öð¹Íò½ç struct tagCrossFamilyFlagwarZoneMap { BYTE ZoneID; //·ÖÇøID DWORD _MapID; //³¡¾°µØÍ¼ID DWORD _DataMapID; //Êý¾ÝµØÍ¼ID BYTE _CopyMapID; //ÐéÄâÏß·ID }; //ÖÜ¿ñ»¶»î¶¯Ê±¼ä±í struct tagActWeekParty { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ WORD AdvanceMinutes; //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //ÔËÊÆ»î¶¯Ê±¼ä±í struct tagActYunshi { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà }; //Âֻصî»î¶¯Ê±¼ä±í struct tagActLunhuidian { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà }; //¹ºÂò´ÎÊýÀñ°ü»î¶¯Ê±¼ä±í struct tagActBuyCountGift { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà }; //ÈÎÎñ»î¶¯Ê±¼ä±í struct tagActTask { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà }; //µÇ¼»î¶¯½±ÀøÊ±¼ä±íРstruct tagActLoginNew { DWORD _CfgID; //ÅäÖÃID list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí BYTE ActNum; //»î¶¯·Ö×é±àºÅ, »î¶¯ÀàÐÍ * 10 + ²»Í¬½çÃæ±àºÅ char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ }; //µÇ¼½±ÀøÊ±¼ä±í struct tagActLoginAward { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ WORD AdvanceMinutes; //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //½ÚÈÕѲÀñ»î¶¯Ê±¼ä±í struct tagActFeastWeekParty { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ WORD AdvanceMinutes; //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯ BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //ÐÂÏɽçÊ¢µä»î¶¯Ê±¼ä±í struct tagActNewFairyCeremony { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖã»2-5µã¿ªÊ¼0µã½áÊø dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //ÐÂÏɽçÊ¢µä-¾ø°æ½µÁÙ±í struct tagNewUniquenessArrive { BYTE _WorldLvNum; //ÊÀ½çµÈ¼¶µµ DWORD _Rank; //ÅÅÃû dict Award; //½±Àø {"Ö°Òµ":[[ÎïÆ·ID,¸öÊý,ÊÇ·ñ°ó¶¨],...], ...} }; //ÇéÔµÀñÎï±í struct tagLoveGift { BYTE _GiftNum; //ƸÀñID float AddCharmSelf; //µ¥¸öÔö¼Ó×ÔÉí÷ÈÁ¦ float AddCharmTag; //µ¥¸öÔö¼Ó¶Ô·½÷ÈÁ¦ DWORD AddIntimacy; //µ¥¸öÔö¼ÓË«·½Ç×ÃÜ¶È char WorldNotifyKey; //¹ã²¥key }; //ÇéÔµÌáÇ×±í struct tagMarry { BYTE _BridePriceID; //ƸÀñID BYTE CanBuyCount; //¿É¹ºÂò´ÎÊý BYTE IsDayReset; //ÊÇ·ñÿÈÕÖØÖà DWORD Prosperity; //³õʼ·±ÈÙ¶È WORD CandyTimes; //ϲÌdzÖÐøÊ±¼äÃë list CandyItemWeightInfo; //ϲÌÇÎïÆ·¿âÈ¨ÖØÁбí[[È¨ÖØ, ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] list CandyNotifyItemInfo; //ϲÌÇÐèÒª¹ã²¥µÄÎïÆ·IDÁбí list BrideGiftItemInfo; //ƸÀñÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] char WorldNotifyKey; //¹ã²¥key }; //ÐÒÔ˼ø±¦»î¶¯Ê±¼ä±í struct tagActLuckyTreasure { DWORD _CfgID; //ÅäÖÃID char ActMark; //»î¶¯×é±ê¼Ç list PlatformList; //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ list ServerGroupIDList; //·þÎñÆ÷IDÁбí char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ BYTE ResetType; //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key] WORD LVLimit; //ÏÞÖÆµÈ¼¶ }; //¿ç·þÐÒÔËÔÆ¹º±í struct tagCrossActLuckyCloudBuy { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ list StartTimeList; //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î list EndTimeList; //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î list RoundMaxList; //¿ªÆôÂÖ´ÎÁбí WORD LVLimit; //ÏÞÖÆµÈ¼¶ list TemplateIDList; //Ä£°åIDÁбí }; //¿ç·þÐÒÔËÔÆ¹ºÄ£°å±í struct tagCrossActLuckyCloudBuyTemplate { DWORD _TemplateID; //Ä£°åID list BaseAwardInfo; //ÿ´Î¹ºÂò¹Ì¶¨½±Àø [[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] list RandAwardWeightInfo; //ÿ´Î¹ºÂòËæ»ú½±ÀøÈ¨ÖØÐÅÏ¢ [[È¨ÖØ,ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] list SuperItemWeightInfo; //´ó½±Ëæ»úÈ¨ÖØÐÅÏ¢ [[È¨ÖØ,ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·,¼ÛÖµ»õ±ÒÀàÐÍ,»õ±ÒÖµ], ...] }; //¿ç·þÈ«Ãñ³äֵʱ¼ä±í struct tagCrossActAllRecharge { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[Ñ­»··ÖÖÓ, ¹ã²¥key, [¹ã²¥²ÎÊýÁбí¿ÉÑ¡]] list TemplateIDList; //Ä£°åIDÁбí }; //¿ç·þÈ«Ãñ³äֵģ°å±í struct tagCrossActAllRechargeTemplate { DWORD _TemplateID; //Ä£°åID DWORD CTGNeed; //È«Ãñ³äÖµRMB WORD NeedPlayerCount; //ËùÐè³äÖµ´ïµ½¸ÃµµÍæ¼ÒÊý BYTE AwardIndex; //½±Àø¼Ç¼Ë÷Òý£¬´Ó0¿ªÊ¼£¬Í¬¸öÄ£°å²»¿ÉÖØ¸´£¬²»¿É±ä¸ü list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] }; //¿ç·þ³äÖµÅÅÐлʱ¼ä±í struct tagCrossActCTGBillboard { DWORD _CfgID; //ÅäÖÃID char ActGroupName; //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£© BYTE ZoneID; //×éÄÚ·Ö×é±àºÅ list ServerIDRangeList; //»î¶¯µÄÕ˺ŷþÎñÆ÷ID·¶Î§Áбí [[serverIDA, serverIDB], ...] char StartDate; //¿ªÆôÈÕÆÚ char EndDate; //½áÊøÈÕÆÚ dict NotifyInfoStart; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä dict NotifyInfoEnd; //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä list NotifyInfoLoop; //È«·þÌáʾÐÅÏ¢ - Ñ­»·¹ã²¥[Ñ­»··ÖÖÓ, ¹ã²¥key, [¹ã²¥²ÎÊýÁбí¿ÉÑ¡]] BYTE IsDayReset; //ÊÇ·ñÿÌìÖØÖà list TemplateIDList; //Ä£°åIDÁбí }; //¿ç·þ³äÖµÅÅÐÐÄ£°åÃû´Î½±Àø±í struct tagCrossActCTGBillboardOrder { DWORD _TemplateID; //Ä£°åID WORD OrderA; //Ãû´ÎA WORD OrderB; //ÖÁÃû´ÎB float CTGAtleast; //ÖÁÉÙ³äÖµRMB list AwardItemList; //½±ÀøÎïÆ·Áбí[[ÎïÆ·ID,¸öÊý,ÊÇ·ñÅÄÆ·], ...] }; //×°±¸ÉýÐDZí struct tagEquipStarUp { BYTE _ClassLV; //½×¼¶ BYTE _EquipPlace; //×°±¸Î» BYTE _Star; //ÐÇÊý list CostEquipPlace; //¿ÉÓÃ×°±¸²¿Î» BYTE IsJobLimit; //ÊÇ·ñÖ»Óñ¾Ö°Òµ×°±¸²ÄÁÏ list CostEquipColor; //¿ÉÓÃ×°±¸Æ·ÖÊ BYTE UnSuitRate; //µ¥¼þ·ÇÌ××°¼Ó³É¸ÅÂÊ }; //¸£µØÎïÆ·±í struct tagMineAreaItem { BYTE _MineID; //¿óÎïID WORD LimitLV; //½âËøµÈ¼¶ DWORD ItemID; //ÎïÆ·ID BYTE ItemLV; //ÎïÆ·µÈ¼¶ DWORD ItemCount; //ÎïÆ·¸öÊý float ItemWeight; //ÎïÆ·×ÜÖØÁ¿ DWORD RefreshWeightSys; //ϵͳˢÐÂÈ¨ÖØ DWORD RefreshWeight; //³£¹æË¢ÐÂÈ¨ÖØ DWORD RefreshWeightSuper; //³¬¼¶Ë¢ÐÂÈ¨ÖØ }; //ÏÉÃËÁªÈüÅÅÃû½±Àø±í struct tagFamilyWarRankAward { WORD _WarWorldLV; //ÁªÈüÊÀ½çµÈ¼¶ BYTE WarRank; //ÁªÈüÅÅÃû list RankAuctionItem; //ÅÄÆ·½±Àø[[ÅÄÆ·ID,¸öÊý], ...] }; //ЭÖú¸ÐлÀñºÐ±í struct tagAssistThanksGift { DWORD _GiftID; //ÀñºÐÎïÆ·ID BYTE AssistAwardCount; // ЭÖú½±ÀøÃ¿ÈÕ´ÎÊý }; //Ĥ°Ý±í struct tagWorship { BYTE _WorshipType; //Ĥ°ÝÀàÐÍ DWORD _WorshipValue; //Ĥ°ÝÖµ BYTE WorshipDays; //Ĥ°ÝÌìÊý BYTE MoneyType; //Ĥ°Ý»õ±ÒÀàÐÍ list MoneyRange; //»õ±ÒÖµ·¶Î§ }; //Ïɹ¬±í struct tagXiangong { WORD _XiangongID; //Ïɹ¬ID BYTE ShowDays; //չʾÌìÊý BYTE MoneyType; //µãÔÞ»õ±ÒÀàÐÍ DWORD MoneyValue; //»õ±ÒÖµ DWORD TitleID; //³ÆºÅID list AwardItemList; //½ú¼¶Ïɹ¬½±ÀøÎïÆ·Áбí char MailKey; //ÏɹÙ֪ͨÓʼþ BYTE WorshipType; //Ĥ°ÝÀàÐÍ DWORD WorshipValue; //Ĥ°ÝÖµ }; //çÎç¿ÏÉÓò±í struct tagFairyDomain { WORD _ID; //ʼþ±àºÅ DWORD HourCntPubLimit; //È«·þÿСʱ´ÎÊýÏÞÖÆ DWORD DayCntPubLimit; //È«·þÿÌì´ÎÊýÏÞÖÆ };