恐怖黎明吧 关注:213,205贴子:2,697,800

20190412 1.1.1.2 碎裂之境奖励机制 解包

只看楼主收藏回复

简单就结果而言,限时完成75,奖励为3崇高收藏,1神之收藏;限时完成75-76,奖励为1荣耀宝箱,5永恒珍藏,1卓越珍藏,2神之收藏,1碎裂之境的秘密,1碎裂之境的礼物。这些不必解包就能知晓,但是解包之后可以知道这些奖励是如何分配的,以及可以得知低级的奖励如何相对最大化,以及对将来75以上的期望。


IP属地:山东1楼2019-04-12 15:25回复
    碎裂之境的奖励分配都位于
    gdx2\resources\Scripts.arc中
    game\endlessdungeon\rewards.lua
    local maxChests = 11
    最大奖励的数量是11个箱子
    奖励生成都位于function gd.endlessDungeon.rewards.dispenseReward()


    IP属地:山东2楼2019-04-12 15:26
    回复
      广告
      立即查看
      首先生成的是前7个箱子
      -- if the player used a checkpoint, then they are given the checkpoint loot on the same Tier as they started if they "cash out".
      checkpointTable[75] = { nil, dbrChestP, dbrChestP, nil, nil, dbrChestP, nil }
      checkpointTable[80] = { nil, dbrChestQ, dbrChestP, nil, nil, dbrChestQ, nil }
      checkpointTable[85] = { nil, dbrChestQ, dbrChestQ, nil, nil, dbrChestQ, nil }
      checkpointTable[90] = { nil, dbrChestQ, dbrChestQ, nil, nil, dbrChestQ, nil }
      checkpointTable[95] = { nil, dbrChestQ, dbrChestQ, nil, nil, dbrChestQ, nil }
      checkpointTable[100] = { nil, dbrChestQ, dbrChestQ, nil, nil, dbrChestQ, nil }
      -- if the player reached the next treasure tier and opted to "cash out", they receive the earned rewards.
      rewardTable[76] = { dbrChestJ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestM }
      rewardTable[77] = { dbrChestJ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestN }
      rewardTable[78] = { dbrChestJ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestO }
      rewardTable[79] = { dbrChestJ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[80] = { dbrChestK, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[81] = { dbrChestL, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[82] = { dbrChestM, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[83] = { dbrChestN, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[84] = { dbrChestO, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[85] = { dbrChestP, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[86] = { dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestP }
      rewardTable[87] = { dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ }
      这里仅粘贴75及以后的奖励,全部的奖励过长,请自己参阅原文件
      如果玩家直接使用石头从某个层数开始,并且立刻在当前层退出拿奖励,那么将获得checkpointTable中的奖励。
      如果使用石头开始,但是多打1层以及以上,那么奖励使用rewardTable
      箱子从dbrChestA到dbrChestQ品质提升,最大就是dbrChestQ


      IP属地:山东3楼2019-04-12 15:31
      回复
        然后生成第8、9个箱子,为限时奖励,同时也受checkpoint惩罚,即石头进入后当即领取奖励,为checkpointBonusTable,而多打1层以及以上,获取bonusTable。并且这个限时奖励在87层即达到最大,为2个dbrChestQ
        -- Dispense 8th/9th bonus chests, if player beat the clock
        checkpointBonusTable[75] = { dbrChestO, nil }
        checkpointBonusTable[80] = { dbrChestN, nil }
        checkpointBonusTable[85] = { dbrChestP, nil }
        checkpointBonusTable[90] = { dbrChestP, nil }
        checkpointBonusTable[95] = { dbrChestP, nil }
        checkpointBonusTable[100] = { dbrChestP, nil }
        bonusTable[76] = { dbrChestO, dbrChestO }
        bonusTable[77] = { dbrChestO, dbrChestO }
        bonusTable[78] = { dbrChestO, dbrChestP }
        bonusTable[79] = { dbrChestO, dbrChestP }
        bonusTable[80] = { dbrChestO, dbrChestP }
        bonusTable[81] = { dbrChestO, dbrChestQ }
        bonusTable[82] = { dbrChestO, dbrChestQ }
        bonusTable[83] = { dbrChestO, dbrChestQ }
        bonusTable[84] = { dbrChestP, dbrChestQ }
        bonusTable[85] = { dbrChestP, dbrChestQ }
        bonusTable[86] = { dbrChestP, dbrChestQ }
        bonusTable[87] = { dbrChestQ, dbrChestQ }


        IP属地:山东4楼2019-04-12 15:34
        回复
          好帖,用石头直通75到76的奖励还是不错的,


          IP属地:江苏来自Android客户端5楼2019-04-12 15:36
          收起回复
            支持一下


            IP属地:上海来自Android客户端6楼2019-04-12 15:38
            回复
              然后生成第一个特殊箱子,这个箱子也受checkpoint惩罚,只有多打1层以及以上,才会有,奖励的层数以及内容如下:
              -- Dispense Special Chest, only applies to specific dungeon tiers. Contain checkpoint rewards. Not dispensed if checkpoint is used and reward claimed at the same tier.
              if rewardTier >= 65 then
              specialTier = 6
              elseif rewardTier >= 50 then
              specialTier = 5
              elseif rewardTier >= 35 then
              specialTier = 4
              elseif rewardTier >= 20 then
              specialTier = 3
              elseif rewardTier >= 5 then
              specialTier = 2
              else
              specialTier = 1
              end
              if (checkpointUsed && rewardTier != checkPointTier) || not checkpointUsed then
              local specialTable = { nil, dbrSpecialChestA, dbrSpecialChestB, dbrSpecialChestC, dbrSpecialChestD, dbrSpecialChestE }
              即5层为dbrSpecialChestA,到65层为dbrSpecialChestE,这些箱子就是奖励石头图纸的箱子


              IP属地:山东7楼2019-04-12 15:38
              回复
                前排顶一波


                IP属地:浙江8楼2019-04-12 15:39
                回复
                  广告
                  立即查看
                  然后是第二个特殊箱子,这个箱子也受checkpoint惩罚,只有多打1层以及以上,才会有,奖励的层数以及内容如下:
                  -- Dispense second Special Chest, only applies to specific dungeon tiers. Contain unique rewards. Not dispensed if checkpoint is used and reward claimed at the same tier.
                  if rewardTier >= 60 then
                  special02Tier = 6
                  elseif rewardTier >= 45 then
                  special02Tier = 5
                  elseif rewardTier >= 30 then
                  special02Tier = 4
                  elseif rewardTier >= 20 then
                  special02Tier = 3
                  elseif rewardTier >= 10 then
                  special02Tier = 2
                  else
                  special02Tier = 1
                  end
                  if (checkpointUsed && rewardTier != checkPointTier) || not checkpointUsed then
                  local special02Table = { nil, dbrSpecialChest02A, dbrSpecialChest02B, dbrSpecialChest02C, dbrSpecialChest02D, dbrSpecialChest02E }
                  即10层为dbrSpecialChest02A,60层以上为dbrSpecialChest02E


                  IP属地:山东9楼2019-04-12 15:39
                  回复
                    用开始的例子
                    限时完成75
                    checkpointTable[75] = { nil, dbrChestP, dbrChestP, nil, nil, dbrChestP, nil }
                    checkpointBonusTable[75] = { dbrChestO, nil }
                    3崇高收藏,1神之收藏
                    限时完成75-76
                    rewardTable[76] = { dbrChestJ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestQ, dbrChestM }
                    bonusTable[76] = { dbrChestO, dbrChestO }
                    dbrSpecialChestE
                    dbrSpecialChest02E
                    1荣耀宝箱,5永恒珍藏,1卓越珍藏,2神之收藏,1碎裂之境的秘密,1碎裂之境的礼物


                    IP属地:山东10楼2019-04-12 15:41
                    回复
                      从这里可以看到,前9个箱子在87层达到最大奖励,不再增加,之后2个箱子,分别在65和60达到最大。
                      所以,当前版本,以farm为目的,达到87层之后就没有收益了,仅仅是为了测试build强度以及自我挑战了。
                      并且有趣的是,这份文件里已经对从100层检查点开始做了支持,只是奖励还仍停在87层,并且存档里也对碎裂之境的层数进度有相关token
                      EG_SHARD15
                      EG_SHARD30
                      EG_SHARD45
                      EG_SHARD60
                      EG_SHARD75
                      EG_SHARD90
                      EG_SHARD100
                      所以,这里可以展望一下,将来的版本/dlc逐渐开放更高的石头/奖励,以及官方已经打算长期支持这个游戏模式。


                      IP属地:山东11楼2019-04-12 15:48
                      回复
                        PS,关于buff/debuff的数量,定义于
                        gdx2\resources\Scripts.arc
                        game\endlessdungeon\mutatorcontrol.lua
                        if dungeonTier <= 2 then
                        totalMutators = 1
                        elseif dungeonTier <= 5 then
                        totalMutators = 2
                        elseif dungeonTier <= 10 then
                        totalMutators = 3
                        elseif dungeonTier <= 20 then
                        totalMutators = 4
                        elseif dungeonTier <= 40 then
                        totalMutators = 5
                        elseif dungeonTier <= 60 then
                        totalMutators = 6
                        elseif dungeonTier <= 80 then
                        totalMutators = 7
                        else
                        totalMutators = 8
                        end
                        即从81层开始,都是8个


                        IP属地:山东12楼2019-04-12 15:54
                        回复


                          IP属地:云南来自Android客户端13楼2019-04-12 15:56
                          回复
                            技术帝来了


                            IP属地:江西14楼2019-04-12 15:57
                            回复
                              广告
                              立即查看
                              专业
                              顺便问下有没有类似怪物血量、攻击递增的相关数据


                              IP属地:福建15楼2019-04-12 16:33
                              收起回复