diff --git a/lua/app/common/bi_report.lua b/lua/app/common/bi_report.lua index 820817ff..8f66ffcc 100644 --- a/lua/app/common/bi_report.lua +++ b/lua/app/common/bi_report.lua @@ -1048,21 +1048,23 @@ function BIReport:postAppLovinAdRevenue(msg) end -- 竞技场进入消耗上报 -function BIReport:postArenaConsume(todayConsume) +function BIReport:postArenaConsume(gradingId, todayConsume) local args = { event_type = BIReport.ARENA_OPT_TYPE.CONSUME, + grading_id = gradingId, today_consume = todayConsume, } self:report(EVENT_NAME_ARENA_OPT, args) end -- 竞技场结算数据上报 -function BIReport:postArenaSettlement(gradingId, round, winRate) +function BIReport:postArenaSettlement(gradingId, round, winRate, win) local args = { event_type = BIReport.ARENA_OPT_TYPE.SETTLEMENT, grading_id = gradingId, round = round, win_rate = winRate, + win = win, } self:report(EVENT_NAME_ARENA_OPT, args) end diff --git a/lua/app/config/arena_rank.lua b/lua/app/config/arena_rank.lua index 13eeb758..fbc203a0 100644 --- a/lua/app/config/arena_rank.lua +++ b/lua/app/config/arena_rank.lua @@ -144,7 +144,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -310,7 +310,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -476,7 +476,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -650,7 +650,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -824,7 +824,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -998,7 +998,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -1172,7 +1172,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -1346,7 +1346,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -1520,7 +1520,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -1694,7 +1694,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -1868,7 +1868,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -2042,7 +2042,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -2200,7 +2200,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -2366,7 +2366,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -2532,7 +2532,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -2706,7 +2706,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -2880,7 +2880,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -3054,7 +3054,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -3228,7 +3228,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -3402,7 +3402,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -3576,7 +3576,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -3750,7 +3750,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -3924,7 +3924,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -4098,7 +4098,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -4254,7 +4254,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -4418,7 +4418,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -4582,7 +4582,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -4754,7 +4754,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -4926,7 +4926,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -5098,7 +5098,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -5270,7 +5270,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -5442,7 +5442,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -5614,7 +5614,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -5786,7 +5786,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -5958,7 +5958,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 @@ -6130,7 +6130,7 @@ local arena_rank = { ["round"]=0 }, { - ["type"]="dmg_dec_all_add", + ["type"]="end_dmg_dec_all_add", ["num"]=8000, ["ratio"]=10000, ["round"]=0 diff --git a/lua/app/config/buff.lua b/lua/app/config/buff.lua index 3dd3ce0a..61f1b1a8 100644 --- a/lua/app/config/buff.lua +++ b/lua/app/config/buff.lua @@ -674,6 +674,20 @@ local buff = { ["name"]="invalid_control", ["buff_type"]=7, ["decr"]=3 + }, + [77]={ + ["id"]=77, + ["name"]="end_dmg_addition_all_add", + ["buff_type"]=1, + ["stack"]=2, + ["decr"]=1 + }, + [78]={ + ["id"]=78, + ["name"]="end_dmg_dec_all_add", + ["buff_type"]=1, + ["stack"]=2, + ["decr"]=2 } } local keys = { @@ -753,12 +767,14 @@ local keys = { ["shield_rebound_400"]=buff[73], ["shield_ice"]=buff[74], ["shield_ice_rebound_400"]=buff[75], - ["invalid_control"]=buff[76] + ["invalid_control"]=buff[76], + ["end_dmg_addition_all_add"]=buff[77], + ["end_dmg_dec_all_add"]=buff[78] } } local config = { data=buff, keys=keys, -count=76 +count=78 } return config \ No newline at end of file diff --git a/lua/app/config/skill_rogue.lua b/lua/app/config/skill_rogue.lua index fae7af66..0b92c33b 100644 --- a/lua/app/config/skill_rogue.lua +++ b/lua/app/config/skill_rogue.lua @@ -2472,6 +2472,12 @@ local skill_rogue = { ["num"]=3400120, ["ratio"]=10000, ["round"]=1 + }, + { + ["type"]="skill_fire_times", + ["num"]=3400125, + ["ratio"]=10000, + ["round"]=1 } }, ["obj"]=5, diff --git a/lua/app/module/arena/arena_manager.lua b/lua/app/module/arena/arena_manager.lua index c251b19e..7021b839 100644 --- a/lua/app/module/arena/arena_manager.lua +++ b/lua/app/module/arena/arena_manager.lua @@ -107,7 +107,7 @@ function ArenaManager:rspChallenge(result) --bi上报 LocalData:recordTodayArenaBattle() - BIReport:postArenaConsume(LocalData:getTodayArenaBattleCount()) + BIReport:postArenaConsume(DataManager.ArenaData:getGradingId(), LocalData:getTodayArenaBattleCount()) end end @@ -142,7 +142,7 @@ function ArenaManager:rspSettlement(result) --bi上报 local winRate = result.total_win_count / (result.total_win_count + result.total_lose_count) - BIReport:postArenaSettlement(DataManager.ArenaData:getGradingId(), reqData.battleReport.round, winRate) + BIReport:postArenaSettlement(DataManager.ArenaData:getGradingId(), reqData.battleReport.round, winRate, result.settlement.win) end end diff --git a/lua/app/module/battle/battle_const.lua b/lua/app/module/battle/battle_const.lua index 65e9856a..fb605596 100644 --- a/lua/app/module/battle/battle_const.lua +++ b/lua/app/module/battle/battle_const.lua @@ -331,6 +331,8 @@ local BUFF_NAME = { SHIELD_ICE = "shield_ice", SHIELD_ICE_REBOUND_400 = "shield_ice_rebound_400", INVALID_CONTROL = "invalid_control", + END_DMG_ADDITION_ALL_ADD = "end_dmg_addition_all_add", + END_DMG_DEC_ALL_ADD = "end_dmg_dec_all_add", } BattleConst.BUFF_NAME = BUFF_NAME @@ -386,6 +388,8 @@ local ATTR_NAME = { DEATH_SUMMON = "death_summon", BLEED = "bleed", INVALID_CONTROL = "invalid_control", + END_DMG_ADDITION_ALL = "end_dmg_addition_all", + END_DMG_DEC_ALL = "end_dmg_dec_all", } BattleConst.ATTR_NAME = ATTR_NAME @@ -435,6 +439,8 @@ BattleConst.BUFF_NAME_TO_ATTR = { [BUFF_NAME.FIRST_HAND] = {ATTR_NAME.FIRST_HAND, false}, [BUFF_NAME.COUNTER_ATTACK] = {ATTR_NAME.COUNTER_ATTACK, false}, [BUFF_NAME.SKILL_HURT_ADD] = {ATTR_NAME.SKILL_HURT, false}, + [BUFF_NAME.END_DMG_ADDITION_ALL_ADD] = {ATTR_NAME.END_DMG_ADDITION_ALL, false}, + [BUFF_NAME.END_DMG_DEC_ALL_ADD] = {ATTR_NAME.END_DMG_DEC_ALL, false}, } ---- 格子类型 diff --git a/lua/app/module/battle/helper/battle_formula.lua b/lua/app/module/battle/helper/battle_formula.lua index a2a48839..ca2d05a3 100644 --- a/lua/app/module/battle/helper/battle_formula.lua +++ b/lua/app/module/battle/helper/battle_formula.lua @@ -15,7 +15,7 @@ function BattleFormula:getDamageOrCureResult(unitComp, buff, targetUnitComp) end BattleFormula.calculateFormula = { - -- (攻击)*技能倍率*(1+(攻击者元素伤害增加+所有伤害增加)(攻击者)- (攻击者元素伤害降低+所有伤害降低) +(受到元素伤害增加+受到所有伤害增加(受击)-受到元素伤害降低-受到所有伤害降低(受击) + 主动技能增伤)*暴击伤害 + -- (攻击)*技能倍率*(1+(攻击者元素伤害增加+所有伤害增加)(攻击者)- (攻击者元素伤害降低+所有伤害降低) +(受到元素伤害增加+受到所有伤害增加(受击)-受到元素伤害降低-受到所有伤害降低(受击) + 主动技能增伤)*暴击伤害*(1-最终造成伤害降低%+最终造成伤害增加%) [1] = function(unitComp, buff, targetUnit) local skillHurtAdd = 0 local hostSkill = buff:getHostSkill() @@ -33,6 +33,8 @@ BattleFormula.calculateFormula = { hurtState = HURT_STATE_CRIT end end + -- 最终伤害 + result = result * (DEFAULT_FACTOR - unitComp.unitEntity:getEndDmgDecAll() + unitComp.unitEntity:getEndDmgAddtionAll()) // DEFAULT_FACTOR return result, hurtState end, -- 生命值*回合开始时的回血系数*(1 + 治疗效果增加) diff --git a/lua/app/module/battle/skill/battle_rogue_skill_handle.lua b/lua/app/module/battle/skill/battle_rogue_skill_handle.lua index 11252f26..2cf42f36 100644 --- a/lua/app/module/battle/skill/battle_rogue_skill_handle.lua +++ b/lua/app/module/battle/skill/battle_rogue_skill_handle.lua @@ -340,7 +340,7 @@ local _addLinkCountMoreEffect = function(skillId, skillInfo, battleBaseData, bat entity:removeLinkCountMoreEffects(skillInfo.cover_unlock) end for k, effect in ipairs(skillInfo.effect) do - local paramsCount = skillInfo.parameter[k] + local paramsCount = skillInfo.parameter[1] if paramsCount then entity:addLinkCountMoreEffects(skillId, k, effect, unitEntity, skillInfo.obj, paramsCount) end diff --git a/lua/app/userdata/battle/team/battle_unit_entity.lua b/lua/app/userdata/battle/team/battle_unit_entity.lua index e8db0e48..ede08bf0 100644 --- a/lua/app/userdata/battle/team/battle_unit_entity.lua +++ b/lua/app/userdata/battle/team/battle_unit_entity.lua @@ -431,6 +431,14 @@ function BattleUnitEntity:getIsInvalidControl() return self:getAttrValue(GConst.BattleConst.ATTR_NAME.INVALID_CONTROL) > 0 end +function BattleUnitEntity:getEndDmgAddtionAll() + return self:getAttrValue(GConst.BattleConst.ATTR_NAME.END_DMG_ADDITION_ALL) +end + +function BattleUnitEntity:getEndDmgDecAll() + return self:getAttrValue(GConst.BattleConst.ATTR_NAME.END_DMG_DEC_ALL) +end + function BattleUnitEntity:getAttrValue(attr) return self.team:getAttrValue(attr) end diff --git a/lua/app/userdata/formation/formation_data.lua b/lua/app/userdata/formation/formation_data.lua index 076fed1d..4125bdb4 100644 --- a/lua/app/userdata/formation/formation_data.lua +++ b/lua/app/userdata/formation/formation_data.lua @@ -134,6 +134,8 @@ function FormationData:getStageFormationBIStr() allHp = allHp + entity:getHp() end end + allAtk = allAtk // GConst.BattleConst.DEFAULT_FACTOR + allHp = allHp // GConst.BattleConst.DEFAULT_FACTOR return str, totalLevel, allAtk, allHp end diff --git a/lua/app/userdata/hero/hero_entity.lua b/lua/app/userdata/hero/hero_entity.lua index 1176378c..6bcd2eea 100644 --- a/lua/app/userdata/hero/hero_entity.lua +++ b/lua/app/userdata/hero/hero_entity.lua @@ -134,7 +134,8 @@ function HeroEntity:getAttrValue(name) end function HeroEntity:getAtk() - return self:getAttrValue(GConst.BattleConst.ATTR_NAME.ATK) + local atkName = GConst.MATCH_ATTACK_NAME[self:getMatchType()] + return self:getAttrValue(atkName) end function HeroEntity:getHp()