Комментарии 10
еще бы какойнить пример, было бы интересно узнать.
Prince of Persia: The Lost Crown (2024) использует этот приём, а старый Prince of Persia (1989) - нет, поэтому в нем на прыжок надо было нажимать за шаг или два до обрыва.
Я бы ещё различал реальный Coyote Time, подобный описанному в статье и, скажем так, мнимый, когда что-то похожее делается хитбоксами.
Скрытый текст

Collision Box игрока (желтый) ещё касается края платформы, хотя визуально кажется, что это уже не так.
У нас в Doom2D Forever это решено хитрее, от противного. На чётных кадрах анимации ходьбы ноги игрока выглядят у́же, чем когда он просто стоит. В итоге человек нажимает кнопку прыжка раньше, чем упал бы на самом деле. Минус на плюс даёт ноль - в итоге даже есть пропасти, где нужно перескочить прямо на самом краю (MAP10), и выглядит это вполне себе естественно.



Вспомни первый BioShock, там враги намеренно промахивались первым выстрелом, если игрок их не видел, это давало время среагировать и развернуться в сторону угрозы. Формально физика пули нарушалась, но для атмосферы работало идеально
В Celeste на этом вообще весь платформинг собран. Там игра дает прыгнуть еще несколько кадров после падения с уступа и слегка магнитит к углам, чтобы не биться головой
Да на таких вот мелких "багах" и строится почти весь геймдев:
- модель коллизий вообще, и когда для разных действий разные хитбоксы (даже для разных ракурсов камеры - свои хитбоксы) в частности.
- "гибкое время" (подстроенное под человека время принятия решения, особенно хорошо видно на assisted speedrun, где бот делает все кадр-в-кадр).
- разный урон бота по человеку / человека по боту / человека по человеку
С сетевым кодом в шутерах абсолютно та же история. Если сервер не будет компенсировать пинг и верить клиенту на слово, никто ни в кого не попадет. Чистая математика там только мешает нормальной стрельбе
Вы когда-нибудь прыгали, с разбега?
Поскольку прыжок - единое вдижение начавшееся (не говоря уже о спланирвоанное) сильно раньше отрыва от земли, то в момент отрыва от земли центр тяжести действительно находетися впереди (в направлении куда вы прыгаете).
Вот и игрок ожидает именно этой динамики: если толчковая нога на земле, а центр тяжести в воздухе - то прыжок допустим.
А задержкой ввода это быть не может? Как раз время прожатия кнопки + debounce time + vsync очень близко к выставленным 100 мс: https://www.reddit.com/r/miniSNES/comments/7asnby/latency_analysis_of_nes_snes_classics_and_retropie/ - ~50мс на оригинальном оборудовании.

Coyote Time или как немножко врать игрокам