Пока что известна причина, но решения ещё нет. и Так суть.
Если хотя бы у одного из игроков стоит "Не классическая схема", то случайного игрока при определённых условиях, может произойти десинхронизация

Определённые условия

  1. Каждые 0.015 сек, от лица игрока форсится приказ "M" через
ForceUIKeyBJ(GetOwningPlayer(hero), "M")
Это сделано для
Это самое оптимальное решение, и другого не дано
Вот этот способ НЕ ПОДХОДИТ
Потому что залипание происходит всё равно если кликать быстрее чем 2 раза в 0.1 сек
  1. Но опять таки, мы проверяли это при использовании комбинации "Своя схема", когда у человека приказ в координатах 0,0 ещё не заменём и так же адекватно форсится M
  2. Опять таки это всё таки происходит не при клике, а при выборе меню талантов (разовый клик). Если кто ещё не понял, то я говорю про карту Peonrpg 2. Потому что опять таки в бою когда происходит закликивание приказа, это НЕ ПРОИСХОДИТ.
  3. Десинх происходит в спокойной не боевой обстановке:
  • один из игроков посылает событие нажата кнопка Е (это игнорит полностью сетку, это это событие OS_KEY)
  • после подтверждения выбора при выборе талантов одного из игроков. Меню выбора талантов ничего кроме мыши и кликов не отслеживает и никак не может зависит от сетки клавиатуры САМЫЙ ЧАСТЫЙ
  • после небольшой задержки в 0.2 при появлении диалога меню талантов
  1. Других события для появления десинха нет хотя тот же WASD и клик левой используются ну прям вот постоянно

Ещё тесты

К сожалению я не могу получить этот десинх при тестировании сам с собой, даже при установке разных разных схем управления
В целом десинх легко поймать, он происходит при от 1 до 10 попытке.
Выкидывает любого или нескольких игроков. Но если выкинет сразу проблемного со схемой отлично от классической, то вылеты у других - сразу прекратятся.
Если есть мысли предлагайте, решения я пока что не вижу, мой код гавно и реф не виноват. Но я хотя бы структурировал мысли
`
ОЖИДАНИЕ РЕКЛАМЫ...