Commit 9780751116fc0ae6d58aed8f0dc1cea359135308
1 parent
e24d1abd
增加日志
Showing
5 changed files
with
179 additions
and
3 deletions
Show diff stats
src/actions/AdvAction.lua
@@ -439,6 +439,16 @@ function _M.finishTaskRpc(agent, data) | @@ -439,6 +439,16 @@ function _M.finishTaskRpc(agent, data) | ||
439 | role:checkTaskEnter("AdvOverTask", {id = taskId}) | 439 | role:checkTaskEnter("AdvOverTask", {id = taskId}) |
440 | 440 | ||
441 | adv:mylog({desc = "finishTask", int1 = taskId}) | 441 | adv:mylog({desc = "finishTask", int1 = taskId}) |
442 | + | ||
443 | + role:log("mission_pick_achiev", { | ||
444 | + mission_threadid = adv.chapterId, -- 大地图ID | ||
445 | + mission_threadname = (csvdb["adv_chapterCsv"][adv.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | ||
446 | + mission_id = adv.level, -- 关卡ID | ||
447 | + mission_sequenceid = adv.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
448 | + mission_pick_achiev_id = taskId, -- 任务ID | ||
449 | + mission_pick_achiev_reward = reward, -- 任务奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | ||
450 | + }) | ||
451 | + | ||
442 | 452 | ||
443 | SendPacket(actionCodes.Adv_finishTaskRpc, MsgPack.pack(role:packReward(reward, change))) | 453 | SendPacket(actionCodes.Adv_finishTaskRpc, MsgPack.pack(role:packReward(reward, change))) |
444 | return true | 454 | return true |
@@ -501,6 +511,15 @@ function _M.useItemRpc(agent, data) | @@ -501,6 +511,15 @@ function _M.useItemRpc(agent, data) | ||
501 | adv:checkAchievement(adv.AchievType.UseItem, count, itemId) | 511 | adv:checkAchievement(adv.AchievType.UseItem, count, itemId) |
502 | adv:mylog({desc = "useItem", int1 = itemId, int2 = count}) | 512 | adv:mylog({desc = "useItem", int1 = itemId, int2 = count}) |
503 | 513 | ||
514 | + role:log("mission_pick_use", { | ||
515 | + mission_threadid = adv.chapterId, -- 大地图ID | ||
516 | + mission_threadname = (csvdb["adv_chapterCsv"][adv.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | ||
517 | + mission_id = adv.level, -- 关卡ID | ||
518 | + item_id = itemId, -- 道具ID | ||
519 | + mission_pick_use_num = count, -- 道具使用量 | ||
520 | + mission_sequenceid = adv.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
521 | + }) | ||
522 | + | ||
504 | for i = 1, count do | 523 | for i = 1, count do |
505 | adv:doActive(itemData.effect, target) -- target | 524 | adv:doActive(itemData.effect, target) -- target |
506 | end | 525 | end |
@@ -587,6 +606,7 @@ function _M.wearArtifactRpc(agent, data) | @@ -587,6 +606,7 @@ function _M.wearArtifactRpc(agent, data) | ||
587 | 606 | ||
588 | local status = adv:wearArtifact(slot, id) | 607 | local status = adv:wearArtifact(slot, id) |
589 | if not status then return 3 end | 608 | if not status then return 3 end |
609 | + | ||
590 | adv:saveDB() | 610 | adv:saveDB() |
591 | 611 | ||
592 | role:finishGuide(55) | 612 | role:finishGuide(55) |
@@ -612,7 +632,20 @@ function _M.upArtifactRpc(agent, data) | @@ -612,7 +632,20 @@ function _M.upArtifactRpc(agent, data) | ||
612 | if not adv:cost(cost, {}, true) then return 4 end | 632 | if not adv:cost(cost, {}, true) then return 4 end |
613 | 633 | ||
614 | local status = adv:artifactLevelUp(id) | 634 | local status = adv:artifactLevelUp(id) |
615 | - if not status then return 5 end | 635 | + if not status then |
636 | + return 5 | ||
637 | + else | ||
638 | + role:log("mission_pick_reform", { | ||
639 | + mission_threadid = adv.chapterId, -- 大地图ID | ||
640 | + mission_threadname = (csvdb["adv_chapterCsv"][adv.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | ||
641 | + mission_id = adv.level, -- 关卡ID | ||
642 | + mission_pick_equip_id = id, -- 神器ID | ||
643 | + mission_pick_reform_beflv = curLevel, -- 神器原等级 | ||
644 | + mission_pick_reform_aftlv = curLevel + 1, -- 神器现等级 | ||
645 | + mission_pick_reform_cost = cost[ItemId.AdvPoint], -- 消耗探险点数 | ||
646 | + mission_sequenceid = adv.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
647 | + }) | ||
648 | + end | ||
616 | adv:cost(cost, {log = {desc = "upArtifact", int1 = id}}) | 649 | adv:cost(cost, {log = {desc = "upArtifact", int1 = id}}) |
617 | adv:backCost(cost) | 650 | adv:backCost(cost) |
618 | if status == 1 then -- 现在穿着呢。更新下 | 651 | if status == 1 then -- 现在穿着呢。更新下 |
@@ -774,7 +807,7 @@ function _M.wheelSurfRpc(agent, data) | @@ -774,7 +807,7 @@ function _M.wheelSurfRpc(agent, data) | ||
774 | 807 | ||
775 | if not role:checkItemEnough(costs) then return 5 end | 808 | if not role:checkItemEnough(costs) then return 5 end |
776 | role:costItems(costs, {log = {desc = "advWheelSurf", int1 = ptype}}) | 809 | role:costItems(costs, {log = {desc = "advWheelSurf", int1 = ptype}}) |
777 | - role:addAdvLvExp(costs[ItemId.OldCoin] or 0) | 810 | + local oldLv, lv = role:addAdvLvExp(costs[ItemId.OldCoin] or 0) |
778 | local advDrawB = role:getProperty("advDrawB") | 811 | local advDrawB = role:getProperty("advDrawB") |
779 | advDrawB[ptype] = (advDrawB[ptype] or 0) + count | 812 | advDrawB[ptype] = (advDrawB[ptype] or 0) + count |
780 | role:updateProperty({field = "advDrawB", value = advDrawB}) | 813 | role:updateProperty({field = "advDrawB", value = advDrawB}) |
@@ -793,6 +826,16 @@ function _M.wheelSurfRpc(agent, data) | @@ -793,6 +826,16 @@ function _M.wheelSurfRpc(agent, data) | ||
793 | role:checkTaskEnter("AdvDraw", {count = count, ptype = ptype}) | 826 | role:checkTaskEnter("AdvDraw", {count = count, ptype = ptype}) |
794 | role:mylog("adv_action", {desc = "advWheelSurf", int1 = ptype, int2 = count}) | 827 | role:mylog("adv_action", {desc = "advWheelSurf", int1 = ptype, int2 = count}) |
795 | 828 | ||
829 | + role:log("mission_pick_fund", { | ||
830 | + item_id = ItemId.OldCoin, -- 资助花费道具ID | ||
831 | + mission_pick_fund_amount = costs[ItemId.OldCoin], -- 资助花费道具数量 | ||
832 | + mission_pick_fund_cnt = count, -- 资助花费道具次数,1或者10 | ||
833 | + mission_pick_fund_reward = reward, -- 资助获得奖励,[{"id":100,"num":10},{"id":101,"num":20},{"id":102,"num":30}] | ||
834 | + mission_pick_fund_stagereward = {}, -- 资助阶段奖励 | ||
835 | + mission_pick_fund_beflv = oldLv, -- 资助前资助等级 | ||
836 | + mission_pick_fund_aftlv = lv, -- 资助后资助等级 | ||
837 | + }) | ||
838 | + | ||
796 | SendPacket(actionCodes.Adv_wheelSurfRpc, MsgPack.pack({reward = backReward})) | 839 | SendPacket(actionCodes.Adv_wheelSurfRpc, MsgPack.pack({reward = backReward})) |
797 | return true | 840 | return true |
798 | end | 841 | end |
src/adv/Adv.lua
@@ -51,6 +51,7 @@ function Adv:initByInfo(advInfo) | @@ -51,6 +51,7 @@ function Adv:initByInfo(advInfo) | ||
51 | self.cacheUnlock = advInfo.cacheUnlock or {} | 51 | self.cacheUnlock = advInfo.cacheUnlock or {} |
52 | self.shopStatus = advInfo.shopStatus or {} | 52 | self.shopStatus = advInfo.shopStatus or {} |
53 | self.support = advInfo.support or {} | 53 | self.support = advInfo.support or {} |
54 | + self.logid = advInfo.logid or "auto" | ||
54 | 55 | ||
55 | self.maps = {} | 56 | self.maps = {} |
56 | for id, map in ipairs(advInfo.maps or {}) do | 57 | for id, map in ipairs(advInfo.maps or {}) do |
@@ -102,6 +103,7 @@ function Adv:initByChapter(params) | @@ -102,6 +103,7 @@ function Adv:initByChapter(params) | ||
102 | self.shopStatus = self.shopStatus or {} | 103 | self.shopStatus = self.shopStatus or {} |
103 | self.support = self.support or {} | 104 | self.support = self.support or {} |
104 | self.battle = nil -- 清掉 老的 battle | 105 | self.battle = nil -- 清掉 老的 battle |
106 | + self.logid = self.owner:getActionUcode() | ||
105 | 107 | ||
106 | if isEnter then -- 把 支援效果初始化为易用用的形式 | 108 | if isEnter then -- 把 支援效果初始化为易用用的形式 |
107 | self:initSupport(support or {}) | 109 | self:initSupport(support or {}) |
@@ -206,6 +208,7 @@ function Adv:saveDB(notNotify) | @@ -206,6 +208,7 @@ function Adv:saveDB(notNotify) | ||
206 | advInfo.cacheUnlock = self.cacheUnlock | 208 | advInfo.cacheUnlock = self.cacheUnlock |
207 | advInfo.shopStatus = self.shopStatus | 209 | advInfo.shopStatus = self.shopStatus |
208 | advInfo.support = self.support | 210 | advInfo.support = self.support |
211 | + advInfo.logid = self.logid | ||
209 | advInfo.maps = {} | 212 | advInfo.maps = {} |
210 | 213 | ||
211 | self.battle:saveDB() | 214 | self.battle:saveDB() |
@@ -610,6 +613,15 @@ function Adv:wearArtifact(slot, id) | @@ -610,6 +613,15 @@ function Adv:wearArtifact(slot, id) | ||
610 | id = nil | 613 | id = nil |
611 | end | 614 | end |
612 | self:mylog({desc = "wearArtifact", int1 = id}) | 615 | self:mylog({desc = "wearArtifact", int1 = id}) |
616 | + self.owner:log("mission_pick_equip", { | ||
617 | + mission_threadid = self.chapterId, -- 大地图ID | ||
618 | + mission_threadname = (csvdb["adv_chapterCsv"][self.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | ||
619 | + mission_id = self.level, -- 关卡ID | ||
620 | + mission_pick_equip_type = 1, --神器操作类型:1:装备,2:卸下 | ||
621 | + mission_pick_equip_id = id, --神器ID | ||
622 | + mission_pick_equip_lv = advAFGet[id], --神器等级 | ||
623 | + mission_sequenceid = self.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
624 | + }) | ||
613 | 625 | ||
614 | self.owner:changeUpdates({{type = "advAFWear", field = slot, value = id}}) | 626 | self.owner:changeUpdates({{type = "advAFWear", field = slot, value = id}}) |
615 | return true | 627 | return true |
@@ -670,7 +682,6 @@ function Adv:artifactLevelUp(id, level) | @@ -670,7 +682,6 @@ function Adv:artifactLevelUp(id, level) | ||
670 | 682 | ||
671 | self:mylog({desc = "artifactLevelUp", int1 = id, int2 = level}) | 683 | self:mylog({desc = "artifactLevelUp", int1 = id, int2 = level}) |
672 | 684 | ||
673 | - | ||
674 | local status = 0 | 685 | local status = 0 |
675 | if curWear[id] then -- 穿着呢 | 686 | if curWear[id] then -- 穿着呢 |
676 | local oldData = csvdb["adv_artifactCsv"][id][advAFGet[id]] | 687 | local oldData = csvdb["adv_artifactCsv"][id][advAFGet[id]] |
@@ -815,6 +826,49 @@ function Adv:over(success, rewardRatio, overType) | @@ -815,6 +826,49 @@ function Adv:over(success, rewardRatio, overType) | ||
815 | 826 | ||
816 | self:mylog({desc = "over", short1 = success and 1 or 0, int1 = overType}) | 827 | self:mylog({desc = "over", short1 = success and 1 or 0, int1 = overType}) |
817 | 828 | ||
829 | + | ||
830 | + local team = self.owner:getProperty("advTeam") | ||
831 | + local player = {} | ||
832 | + local attrs = self.owner:getTeamBattleInfo(team).heros | ||
833 | + for attrName, _ in pairs(AdvAttsEnum) do | ||
834 | + for _, hero in pairs(attrs) do | ||
835 | + player[attrName] = (player[attrName] or 0) + hero[attrName] | ||
836 | + end | ||
837 | + player[attrName] = player[attrName] * (globalCsv.adv_battle_attr_ratio[attrName] or 1) | ||
838 | + end | ||
839 | + | ||
840 | + local battleV = 1 * player["hp"] | ||
841 | + + 2 * player["atk"] | ||
842 | + + 1.25 * player["def"] | ||
843 | + + 0.226 * player["hit"] | ||
844 | + + 0.26 * player["miss"] | ||
845 | + | ||
846 | + local heroList = {team.leader, team.leader2} | ||
847 | + for _, hid in pairs(team.heros) do | ||
848 | + if hid ~= team.leader and hid ~= team.leader2 then | ||
849 | + heroList[#heroList + 1] = hid | ||
850 | + end | ||
851 | + end | ||
852 | + | ||
853 | + self.owner:log("mission_pick", { | ||
854 | + mission_threadid = self.chapterId, -- 大地图ID | ||
855 | + mission_threadname = (csvdb["adv_chapterCsv"][self.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | ||
856 | + mission_id = self.level, -- 关卡ID | ||
857 | + mission_herolist = heroList, -- 英雄ID列表,[111, 222, 333, 444, 555] 前两个为队长、副队长 | ||
858 | + mission_heroscore = battleV, -- 编队总评分 | ||
859 | + mission_teamlv = 0, -- 编队等级 | ||
860 | + mission_recscore = csvdb["adv_chapter_campsiteCsv"][self.chapterId][1].recommendValue, -- 关卡推荐评分 | ||
861 | + mission_floor_bef = 0, -- 进入前关卡层数 | ||
862 | + mission_floor_aft = self.level, -- 结束时关卡层数 | ||
863 | + mission_team_status = {HP = team.player.hp, SP = team.player.sp}, -- 队伍状态,{"HP":100, "SP":100, "curse":7} | ||
864 | + mission_result = success and 1 or (team.player.hp > 0 and 3 or 2), -- 战斗结果(0-无效,1-胜利,2-血量耗尽退出,3,主动退出) | ||
865 | + mission_reward = reward, -- 获得奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | ||
866 | + mission_integral_bef = 0, -- 进入前积分 | ||
867 | + mission_integral_aft = score, -- 完成后积分 | ||
868 | + mission_cleartype = 1, -- 1正常通关;2代理拾荒 | ||
869 | + mission_sequenceid = self.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
870 | + }) | ||
871 | + | ||
818 | local chapterId = self.chapterId | 872 | local chapterId = self.chapterId |
819 | self:clear() | 873 | self:clear() |
820 | self.owner:checkTaskEnter("AdvScore", {score = score}) | 874 | self.owner:checkTaskEnter("AdvScore", {score = score}) |
src/models/RoleLog.lua
@@ -422,6 +422,79 @@ local MethodType = { | @@ -422,6 +422,79 @@ local MethodType = { | ||
422 | gift_name = true, -- 礼包名称 | 422 | gift_name = true, -- 礼包名称 |
423 | gift_reason = true, -- 礼包发放原因,见发放原因枚举表 | 423 | gift_reason = true, -- 礼包发放原因,见发放原因枚举表 |
424 | }, | 424 | }, |
425 | + | ||
426 | + push_gift = { -- 礼包推送 | ||
427 | + gift_id = true, --礼包ID | ||
428 | + gift_name = true, --礼包名称 | ||
429 | + }, | ||
430 | + | ||
431 | + mission_pick = { --拾荒玩法 | ||
432 | + mission_threadid = true, -- 大地图ID | ||
433 | + mission_threadname = true, -- 大地图名称 | ||
434 | + mission_id = true, -- 关卡ID | ||
435 | + mission_herolist = "json", -- 英雄ID列表,[111, 222, 333, 444, 555] 前两个为队长、副队长 | ||
436 | + mission_heroscore = true, -- 编队总评分 | ||
437 | + mission_teamlv = true, -- 编队等级 | ||
438 | + mission_recscore = true, -- 关卡推荐评分 | ||
439 | + mission_floor_bef = true, -- 进入前关卡层数 | ||
440 | + mission_floor_aft = true, -- 结束时关卡层数 | ||
441 | + mission_team_status = "json", -- 队伍状态,{"HP":100, "SP":100, "curse":7} | ||
442 | + mission_result = true, -- 战斗结果(0-无效,1-胜利,2-血量耗尽退出,3,主动退出) | ||
443 | + mission_reward = "json", -- 获得奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | ||
444 | + mission_integral_bef = true, -- 进入前积分 | ||
445 | + mission_integral_aft = true, -- 完成后积分 | ||
446 | + mission_cleartype = true, -- 1正常通关;2代理拾荒 | ||
447 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
448 | + }, | ||
449 | + | ||
450 | + mission_pick_achiev = { --拾荒任务 | ||
451 | + mission_threadid = true, -- 大地图ID | ||
452 | + mission_threadname = true, -- 大地图名称 | ||
453 | + mission_id = true, -- 关卡ID | ||
454 | + mission_pick_achiev_id = true, -- 任务ID | ||
455 | + mission_pick_achiev_reward = "json", -- 任务奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | ||
456 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
457 | + }, | ||
458 | + | ||
459 | + mission_pick_equip = { -- 拾荒神器装备 | ||
460 | + mission_threadid = true, --大地图ID | ||
461 | + mission_threadname = true, --大地图名称 | ||
462 | + mission_id = true, --关卡ID | ||
463 | + mission_pick_equip_type = true, --神器操作类型:1:装备,2:卸下 | ||
464 | + mission_pick_equip_id = true, --神器ID | ||
465 | + mission_pick_equip_lv = true, --神器等级 | ||
466 | + mission_sequenceid = true, --本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
467 | + }, | ||
468 | + | ||
469 | + mission_pick_reform = { --拾荒神器升级 | ||
470 | + mission_threadid = true, -- 大地图ID | ||
471 | + mission_threadname = true, -- 大地图名称 | ||
472 | + mission_id = true, -- 关卡ID | ||
473 | + mission_pick_equip_id = true, -- 神器ID | ||
474 | + mission_pick_reform_beflv = true, -- 神器原等级 | ||
475 | + mission_pick_reform_aftlv = true, -- 神器现等级 | ||
476 | + mission_pick_reform_cost = true, -- 消耗探险点数 | ||
477 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
478 | + }, | ||
479 | + | ||
480 | + mission_pick_use = { --拾荒任务道具使用 | ||
481 | + mission_threadid = true, -- 大地图ID | ||
482 | + mission_threadname = true, -- 大地图名称 | ||
483 | + mission_id = true, -- 关卡ID | ||
484 | + item_id = true, -- 道具ID | ||
485 | + mission_pick_use_num = true, -- 道具使用量 | ||
486 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | ||
487 | + }, | ||
488 | + | ||
489 | + mission_pick_fund = { --拾荒资助 | ||
490 | + item_id = true, -- 资助花费道具ID | ||
491 | + mission_pick_fund_amount = true, -- 资助花费道具数量 | ||
492 | + mission_pick_fund_cnt = true, -- 资助花费道具次数,1或者10 | ||
493 | + mission_pick_fund_reward = "json", -- 资助获得奖励,[{"id":100,"num":10},{"id":101,"num":20},{"id":102,"num":30}] | ||
494 | + mission_pick_fund_stagereward = "json", -- 资助阶段奖励 | ||
495 | + mission_pick_fund_beflv = true, -- 资助前资助等级 | ||
496 | + mission_pick_fund_aftlv = true, -- 资助后资助等级 | ||
497 | + }, | ||
425 | } | 498 | } |
426 | 499 | ||
427 | local function printError(info) | 500 | local function printError(info) |
src/models/RolePlugin.lua
@@ -1189,6 +1189,7 @@ function RolePlugin.bind(Role) | @@ -1189,6 +1189,7 @@ function RolePlugin.bind(Role) | ||
1189 | function Role:addAdvLvExp(exp) | 1189 | function Role:addAdvLvExp(exp) |
1190 | local advL = self:getProperty("advL") | 1190 | local advL = self:getProperty("advL") |
1191 | local level = advL[1] | 1191 | local level = advL[1] |
1192 | + local oldLevel = level | ||
1192 | local newExp = (advL[2] or 0) + exp | 1193 | local newExp = (advL[2] or 0) + exp |
1193 | 1194 | ||
1194 | if not csvdb["adv_level_fundCsv"][level + 1] then | 1195 | if not csvdb["adv_level_fundCsv"][level + 1] then |
@@ -1211,6 +1212,7 @@ function RolePlugin.bind(Role) | @@ -1211,6 +1212,7 @@ function RolePlugin.bind(Role) | ||
1211 | advL[1] = level | 1212 | advL[1] = level |
1212 | advL[2] = newExp | 1213 | advL[2] = newExp |
1213 | self:updateProperty({field = "advL", value = advL}) | 1214 | self:updateProperty({field = "advL", value = advL}) |
1215 | + return oldLevel, level | ||
1214 | end | 1216 | end |
1215 | 1217 | ||
1216 | function Role:getAdvWheelSurfLv(ptype) | 1218 | function Role:getAdvWheelSurfLv(ptype) |
src/models/Store.lua
@@ -353,6 +353,10 @@ function Store:OnTriggerLimitTimePack(eventType, param) | @@ -353,6 +353,10 @@ function Store:OnTriggerLimitTimePack(eventType, param) | ||
353 | local rechargeCfg = csvdb["shop_rechargeCsv"][config.packId] | 353 | local rechargeCfg = csvdb["shop_rechargeCsv"][config.packId] |
354 | if rechargeCfg then | 354 | if rechargeCfg then |
355 | limitPack[rechargeCfg.id] = {timeNow + rechargeCfg.time, config.id} | 355 | limitPack[rechargeCfg.id] = {timeNow + rechargeCfg.time, config.id} |
356 | + self.owner:log("push_gift", { | ||
357 | + gift_id = rechargeCfg.id, --礼包ID | ||
358 | + gift_name = rechargeCfg.title, --礼包名称 | ||
359 | + }) | ||
356 | self:updateProperty({field = "limitTPack", value = limitPack}) | 360 | self:updateProperty({field = "limitTPack", value = limitPack}) |
357 | end | 361 | end |
358 | end | 362 | end |