游戏机制解析课:目标锁定的切换优势为何需要余量——余量2下的十五拍锁定(案例10)
多个目标距离接近时,每一拍都改选最近者容易导致锁定提示反复跳动。保留当前目标,直到另一个目标明显更近,是一种可以逐条验证的切换约定。
本篇给出一份完整且可重复的虚构游戏记录。先读清规则,再尝试自行推演输入,最后逐项对照中间状态。不同作品可以选择不同约定,只有在相同前提下才能比较结果;不要只看最终数字相同就认为过程正确。
约定与原始记录
每拍给出三个目标的非负距离,目标都有效且没有遮挡。先选择距离最小者,同距取编号较小者;只有它的距离加固定余量仍严格小于当前距离时才切换。等于门槛时保持。
初始目标1,切换余量2 [[21, 11, 21], [5, 8, 17], [2, 17, 6], [4, 18, 8], [5, 2, 23], [16, 23, 18], [21, 8, 20], [7, 22, 7], [6, 19, 1], [25, 21, 3], [7, 6, 14], [20, 20, 5], [13, 12, 6], [3, 8, 16], [20, 14, 21]]
逐步计算
第0拍距离[21, 11, 21],原锁定1,最近候选1,距离优势0,要求严格大于2;保持后锁定1。
第1拍距离[5, 8, 17],原锁定1,最近候选0,距离优势3,要求严格大于2;切换后锁定0。
第2拍距离[2, 17, 6],原锁定0,最近候选0,距离优势0,要求严格大于2;保持后锁定0。
第3拍距离[4, 18, 8],原锁定0,最近候选0,距离优势0,要求严格大于2;保持后锁定0。
第4拍距离[5, 2, 23],原锁定0,最近候选1,距离优势3,要求严格大于2;切换后锁定1。
第5拍距离[16, 23, 18],原锁定1,最近候选0,距离优势7,要求严格大于2;切换后锁定0。
第6拍距离[21, 8, 20],原锁定0,最近候选1,距离优势13,要求严格大于2;切换后锁定1。
第7拍距离[7, 22, 7],原锁定1,最近候选0,距离优势15,要求严格大于2;切换后锁定0。
第8拍距离[6, 19, 1],原锁定0,最近候选2,距离优势5,要求严格大于2;切换后锁定2。
第9拍距离[25, 21, 3],原锁定2,最近候选2,距离优势0,要求严格大于2;保持后锁定2。
第10拍距离[7, 6, 14],原锁定2,最近候选1,距离优势8,要求严格大于2;切换后锁定1。
第11拍距离[20, 20, 5],原锁定1,最近候选2,距离优势15,要求严格大于2;切换后锁定2。
第12拍距离[13, 12, 6],原锁定2,最近候选2,距离优势0,要求严格大于2;保持后锁定2。
第13拍距离[3, 8, 16],原锁定2,最近候选0,距离优势13,要求严格大于2;切换后锁定0。
第14拍距离[20, 14, 21],原锁定0,最近候选1,距离优势6,要求严格大于2;切换后锁定1。
十五拍共切换10次,最后锁定1。
复核方法与适用范围
分别记录每拍当前目标与最近候选者的差值,只有差值严格大于余量才允许改动。核对目标编号变化的那几拍,而不是简单要求每拍锁定编号等于最近编号。
这种规则会有意保留略远的目标,不能因此把结果判作距离计算错误。目标消失、移出范围或被遮挡时通常还需要额外规则,本例假设三个目标一直可用。余量单位必须与输入距离相同。
练习时可以只改动一个输入,再观察哪一步首次出现差异。对等于门槛、重复请求、空集合和最后一步分别留一份记录;如果发现异常,应先回到单位、顺序和边界约定,避免用额外补偿掩盖前面已经发生的错误。
