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 | 439 | role:checkTaskEnter("AdvOverTask", {id = taskId}) |
440 | 440 | |
441 | 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 | 453 | SendPacket(actionCodes.Adv_finishTaskRpc, MsgPack.pack(role:packReward(reward, change))) |
444 | 454 | return true |
... | ... | @@ -501,6 +511,15 @@ function _M.useItemRpc(agent, data) |
501 | 511 | adv:checkAchievement(adv.AchievType.UseItem, count, itemId) |
502 | 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 | 523 | for i = 1, count do |
505 | 524 | adv:doActive(itemData.effect, target) -- target |
506 | 525 | end |
... | ... | @@ -587,6 +606,7 @@ function _M.wearArtifactRpc(agent, data) |
587 | 606 | |
588 | 607 | local status = adv:wearArtifact(slot, id) |
589 | 608 | if not status then return 3 end |
609 | + | |
590 | 610 | adv:saveDB() |
591 | 611 | |
592 | 612 | role:finishGuide(55) |
... | ... | @@ -612,7 +632,20 @@ function _M.upArtifactRpc(agent, data) |
612 | 632 | if not adv:cost(cost, {}, true) then return 4 end |
613 | 633 | |
614 | 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 | 649 | adv:cost(cost, {log = {desc = "upArtifact", int1 = id}}) |
617 | 650 | adv:backCost(cost) |
618 | 651 | if status == 1 then -- 现在穿着呢。更新下 |
... | ... | @@ -774,7 +807,7 @@ function _M.wheelSurfRpc(agent, data) |
774 | 807 | |
775 | 808 | if not role:checkItemEnough(costs) then return 5 end |
776 | 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 | 811 | local advDrawB = role:getProperty("advDrawB") |
779 | 812 | advDrawB[ptype] = (advDrawB[ptype] or 0) + count |
780 | 813 | role:updateProperty({field = "advDrawB", value = advDrawB}) |
... | ... | @@ -793,6 +826,16 @@ function _M.wheelSurfRpc(agent, data) |
793 | 826 | role:checkTaskEnter("AdvDraw", {count = count, ptype = ptype}) |
794 | 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 | 839 | SendPacket(actionCodes.Adv_wheelSurfRpc, MsgPack.pack({reward = backReward})) |
797 | 840 | return true |
798 | 841 | end | ... | ... |
src/adv/Adv.lua
... | ... | @@ -51,6 +51,7 @@ function Adv:initByInfo(advInfo) |
51 | 51 | self.cacheUnlock = advInfo.cacheUnlock or {} |
52 | 52 | self.shopStatus = advInfo.shopStatus or {} |
53 | 53 | self.support = advInfo.support or {} |
54 | + self.logid = advInfo.logid or "auto" | |
54 | 55 | |
55 | 56 | self.maps = {} |
56 | 57 | for id, map in ipairs(advInfo.maps or {}) do |
... | ... | @@ -102,6 +103,7 @@ function Adv:initByChapter(params) |
102 | 103 | self.shopStatus = self.shopStatus or {} |
103 | 104 | self.support = self.support or {} |
104 | 105 | self.battle = nil -- 清掉 老的 battle |
106 | + self.logid = self.owner:getActionUcode() | |
105 | 107 | |
106 | 108 | if isEnter then -- 把 支援效果初始化为易用用的形式 |
107 | 109 | self:initSupport(support or {}) |
... | ... | @@ -206,6 +208,7 @@ function Adv:saveDB(notNotify) |
206 | 208 | advInfo.cacheUnlock = self.cacheUnlock |
207 | 209 | advInfo.shopStatus = self.shopStatus |
208 | 210 | advInfo.support = self.support |
211 | + advInfo.logid = self.logid | |
209 | 212 | advInfo.maps = {} |
210 | 213 | |
211 | 214 | self.battle:saveDB() |
... | ... | @@ -610,6 +613,15 @@ function Adv:wearArtifact(slot, id) |
610 | 613 | id = nil |
611 | 614 | end |
612 | 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 | 626 | self.owner:changeUpdates({{type = "advAFWear", field = slot, value = id}}) |
615 | 627 | return true |
... | ... | @@ -670,7 +682,6 @@ function Adv:artifactLevelUp(id, level) |
670 | 682 | |
671 | 683 | self:mylog({desc = "artifactLevelUp", int1 = id, int2 = level}) |
672 | 684 | |
673 | - | |
674 | 685 | local status = 0 |
675 | 686 | if curWear[id] then -- 穿着呢 |
676 | 687 | local oldData = csvdb["adv_artifactCsv"][id][advAFGet[id]] |
... | ... | @@ -815,6 +826,49 @@ function Adv:over(success, rewardRatio, overType) |
815 | 826 | |
816 | 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 | 872 | local chapterId = self.chapterId |
819 | 873 | self:clear() |
820 | 874 | self.owner:checkTaskEnter("AdvScore", {score = score}) | ... | ... |
src/models/RoleLog.lua
... | ... | @@ -422,6 +422,79 @@ local MethodType = { |
422 | 422 | gift_name = true, -- 礼包名称 |
423 | 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 | 500 | local function printError(info) | ... | ... |
src/models/RolePlugin.lua
... | ... | @@ -1189,6 +1189,7 @@ function RolePlugin.bind(Role) |
1189 | 1189 | function Role:addAdvLvExp(exp) |
1190 | 1190 | local advL = self:getProperty("advL") |
1191 | 1191 | local level = advL[1] |
1192 | + local oldLevel = level | |
1192 | 1193 | local newExp = (advL[2] or 0) + exp |
1193 | 1194 | |
1194 | 1195 | if not csvdb["adv_level_fundCsv"][level + 1] then |
... | ... | @@ -1211,6 +1212,7 @@ function RolePlugin.bind(Role) |
1211 | 1212 | advL[1] = level |
1212 | 1213 | advL[2] = newExp |
1213 | 1214 | self:updateProperty({field = "advL", value = advL}) |
1215 | + return oldLevel, level | |
1214 | 1216 | end |
1215 | 1217 | |
1216 | 1218 | function Role:getAdvWheelSurfLv(ptype) | ... | ... |
src/models/Store.lua
... | ... | @@ -353,6 +353,10 @@ function Store:OnTriggerLimitTimePack(eventType, param) |
353 | 353 | local rechargeCfg = csvdb["shop_rechargeCsv"][config.packId] |
354 | 354 | if rechargeCfg then |
355 | 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 | 360 | self:updateProperty({field = "limitTPack", value = limitPack}) |
357 | 361 | end |
358 | 362 | end | ... | ... |