Стоп-шот — это не тормоз, а переключение передач: переоценка окна остановки в эпоху sub-tick

6 октября 2026 г. в 14:00:07

В архитектуре sub-tick CS2 ввод фиксируется с временными метками внутри тика, но кривая затухания скорости остаётся физической. Истинное окно остановки — это десятки миллисекунд до и после пересечения нуля скоростью. Sub-tick считает это точнее, но не расширяет окно. Нужно перестроить тайминги коррекции мыши и нажатия обратной клавиши.

Введение

Многие понимают стоп-шот как «нажатие на тормоз». Но в архитектуре sub-tick CS2 ваши нажатия A и D не сэмплируются в конкретном кадре — они записываются с временными метками внутри одного тика. Проблема в том, что между моментом записи и моментом расчёта траектории есть слой интерполяции, до которого вы не дотянетесь. Окно остановки — это по сути задача «переключения передач», а не «тормозного пути».

1. Что sub-tick даёт и что забирает

Логика старого 128-тика: ввод сэмплируется раз в тик, траектория считается по тикам. Вы отпускаете D, и если это совпало с границей тика, в следующем тике скорость обнуляется, траектория стабильна. CS2 вынес сэмплирование ввода из тика. Теоретически «та миллисекунда, когда вы отпустили», будет записана, и сервер построит позицию по этой метке.

Звучит хорошо. Но в реальном бою вы увидите, что при спрее ствол всё ещё плавает, а первый выстрел всё ещё «необъяснимо» уходит в сторону. Причина не в точности сэмплирования, а в кривой затухания скорости. После отпускания клавиши скорость не обнуляется мгновенно — она затухает с обратным ускорением. Sub-tick позволяет раньше записать само действие «отпускания», но не меняет время, необходимое для затухания.

Иными словами: сервер раньше узнаёт, что вы хотите остановиться, но персонаж всё равно проскальзывает небольшой отрезок. Этот отрезок и есть реальная ширина окна остановки.

2. Окно остановки — не ноль, а интервал

Разделим стоп-шот на три фазы:

  1. Инверсия ввода: вы нажимаете обратную клавишу, ускорение начинает действовать в обратную сторону.
  2. Пересечение нуля скоростью: реальная скорость персонажа переходит из положительной через 0 в отрицательную. Этот момент — «самая стабильная» точка.
  3. Обратное ускорение: если держать слишком долго, персонаж начинает двигаться в обратную сторону, и траектория снова рассеивается.

Sub-tick меняет точность записи фазы 1 и точность физического расчёта фазы 2, но фаза 3 полностью зависит от ваших пальцев. Проблема большинства — слишком долгое удержание обратной клавиши. Они думают: «Чтобы остановиться, нужно держать A». Но после пересечения нуля каждая лишняя миллисекунда создаёт смещение для следующего выстрела.

Настоящее окно остановки — это узкая щель в несколько десятков миллисекунд до и после пересечения нуля. Sub-tick вычисляет эту щель точнее, но не делает её шире.

3. Возврат прицела: проигнорированный «второй стоп-шот»

Большинство заботится только о том, остановился ли персонаж, а не о том, вернулся ли прицел. Это две разные вещи.

Скорость персонажа обнуляется — базовый разброс траектории возвращается к минимуму. Но у самого прицела есть визуальный процесс возврата: ваша рука корректирует мышь в обратную сторону, и эта коррекция с кривой скорости персонажа — две независимые кривые. Если персонаж остановился раньше, а мышь пришла позже, первый выстрел всё равно уйдёт в сторону.

При sub-tick расчёт траектории на сервере ближе к метке времени вашего «нажатия огня». Это значит: коррекция мышью должна завершиться раньше, чем замедление персонажа, а не позже. Раньше сэмплирование по тикам давало небольшой «буфер», теперь буфер сжат.

На практике ритм стоп-шота нужно тренировать наоборот: сначала возврат мыши, потом обратную клавишу. Потому что мышью вы управляете активно, а замедление персонажа — пассивный расчёт.

4. Конкретное упражнение на тренировочной карте

На карте с движущимися мишенями из мастерской не спешите стрелять по статичным мишеням. Используйте мишень как «метроном»:

  • Двигайтесь вправо на D, когда мишень входит справа в прицел — сначала верните мышь, затем нажмите A.
  • Время удержания A не должно превышать момент, когда вы почувствовали, что «персонаж остановился».
  • Стреляйте.

Запишите своё демо и в замедленном воспроизведении посмотрите на три вещи: момент пересечения нуля кривой скорости, момент остановки мыши, метку времени выстрела. Чем ближе эти три точки, тем чище ваш стоп-шот. Sub-tick не сделает это за вас — он лишь делает ошибку более заметной.

Стоп-шот никогда не был вбиванием персонажа в землю. Это выравнивание скорости, прицела и выстрела одновременно в правильные десятки миллисекунд. Sub-tick сделал линейку точнее, но измеряете всё равно вы.