From b7b26c834c51a76e419faacde84efcf5d6525f86 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 01 二月 2024 15:09:36 +0800
Subject: [PATCH] 10019 【砍树】回合战斗(增加灵兽协同攻击支持;增加灵兽释放技能触发被动;增加精怪复活方式;被动触发的技能造成伤害改为不吸血;)

---
 PySysDB/PySysDBPY.h |  392 +++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 347 insertions(+), 45 deletions(-)

diff --git a/PySysDB/PySysDBPY.h b/PySysDB/PySysDBPY.h
index 8df5233..6a71ef2 100644
--- a/PySysDB/PySysDBPY.h
+++ b/PySysDB/PySysDBPY.h
@@ -10,6 +10,27 @@
 	list		Skills;		//被动技能
 };
 
+//称号升星表
+
+struct tagTitleStarUp
+{
+	DWORD		_TitleID;	//称号NPCID
+	BYTE		_TitleStar;	//称号星级
+	list		StarUpNeedItemList;	//升下一星所需道具 [[物品ID,个数], ...]
+	list		StarAttrType;	//累计总属性类型
+	list		StarAttrValue;	//累计总属性值
+};
+
+//创角表
+
+struct	tagCreateRole
+{
+	BYTE		_RoleType;		// 角色
+	list		BaseAttrIDList;	// 角色基础属性ID
+	list		BaseAttrValueList;	// 角色基础属性值
+	list		CreateRoleMap;	// 创角地图坐标信息 [dataMapID,posX,posY]
+};
+
 //灵根表 #tagRolePoint
 
 struct	tagRolePoint
@@ -49,6 +70,27 @@
 	list		LVAttrValueList;	//每级额外属性值(非累积)
 };
 
+//任务表
+
+struct	tagTask
+{
+	WORD		_TaskID;	//任务ID
+	BYTE		TaskType;	//任务类型
+	list		TaskConds;	//任务条件[...]
+	DWORD		NeedValue;	//所需任务值
+	list		AwardItemList;	//奖励物品列表 [[物品ID,个数,是否拍品], ...]
+};
+
+//境界修仙之路
+
+struct	tagRealmXXZL
+{
+	WORD		_TaskID;	//任务ID
+	BYTE		TaskType;	//任务类型
+	DWORD		NeedValue;	//所需任务值
+	list		AwardItemList;	//奖励物品列表 [[物品ID,个数,是否拍品], ...]
+};
+
 //境界表 #tagRealm
 
 struct	tagRealm
@@ -67,6 +109,16 @@
 	DWORD		ExpLimit;	//修为池经验上限
 	dict		LearnSkillIDInfo;	//学习技能ID信息 {"职业":[技能ID, ...], ...}
 	BYTE		AddFreePoint;	//增加自由属性点
+};
+
+//境界塔表
+
+struct tagRealmTower
+{
+	DWORD		_FloorID;	//层
+	WORD		NeedRealmLV;	//所需境界
+	DWORD		BossID;	//BossID
+	list		RewardItemList;	//奖励物品列表
 };
 
 //境界炼体属性表
@@ -197,45 +249,6 @@
 	list		AttrValue;	//属性值
 };
 
-//装备传奇属性条数表
-
-struct tagEquipLegendAttrCount
-{
-	BYTE		_ItemType;	//物品类型
-	BYTE		_ItemColor;	//物品颜色
-	BYTE		_IsSuit;	//是否套装
-	BYTE		_ItemQuality;	//物品星级
-	list		LegendAttrCountInfo;	//传奇属性条数信息 [[条数, [属性类型库编号, ...]], ...]
-};
-
-//装备传奇属性类型表
-
-struct tagEquipLegendAttrType
-{
-	BYTE		_ItemType;	//物品类型
-	dict		LegendAttrTypeLib;	//传奇属性类型库 {属性类型库编号:[属性ID,...], ...}
-};
-
-//装备传奇属性值库表
-
-struct tagEquipLegendAttrLib
-{
-	BYTE		_LegendAttrID;	//传奇属性ID
-	dict		LegendAttrLib;	//属性库信息 {库编号:[随机数值, ...], ...}
-};
-
-//装备传奇属性等级数值表
-
-struct tagEquipLegendAttrValue
-{
-	BYTE		_ItemType;	//物品类型
-	BYTE		_ItemClassLV;	//物品阶级
-	BYTE		_ItemColor;	//物品颜色
-	BYTE		_IsSuit;	//是否套装
-	BYTE		_ItemQuality;	//物品星级
-	dict		LVLegendAttrLibNumInfo;	//属性ID等级段对应数值库编号 {属性ID:{等级:库编号, ...}}
-};
-
 //神兽表
 
 struct tagDogz
@@ -329,6 +342,17 @@
 	DWORD		InitFightPower;	//初始战力
 };
 
+//灵宠升星表
+
+struct tagPetStarUp
+{
+	DWORD		_PetNPCID;	//灵兽NPCID
+	BYTE		_PetStar;	//灵兽星级
+	list		StarUpNeedItemList;	//升下一星所需道具 [[物品ID,个数], ...]
+	list		StarAttrType;	//累计总属性类型
+	list		StarAttrValue;	//累计总属性值
+};
+
 //灵宠培养表
 
 struct tagPetTrain
@@ -397,6 +421,9 @@
 	WORD		NeedEatCount;	//升级所需个数(非累计)
 	list		LVAttrType;	//每级额外属性类型(非累积)
 	list		LVAttrValue;	//每级额外属性值(非累积)
+	list		UpItemAttrType;	//每x个培养丹增加属性类型,x=UpEatItemPerCount
+	list		UpItemAttrValue;	//每x个培养丹增加属性值,x=UpEatItemPerCount
+	DWORD		UpEatItemPerCount;	//每次培养消耗x个
 };
 
 //坐骑培养表
@@ -427,6 +454,97 @@
 	DWORD		InitFightPower;	//皮肤额外战力
 	DWORD		HorseID;	//对应坐骑ID
 	DWORD		SkinValidTime;	//有效时长秒
+};
+
+//坐骑表
+
+struct tagHorse
+{
+	DWORD		_HorseID;	//坐骑ID
+	DWORD		HorseSkinID;	//外观物品ID
+	BYTE		Quality;	//坐骑品质
+};
+
+//坐骑升星表
+
+struct tagHorseStarUp
+{
+	DWORD		_HorseID;	//坐骑ID
+	BYTE		_HorseStar;	//坐骑星级
+	list		StarUpNeedItemList;	//升下一星所需道具 [[物品ID,个数], ...]
+	list		StarAttrType;	//累计总属性类型
+	list		StarAttrValue;	//累计总属性值
+};
+
+//古宝表
+
+struct tagGubao
+{
+	WORD		_GubaoID;	//古宝ID
+	BYTE		GubaoType;	//古宝分类
+	BYTE		GubaoQuality;	//古宝品质
+	DWORD		UnlockItemID;	//解锁所需物品ID
+	BYTE		UnlockItemCnt;	//解锁所需物品数量
+};
+
+//古宝升星表
+
+struct tagGubaoStar
+{
+	WORD		_GubaoID;	//古宝ID
+	BYTE		_GubaoStar;	//古宝星级
+	list		StarUPNeedItemInfo;	//升星所需物品 [[物品ID,个数], ...]
+	list		StarEffIDList;	//星级特殊效果ID列表
+};
+
+//古宝特殊效果表
+
+struct tagGubaoEffAttr
+{
+	DWORD		_GubaoEffID;	//古宝特殊效果ID
+	BYTE		GubaoEffType;	//效果类型
+	DWORD		EffCond;	//条件
+	DWORD		EffCond2;	//条件2
+	DWORD		EffCond3;	//条件3
+	BYTE		IsPer;	//是否百分比提升
+	list		EffFuncAttrIDList;	//提升指定功能属性ID列表
+	DWORD		EffAttrID;	//直接增加属性类型
+	DWORD		EffAttrValue;	//提升属性值
+	list		EffItemAwardList;	//领取物品列表
+};
+
+//古宝品质升级表
+
+struct tagGubaoLV
+{
+	BYTE		_GubaoType;	//古宝分类
+	BYTE		_GubaoQuality;	//古宝品质
+	BYTE		_GubaoLV;	//古宝等级
+	list		LVUPNeedItemInfo;	//升级所需物品 [[物品ID,个数], ...]
+	list		LVAttrTypeList;	//等级属性类型列表
+	list		LVAttrValueList;	//等级属性值列表
+};
+
+//神通表
+
+struct tagShentong
+{
+	BYTE		_ShentongID;	//神通ID
+	WORD		NeedGubaoID;	//解锁所需古宝ID
+};
+
+//神通升级表
+
+struct tagShentongLV
+{
+	BYTE		_ShentongID;	//神通ID
+	BYTE		_ShentongClassLV;	//神通阶级
+	BYTE		_ShentongLV;	//神通等级
+	list		LVLightNeedItem;	//点亮该级所需物品 [[物品ID,个数], ...]
+	list		LVAttrTypeList;	//该级属性类型列表
+	list		LVAttrValueList;	//该级属性值列表
+	DWORD		LVSkillID;	//该级职业通用技能ID
+	DWORD		FightPowerEx;	//附加战力
 };
 
 //玩家等级表
@@ -495,6 +613,23 @@
 	DWORD		_NPCID;	//NPCID
 	BYTE		FightPowerLackAtkLimit;	//战力不足限制攻击
 	DWORD		SuppressFightPower;	//推荐/压制战力
+	DWORD		MinAtk;	//最小攻击力
+	DWORD		MaxAtk;	//最大攻击力
+	DWORD		Def;	//防御值
+	DWORD		MaxHP;	//最大生命值,可超过20E
+	DWORD		AtkSpeed;	//攻击速度
+	DWORD		MissRate;	//闪避概率
+	DWORD		MissDefRate;	//抗闪避概率
+	DWORD		SuperHitRate;	//暴击概率
+	DWORD		SuperHitRateReduce;	//抗暴击概率
+	DWORD		FaintRate;	//击晕概率
+	DWORD		FaintDefRate;	//抗击晕概率
+	DWORD		ComboRate;	//连击概率
+	DWORD		ComboDefRate;	//抗连击概率
+	DWORD		AtkBackRate;	//反击概率
+	DWORD		AtkBackDefRate;	//抗反击概率
+	DWORD		SuckHPPer;	//吸血比率
+	DWORD		SuckHPDefPer;	//抗吸血比率
 };
 
 //成长型境界怪物表
@@ -634,6 +769,11 @@
 	DWORD		CftJobAAtkReducePer;	//战士攻击伤害减免
 	DWORD		CftJobBAtkReducePer;	//法师攻击伤害减免
 	DWORD		CftJobCAtkReducePer;	//弓箭攻击伤害减免
+	DWORD		CftAffairSpeedPer;	//仙盟事务速度加成
+	DWORD		CftFamilyBossHurtPer;	//仙盟BOSS伤害加成
+	DWORD		CftFamilyWarHPPer;	//仙盟联赛生命加成
+	DWORD		CftFamilyWarAtkPer;	//仙盟联赛攻击加成
+	DWORD		CftFamilySitExpPer;	//仙盟打坐经验加成
 };
 
 //NPC掉落表
@@ -650,14 +790,17 @@
 	dict		IndepRateDrop;	//独立概率掉落信息 {(阶,颜色):概率,...}
 	BYTE		IndepRateDoCnt;		//独立概率执行次数
 	dict		EquipColorMaxDropCount;	//装备颜色最大掉落物品数 {颜色:上限数量,...}
+	list		TianxuanEquipRateList;	//天玄丹装备掉落饼图 [[概率,(阶,品质)], ...]
 	dict		EquipColorSuitInfo;	//装备颜色对应套装概率 {颜色:套装概率, ...}
 	dict		EquipPartKeyRateInfo;	//装备部位集合信息 {(颜色,是否套装):部位集合key, ...}
 	BYTE		ColorSuitPartOptimization;	//部位颜色套评分优选掉落,十位代表颜色,个位代表套装
 	dict		KillCountDropEquipPub;	//第x次击杀附加必掉装备 {次数:[阶,颜色,是否套装,部位集合key], ...}
 	dict		ItemIDDropRate;	//指定物品ID掉率信息 {物品ID:概率, ...}
+	dict		TianxuanItemIDRate;	//天玄丹指定ID概率 {物品ID:概率, ...}
 	dict		ItemIDMaxDropCount;	//指定物品ID最大掉落个数,没配默认1次 {物品ID:随机次数,...}
 	dict		ItemKeyDropRate;	//物品ID集合Key概率, 随机一个, 优先级低 {物品ID集合key:概率, ...} 
 	dict		ItemKeyDropRateJob;	//物品ID集合Key概率, 自身职业, 优先级高 {物品ID集合key:概率, ...}
+	dict		TianxuanItemKeyRate;	//天玄丹指定ID集合Key概率{物品ID集合key:概率, ...}
 	dict		ItemKeyMaxDropCount;	//物品ID集合Key随机次数,没配默认1次 {物品ID集合key:随机次数,...}
 	BYTE		DropMoneyDoCnt;		//掉落金币执行次数
 	WORD		DropMoneyRate;		//掉落金币概率
@@ -692,6 +835,7 @@
 	DWORD		_MapID;	//地图ID
 	BYTE		CanRide;	//可否骑乘
 	BYTE		CanOutPet;	//可否召唤宠物
+	DWORD		SightType;	//视野类型
 };
 
 //副本总表
@@ -734,6 +878,20 @@
 	eval		RefreshNPC;	//标试点刷怪配置
 	eval		GradeInfo;	//评级规则
 	eval		RewardInfo;	//奖励信息
+};
+
+//副本回合制表
+
+struct tagFBTurn
+{
+	DWORD		_DataMapID;	//数据地图ID
+	WORD		_LineID;	//功能线路ID
+	DWORD		NPCID;	//NPCID
+	list		PetNPCIDList;	//灵宠NPCID列表
+	list		ElfSkillIDList;	//精怪技能ID列表
+	list		STSkillIDList;	//神通技能ID列表
+	list		AwardItemListFirst;	//首次过关奖励列表[[物品ID,个数,是否拍品], ...]
+	list		AwardItemList;	//再次过关奖励列表[[物品ID,个数,是否拍品], ...]
 };
 
 //副本助战表
@@ -785,6 +943,41 @@
 	BYTE		WeekResetType;	//每周次数重置类型; 0-不重置,1-0点,2-5点
 };
 
+//装备品质表
+
+struct tagEquipColor
+{
+	BYTE		_EquipColor;	// 装备颜色
+	list		RangeLV;		// 等级范围
+	list		RangeRand;		// 随机上下限范围
+	BYTE		BattleAttrCount;	// 战斗属性条数
+	BYTE		BattleDefAttrCount;	// 战斗抗性条数
+	list		RangeFaintRate;		// 击晕范围
+	list		RangeFaintDefRate;		// 抗击晕范围
+	list		RangeSuperHitRate;		// 暴击范围
+	list		RangeSuperHitRateReduce;		// 抗暴击范围
+	list		RangeComboRate;		// 连击范围
+	list		RangeComboDefRate;		// 抗连击范围
+	list		RangeMissRate;		// 闪避范围
+	list		RangeMissDefRate;		// 抗闪避范围
+	list		RangeAtkBackRate;		// 反击范围
+	list		RangeAtkBackDefRate;		// 抗反击范围
+	list		RangeSuckHPPer;		// 吸血范围
+	list		RangeSuckHPDefPer;		// 抗吸血范围
+};
+
+//装备品质部位表
+
+struct tagEquipColorPlace
+{
+	BYTE		_EquipColor;	// 装备颜色
+	BYTE		_EquipPlace;	// 装备部位
+	list		RangeAtk;		// 攻击范围
+	list		RangeHP;		// 生命范围
+	list		RangeDef;		// 防御范围
+	list		RangeAtkSpeed;		// 攻速范围
+};
+
 //装备评分属性系数表
 
 struct tagEquipGSParam
@@ -833,6 +1026,8 @@
 	DWORD		IgnoreDefRateC;	// 无视防御系数
 	DWORD		IgnoreDefRateReduceC;	// 无视防御减免系数
 	DWORD		ProDefPerC;	// 防护百分比系数
+	DWORD		FinalHurtPerC;	// 最终伤害加成系数
+	DWORD		FinalHurtReducePerC;	// 最终伤害减免系数
 };
 
 //成就表
@@ -939,8 +1134,11 @@
 
 struct tagAppointItem
 {
-	DWORD		_ID;	//定制物品ID
+	DWORD		_ID;	//定制ID
 	BYTE		CancelUseLimit;	//穿戴限制(除职业)
+	WORD		ItemLV;	//物品等级
+	list		BaseAttrID;	//基础属性ID
+	list		BaseAttrValue;	//基础属性值
 	list		LegendAttrID;	//传奇属性ID
 	list		LegendAttrValue;	//传奇属性值
 };
@@ -1383,6 +1581,8 @@
 	BYTE		CanResetBuyCount;	//是否允许重置次数
 	BYTE		TotalBuyCount;	//总限购次数
 	BYTE		DailyBuyCount;	//每日限购次数
+	BYTE		WeekBuyCount;	//每周限购次数
+	BYTE		MonthBuyCount;	//每月限购次数
 	WORD		GainGold;	//获得仙玉数
 	WORD		GainGoldPrize;	//赠送仙玉数
 	WORD		FirstGoldPrize;	//首次充值该档位赠送仙玉
@@ -1549,6 +1749,28 @@
 	char		NotifyKey;		//全服广播key,默认两个参数(玩家名, 档位额度)
 };
 
+//买一送多活动表
+
+struct tagActBuyOne
+{
+	DWORD		_CfgID;	//配置ID
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	WORD		LVLimit;	//限制等级
+	BYTE		IsDayReset;	//是否每天重置
+	list		TemplateIDList;	//模板ID列表
+};
+
+//买一送多模板表
+
+struct tagActBuyOneTemplate
+{
+	DWORD		_TemplateID;	//模板ID
+	DWORD		NeedCTGID;	//需要充值ID
+	BYTE		RecordIndex;	//记录索引
+	dict		FreeItemInfo;	//免费领取的物品信息列表{领取记录索引:[[物品ID,个数,是否拍品]], ...}
+};
+
 //集字活动时间表
 
 struct tagActCollectWords
@@ -1599,6 +1821,29 @@
 	list		ProduceGarbageRateList;	//随机产生垃圾概率饼图
 };
 
+//Boss历练活动表
+
+struct tagActBossTrial
+{
+	DWORD		_CfgID;	//配置ID
+	char		StartDate;	//开启日期
+	char		EndDate;	//结束日期
+	WORD		LVLimit;	//限制等级
+	BYTE		IsDayReset;	//是否每天重置
+	BYTE		ResetType;	//重置类型,0-0点重置;1-5点重置
+	dict		SubmitItemAwardInfo;	//提交凭证个数对应奖励
+	list		TemplateIDList;	//榜单模板编号列表
+};
+
+//Boss历练榜单模版表
+
+struct tagActBossTrialTemplate
+{
+	DWORD		_TemplateID;	//模板编号
+	BYTE		Rank;	//名次
+	list		AwardItemList;	//奖励物品信息列表 [[物品ID,个数,是否拍品], ...]
+};
+
 //仙匣秘境活动时间表
 
 struct tagActXianXiaMJ
@@ -1635,8 +1880,10 @@
 	char		EndDate;	//结束日期
 	BYTE		IsDayReset;	//是否每天重置
 	WORD		LVLimit;	//限制等级
-	list		UseGoldList;	//抽奖消耗仙玉列表
-	list		PrizeMoneyList;	//奖励灵石列表
+	BYTE		UseMoneyType;	//消耗货币类型
+	list		UseGoldList;	//抽奖消耗货币列表
+	BYTE		PrizeMoneyType;	//奖励货币类型
+	list		PrizeMoneyList;	//奖励货币列表
 	BYTE		ResetLimitTimes;	//至少抽几次可重置
 	BYTE		ResetCountMax;	//可重置次数
 	dict		TemplateIDInfo;	//奖池模板信息 {(世界等级A,B):[模板编号列表, ...], ...}
@@ -1843,6 +2090,8 @@
 	char		EndDate;	//结束日期
 	WORD		LVLimit;	//限制等级
 	BYTE		IsDayReset;	//是否每天重置
+	BYTE		CTGTypeEffValue;	//充值有效类型值
+	BYTE		IsOfflineAct;	//是否线下活动
 	list		TemplateIDList;	//模板ID列表
 };
 
@@ -1955,7 +2204,8 @@
 {
 	DWORD		_TemplateID;	//模板ID
 	float		SingleRechargeValue;	//单笔充值额度
-	BYTE		AwardIndex;		//返利奖励索引0~31,同个模板中不重复
+	BYTE		AwardIndex;		//同个模板中不重复
+	WORD		AwardCountMax;	//最大领奖次数,最大999次
 	dict		AwardItem;	//返利物品信息列表 {职业:[(物品ID,个数,是否绑定),...]}
 	char		NotifyKey;		//全服广播key,默认两个参数(玩家名, 档位额度)
 };
@@ -2098,6 +2348,7 @@
 struct tagCoat
 {
 	DWORD		_CoatID;	//时装编号
+	BYTE		CostQuality;	//时装品质 0-普通;1-稀有;2-传说
 	list		EquipItemID;	//装备物品ID(按职业顺序)
 	DWORD		UnlockItemID;	//材料物品ID
 	DWORD		MaxLV;	//最大星级
@@ -2438,6 +2689,27 @@
 	dict		Award2;	//饼图奖励{随机次数:[(概率,[物品ID,数量,是否拍品]),..]}
 };
 
+//仙盟试炼伤血奖励表
+
+struct tagFamilyBossHurtAward
+{
+	BYTE		_AwardType;	//奖励类型 1-个人;2-仙盟
+	BYTE		_RecordIndex;	//奖励记录索引,同奖励类型时记录索引不可重复
+	DWORD		NeedHurtTotal;	//所需总伤血
+	list		AwardItemList;	//奖励物品列表[[物品ID,个数,是否拍品], ...]
+};
+
+//仙盟阵法表
+
+struct tagFamilyZhenfa
+{
+	BYTE		_ZhenfaType;	// 阵法类型
+	WORD		_ZhenfaLV;	// 阵法等级
+	DWORD		LVUpNeedExp;	//升下一级所需经验
+	list		LVAttrType;	//累计总属性类型
+	list		LVAttrValue;	//累计总属性值
+};
+
 //装备洗练等级上限
 
 struct tagItemWashMax
@@ -2535,8 +2807,8 @@
 struct tagSkyTowerServerChallenge
 {
 	DWORD		_FloorID;	//层
-	BYTE		RewardRecordIndex;	//奖励记录位索引
-	dict		Reward;	//奖励
+	dict		PassRankRewardInfo;	//通关排名奖励 {"名次":[[物品ID,个数,是否拍品],...], ...}
+	dict		ServerRewardInfo;	//通关排名奖励 {"所需过关人数":[[物品ID,个数,是否拍品],...], ...}
 };
 
 //灵根特效表
@@ -2630,3 +2902,33 @@
 	float		NeedRMB;	//所需充值元
 	dict		Reward;	//职业对应的奖励内容,每个职业4组数据,物品ID和物品数量(1.枪豪2.道师3.剑修)
 };
+
+//奖励表
+
+struct tagCustomAward
+{
+	BYTE		_AwardID;	//奖励ID 1~n
+	list		AwardItemList;	//物品奖励[[物品ID,个数,是否拍品], ...]
+};
+
+//战令表
+
+struct tagZhanling
+{
+	BYTE		_ZhanlingType;	//战令类型
+	DWORD		_NeedValue;	//所需值
+	BYTE		RewardIndex;	//奖励记录索引,0~n,同个战令类型不可重复
+	list		FreeRewardItemList;	//免费奖励物品列表 [[物品ID,个数,是否拍品],...]
+	list		ZLRewardItemList;	//战令奖励物品列表 [[物品ID,个数,是否拍品],...]
+};
+
+//仙树等级表
+
+struct tagTreeLV
+{
+	BYTE		_TreeLV;	//仙树等级
+	DWORD		LVUPNeedMoney;	//升到下一级所需货币数
+	DWORD		LVUPNeedTime;	//升级下一级所需所需秒
+	list		EquipColorRateList;	//产出装备品质概率列表,[0品质万分率, 1品质万分率, ...]
+	list		ExAwardItemRateList;	//每次砍树概率额外产出道具饼图,[[万分率,[物品ID,个数]], ...]
+};

--
Gitblit v1.8.0