Сейчас пытался доделать свой патч сети, размышлял над темой и вдруг осознал, что вся история с разными задержками у анимации и триггеров - это какая-то дичь.
Потому что игра в принципе ничего и никогда не делает вне 36 тиков в секунду, кроме отрисовки. Но FPS - величина плавающая, потому привязки к ней не бывает.
Решил посмотреть код. И в самом деле: что в нынешнем, что в 0.6, что в самой ранней известной копии из 2006 года - везде анимация тикает вместе с триггерами. По 1/36 секунды.
Далее, я попробовал запустить выложенный выше
animtestmap.wad на 0.40, 0.55, 0.58a и 0.6. И везде левый триггер всегда отрабатывал одновременно с анимацией.
Судя по всему, это просто путаница, которая возникла после версии 0.58, где ради перехода на физику оригинала уменьшили число тиков с 60 до 36.
Но поскольку
g_showfps отображал счётчик UPS равным 72 из-за
домножения на 2 (видимо, попросту забытого), то относительно графики это изменение не было замечено.
К тому же, в старом редакторе моделек от Белокрылого осталось прежнее пояснение про "1/60". Как и в
архиве DF Examples с примером их создания, выпущенном с версией 0.45.
Вот так и появился ненароком самый стойкий миф касательно работы анимаций в DF. Поэтому данная тема наконец-то отправляется в "Неподтверждённые".
Если баг с рассинхронизацией и был, то он почти наверняка связан с чем-то другим. Да и в любом случае нужен пример карты чтобы его воспроизвести.
С другой стороны, упоминание косяка сохранилось вот здесь:
viewtopic.php?f=13&t=119&p=1119#p1119. Может быть, где-нибудь остался и пример? Ар, Джа - помогайте.
Кстати, в связи с появлением интерполяции есть смысл разрешить указание дробных задержек. А если по уму - то просто сделать новое поле с расчётом в секундах.
Чтобы можно было делать анимации быстрее, чем 36 кадров в секунду.