| //¹¦ÄÜÅäÖñí¸ñ #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ÁÐ±í  | 
| };  | 
|   | 
| //ÊÀ½çµÈ¼¶±í¸ñ #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¸±±¾´ÎÊý  | 
| };  | 
|   | 
| //¼¯Êвéѯ±í  | 
|   | 
| 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 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 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 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;    //ÐèÒª¾³½çµÈ¼¶  | 
| };  | 
|   | 
| //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  | 
|     char        ActMark;    //»î¶¯×é±ê¼Ç  | 
|     list        PlatformList;    //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ  | 
|     list        ServerGroupIDList;    //·þÎñÆ÷IDÁÐ±í  | 
|     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        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  | 
|     char        ActMark;    //»î¶¯×é±ê¼Ç  | 
|     list        PlatformList;    //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ  | 
|     list        ServerGroupIDList;    //·þÎñÆ÷IDÁÐ±í  | 
|     char        StartDate;    //¿ªÆôÈÕÆÚ  | 
|     char        EndDate;    //½áÊøÈÕÆÚ  | 
|     dict        NotifyInfoStart;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä  | 
|     dict        NotifyInfoEnd;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä  | 
|     list        NotifyInfoLoop;    //È«·þÌáʾÐÅÏ¢ - Ñ»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key]  | 
|     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]  | 
| };  | 
|   | 
| //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  | 
|     char        ActMark;    //»î¶¯×é±ê¼Ç  | 
|     list        PlatformList;    //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ  | 
|     list        ServerGroupIDList;    //·þÎñÆ÷IDÁÐ±í  | 
|     char        StartDate;    //¿ªÆôÈÕÆÚ  | 
|     char        EndDate;    //½áÊøÈÕÆÚ  | 
|     list        StartTimeList;    //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î  | 
|     list        EndTimeList;    //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î  | 
|     WORD        AdvanceMinutes;    //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯  | 
|     dict        NotifyInfoStart;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä  | 
|     dict        NotifyInfoEnd;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä  | 
|     list        NotifyInfoLoop;    //È«·þÌáʾÐÅÏ¢ - Ñ»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key]  | 
|     WORD        LVLimit;    //ÏÞÖÆµÈ¼¶  | 
|     BYTE        IsDayReset;    //ÊÇ·ñÿÌìÖØÖà  | 
|     list        ShopTypeList;    //É̵êÀàÐÍÁÐ±í  | 
| };  | 
|   | 
|   | 
| //ÉÌ³Ç±í  | 
|   | 
| 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 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 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 tagCrossZonePK  | 
| {  | 
|     char        _CrossZoneName;    //¿ç·þ·ÖÇøÃû  | 
|     BYTE        _ZoneID;    //ÈüÇøID  | 
|     char        ZoneName;    //ÈüÇøÃû×Ö  | 
|     list        ServerGroupIDList;    //ÈüÇø·þÎñÆ÷×éIDÁÐ±í  | 
| };  | 
|   | 
| //¿ç·þ¾º¼¼³¡Èü¼¾±í  | 
|   | 
| struct tagCrossRealmPKSeason  | 
| {  | 
|     char        _CrossZoneName;    //¿ç·þ·ÖÇøÃû  | 
|     BYTE        _ZoneID;    //ÈüÇøID  | 
|     BYTE        SeasonID;    //Èü¼¾ID  | 
|     char        StartDate;    //¿ªÊ¼ÈÕÆÚ    yyyy-MM-dd  | 
|     char        EndDate;    //½áÊøÈÕÆÚ    yyyy-MM-dd  | 
|     char        EndTime;    //½áËãʱ¼ä    hh:mm  | 
| };  | 
|   | 
| //¿ç·þ¾º¼¼³¡¶Îλ±í  | 
|   | 
| struct tagCrossRealmPKDan  | 
| {  | 
|     BYTE        _DanLV;    //¶ÎλµÈ¼¶  | 
|     WORD        LVUpScore;    //Éý¶ÎλËùÐè»ý·Ö  | 
|     list        MatchRange;    //¿ÉÆ¥Åäµ½µÄÍæ¼Ò¶ÎÎ»Çø¼ä [´Ó¶ÎλA, µ½¶ÎλB]£¬Åä[]´ú±íֻƥÅä±¾¶ÎλµÄ  | 
|     BYTE        MatchRobotRate;    //Æ¥Åä»úÆ÷ÈË»ù´¡¸ÅÂÊ£¬°Ù·ÖÂÊ  | 
|     BYTE        MatchRobotRateEx;    //Æ¥Åä»úÆ÷ÈËʧ°Ü´ÎÊý¸½¼Ó¸ÅÂÊ£¬°Ù·ÖÂÊ  | 
| };  | 
|   | 
| //¿ç·þBossÅîÀ³Ïɾ³·ÖÇøµØÍ¼±í  | 
|   | 
| struct tagCrossPenglaiZoneMap  | 
| {  | 
|     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 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 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 tagCrossActCTGBillboard  | 
| {  | 
|     DWORD        _CfgID;    //ÅäÖÃID  | 
|     char        ActGroupName;    //»î¶¯×éÃû£¨Í¬×é»î¶¯µÄÃû×ÖÐèÏàͬ£©  | 
|     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,¸öÊý,ÊÇ·ñÅÄÆ·], ...]  | 
| };  | 
|   | 
| //×°±¸ÉýÐÇ±í  | 
|   | 
| struct tagEquipStarUp  | 
| {  | 
|     BYTE        _ClassLV;    //½×¼¶  | 
|     BYTE        _EquipPlace;    //×°±¸Î»  | 
|     BYTE        _Star;    //ÐÇÊý  | 
|     list        CostEquipPlace;    //¿ÉÓÃ×°±¸²¿Î»  | 
|     BYTE        IsJobLimit;    //ÊÇ·ñÖ»Óñ¾Ö°Òµ×°±¸²ÄÁÏ  | 
|     list        CostEquipColor;    //¿ÉÓÃ×°±¸Æ·ÖÊ  | 
|     BYTE        UnSuitRate;    //µ¥¼þ·ÇÌ××°¼Ó³É¸ÅÂÊ  | 
| };  | 
|   | 
| //ÏÉÃËÁªÈüÅÅÃû½±Àø±í  | 
|   | 
| struct tagFamilyWarRankAward  | 
| {  | 
|     WORD        _WarWorldLV;    //ÁªÈüÊÀ½çµÈ¼¶  | 
|     BYTE        WarRank;    //ÁªÈüÅÅÃû  | 
|     list        RankAuctionItem;    //ÅÄÆ·½±Àø[[ÅÄÆ·ID,¸öÊý], ...]  | 
| };  | 
|   | 
| //ÐÖú¸ÐлÀñºÐ±í  | 
|   | 
| struct tagAssistThanksGift  | 
| {  | 
|     DWORD        _GiftID;    //ÀñºÐÎïÆ·ID  | 
|     BYTE        AssistAwardCount;    // ÐÖú½±ÀøÃ¿ÈÕ´ÎÊý  | 
| };  | 
|   | 
| //çÎç¿ÏÉÓò±í  | 
|   | 
| struct tagFairyDomain  | 
| {  | 
|     WORD        _ID;    //ʼþ±àºÅ  | 
|     DWORD        HourCntPubLimit;    //È«·þÿСʱ´ÎÊýÏÞÖÆ  | 
|     DWORD        DayCntPubLimit;    //È«·þÿÌì´ÎÊýÏÞÖÆ  | 
| }; |