角色走开后,一片区域可以已经不在视野内,但仍保留曾探索过的地图信息。把当前可见集合和历史探索集合混用,会让地图信息错误消失,或把旧位置误当正在观察。
下面把一个游戏界面或模拟规则拆成可复查的记录。每组输入独立给出,先确认单位、先后次序和边界,再核对结果。它不依赖具体游戏的隐藏参数,读者可以直接挑选几步手工复算。
输入与规则
六列五行格子,编号为行乘六加列。每次给出角色位置和曼哈顿视野半径,范围内为当前可见;曾探索集合累积历次可见格。把格子分为当前可见、见过但当前不可见、从未见过三类,不考虑障碍遮挡。
六列五行,格子编号行乘六加列,九次位置与半径[[0, 0, 2], [5, 4, 1], [3, 2, 2], [5, 3, 1], [3, 4, 1], [4, 3, 2], [4, 1, 1], [2, 2, 2], [2, 4, 2]]
逐步记录
第1次位置(0,0)半径2,当前可见[0, 1, 2, 6, 7, 12],见过但当前看不到[],从未见过[3, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29]。已探索合计6格,走开后仍保留探索记录。
第2次位置(5,4)半径1,当前可见[23, 28, 29],见过但当前看不到[0, 1, 2, 6, 7, 12],从未见过[3, 4, 5, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27]。已探索合计9格,走开后仍保留探索记录。
第3次位置(3,2)半径2,当前可见[3, 8, 9, 10, 13, 14, 15, 16, 17, 20, 21, 22, 27],见过但当前看不到[0, 1, 2, 6, 7, 12, 23, 28, 29],从未见过[4, 5, 11, 18, 19, 24, 25, 26]。已探索合计22格,走开后仍保留探索记录。
第4次位置(5,3)半径1,当前可见[17, 22, 23, 29],见过但当前看不到[0, 1, 2, 3, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 20, 21, 27, 28],从未见过[4, 5, 11, 18, 19, 24, 25, 26]。已探索合计22格,走开后仍保留探索记录。
第5次位置(3,4)半径1,当前可见[21, 26, 27, 28],见过但当前看不到[0, 1, 2, 3, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 20, 22, 23, 29],从未见过[4, 5, 11, 18, 19, 24, 25]。已探索合计23格,走开后仍保留探索记录。
第6次位置(4,3)半径2,当前可见[10, 15, 16, 17, 20, 21, 22, 23, 27, 28, 29],见过但当前看不到[0, 1, 2, 3, 6, 7, 8, 9, 12, 13, 14, 26],从未见过[4, 5, 11, 18, 19, 24, 25]。已探索合计23格,走开后仍保留探索记录。
第7次位置(4,1)半径1,当前可见[4, 9, 10, 11, 16],见过但当前看不到[0, 1, 2, 3, 6, 7, 8, 12, 13, 14, 15, 17, 20, 21, 22, 23, 26, 27, 28, 29],从未见过[5, 18, 19, 24, 25]。已探索合计25格,走开后仍保留探索记录。
第8次位置(2,2)半径2,当前可见[2, 7, 8, 9, 12, 13, 14, 15, 16, 19, 20, 21, 26],见过但当前看不到[0, 1, 3, 4, 6, 10, 11, 17, 22, 23, 27, 28, 29],从未见过[5, 18, 24, 25]。已探索合计26格,走开后仍保留探索记录。
第9次位置(2,4)半径2,当前可见[14, 19, 20, 21, 24, 25, 26, 27, 28],见过但当前看不到[0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 22, 23, 29],从未见过[5, 18]。已探索合计28格,走开后仍保留探索记录。
最终探索28格,当前可见9格,两种数量代表不同信息。
复核方法和适用范围
直接对每个格检查所有历史角色位置,只要曾满足一次距离条件就属于已探索。当前可见应始终包含在已探索中,三类互不重叠且合起来恰好三十格,已探索数量不会因走开而下降。
已探索只表示地图格曾经出现,不意味着远处角色或道具的实时状态仍然已知。真实视野系统还可能需要墙体遮挡或队伍共享,本例没有加入这些规则,不把几何距离等同于完整可见性。
练习时可以只改动一项输入,预测从哪一步开始出现变化,再逐步比较。空状态、数值零和无法判断要分别记录;不要为了让最后结果一致而忽略中途的偏差。边界与同分约定同样属于规则,复核时应一并保留。
