常见问题
遇到问题先执行这两个指令:
/cd admin validate <副本>
/cd admin rogue rooms <副本>
validate 列出每间房的问题;rogue rooms 列出每间房能不能用、为什么不能用,以及整个随机地牢还不能开始的原因。
开始时提示「这个随机地牢还不能开始」
后面会附上原因(只写「副本设置不完整」时,用 validate 看完整的提示)。常见的有:
| 原因 | 怎么办 |
|---|---|
| 起点房还没存地图或没有入口点 | /cd admin edit <副本>:start 盖好、用床点入口,/cd admin save |
| 第 1 层没有可以用的战斗房 | 至少要有一间 type: combat、floors 包含第 1 层、地图已经存好的房间 |
| 第 N 层没有可以用的首领房 | 首领房的 floors 要包含那一层(例如 1+),或在 floors.yml 那一层写 boss-pool,或 boss: false |
| 房间太大,一格副本放不下 / 格子不够 | 把最大的房间或起点房盖小、调小 environment.border,或调大主配置的 world.slot-spacing,见 房间大小 |
| 找不到起点房 | config.yml 的 roguelike.start-room 写的文件夹 rooms/<ID>/ 要存在 |
| 有人正在编辑这个副本 | 编辑中的随机地牢只有 /cd admin test 能开 |
只装了 WorldEdit 可以用吗?
随机地牢不行:房间要在背景线程贴上,必须装 FastAsyncWorldEdit。只有 WorldEdit 时,就算主配置 paste.allow-main-thread: true 也不能开始随机地牢。一般副本默认同样会拒绝开始,要改成 paste.allow-main-thread: true 才会在主线程硬贴(贴大地图时全服会卡住好几秒)。
房间一直不清除,门不出现
- 默认
clear-when: groups:要等这间房monster.yml的每一组都打完。检查每一组是不是都会被叫出来(auto-start: true,或上一组的end写了monstergroup start <下一组>)。validate会列出「怪物组 X 不会自动开始,也没有脚本叫出它」。 - 有些组只是陪衬、不想等它:在
room.yml写clear-groups: [主要的那组],或改成clear-when: mobs(场上的怪全死就算)。 clear-when: script的房间要有脚本执行room clear(或clear)。- 事件房要每个人都选完(或时间到)。
- 管理员可以
/cd admin rogue skip <编号>直接让这间房清除。
门出现在奇怪的地方
门出现在出口点:exit1~exit3 的数量不少于这一次的门数时,每扇门各自摆在那里;不够的话(例如只放了 exit1、exit2,却出现 3 扇门)改成以 exit 为中心往两侧排开(没有 exit 时以 exit1 为中心);都没有就出现在入口前方 3 格。用指南针工具补上 exit,朝向决定两侧排开的方向;要分别摆的话,门数上限是几扇就放几个 exitN。
打完首领没有选祝福
依序检查:
cards.yml的draft.when有没有boss;floors.yml那一层的draft是不是false(例如写在last:);- 首领房的
room.yml是不是写了draft: false; cards.yml有没有任何祝福;全部都叠满、没有能选的祝福时会直接改拿skip-coins的魂晶。
祝福会带出副本吗?
不会。离开副本、副本结束、停服时都会清掉:
- 属性加成是暂时的(不写进玩家数据),当机也不会残留;
- 药水是每几秒续上的短效果,离开时移除;当机的话最多残留约 30 秒就会自己消失。
如果祝福的 on-pick 用指令给了副本外也有效的东西(例如权限),请写 undo-commands 还原,见 还原指令。
用 MythicMobs 的怪,越深的楼层怪没有变强?
floors.yml 的 scaling.mythic 默认是 level:MythicMobs 的怪只加等级(楼层的 scaling.level + 房间 scaling.level + 脚本 rogue scale level=)与数量 amount,血量与伤害交给 MythicMobs 自己的等级设置。精英 / 首领倍率、精英发光、房间与 rogue scale 的 health / damage 也都只对原版怪生效。要让这些倍率也套到 MythicMobs 的怪上,改成 mythic: both。
另外,伤害倍率只放大直接攻击;MythicMobs 技能造成的伤害不会被放大,深层建议用 MythicMobs 的等级成长。
门票什么时候不退?
打完 roguelike.keep-after-floor 层(默认 1 层)之后就算用掉了,之后失败、停服、当机都不退。还没打完那么多层时,照副本的 ticket.refund-on-fail 退。见 门票什么时候不退。
想让大家今天的地图都一样 / 办比赛
- 每天大家一样:
roguelike.seed: daily(或某个难度模式写seed: daily),换日时间照主配置的dungeon.reset-time。 - 固定一张地图:
seed: 42这种数字。 - 只让下一场用某个种子:
/cd admin rogue seed <副本> <种子>。 - 先看看某个种子会怎么排:
/cd admin rogue preview <副本> <种子> floors=5。
同一个种子,选了同样的门才会得到同样的房间。
玩家掉线会怎样?
和一般副本一样有掉线保留时间(disconnect:)。重新连线时回到目前这间房的入口;还没选的祝福会重新打开,门还在的话会重新送出门的按钮。掉线的人不会挡住选门和选祝福:投票不等他,选祝福到时间会照 draft.auto 自动帮他处理。
跨服时,从大厅输入 /cd rejoin 可以回到还在进行的随机地牢。
在房间里倒下会扣命吗?
在房间里打怪时倒下照副本的 lives: 扣命。房间清除后、选门、选祝福、换房间的时候倒下不扣命、马上复活。团灭时如果还有 lives.wipe-retries,全员回到这间房的入口,房间继续打。
修改了房间地图,正在进行的场次会怎样?
一间房的地图与点位,是在那一场第一次贴这间房时读的:门出现时(甚至更早,先在背景贴好时)就读了,不是走进去才读。所以保存之后,正在进行的场次里还没贴过的房间会直接用新的地图与点位;已经贴过的房间这一场继续用旧的。
房间设置(room.yml 等)、/cd admin reload 之后的新设置,以及这一场能用哪些房间(开场时还没存地图的房间这一场不会出现),都要等新开的场次才生效。
一般副本的脚本可以直接用吗?
可以。房间的怪物组、触发、任务、宝箱写法完全一样。只要记得:clear 在随机地牢里是「这间房清除」,整场结算用 rogue finish;按百分比回血用 rogue heal 50%。见 脚本。
某种房间只想在后面的楼层出现
- 某一间:
room.yml的floors: 4+。 - 某个种类:在
floors.yml用floors."1": { max: { elite: 0 } }关掉,或用types调权重,例如every."5": { types: { elite: 30 } }。