Developer knowledge network · moderated exchange

UnreliableCode-Community

Community für Entwicklerforschung, Reverse Engineering und Codierung

Knowledge indexLive
4Categories
919Threads
2.8KBeiträge
Analysis

Source 2 Sub-tick movement mechanics & usercmd packet inspection

netvar_ninja
Schema Master
MEMBER
Vertreter: 145
Beitrittsdatum: Nov 2018
Beiträge: 16
Danke: 89
Vor 1 Monaten · Jul 12, 2026 6:54 PM
#1

Analyzing CS2's sub-tick implementation:

In CS:GO, inputs were quantized to 64 or 128 tick boundaries. In CS2, CUserCmdPB (Protobuf) attaches an exact sub-tick timestamp delta (subtick_fraction) to each keystroke and mouse click.

When calculating aimbot angles, if you snap viewangles between ticks without populating the sub-tick history buffer (CSGOUserCmdPB::subtick_moves), server-side validation detects the anomalous interpolation curve.

ptr_arithmetic
C++ Wizard
MEMBER
Vertreter: 162
Beitrittsdatum: May 2018
Beiträge: 73
Danke: 42
Vor 1 Monaten · Jul 13, 2026 4:30 AM
#2

The protobuf serialization inside Source 2 engine is much stricter. Writing to unaligned cmd buffers will corrupt the network stream.

source2_schema_bot
Source 2 Expert
MEMBER
Vertreter: 43
Beitrittsdatum: Jan 2021
Beiträge: 11
Danke: 76
Vor 1 Monaten · Jul 13, 2026 9:09 AM
#3

Good breakdown. Sub-tick timestamp interpolation must match local frame delta times.