Source Engine Tick System Explained
169K views · Dec 19, 2022 · Gaming
Comments · 430
@Pinsplash · 3 years ago (edited) · pinned
People keep saying things along the lines of this so let me just inform you all that what happens in one engine has no bearing on another engine.<br>Patch 1.1<br><br>Removed bit where I spoke poorly about the downsides of delta timing
195
@bugjams · 3 years ago
"You won't understand what ticks until you understand the issues with the alternatives."<br><br>Ah yes, <i>lice.</i>
453
@izzieb · 3 years ago (edited)
I know exactly what a tick rate is. It's how many ticks bite you per minute and it influences how quickly you get Lyme Disease.
1.6K
@PintaraVS · 2 years ago
fun fact: DooM (1993) and DooM 2 uses tics for it's logic, and they are 1/35th of a second, as the framerate cap <i>was</i> 35
68
@npc_pigeon · 3 years ago
"skyrim was made by bethesda" 💀<br><br>great video! this is the best explanation i've heard for what ticks actually are. i've never fully understood the difference between ticks and frames before, and people talk about tickrates etc. quite a bit when it comes to setting up servers for bhopping capabilities (in css at least).
994
@CassieMrrp · 3 years ago
Minecraft with the Carpet mod gives an excellent demo of ticks. <br><br>/tick freeze allows you to stop all game ticks while still allowing movement<br><br>/tick step does one step<br><br>You can speed or slow time by changing the tick rate<br>/tick rate 20 is the default rate of the game<br><br>/tick rate 10 makes 1/2 speed<br><br>Its an excellent way to introduce the concept of ticks to people, and very helpful for debugging redstone contraptions
289
@WhiteDragon103 · 3 years ago (edited)
Something else to consider: When dt is extremely small, (extremely high frame rates) floating point accuracy issues may occur, or in other words, rounding errors.<br>If tiny values are being accumulated into a large value, the tiny value may be too small compared to the large value and get rounded down, and the large value doesn't change.<br>For example, if your velocity is tiny (0.001 units/sec), and you're position is large (1000 units away from 0), and the delta time is tiny (1000fps) your position may not change. 1000 (position) + 0.001 (vel) * 0.001 (deltaTIme) = 1000.0000001 (nextFramePosition), but it might just get rounded to 1000.<br>This is why when you fly away from the center of a map extremely far, you can start to notice bugs.<br>There are ways to fix this but sometimes devs don't bother.
288
@randomcommenter10_ · 3 years ago
The Half-Life version of shounic
124
@arvh-v8n · 1 year ago
"Skyrim was developed by Bethesda"<br><b>shows carriages going crazy</b><br><br>Understandable, have a nice day.
9
@hermitgreenn · 3 years ago
It deserves to be pointed out how unique the Goldsrc, Source and (to a lesser extent) IDTech engines are regarding how they process game logic in general. Everything, even the menus and single player runs on a server, a local server in this case. In a way. When you open Half Life 2 you effectively start a local dedicated server just for your game session. This is the reason enabling cheats is a server command, same with changing the tickrate. IDTech games tie some game logic to the frame rate even to this day whereas Source relies on tickrate. Frame rate dependent movement is why you have super bounce bugs in Quake 3 and Call of Duty 4.
69
@saniel2748 · 3 years ago
Minecraft is, weirdly enough, an interesting example of such technique. As far as I know, it not only separated gameplay update and rendering update, it also puts them in completely different threads. Therefore, minecraft is like, the only game I know of, that can lag without drops in FPS. Stuff just won't move, but still render in 60fps<br><br>.....Though maybe I'm misunderstanding why exactly those things happen
175
@Kyle-McGough-Old · 3 years ago (edited)
It’s worth noting that the tick system was made specifically for multiplayer. The server runs the game simulation and replicates the tick snapshots across the network so multiple source clients can view roughly the same game state. I suspect they use that model for single player simply because it’s easier to have unified game logic not because they thought it would fix bugs that are linked to framerate.<br><br>You can read more about this tick system and source networking on the valve software wiki.<br><br>This also means that the assumption that the tick rate would always be 66 is very sane. You shouldn't need to change the tick rate of a single player game at all so the option being exposed is a bit silly.
208
Up next

The Sift (4th) Dimension, in Minecraft.
Phoenix SC · 2M views

Questioning Bulbapedia's Questionable Feebas Tile Strategy
Pinsplash · 9.3K views

20+ YEAR OLD C++ Code of Half Life 2
This is GameDev · 225K views

Okay, but how does airstrafing ACTUALLY work?
zweek · 645K views

Beyond The Source Engine: How and Why?
Elgen Channel · 80K views

Instant Mission Fail Softlock when Playing HL2 Map in Episodes
Pinsplash · 62K views

Mistake of Pythagoras is the most bizarre Half-Life 2 mod I've played.
Techn1colour · 11K views

Liminal Spaces and the Source Engine
Bem · 27K views

When Optimisations Work, But for the Wrong Reasons
SimonDev · 1.7M views

How the G-Man Retconned Half-Life
Skyrionn · 280K views

Half-Life 2 When Pi is Wrong
Pinsplash · 185K views

What CS:GO is meant to look like
3kliksphilip · 1.2M views

Beyond The Source Engine: A Year of Foundation.
Elgen Channel · 37K views

The Borealis.
Archenlander · 357K views

50 Glitches and Facts about Half-Life 2 you have a low chance of having prior knowledge of
Pinsplash · 1.5M views

A Brief History of the Source Engine
CHAMPutee · 209K views

Half-Life 2 Developers React to 50 Minute Speedrun
IGN · 8.1M views

How to set up a Source SDK 2013 Singleplayer mod
PPPinsplash · 6.6K views

A Love Letter to Unreal
Nick Burns · 68K views

What Happened During Half-Life's 20-Year Gap?
Archenlander · 451K views

Source Evolution and Branches Explained
qyuetx · 220K views

The Secret Behind Source's Lighting
Elgen Channel · 65K views

Dumbest Source Engine Arguments
Pinsplash · 181K views

Half-Life's On A Rail Isn't Bad | Cascade
PurpleColonel · 200K views

Why Does Half-Life 2 Still Look So Good?
eurothug4000 · 160K views

Counter-Strike's Forgotten Features and Unused Items
DeZolance · 428K views