Диагональное трение и слайсы команд субтика: окно контр-страфа не бей в ритм «как в GO»

21 сентября 2026 г. в 14:07:21

В CS2 с субтиком остановка — это не кадр, когда модель замирает на экране, а момент, когда горизонтальная скорость попадает в узкую «нулевую полосу». Порядок отпускания клавиш на диагонали и привязка разброса к epsilon скорости важнее анимации прицела.

Короткий лид: старая привычка — «увидел силуэт, встал, выстрелил». Субтик режет движение на более плотные фрагменты команд: сервер сначала признаёт вектор скорости, и только потом accuracy стягивает разброс. Глаза и хитбокс часто живут в разных фазах.

Нулевая полоса: останавливается вектор, не камера

После субтика трение и разгон не закрываются «целым тактом», как на 64 tick. В те кадры, когда отпускаешь W или дожимаешь S, клиент режет ввод на несколько кусков; сервер, склеивая смещение, считает полную остановку, когда модуль горизонтальной скорости падает в узкую нулевую полосу, а не когда модель на экране перестала шевелиться.

Типичная ошибка в матче: персонаж уже прилип к стене, шаги в наушниках затихли, а диагональная инерция ещё жива. Короткий peek с мидла Mirage: если только отпустить W и не тронуть компоненту A/D, диагональное трение тянет полу-стоп, и первый выстрел всё ещё с штрафом за движение. Окно контр-страфа — это длительность противоввода × текущая скорость, а не таблица на 80 или 120 ms.

Обратный гистерезис: не используй один порядок клавиш для диагонали

Чистый вперёд-назад — пара клавиш, которые «кусают» друг друга. Выход под углом (Dust2 short у стены, срез по внешней Ancient) упирается в порядок отпускания. Сначала отпустить вперёд и потом снять стрейф — или наоборот — под буфером субтика даёт разные кривые скорости; второй выстрел может сдвинуться на полтакта.

Практика «как в блокноте про»: смотри sv_showimpacts и реплеи, а не только анимацию прицела. Визуальное «возвращение» перекрестия сглажено; rebind разброса ближе к epsilon скорости. На высоком зуме «уже стоит» на экране, а сервер ещё видит лёгкое движение. Во flash-окнах у про второй выстрел часто оставляют под подтверждённую нулевую полосу, а не под «когда кружок прицела дорисовался».

Возврат прицела: читай spread, не UI

Любой кастомный прицел — слой интерфейса. Стабильность первого выстрела зависит от того, получила ли текущая inaccuracy бонус стоя. На субтик-движении короткий противоклавишный tap иногда быстрее проваливает в нулевую полосу, иногда наоборот даёт «зубчатую» скорость — материалы, склоны и края ступеней усиливают разницу: арка второго этажа Inferno, порог зала Anubis дают «Feel стоит, регистр — нет».

Тренировка: один и тот же угол, цикл peek → одиночный → снова peek, меняй только длину противоввода и порядок сброса диагонали. Окно суди по вертикальному разбросу кластера попаданий, не по килл-фиду. Анимация на странице деталей C5GAME может быть идеальной — она не заменяет in-game epsilon; inspect — третья шкала времени, не калибруй ей контр-страф.

Итог 39-й недели

Срез на 14-й час: слайсы команд субтика + диагональное трение + rebind разброса — читай тройкой, тогда окно контр-страфа становится воспроизводимым в командных правилах. Дефолтные линии гранат можно переносить между картами, порог остановки — нельзя жёстко заучивать одни и те же миллисекунды между версиями. Сначала верь, что вектор скорости упал в нулевую полосу — потом верь прицелу.