Это в основном дополнительный вопрос к Скрытие/скрытие информации о позиции в настольной игре который технически ответил на вопрос, но вызвал заслуженную критику.
Чтобы быстро обобщить вопрос: рассмотрим настольную игру с прямоугольной сеткой 10x10, у игрока есть позиция $(п_х п_у)$ и физический токен в этой сетке. Кроме того, один или несколько противников ИИ бродят по доске, но не имеют физического жетона, который мог бы наблюдать игрок. Теперь вопрос в том, есть ли способ сказать игроку, находится ли он на расстоянии. $д$ любого ИИ без раскрытия фактического местонахождения ИИ. С точки зрения игры интересны только дистанции. $д=0$ (ИИ «нашел» игрока) и произвольное «близкое» расстояние $d<3$ (ИИ находится рядом с игроком, и он может избежать или атаковать его).
Так как это настольная игра, компьютер не нужен. Все расчеты должны выполняться игроком (т.е. должны быть относительно простыми). (Принятый) ответ на предыдущий вопрос включал хеширование игроков и позиции ИИ, но это, конечно, раскрыло бы позицию ИИ игроку.
в ответ я написал на форуме BGG, я "предварительно зашифровал" позиции игроков и ИИ, затемнив взаимосвязь между ними. $(х,у)$ позиция и числа, которые хэшируются для «поиска» расстояния. Критика заключалась в том, что любой наблюдательный игрок быстро обнаружит, что предварительно зашифрованные числа ИИ соответствуют местоположениям на карте.
Моим «решением» этого было бы еще больше скрыть связь между вводом и выводом, используя только текущий порядок хода и идентификатор поля игрока в качестве ввода, эффективно скрывая текущие местоположения ИИ за номером хода.
Тем не менее, я чувствую, что может быть хитрая схема, чтобы показать только текущее расстояние (или «что-то близко») до игрока, не раскрывая фактическую позицию ИИ. Игра проходит в сильно искаженной системе координат или похожей.
Мне было бы интересно, что вы, ребята, можете придумать.