ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ShareDefine.py
@@ -15,6 +15,8 @@
#"""Version = 2013-10-30 15:20"""
#---------------------------------------------------------------------
import IPY_GameWorld
# 游戏默认编码
Def_Game_Character_Encoding = 'gbk'
@@ -31,6 +33,7 @@
Def_MixServerDay = 'MixServerDay' #服务器已经合服多少天
Def_IsMixServerInitOK = 'IsMixServerInitOK' #服务器合服首次启动OK
Def_LastMixServerDay = 'LastMixServerDay' #上次合服时的开服天数
Def_CrossCenterEvent = 'CrossCenterEvent' # 跨服中心事件值
#首次开服时间,注意不要用该日期做开服天相关的功能逻辑,如果要用开服天,请用 Def_ServerDay
''' 原因: 
因为目前开服天的逻辑大部分是用 Def_ServerDay,当出现服务器宕机超过24小时时,就会导致 Def_ServerDay 与 Def_InitOpenServerTime 不对应
@@ -40,9 +43,9 @@
Def_InitOpenServerTime = 'InitOpenServerTime'
Def_SetOpenServerTime = 'SetOpenServerTime' # GM工具预定的开服时间
Def_FamilyCrossState = 'FamilyCrossState' # 本服公会跨服状态, 0-未跨服;1-已跨服
Def_FamilyTransDataTime = 'FamilyTransDataTime' # 本服公会首次跨服互通数据开始传输时间戳,不为0代表传输数据中
Def_OSAAwardState = 'OSAAwardState' #开服冲榜活动结算状态
# ------------------------- WorldKey -------------------------
#---奇迹, 职业枚举定义---
(
@@ -419,7 +422,9 @@
    Def_mitGatherSoulCompound,# 聚魂合成
    Def_mitGatherSoulDecompose,# 聚魂分解
    Def_mitMainDropItemOP,# 主线装备操作 25
) = range(1, 1 + 25)
    Def_mitMGTuiyan,          # 命格推演 26
    Def_mitMinggeEquip,       # 命格装备 27
) = range(1, 1 + 27)
#---写死的技能ID---
@@ -815,6 +820,7 @@
GameFuncID_OSA_MainLevel = 45   # 开服关卡榜
GameFuncID_OSA_HeroCall = 46    # 开服招募榜
GameFuncID_OSA_Celebration = 47 # 开服庆典
GameFuncID_Mingge = 54          # 命格
# 以下为暂时无用的
GameFuncID_Pet = -1             # 宠物,灵宠 6
@@ -829,8 +835,10 @@
rptDogzEquip,       # 神兽装备背包 33
rptGarbage,         # 垃圾分类背包 34
rptHero,            # 武将英雄背包 35
rptMGGuayu,         # 命格卦玉背包 36
rptMGTuiyan,        # 命格推演背包 37
rptMax,             # 最大背包类型数量,放在最后一个
) = range(28, 28 + 9)  #C++定义的枚举到27
) = range(28, 28 + 11)  #C++定义的枚举到27
#虚拟背包类型, 从255递减
Def_VPack_TypeList = (
@@ -838,6 +846,7 @@
rptRune,            # 符印背包 255
) = range(256 - 2, 256)
NeedRecordRPType = [IPY_GameWorld.rptItem, rptTreasure, rptHero, IPY_GameWorld.rptIdentify, rptMGTuiyan]
#武器的手持形式
(
@@ -880,13 +889,17 @@
                       Def_GameRecType_TalkCache, # 聊天缓存,频道 306
                       Def_GameRecType_PlayerOfflineUnprocessed, # 离线玩家待处理事件,playerID 307
                       Def_GameRecType_ArenaRecord, # 演武场玩家挑战记录,playerID 308
                       ) = range(300, 1 + 308)
                       Def_GameRecType_BatPreset, # 战斗方案预设额外存储信息,playerID 309
                       ) = range(300, 1 + 309)
#通用信息记录新 - 字典key配置,如果有配置,则可额外按对应记录Value值存储字典,方便快速取值,可配置Value编号 1~8,配空默认 Value1
Def_GameRecValueKeyDict = {
                           Def_GameRecType_Xiangong:[1],
                           }
#仅查看自己的记录
Def_ViewGameRecSelfList = [Def_GameRecType_ArenaRecord]
Def_ViewGameRecSelfList = [Def_GameRecType_ArenaRecord, Def_GameRecType_BatPreset]
#UserData不使用json的记录类型
UserDataNOJsonRecTypeList = []
#通用信息记录类型
Def_UniversalGameRecTypeList = (
@@ -976,7 +989,7 @@
#家族行为类型 在GameServer.ChConfig.ActionTypeSaveCnt 中配置最高存储条数
Def_ActionTypeList = (
                      Def_ActionType_FamilyData, #仙盟额外记录信息0
                      Def_ActionType_0,
                      Def_ActionType_1,
                      Def_ActionType_2,
                      Def_ActionType_FamilyAdd,    #申请进入家族3
@@ -1050,11 +1063,19 @@
CampType_Evil,       #邪恶(与 Def_ID2Win 一致)
] = range(3)
# json里的配表 服务器类型(0主服,1子服,2跨服,3战斗服)]
# serverJosn里配置索引 ServersConfig.json目前配置规则{SeverID:[GroupName,MapID,服务器类型(0主服,1子服,2跨服)], ...}
(
serverCfgIndex_GroupName, # 所属 GroupName
serverCfgIndex_MapID, # 服务器对应的地图ID
serverCfgIndex_ServerType, # 服务器类型
) = range(3)
# json里的配表 服务器类型(0主服,1子服,2跨服,3战斗服,4跨服中心)]
serverType_Main = 0 # 0主服
serverType_Child = 1 # 1子服
serverType_Cross = 2 # 2跨服
serverType_Battle = 3 # 3战斗服
serverType_CrossCenter = 4 # 4跨服中心,只允许最多1台
# dirType //0全广播,1通知主服务器排除合服子服,2通知服务器包含合服子服, 3通知跨服服务器 ,4通知战斗服务器
dirType_All = 0 # 0全广播
@@ -1062,10 +1083,47 @@
dirType_Child = 2 # 2通知服务器包含合服子服
dirType_Cross = 3 # 3通知跨服服务器
dirType_Battle = 4 # 4通知战斗服务器
dirType_MainAndCross = 5 # 通知主服务器+跨服
# 服务器间连接状态
(
ssConn_Unknown, # δ֪ 0
ssConn_Normal, # 正常连接 1
ssConn_Disconnected, # 断开 2
) = range(3)
# 服务器间的信息定义
SSMsg_BattleRequest = "SS_BattleRequest"
SSMsg_BattleResult = "SS_BattleResult"
# 服务器类型简写: C - 跨服/跨服中心; CC - 跨服中心;S - 游戏服; B - 战斗服
# 跨服中心 -> 其他跨服
CC2C_FamilyCrossCfg = "CC2C_FamilyCrossCfg"             # 公会分区配置
# 跨服  -> 游戏服
#C2S_PlayerLoginOK = "C2S_PlayerLoginOK"                 # 跨服玩家处理登录成功
C2S_SendFakePack = "C2S_SendFakePack"                   # 给玩家发送封包
C2S_FamilyCrossInfo = "C2S_FamilyCrossInfo"             # 跨服同步给游戏服的公会信息
C2S_FamilyDataRet = "C2S_FamilyDataRet"                 # 公会首次跨服互通时同步数据结果回复
C2S_FamilyMapPlayer = "C2S_FamilyMapPlayer"             # 给公会玩家处理地图服务器逻辑
C2S_FamilyPyPackRet = "C2S_FamilyPyPackRet"             # 公会功能玩家请求包处理结束回包,一般用于重置请求cd等
C2S_NotifyCode = "C2S_NotifyCode"                       # 给玩家发送信息提示
C2S_CostPlayerResources = "C2S_CostPlayerResources"     # 扣除玩家资源,货币、物品等
C2S_GivePlayerResources = "C2S_GivePlayerResources"     # 奖励玩家资源,货币、物品等
C2S_SetPlayerNomalDict = "C2S_SetPlayerNomalDict"       # 设置玩家字典值
C2S_SendPlayerMail = "C2S_SendPlayerMail"               # 发送玩家个人邮件
# 游戏服  -> 跨服
S2C_OnlineState = "S2C_OnlineState"                     # 玩家在线状态同步
S2C_PlayerBaseInfo = "S2C_PlayerBaseInfo"               # 玩家基础信息同步
S2C_FamilyData = "S2C_FamilyData"                       # 公会首次跨服互通时同步数据
S2C_FamilyPyPack = "S2C_FamilyPyPack"                   # 公会功能玩家请求包
S2C_GMCMD = "S2C_GMCMD"                                 # GM命令
# 其他
S2B_BattleRequest = "S2B_BattleRequest"                 # 战斗请求
B2S_BattleResult = "B2S_BattleResult"                   # 战斗结果
# Debug日志不输出通讯数据明细的类型,debug模式下看,一些纯数据类的可不输出通讯数据明细
NoLogDataSSMsgTypes = [S2B_BattleRequest, B2S_BattleResult, S2C_FamilyData, C2S_SendFakePack]
# 跨服服务器发送子服信息定义
CrossServerMsg_CrossServerState = "CrossServerState"    # 跨服服务器状态变更
@@ -1214,18 +1272,13 @@
Def_IudetItemDecompound = 33  # 拆解返还物品列表 [装备ID,材料1ID,个数,是否绑定,材料2ID,个数,是否绑定,...]
Def_IudetLiantaiItemID = 35  # 合成该莲台的所有莲台ID [itemID, itemID, ...]
Def_IudetAddSkillID = 37  # 可添加的技能ID列表  [skillID, skillID, ...]
Def_IudetLegendAttrIDShen = 51  # 物品传奇属性ID列表 - 神
Def_IudetLegendAttrValueShen = 61  # 物品传奇属性值列表 - 神
Def_IudetLegendAttrIDXian = 53  # 物品传奇属性ID列表 - 仙
Def_IudetLegendAttrValueXian = 63  # 物品传奇属性值列表 - 仙
Def_IudetLegendAttrIDJi = 55  # 物品传奇属性ID列表 - 极
Def_IudetLegendAttrValueJi = 65  # 物品传奇属性值列表 - 极
Def_IudetHeroTalentID = 71  # 英雄天赋ID列表
Def_IudetHeroTalentIDLV = 73  # 英雄天赋ID等级列表
Def_IudetHeroTalentWashLock = 75  # 英雄天赋洗炼锁定索引列表
Def_IudetHeroTalentWashID = 77  # 英雄天赋洗炼随机ID列表
Def_IudetHeroTalentIDAwakeRand = 79  # 英雄觉醒时随机天赋选项ID列表
Def_IudetHeroLineup = 81 # 所在阵容信息列表 [阵容类型*10000+阵型类型*100+位置编号, ...]
Def_IudetHeroEffPresetID = 83 # 卡牌有生效的预设ID [预设ID, ...]
Def_IudetItemColor = 16  # 物品颜色,如果该值没有就取物品
#Def_IudetItemCount = 18  # 物品个数,支持20亿,目前仅特殊转化物品会用到
@@ -1247,7 +1300,7 @@
Def_IudetHeroBreakLV = 74 # 英雄突破等级
Def_IudetHeroAwakeLV = 76 # 英雄觉醒等级
Def_IudetHeroSkin = 78 # 英雄使用的皮肤索引
Def_IudetHeroCardEffective = 80 # 卡牌加成是否生效的,每个武将仅有一张卡牌生效
Def_IudetHeroCardEffective = 80 # 卡牌在主线预设中生效标识,每个武将在某一阵容预设中仅有一张卡牌生效,废弃,使用 Def_IudetHeroEffPresetID 代替
# 200~300 宠物数据用
Def_IudetPet_NPCID = 200  # npcID
@@ -1264,11 +1317,22 @@
LineupObjMax = 6 # 阵容最大上阵武将数
# 阵容定义
LineupList = (
Lineup_Main, # 主阵容 1
Lineup_ArenaAtk, # 竞技场进攻阵容 2
Lineup_ArenaDef, # 竞技场防守阵容 3
# 战斗功能预设定义
BatPresetList = (
BatPreset_Main, # 主线战斗 1
BatPreset_ArenaDef, # 演武场防守 2
) = range(1, 1 + 2)
# 需要缓存的战斗功能预设,一般只要主线+防守功能预设,主动攻击的PVE功能可以不用,如某个副本的主动攻击预设
NeedCacheBatPresetList = [BatPreset_Main, BatPreset_ArenaDef]
BatPresetName = {BatPreset_Main:"主线", BatPreset_ArenaDef:"演武场防守"}
# 功能预设定义
FuncPresetList = (
FuncPreset_Battle,  # 全局战斗预设 1
FuncPreset_Hero,    # 武将预设 2
FuncPreset_Mingge,  # 命格预设 3
) = range(1, 1 + 3)
# 宠物物品数据状态