//¹¦ÄÜÅäÖñí¸ñ #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        ServerIDList;    //·þÎñÆ÷IDÁÐ±í  
 | 
    char        StartDate;    //¿ªÆôÈÕÆÚ  
 | 
    char        EndDate;    //½áÊøÈÕÆÚ  
 | 
    BYTE        IsDayReset;    //ÊÇ·ñÿÌìÖØÖà  
 | 
    BYTE        ResetType;    //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà  
 | 
    list        RedPacketIDList;    //ÿÈÕ¶ÔÓ¦ºì°üIDÁбí[[µÚÒ»Ììºì°üIDÁбí], ...]  
 | 
    WORD        LVLimit;    //ÏÞÖÆµÈ¼¶  
 | 
};  
 | 
  
 | 
//µÈ¼¶¿ªÆô¹¦ÄÜ #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        ServerIDList;    //·þÎñÆ÷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  
 | 
    char        ActMark;    //»î¶¯×é±ê¼Ç  
 | 
    list        PlatformList;    //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ  
 | 
    list        ServerIDList;    //·þÎñÆ÷IDÁÐ±í  
 | 
    char        StartDate;    //¿ªÆôÈÕÆÚ  
 | 
    char        EndDate;    //½áÊøÈÕÆÚ  
 | 
    list        StartTimeList;    //¿ªÆôʱ¼äÁбí, Ö§³Ö¶à¸öʱ¶Î  
 | 
    list        EndTimeList;    //½áÊøÊ±¼äÁбí, Ö§³Ö¶à¸öʱ¶Î  
 | 
    WORD        AdvanceMinutes;    //ǰ¶ËÌáǰX·ÖÖÓչʾ»î¶¯  
 | 
    dict        NotifyInfoStart;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä  
 | 
    dict        NotifyInfoEnd;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä  
 | 
    list        NotifyInfoLoop;    //È«·þÌáʾÐÅÏ¢ - Ñ»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key]  
 | 
    WORD        LVLimit;    //ÏÞÖÆµÈ¼¶  
 | 
    BYTE        IsDayReset;    //ÊÇ·ñÿÌìÖØÖà  
 | 
};  
 | 
  
 | 
//Ë«±¶¾Ñé»î¶¯±í  
 | 
  
 | 
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        ServerIDList;    //·þÎñÆ÷IDÁÐ±í  
 | 
    char        StartDate;    //¿ªÆôÈÕÆÚ  
 | 
    char        EndDate;    //½áÊøÈÕÆÚ  
 | 
    dict        NotifyInfoStart;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä  
 | 
    dict        NotifyInfoEnd;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä  
 | 
    list        NotifyInfoLoop;    //È«·þÌáʾÐÅÏ¢ - Ñ»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key]  
 | 
    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        ServerIDList;    //·þÎñÆ÷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        ServerIDList;    //·þÎñÆ÷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        ServerIDList;    //·þÎñÆ÷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 tagActTotalRecharge  
 | 
{  
 | 
    DWORD        _CfgID;    //ÅäÖÃID  
 | 
    char        ActMark;    //»î¶¯×é±ê¼Ç  
 | 
    list        PlatformList;    //»î¶¯Æ½Ì¨Áбí["ƽ̨A", "ƽ̨A", ...],Åä[]´ú±íËùÓÐ  
 | 
    list        ServerIDList;    //·þÎñÆ÷IDÁÐ±í  
 | 
    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        ServerIDList;    //·þÎñÆ÷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        ServerIDList;    //·þÎñÆ÷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        ServerIDList;    //·þÎñÆ÷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        ServerIDList;    //·þÎñÆ÷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        ServerIDList;    //·þÎñÆ÷IDÁÐ±í  
 | 
    char        StartDate;    //¿ªÆôÈÕÆÚ  
 | 
    char        EndDate;    //½áÊøÈÕÆÚ  
 | 
    BYTE        ResetType;    //ÖØÖÃÀàÐÍ£¬0-0µãÖØÖã»1-5µãÖØÖà  
 | 
    dict        NotifyInfoStart;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô¿ªÊ¼Ê±¼ä  
 | 
    dict        NotifyInfoEnd;    //È«·þÌáʾÐÅÏ¢ - Ïà¶Ô½áÊøÊ±¼ä  
 | 
    list        NotifyInfoLoop;    //È«·þÌáʾÐÅÏ¢ - Ñ»·¹ã²¥[¼ä¸ô·ÖÖÓ, ¹ã²¥key]  
 | 
    WORD        LVLimit;    //ÏÞÖÆµÈ¼¶  
 | 
};  
 | 
  
 | 
//×°±¸ÉýÐÇ±í  
 | 
  
 | 
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;    //È«·þÿÌì´ÎÊýÏÞÖÆ  
 | 
}; 
 |