From 388823edfe6308cba6f76ca6dc4f20022c5cb2be Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 30 六月 2025 19:03:50 +0800 Subject: [PATCH] 10431 【英文】看广告获得限时代金券 --- ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py | 235 ++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 186 insertions(+), 49 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py b/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py index 51f8a52..a60ab71 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/ChConfig.py @@ -58,6 +58,12 @@ ##获取服务器根路径 return GameServerPath.split("CoreServerGroup")[0] +def GetSizeof(o, isAsize=True): + return 0 + #if isAsize: + # return asizeof.asizeof(o) + #return sys.getsizeof(0) + #------主角相关设定 #主角发型列表 [职业:发型列表] Def_RoleHair = { @@ -206,8 +212,9 @@ Def_FamilySetting_LvUpCost, #家族升级需要消耗升级所需资金 Def_FamilySetting_WeekMissionMoneyMax,#每周任务最大可获得仙盟资金 Def_FamilySetting_BossFBCnt, #BOSS副本次数 +Def_FamilySetting_ZhenbaogeWeights, #珍宝阁总权重 Def_FamilySetting_Max, #表长度异常(必须放最后) -) = range(0, 6 + 1) +) = range(0, 7 + 1) FamilySettingDict = { Def_FamilySetting_MaxMemberCnt:'MemberCnt', Def_FamilySetting_MaxHuFaCnt:'DeputyLeaderCnt', @@ -215,6 +222,7 @@ Def_FamilySetting_LvUpCost:'NeedMoney', Def_FamilySetting_WeekMissionMoneyMax:'WeekMissionMoneyMax', Def_FamilySetting_BossFBCnt:'BossFBCnt', + Def_FamilySetting_ZhenbaogeWeights:'ZhenbaogeWeights', } #家族成员接口对应家族配置表索引 @@ -263,7 +271,7 @@ #创建家族,最大字符数 Def_CreatFamily_MaxStr = 33 #创建角色,最大字符数, UTF8是3个字节 最少3个字母 最大5中文加1个字母 -Def_CreatRole_MaxStr = 16 +Def_CreatRole_MaxStr = 20 Def_CreatRole_MinStr = 3 @@ -369,13 +377,16 @@ Def_WorldKey_BossIsAlive = 'BossIsAlive_%s' #boss是否活着 Def_WorldKey_IsGameWorldInit = 'IsGameWorldInit' #GameWold是否初始化完成 Def_WorldKey_BossIsGeTui = "BossGeTui%s" #当前复活通知 -Def_WorldKey_OperationActionState = "OperationActState_%s" #运营活动状态,参数为运营活动名 +Def_WorldKey_OperationActionState = "State_%s" #运营活动状态,参数为(运营活动名) +Def_WorldKey_OperationActionStateJoin = "StateJoin_%s" #运营活动可参与状态,参数为(运营活动名) Def_WorldKey_BossRebornNeedPoint = "BossRebornNeedPoint" #boss复活需要总点数 Def_WorldKey_CrossBossIsAlive = 'CrossBossIsAlive_%s_%s' #跨服boss是否活着,参数(zoneID, bossID) -Def_WorldKey_IsGameWorldInit = 'IsGameWorldInit' #GameWold是否初始化完成 +Def_WorldKey_GameWorldInitOK = 'GameWorldInitOK' #GameWold是否初始化完成OK Def_WorldKey_CrossPKZoneSeasonID = "CrossPKZoneSeasonID_%s" #跨服PK赛区对应赛季,跨服服务器控制,参数(zoneID) Def_WorldKey_CrossPKZoneSeasonState = "CrossPKZoneSeasonState_%s" #跨服PK赛区赛季状态,跨服服务器控制,参数(zoneID)0-未开启,1-开启中,2-已结束 Def_WorldKey_CrossPKBillboardSyncTick = "CrossPKBillboardSyncTick_%s_%s" #跨服PK本赛季排行榜同步tick,参数(zoneID, seasonID) +Def_WorldKey_CrossSetPlayerAttrTick = "CrossSetPlayerAttrTick" #同步设置跨服玩家属性值tick +Def_WorldKey_SyncFamilyAllToCross = "SyncFamilyAllToCross" #本次启动是否已经同步过所有仙盟到跨服服务器 #--------------------------------------------------------------------- #个人时间间隔 TYPE_Player_Tick_Requestkey = 0 # 玩家请求处理间隔 @@ -435,6 +446,12 @@ Def_PlayerKey_PrivateTalk = 'PrivateTalk' #追踪密频(1:开启 0:关闭) #--------------------------------------------------------------------- +# GameWorld.GetGameWorld().SendDBLogic(BYTE queryType, DWORD id, char* sData, int nDataLen) +# GameServer请求db逻辑类型,db接受 OnGameServerToDBLogic,回调 RecvDGDBLogicResult +( +gstDBLogic_PlayerPackData, # 请求打包玩家数据 0 +) = range(1) + #GM工具回复值 Def_GMTool_Succeed = 1 Def_GMTool_Fail = 250 @@ -443,7 +460,7 @@ Def_Billboard_MaxCnt = 100 #--------------------------------------------------------------------- #请求类型(需要和MapServer中的一致) -Def_QueryType_Count = 55 +Def_QueryType_Count = 56 ( queryType_sqtPlayer, #查询玩家 queryType_sqtFamilyWar, #家族战 @@ -500,6 +517,7 @@ queryType_EnterFB, #进入副本 queryType_NPCInfo, #查询NPCInfo queryType_NPCCnt, #查询NPC数量 +queryType_FamilyEmblem, #仙盟徽章 ) = range(0, Def_QueryType_Count) #------------------------------------------------------------------------------ #家族某行为类型保存的条数 @@ -518,6 +536,18 @@ #查询无限制家族的行为类型列表 Def_QueryNoLimit_ActionTypeList = [ShareDefine.Def_ActionType_OfficerModelEquip] #------------------------------------------------------------------------------ +#DBPlayerRecData、DBGameRecData表中UserData数据通用自定义key +Def_RecDataKey_ServerIDList = "ServerIDList" +Def_RecDataKey_PlayerInfo = "PlayerInfo" +Def_RecDataKey_RobValueList = "RobValueList" + +#玩家记录上线需要直接同步给前端的类型 +Def_PlayerRecLoginNotifyList = [ShareDefine.Def_PlayerRecType_PayCoin] + +#玩家记录类型每人限制条数,没有配置的类型不限制,由功能自行控制 +Def_PlayerRecCountDict = { + ShareDefine.Def_PlayerRecType_PayCoin:100, + } #玩家通用信息记录类型保存的条数 UniversalGameRecTypeSaveCnt = { @@ -531,6 +561,9 @@ ShareDefine.Def_UniversalGameRecType_FamilyRedPacketGrabRecord:10000000, #仙盟红包已抢信息记录 ShareDefine.Def_UniversalGameRecType_DujieHelpAllRecord:500, #渡劫副本护法总记录 ShareDefine.Def_UniversalGameRecType_DujieHelpRecord:10000, #渡劫副本护法详细记录 + ShareDefine.Def_UniversalGameRecType_ZhuXianBossRecord:100, #诛仙BOSS结算记录 + ShareDefine.Def_UniversalGameRecType_LuckyTreasure:5, #幸运鉴宝记录 + ShareDefine.Def_UniversalGameRecType_FeastWish:30, #节日祝福大奖记录 } #--------------------------------------------------------------------- #比较标识 @@ -565,35 +598,39 @@ ShareDefine.Def_BT_FightPower_Horse : 100, #坐骑战斗力总榜 ShareDefine.Def_BT_FightPower_Pet : 100, #宠物总战力榜 ShareDefine.Def_BT_TrialTower : 100, #天神之塔榜 + ShareDefine.Def_BT_SkyTower : 100, #天星塔榜 ShareDefine.Def_BT_OffLineEfficient : 100, #脱机效率榜 ShareDefine.Def_BT_Realm : 100, #境界榜 ShareDefine.Def_BT_TotalRecharge : 100, #充值榜 - ShareDefine.Def_BT_Campaign_PlusLV : 100, #强化等级(开服活动榜) - ShareDefine.Def_BT_Campaign_HorseLV : 100, #坐骑等级(开服活动榜) - ShareDefine.Def_BT_Campaign_StoneLV : 100, #宝石等级(开服活动榜) - ShareDefine.Def_BT_Campaign_LV : 100, #冲级排行(开服活动榜) - ShareDefine.Def_BT_Campaign_RealmLV : 100, #境界等级(开服活动榜) - ShareDefine.Def_BT_Campaign_FightPower : 100, #战力排行(开服活动榜) - ShareDefine.Def_BT_Campaign_RuneLV : 100, #符印等级(开服活动榜) - ShareDefine.Def_BT_Campaign_GodWeaponLV : 100, #神兵等级(开服活动榜) - ShareDefine.Def_BT_Campaign_Recharge : 100, #累计充值(开服活动榜) - ShareDefine.Def_BT_Campaign_PetLV : 100, #灵宠等级(开服活动榜) + ShareDefine.Def_BT_Campaign_Plus : 500, #强化战力(开服活动榜) + ShareDefine.Def_BT_Campaign_Horse : 500, #坐骑战力(开服活动榜) + ShareDefine.Def_BT_Campaign_StoneLV : 500, #宝石等级(开服活动榜) + ShareDefine.Def_BT_Campaign_LV : 500, #冲级排行(开服活动榜) + ShareDefine.Def_BT_Campaign_RealmLV : 500, #境界等级(开服活动榜) + ShareDefine.Def_BT_Campaign_FightPower : 500, #战力排行(开服活动榜) + ShareDefine.Def_BT_Campaign_RuneLV : 500, #符印等级(开服活动榜) + ShareDefine.Def_BT_Campaign_GodWeaponLV : 500, #神兵等级(开服活动榜) + ShareDefine.Def_BT_Campaign_Recharge : 500, #累计充值(开服活动榜) + ShareDefine.Def_BT_Campaign_PetLV : 500, #灵宠等级(开服活动榜) + ShareDefine.Def_BT_Campaign_LingGen : 500, #灵根总点(开服活动榜) + ShareDefine.Def_BT_Campaign_StarLV : 500, #升星等级(开服活动榜) + ShareDefine.Def_BT_Campaign_Wash : 500, #洗练战力(开服活动榜) ShareDefine.Def_BT_FCCostGold : 5, #消费排行榜(仙界盛典) - ShareDefine.Def_BT_FBHelpBattle : 100, #助战次数榜 + ShareDefine.Def_BT_NewFCCostGold : 5, #消费排行榜(仙界盛典) - ShareDefine.Def_BT_HighLadder : 1000, #玩家天梯竞技场排行 - ShareDefine.Def_BT_HighLadder_Yester : 1000, #玩家天梯竞技场昨日排行 - ShareDefine.Def_BT_RechargeTeHuiLast : 20, #充值特惠活动排行榜-上一期记录 - ShareDefine.Def_BT_RechargeTeHui : 20, #充值特惠活动排行榜-当前期记录 - - ShareDefine.Def_BT_MixCampaign_PlayerBattle : 2, #战力榜(合服活动) - ShareDefine.Def_BT_MixCampaign_Recharge : 2, #累计充值榜(合服活动) - ShareDefine.Def_BT_MixCampaign_WinFamilyMember:1, #获胜战盟成员(合服活动) - ShareDefine.Def_BT_MixCampaign_FamilyKillBoss: 1, #战盟击杀boss(合服活动) - - ShareDefine.Def_BT_CostTeHui : 10, #消费特惠排行榜 - ShareDefine.Def_BT_CostTeHuiLast : 10, #消费特惠排行榜上一期 + ShareDefine.Def_BT_Arena : 1000, #竞技场榜 + ShareDefine.Def_BT_Environment : 20, #环保榜 (垃圾分类活动) + ShareDefine.Def_BT_CharmTotal : 100, #魅力总榜 + ShareDefine.Def_BT_CharmWeek : 100, #魅力周榜 + ShareDefine.Def_BT_CharmDay : 100, #魅力日榜 + ShareDefine.Def_BT_BossTrialSubmit : 200, #boss凭证 (boss历练活动) + ShareDefine.Def_BT_BossTrialSubmitBak : 200, #boss凭证 (boss历练活动 - 上一期) + ShareDefine.Def_BT_BossTrialSubmitFamily : 100, #boss凭证仙盟 (boss历练活动) + ShareDefine.Def_BT_BossTrialSubmitFamilyBak : 100, #boss凭证仙盟 (boss历练活动 - 上一期) + ShareDefine.Def_BT_XianXiaMJScore : 200, #仙匣秘境积分榜 (仙匣秘境活动) + ShareDefine.Def_BT_HorsePetTrainScore : 200, #骑宠养成积分榜 (骑宠养成活动) + ShareDefine.Def_BT_GubaoScore : 200, #古宝养成积分榜 (古宝养成活动) } #排行榜保存类型(和BillboardType匹配), 默认保存, 如果不保存,可配置进去 @@ -623,7 +660,6 @@ Def_PlayerDataCollect_Key = 0x86 #---SetDict 玩家字典不存数据库--- -Def_Player_NoSave_Dict_RecallCountGift = 'RecallCountGift_0' # 召回玩家个数奖励发包限制 Def_Player_NoSave_Dict_PlayerExamRightCnt = 'PlayerExamRightCnt_1_%s' # 玩家答题正确数量 Def_Player_NoSave_Dict_PlayerExamCRightCnt = 'PlayerExamCRightCnt_1_%s' # 玩家答题连续正确数量 @@ -636,12 +672,9 @@ Def_PlayerKey_IsStopSendDBCommand = "StopSendDBCom" #是否停止发送数据库操作命令 Def_PlayerKey_SendDBComTick = "SendDBComTick" #发送DB命令时间 -Def_PlayerKey_CrossRegisterType = "CrossRegisterType" #当前上传数据的活动类型 +Def_PlayerKey_CrossRegisterMap = "CrossRegisterMap" #跨服注册活动地图, dataMapID Def_PlayerKey_MergeRegisterRoomID = "MergeRegisterRoomID" #当前上传数据的roomID Def_PlayerKey_IsLoginToMergeServer = "IsLoginToMergeServer" #是否要登陆跨服服务器 -Def_PlayerKey_IsCrossPKMatching = "IsCrossPKMatching" #是否跨服匹配中 - -Def_PlayerKey_FreshmanGuiderDay = "FreshmanGuiderDay" #新手指导员天数 Def_PlayerKey_PlayerFromPID = "PlayerFromPID" #pid @@ -658,8 +691,8 @@ Def_PDict_GeTuiSet = "GetuiSet" # 推送提醒的设置 Def_PDict_NoGeTuiTime = "NoGetuiTime" # 推送提醒免打扰时间,将字符串组合数字 -Def_PlayerKey_ViewCrossPKBillboardTick = "ViewCrossPKBillboardTick_%s_%s" #查询PK排行榜tick,参数(zoneID, seasonID) - +#主城地图、缥缈宗 +Def_FBMapID_MainCity = 10010 #渡劫副本 Def_FBMapID_DuJie = 31110 #仙盟联赛 @@ -670,26 +703,83 @@ Def_FBMapID_FamilyInvade = 31170 #封魔坛 Def_FBMapID_SealDemon = 52010 +#诛仙BOSS +Def_FBMapID_ZhuXianBoss = 31380 #仙魔之争 Def_FBMapID_XMZZ = 31010 #仙盟boss副本 Def_FBMapID_FamilyBossMap = 31210 +#多仙盟Boss +Def_FBMapID_AllFamilyBoss = 31260 #宗门试炼 Def_FBMapID_MunekadoTrial = 60010 #混乱妖域 Def_FBMapID_ChaosDemon = 31180 +#讨伐妖魔 +Def_FBMapID_KillDevil = 31280 #娲皇遗迹 Def_FBMapID_QueenRelics = 51010 #跨服竞技场 Def_FBMapID_CrossRealmPK = 32010 +#跨服排位 +Def_FBMapID_CrossChampionship = 32070 #跨服蓬莱仙境 Def_FBMapID_CrossPenglai = 32020 +#跨服魔化之地 +Def_FBMapID_CrossDemonLand = 32080 +#跨服妖王 +Def_FBMapID_CrossDemonKing = 32030 +#本服妖王 +Def_FBMapID_DemonKing = 22030 +#骑宠Boss +Def_FBMapID_HorsePetBoss = 31200 +#跨服灵草园 +Def_FBMapID_CrossGrasslandLing = 32040 +#跨服仙草园 +Def_FBMapID_CrossGrasslandXian = 32050 +#跨服战场 +Def_FBMapID_CrossBattlefield = 32060 +#跨服仙盟夺旗战/逐鹿万界 +Def_FBMapID_CrossFamilyFlagwar = 32090 +#情缘副本 +Def_FBMapID_Love = 31300 +#回合战斗自定义地图ID +TurnFightMapIDList = ( +Def_TFMapID_MineArea, # 福地 1 +) = range(1, 1 + 1) + +#需要刷世界BOSS的副本 +WorldBossFBMapIDList = [Def_FBMapID_SealDemon, Def_FBMapID_ZhuXianBoss, Def_FBMapID_DemonKing] #跨服地图 -Def_CrossMapIDList = [Def_FBMapID_CrossRealmPK, Def_FBMapID_CrossPenglai] -#跨服对应分区配置表名 -Def_CrossZoneTableName = {Def_FBMapID_CrossPenglai:"CrossPenglaiZone", - } +Def_CrossMapIDList = [Def_FBMapID_CrossRealmPK, Def_FBMapID_CrossPenglai, Def_FBMapID_CrossDemonLand, Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian] +#跨服分区类型配置, 没配置的默认 CrossZoneComm +Def_CrossZoneTypeName = {0:"CrossZoneComm", # 特殊0,默认常规分区 + Def_FBMapID_CrossPenglai:"CrossZoneComm", + Def_FBMapID_CrossDemonLand:"CrossZoneComm", + Def_FBMapID_CrossRealmPK:"CrossZonePK", + Def_FBMapID_CrossDemonKing:"CrossZonePK", + Def_FBMapID_CrossGrasslandLing:"CrossZonePK", + Def_FBMapID_CrossGrasslandXian:"CrossZonePK", + Def_FBMapID_CrossBattlefield:"CrossZoneBattlefield", + Def_FBMapID_CrossChampionship:"CrossZonePK", + } +#跨服分区对应地图配置表名 - 仅适用于固定地图及虚拟分线的跨服玩法 +Def_CrossZoneMapTableName = {Def_FBMapID_CrossPenglai:"CrossPenglaiZoneMap", + Def_FBMapID_CrossDemonLand:"CrossDemonLandZoneMap", + Def_FBMapID_CrossFamilyFlagwar:"CrossFamilyFlagwarZoneMap", + } + +#跨服日常活动对应需要直接开启副本线路地图的,仅适用于固定分区的日常,不包含动态分配线路及有特定分配规则的地图 +Def_CrossDailyMap = { + ShareDefine.CrossDailyActionID_FamilyWarFlag:Def_FBMapID_CrossFamilyFlagwar, + } + +#需要动态分配线路的跨服地图 +Def_CrossDynamicLineMap = [Def_FBMapID_CrossDemonKing, Def_FBMapID_CrossGrasslandLing, Def_FBMapID_CrossGrasslandXian] + +#需要统计副本功能线路ID人数的跨服地图 +Def_NeedCountFBFuncLinePlayerCrossMap = [Def_FBMapID_CrossDemonKing] #同系职业枚举 JOB_TYPY_COUNT = 5 @@ -716,12 +806,6 @@ # 邮件(补偿)默认发件人, 具体做活动再定 Def_Mail_SenderSys = "SenderSys" # 默认邮件发送人 -# 邮件类型划分,用于每种类型的保存上限 -( -Mail_Type_Default, -Mail_Type_Market, -) = range(2) - # 竖杠 Def_Str_Montant = "|" @@ -730,13 +814,14 @@ Def_Online = 1 Def_OnlineNoClient = 2 -# 分组 1 最近联系人 2 好友 3 仇人 4 黑名单 +# 分组 1 最近联系人 2 好友 3 仇人 4 黑名单 5 亲密 ( Def_SocialGroup_Contacts, Def_SocialGroup_Friend, Def_SocialGroup_Enemy, Def_SocialGroup_Black, -) = range(1, 5) +Def_SocialGroup_Intimacy, +) = range(1, 6) Def_CDBPlayerRefresh_Online = "OnlineType" @@ -789,6 +874,58 @@ VIPPrivilege_BindJadeWheel, #30 绑玉转盘次数 VIPPrivilege_PrayElixir, #31 丹药祈福次数 VIPPrivilege_32, #32 封魔坛自动挑战 -VIPPrivilege_XianyuanCoinUpperAdd, #33 仙缘币上限加成 -VIPPrivilege_XianyuanCoinAddPer, #34 仙缘币获得倍率加成(万分比) +VIPPrivilege_33, #33 +VIPPrivilege_34, #34 ) = range(1, 35) + +#游戏货币来源类型定义 +( +Def_GiveMoney_Unknown, # 未知 0 +Def_GiveMoney_GM, +Def_GiveMoney_CTG, +Def_GiveMoney_GMTCTG, +Def_GiveMoney_CoinToGold, +Def_GiveMoney_SuperAccountCreate, # 创角赠送 5 +Def_GiveMoney_Mission, # 任务 +Def_GiveMoney_Pray, # 祈祷 +Def_GiveMoney_UseItem, # 使用物品 +Def_GiveMoney_Pickup, # 拾取 +Def_GiveMoney_Bourse, # 交易所 10 +Def_GiveMoney_GoldInvest, # 绑钻投资 +Def_GiveMoney_Recover, # 资源找回 +Def_GiveMoney_RedPacket, # 红包 +Def_GiveMoney_RefineGift, # 炼制奖励 +Def_GiveMoney_Mail, # 邮件(补偿) 15 +Def_GiveMoney_RuneDecompose, # 符印 +Def_GiveMoney_Warehouse, # 仓库 +Def_GiveMoney_SellPackItem, # 出售背包物品 +Def_GiveMoney_CollectNPC, # 采集NPC +Def_GiveMoney_BossFirstKill, # Boss首杀 +Def_GiveMoney_21, +Def_GiveMoney_Trade, # 交易 +Def_GiveMoney_Truck, # 运镖 +Def_GiveMoney_FreeGoods, # 极品白拿 +Def_GiveMoney_BindJadeWheel, # 绑玉转盘 25 +Def_GiveMoney_GatherSoulDecompose, #聚魂分解 26 +Def_GiveMoney_AuctionBidReturn, #拍卖竞价返还 +Def_GiveMoney_AuctionGain, #拍卖获得利润 +) = range(1000, 1000 + 29) + +Def_ItemID_GoldMoney = 20 # 直接给仙玉 +Def_ItemID_GoldPaper = 30 # 直接给绑玉/灵石 +Def_ItemID_SilverPaper = 500 # 直接给金票物品 +Def_ItemID_GongdePoint = 530 # 直接给功德点 +Def_ItemID_FamilyFlagWarPoint = 540 # 直接给万界积分 +# 货币类型对应直接给货币物品ID +MoneyItemIDDict = {IPY_GameServer.TYPE_Price_Gold_Money:Def_ItemID_GoldMoney, + IPY_GameServer.TYPE_Price_Gold_Paper:Def_ItemID_GoldPaper, + IPY_GameServer.TYPE_Price_Silver_Paper:Def_ItemID_SilverPaper, + ShareDefine.TYPE_Price_GongdePoint:Def_ItemID_GongdePoint, + ShareDefine.TYPE_Price_FamilyFlagWarPoint:Def_ItemID_FamilyFlagWarPoint, + } + +#写死的物品类型都放这边 +Def_ItemType_Title = 4 #称号 + +#写死的物品效果ID都放这边------请按数值顺序存放 +Def_Effect_AddDienstgrad = 204 #使用物品获得称号 -- Gitblit v1.8.0