跳到主要内容

4.2

4.2 是本地图的第 3 个大版本,预计在 8 月中下旬发布。

本次更新旨在完全采用新版的命令格式重制地图,并添加多个新功能来补充游戏玩法。主要更新点为:

  • 使用新版的/execute语法
  • 使用脚本以进行更精准的判定
  • 现在使用基于旁观模式的旁观机制,而不再使用旁观区
  • 现在使用御风珠来代替绳枪,以和其他冒险世界系列作品(苏醒、迷失、筑梦)保持同步
  • 加强或削弱了部分 BOSS
  • 优化了部分游戏体验,并修复了一些漏洞

本群有类似更新规模和目标的其他地图更新,为《30 种死法 2》的 2.4 版本


版本列表

公告列表


Alpha 4.2_01

发布于 25.07.14。

晚上好!今天我们发布 4.2 的第一个版本。在该版本中,我们进行了类似于 30 种死法 2 2.4 版本的工作——将所有命令新语法化。同时,引入了很多从 1.18.30~1.21.0 的新游戏机制,来看看这次的更新内容吧~!

游戏内容

玩家物品

  • 现在使用御风珠来代替绳枪,以和冒险世界(包括冒险世界:筑梦)系列的其他类似物品保持一致
    • 同时,移除了物品准星
  • 现在物品是每秒检测一次,并供应缺少的物品的,而不再是在特定时机检测并供应了
  • 现在钻石头盔和钻石靴子不再需要玩家手持一次,是直接给予的了
  • 现在弓箭秒杀骷髅可以正确地计入击杀数

关卡

  • 现在当失败达到 10 次后,会提供一个抗性提升 V(无敌)的效果
  • 更名:烈焰之魂 -> 烈焰王
  • 对 6-4 中烈焰王的技能进行了全面削弱,以降低无药通关的难度:
    • 涨落岩浆的间隔由 8~20 秒延长为了 15~30 秒
    • 恢复血量的间隔由 3 秒延长为了 6 秒
    • 召唤怪物的间隔由 3~10 秒(二阶段)和 3~5 秒(三阶段)延长为了 6~10 秒(二阶段)和 6~8 秒(二阶段)
    • 随机传送的间隔由 6~10 秒延长为 10~15 秒
  • 现在仅限有中型或大型岩浆怪的波潮会启用关卡完成倒计时,而不再为有岩浆怪的关卡全关启用关卡倒计时。
    • 这个更改会使一些关卡的进程(例如 7-1、7-2)更顺滑一些。
  • 现在在 7-5 中,当 BOSS 使用火球攻击时,不再能使用盾挡住这次伤害。

信息板

  • 现在不再尝试实时监测玩家位置,因其实用用途不大。因此,右侧信息板也不再实时返回玩家所处关卡位置
  • 现在不再在怪物生成后检查最大怪物数
  • 现在死亡榜可以记录一切死亡的数据,而不光是仅在游戏中记录死亡数据了
  • 现在药水不再显示当前上限
  • 现在不再会在玩家手持物品时,来回在物品信息和关卡信息之间闪了

观战

  • 现在游戏外的死亡次数也可以正常计入了
  • 移除了观战区,现在使用旁观模式进行旁观

剧情

  • 重新设计了全部剧情的相机镜头
  • 统一了中国版和国际版的剧情内容,不再单独做出适配
  • 移除了一个严重违规成员的制作人表
  • 现在在结束剧情中,田英将告知玩家的死亡次数,而不再是总的关卡失败次数
  • 现在成就不再能多次获取
  • 现在成就必须在非作弊模式下才能获取
  • 现在最佳时间将分为单人和多人,不再共用
    • 例如,以前如果单人模式打难度 2,花费了 70 分钟,多人打难度 2 花了 35 分钟,那么最佳时间就会是难度 2 为 35 分钟
    • 现在同样的情况下,将分别记录为单人难度 2 花了 70 分钟和多人难度 2 花了 35 分钟。

漏洞修复

  • 尝试修复了在 6-4 中的变速齿轮(TPS 疑似严重降低)问题
  • 修复了玩家可能会在进入游戏时就直接被判定为死亡的问题
  • 修复了 6-2 的门放错位置的问题

底层更新

  • 全面采用新版/execute语法
  • 全面采用中国版脚本和国际版脚本配合函数系统
  • 在群文档新增了一个文档,以供有需求的开发者查阅

附加包

  • 合并了BP_aw_mainBP_aw_main_internationalBP_aw_main_neteaseBP_adventure_world
  • 合并了RP_aw_mainRP_aw_music_packRP_adventure_world_main
  • 更名了RP_aw_neteaseRP_adventure_world_netease
  • 新增了RP_adventure_world_international
  • 移除了BP_aw_main_old
  • 现在manifest.json的最小引擎版本均为1.21.0

物品

  • 现在每种物品都使用1.20.50的格式版本
  • aw:hookshot改为了aw:wind_pearl
  • 移除了aw:enable_crosshair,因现在使用御风珠
  • 移除了aw:main_potion_usedaw:vice_potion_used物品
  • 移除了aw:summon_monsters物品,因现在可直接调用各关卡的waves/函数

方块

  • 现在每种方块都使用1.20.50的格式版本

实体

  • 移除了player.json,现在和玩家相关的检测都通过脚本进行
  • 合并了aw:npcaw:npc_authoraw:npc,并使用了实体属性
  • 因生成器逻辑较为复杂,现在使用独立的实体aw:spawner生成怪物,不再使用aw:marker

脚本

  • 现在对地图分别添加了国际版和中国版的脚本支持
  • 现在脚本用于御风珠的碰撞判定
  • 现在物品的使用都依托于脚本进行检测,而不再使用玩家动画控制器
  • 现在击杀判定依托于脚本进行检测,而不再使用玩家实体文件
  • 现在玩家喝下药水依托于脚本进行检测,而不再使用using_converts_to的物品检测

标记实体

  • 现在所有的记分板变量都使用假名代替,移除了大量用于存储变量的标记
  • 现在使用带以下aw:level实体属性的标记实体:
    • this:作为玩家的重生点
    • next:作为玩家进入下一关的检测点
    • prev:作为玩家在上一关的重生点
    • 游戏开始后,this -> prevnext -> this
    • 游戏失败后,prev -> thisthis -> next
    • 游戏胜利后,删除prev,新建next

记分板变量

  • 新增
    • deathState: 0 | 1 | 2记分板,用于记录玩家的死亡状态
      • deathState.@s=0:未处于死亡状态
      • deathState.@s=1:刚刚死亡,但还未记录死亡榜
      • deathState.@s=2:长期死亡,还未复活
    • health记分板,用于记录玩家或实体的血量。
    • data.allowPotionSupply: 0 | 1,用于标记允许补充药水
    • data.allowArrowSupply: 0 | 1,用于标记允许补充箭
      • 1时,箭控制器不但补充箭,并且清除当前世界中的所有实体箭
    • data.allowAcousticStoneCrystal: 0 | 1,用于标记是否允许补充传声石结晶
    • data.allowHud: 0 | 1,用于标记是否启用 HUD
    • data.allowRemoveItemEntity: 0 | 1,用于标记是否移除物品掉落物
    • data.allowTpPlayerWhenStart: 0 | 1,用于标记开始关卡时是否传送玩家,默认为1
    • data.gaming: 0 | 1,是否正在 X-Y(1<=X<=7, Y!=0)的游玩状态,0:未处于游玩状态,1:正处于游玩状态,默认为0
    • 标签outOfBorder,用于判断旁观模式的玩家是否越界
  • 更名
    • 记分板deathTimes -> 记分板deathCount
    • 记分板killAmount -> 记分板killCount
    • data.maxPlayersAmount -> data.playerAmount
    • data.alivePlayersAmount -> data.alivePlayerAmount
    • data.failedTimes -> data.failedCount.thisLevel
    • data.allFailedTimes -> data.failedCount.allLevels
    • data.storyMode -> settings.storyMode
    • data.difficulty -> settings.difficulty
    • data.difficultyAdder -> settings.extraDifficulty
    • data.developerMode -> settings.developerMode
    • time.levelCompleteDelay -> time.levelCompleteCountdown
    • 标签potionUsed -> data.potionUsed
    • 标签cheated -> data.hasCheat
    • record.achievement.singlePlayer_completeMap -> record.achievement.singlePlayer.finishMap
    • record.achievement.multiPlayer_completeMap -> record.achievement.multiPlayer.finishMap
    • record.achievement.singlePlayer.notDied -> record.achievement.singlePlayer.neverDied
  • 拆分
    • 记分板变量isAlive.@s -> 标签变量spectator,新值与旧值的对应关系为:
      • isAlive.@s=0 -> data.levelCompleted=0&&spectator
      • isAlive.@s=1 -> data.levelCompleted=0&&!spectator
      • isAlive.@s=2 -> data.levelCompleted=1
      • isAlive.@s=3 -> 被抛弃,不再使用原来的判定方法
    • data.gameId,因其在诸多方面(包括数值分解、屏蔽词)等方面都造成了诸多不便
      • 现在使用data.chapterdata.leveldata.levelCompleted代替
    • xxx.timelinexxx.dialogue -> xxx.timelinedata.allowNpcInteraction
  • 移除
    • hookshot记分板,现在使用脚本代替。
    • data.hookshotAmount,现在使用脚本代替。
    • bossStage记分板,现在使用记分板和脚本代替。
    • isAlive标签,现在用deathState代替。
    • data.realDeadPlayersAmount,因为现在可以直接使用unless entity检测相关玩家
    • temptemp2temp3记分板,现在使用data下的各temp.变量代替
    • position.@s,现在不再实时监测玩家所处位置,因其过于复杂且消耗性能
    • data.maxMonsterAmount,现在不再在怪物生成后检查最大怪物数
    • time.@s,现在不再监控玩家处于死亡状态下的时长

关卡 ID

  • 现在村庄的 ID 有下面的新的对应关系。

    • 现在data.level是从1开始算起的,阶段是基于data.level判断的
    • 合并了从见到张宇到获取传声石结晶的剧情为一个阶段
    游戏IDdata.temp.gameId以前的游戏IDdata.temp.gameId意义
    010/0113
    020/0214
    030/0315
    040/0416~8
    050/0519/99开幕
    709701剑之神殿剧情完成
    1010/10111001~1002
    1020/10211003
    1030/10311004

函数文件

  • 现在采用函数系统:主包 v3 模板
  • 根据新版的函数系统重构了文件架构,因此有大量的文件被重命名、移除、移动或新增,这里不再对函数文件的所有具体更改详细阐述,只对其中的主要更改进行必要解释
  • 现在全体函数文件都采用了一个命名空间aw,以防和其他包体冲突
  • 入口文件改为了aw/system/main.mcfunction,并采用了1.21.0的格式版本
  • 在库方法代码内采用新版注释格式,更加简短,且能够避免重复描述行为,以及对前文应使用的/execute命令做出进一步指导
    • 以前:

      # ===== (功能) =====
      # (功能描述)

      # 调用此方法时:
      # · 执行者(应设置的执行者)
      # · 执行位置(应设置的执行位置)
      # 输出结果:
      # · (声明更改的变量的值,或输出的变量)

    • 现在:

      # ===== (功能) =====
      # (功能描述)
      # 调用此方法时:(无需修饰)/(需修饰……为……(execute ……))

当前已知的问题

以下是当前地图内已知的问题。如果您遇到此问题,可以无视,等待后续版本解决。

  • 在多人模式下,当玩家使用自己的第一人称视角时,会看到正在显示的玩家的脸(不会影响正在显示的玩家)
  • 结束屋的玩家在移动时,是无动画平移过去的
  • 在多人模式下,处于旁观模式的玩家可以从角落卡出房间

Alpha 4.2_01b

发布于 25.07.14。该版本是 Alpha 4.2_01 版本的紧急修复版本。

  • 紧急修复了一个手机版在 HUD 隐藏后,不显示操控键位而无法操作的问题。

Alpha 4.2_02

发布于 25.08.03。

嗨!针对大家在上一个版本的问题反馈情况,我们在这里发布了新版本以处理这些问题。在本版本中,着重更新了退出重进机制和一些相关机制,例如死亡机制、重生机制等。虽然更新内容不多,不过还是有新东西在等着大家的哦。

漏洞修复与特性优化

  • #66 在 7-4 新增了多个传送点位
  • #69 现在会提醒玩家调整文本背景不透明度
  • #70 现在 BOSS 战启用倒计时复活机制
    • 在不同难度下,重生所需要的倒计时也越长
    • 目前仅限 6-4 和 7-5 的第 2 波启用了该机制
  • 修复了一个判断是否正处于游戏中的变量错误判断的漏洞,因此,以下漏洞被同步修复
    • #71 在村庄结束剧情死亡会被记录为旁观者,并播报全体
    • #83 多人情况下,在 6-4 之前退出游戏并在 6-4 结束后(7-0 开始前)回到游戏会变成旁观者模式
  • 现在 1-0 提供的皮革靴子也是锁定物品栏而非锁定槽位的了
    • #76 因此,修复了多人模式下,在 1-2 之前退出的玩家在 1-2 之后回归会导致其皮革靴子无法脱下的问题
  • #78 修复了 1.21.80 后岩浆怪名字错误的问题
  • #87 更改了结束后与鸽子的对话
  • #88 现在御风珠可以再次对生物造成击退
  • #90 压缩了资源包的大小,以减少其他玩家进入房间下载包所需要的时间:
    • 压缩了音乐的音质,现在为单声道音频,压缩到大小为原音频包的 28%
    • 更换并压缩了资源包图标的大小,由每张 406KB 降低到每张 66KB
    • 总的来看,资源包包体由 4.1 版本的 22.4MB 降低到 6.57MB,包体体积降低到原来的 29.33%
  • #91 修复了在过剧情时退出游戏会导致其隐身状态仍然保留的问题
  • #92 修复了在 7-0 死亡后会重生到 6-4 的问题
  • 修复了恢复耐久的靴子和盾可以被扔出的漏洞
  • #95 修复了过剧情时触控按钮会闪烁的漏洞
  • 恢复了地图的 logo
  • 现在在结束结算时,多人模式转单人模式后,不再为 F 级的评价,而是一个独立的评价:“无评价”
    • 同时,在无评价下和作者 NPC 们对话会采用多人模式下的默认对话
  • 现在在结束结算时,如果有玩家开启了创造,系统会提示玩家本次没有成就或纪录

底层更新

  • 进行了有关 HUD 的更改,移除了data.allowHud变量,现在 HUD 仅在开始、结束或退出重进时更改,而不再是循环执行;并移除了aw/lib/modify_data/hud函数
  • 大幅更新了退出重进系统,为所有关卡新增了events/player_rejoin函数,并在特定关卡条件下执行关卡函数,这样可以高度自定义玩家在特定关卡下退出重进的行为,例如玩家退出重进后可以续上相机视角、HUD 设置、权限设置等
  • lib/modify_data/中的函数部分移动到lib/events/中,以表示该类函数为一种“事件”函数,需在满足条件时单次执行以实现功能

Alpha 4.2_02b

发布于 25.08.04。

Alpha 4.2_02b 对上个版本中出现的严重问题进行了修复。现在药水机制应该能正常运行了!

漏洞修复与特性优化

  • 现在右侧信息板的版本号能正确显示为 Alpha 4.2_02 了
  • #97 现在御风珠不再能造成伤害
  • 现在扔出御风珠会像雪球一样有掷出动画
  • 现在检测到过多的箭实体时不再给予玩家箭
  • 修复了药水会在任意情况无限给予的漏洞
  • 修复了结束特效无法进入张宇商店的漏洞
  • 略微更改了作弊无成就的提示
    • 以前:因为你(们)本次有人开启了创造,因此本次不会获得任何成就和纪录!
    • 现在:本次游戏有人开启了创造模式,因此本次不会获得任何成就和纪录!
  • 底层更新:移除了data.allowArrowSupply变量和data.allowPotionSupply变量,现在全部使用supplyAllPotionssupplyArrow标签代替原有的功能