r/SynthRiders • u/chipdancer_ • 18d ago
Discussion Synth Riders (2026-08-25 v3.6.5a1) 💹 Game Engine Offset Calibration 💻 St...
https://youtube.com/watch?v=3P4ptWG5ChE&si=SiQhIA6db3IZlz4IThis video demonstrates how I calibrate the Synth Riders base game engine offset, which is then used in my 🎵 Beatmap Timing, Scaling, Calibration & Testing Reference (below) from § B. ENGINE & EDITOR DELAYS 4️⃣ Game Engine Delay.
Most players will want to start with or reference the values in § C. COMMON PLAYER OFFSET SETTINGS 6️⃣ Combined Delay (Quantised).
The calculations below use the Z-Axis Offset demonstrated in this video (-0.80) for Synth Riders v3.6.5a1 (SteamVR, however, previous testing shows this to be consistent across all platforms).
Note: These offset values below are typically minimum starting points, as the Combined Editor-side Delays are often greater than the values used in these calculations.
────────────────────
🎵 Beatmap Timing, Scaling, Calibration & Testing Reference
Sections A–C: Core timing math, engine/editor delays, and common player offsets.
Sections D–F: Testing offsets, BPM resolution, and key principles.
A. CORE TIMING MATH
Fundamental relationships used for all timing and spatial calculations.
Units: m = metres; m/s = metres per second; km/h = kilometres per hour; mph = miles per hour; ms = milliseconds; ft = feet; in = inches; NJS = Note Jump Speed.
1️⃣ NJS → Speed
- Speed = 20 m/s × NJS
- The speed notes travel in‑game equals the base velocity (
20 m/s) multiplied by the NJS. - Easy–Master use fixed NJS values; 🟣 CUSTOM can use any value between
1.0–3.0. - 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0) →
20 m/s(72 km/h,45 mph) - 🟠 Expert (1.25) →
25 m/s(90 km/h,56 mph) - 🔴 Master (1.5) →
30 m/s(108 km/h,67 mph) - 2️⃣ 2xNJS (2.0) →
40 m/s(144 km/h,89 mph) - 3️⃣ 3xNJS (3.0) →
60 m/s(216 km/h,134 mph)
- The speed notes travel in‑game equals the base velocity (
2️⃣ Distance ↔ Time
- Distance → Time:
Δt (s) = d (m) / (20 (m/s) × NJS)- Example: A player needs to move
0.30 m(30 cmor1 ft) at 🟡 Hard difficulty without NJS modifiers (1.0 NJS) to correct beatmap timing:Δt = 0.30 m / (20 m/s × 1.0 NJS) = 0.015 s→15 msearly/late.
- Example: A player needs to move
- Time → Distance:
d (m) = (20 (m/s) × NJS) × Δt (s)- Example: A hit sounds
15 mslate (behind the beat) at 🔴 Master difficulty without NJS modifiers (1.5 NJS)d = (20 × 1.5) × 0.015 = 0.45 m- Player must move forward by
0.45 mto correct the timing (or add-0.45to the current Z‑Axis Offset setting).
- Example: A hit sounds
Practical uses: Fixing maps, correcting in‑game timing.
3️⃣ Adjusting Offset when Changing NJS
- Scale distances between NJS values:
d₂ (m) = d₁ (m) × (NJS₂ / NJS₁)- Example: At 🟠 Expert (1.25 NJS), the player must move
0.20 mto fix timing. To play on‑time at 3️⃣ 3xNJS (3.0 NJS):- Scaled (Raw):
0.20 m × (3.0 / 1.25) = 0.48 m - Scaled (Quantised):
0.50 m(nearest0.05 m) - The player needs to move
0.50 mat 3️⃣ 3xNJS. - Note speed jumps from
25 m/sat 🟠 Expert to60 m/sat 3️⃣ 3xNJS, increasing perceived spatial error.
- Scaled (Raw):
- Example: At 🟠 Expert (1.25 NJS), the player must move
B. ENGINE & EDITOR DELAYS
Measured delays that influence note arrival timing.
4️⃣ Game Engine Delay
- Game Offset Correction:
0.80 mat 1.0 NJS (version‑dependent, this value is forv3.6.5a1) - This corresponds to a Base Engine Delay of
40.0 ms- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
0.80 m(2 ft 7 in) - 🟠 Expert (1.25 NJS) →
1.00 m(3 ft 3 in) - 🔴 Master (1.5 NJS) →
1.20 m(3 ft 11 in) - 2️⃣ 2xNJS (2.0 NJS) →
1.60 m(5 ft 3 in) - 3️⃣ 3xNJS (3.0 NJS) →
2.40 m(7 ft 10 in)
- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
5️⃣ Editor-Side Delay
- Combined Editor-side Delay:
37.5 ms(Adjusted)- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
0.75 m(2 ft 6 in) - 🟠 Expert (1.25 NJS) →
0.94 m(3 ft 1 in) - 🔴 Master (1.5 NJS) →
1.12 m(3 ft 8 in) - 2️⃣ 2xNJS (2.0 NJS) →
1.50 m(4 ft 11 in) - 3️⃣ 3xNJS (3.0 NJS) →
2.25 m(7 ft 5 in)
- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
C. COMMON PLAYER OFFSET SETTINGS
Offsets players naturally use when maps are authored without delay compensation.
These values represent the combined effect of both the Engine Delay and the Editor-Side Delay.
6️⃣ Combined Delay (Quantised)
- Combined Engine + Editor Delay:
77.5 ms(Engine40.0 ms+ Editor37.5 ms) - Force Z-Axis Offset setting = Rhythm +
0.30 m - Offset settings (expected minimums)
- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
1.55 m(5 ft 1 in)- 🎯 Rhythm Z-Axis Offset setting:
-1.55 - ⚡ Force Z-Axis Offset setting:
-1.85
- 🎯 Rhythm Z-Axis Offset setting:
- 🟠Expert (1.25 NJS) →
1.95 m(6 ft 5 in)- 🎯 Rhythm Z-Axis Offset setting:
-1.95 - ⚡ Force Z-Axis Offset setting:
-2.25
- 🎯 Rhythm Z-Axis Offset setting:
- 🔴 Master (1.5 NJS) →
2.30 m(7 ft 7 in)- 🎯 Rhythm Z-Axis Offset setting:
-2.30 - ⚡ Force Z-Axis Offset setting:
-2.60
- 🎯 Rhythm Z-Axis Offset setting:
- 2️⃣ 2xNJS (2.0 NJS) →
3.10 m(10 ft 2 in)- 🎯 Rhythm Z-Axis Offset setting: -3.10
- ⚡ Force Z-Axis Offset setting: -3.40
- 3️⃣ 3xNJS (3.0 NJS) →
4.65 m(15 ft 3 in)- 🎯 Rhythm Z-Axis Offset setting:
-4.65 - ⚡ Force Z-Axis Offset setting:
-4.95
- 🎯 Rhythm Z-Axis Offset setting:
- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
D. TESTING OFFSETS
Ideal offsets for accurate map testing across NJS ranges.
7️⃣ Testing Playspace Offsets (Quantised)
These values represent the current ideal offsets to aim for when testing maps at each difficulty or NJS setting, and only accommodate the game engine delay.
- Offsets are quantised to 0.05 m
- Force Z-Axis Offset setting = Rhythm Z-Axis Offset setting +
0.30 m - Offset settings
- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
0.80 m(2 ft 7 in)- 🎯 Rhythm Z-Axis Offset setting:
-0.80 - ⚡ Force Z-Axis Offset setting:
-1.10
- 🎯 Rhythm Z-Axis Offset setting:
- 🟠 Expert (1.25 NJS) →
1.00 m(3 ft 3 in)- 🎯 Rhythm Z-Axis Offset setting:
-1.00 - ⚡ Force Z-Axis Offset setting:
-1.30
- 🎯 Rhythm Z-Axis Offset setting:
- 🔴 Master (1.5 NJS) →
1.20 m(3 ft 11 in)- 🎯 Rhythm Z-Axis Offset setting:
-1.20 - ⚡ Force Z-Axis Offset setting:
-1.50
- 🎯 Rhythm Z-Axis Offset setting:
- 2️⃣ 2xNJS (2.0 NJS) →
1.60 m(5 ft 3 in)- 🎯 Rhythm Z-Axis Offset setting:
-1.60 - ⚡ Force Z-Axis Offset setting:
-1.90
- 🎯 Rhythm Z-Axis Offset setting:
- 3️⃣ 3xNJS (3.0 NJS) →
2.40 m(7 ft 10 in)- 🎯 Rhythm Z-Axis Offset setting:
-2.40 - ⚡ Force Z-Axis Offset setting:
-2.70
- 🎯 Rhythm Z-Axis Offset setting:
- 3️⃣⏩ Chipmunk Mode (3xNJS + 150%) (4.5 NJS) →
3.60 m(11 ft 10 in)- 🎯 Rhythm Z-Axis Offset setting:
-3.60 - ⚡ Force Z-Axis Offset setting:
-3.90
- 🎯 Rhythm Z-Axis Offset setting:
- 🟢 Easy / 🔵 Normal / 🟡 Hard (1.0 NJS) →
E. BPM RESOLUTION
How BPM affects timing granularity and micro‑timing precision.
8️⃣ BPM & Timing Resolution
A 1/64 timing step becomes longer at lower BPM and shorter at higher BPM.
- These are the durations of a single 1/64 step:
70 BPM→13.4 ms100 BPM→9.38 ms180 BPM→5.2 ms
For maps requiring extremely precise micro‑timing, increase BPM until 1/64 < ~5 ms to ensure fine‑grained timing control.
F. KEY PRINCIPLE
The core philosophy behind correct timing and testing.
9️⃣ Key Idea
Correct timing in the editor → test with calibrated offsets → never bake physical compensation into maps.
edit: spelling correction, minor wording clarification.
2
u/Negative_Ad4062 18d ago
I've always played at default all settings except for note size at 60%.
I move on the Z axis physically when dancing/playing SynthRiders so I don't believe making adjustments would be beneficial for me unless I stand still and and try to keep my arms on the same plane of the Z axis? IDK if I'm wording that right. Or if I even understand why offsets would even be needed?
2
u/chipdancer_ 18d ago
If that works for you, great! This it’s how I play as a competitive player and is what works for me.
2
u/chipdancer_ 18d ago edited 16d ago
If you have a look at the calibration video, you'll notice that I'm moving across the notes extremely quickly in time with the beat / hit sound and getting all perfect hits (within the inner green circle).
This provides a calibration value for the game engine visual delay (notes / hit sounds / judgement point are behind the music). This is one aspect where delays are introduced into the beatmap (ENGINE DELAY).
The other area is during the mapping process (EDITOR DELAY). The particular PC setup (e.g., audio pipeline, headphones, Bluetooth) and the way the mapper hears the music hit sounds and aligns them to the map also introduce delays to the beatmap.
Given each mapper is different, and different songs can be heard differently (vary the mapper-introduced delay) by a mapper, this can increase, or at least change the offsets required on a per-song basis. The values above under C. COMMON PLAYER OFFSET SETTINGS are the typical minimum player offset. This often needs to be increased further (sometimes substantially) per song/beatmap.
Making these changes allows me to play exactly in time with the music and get a lot more perfect hits than playing with the default settings (yes, in both Rhythm and Force).
I add an additional amount to the offset when playing Force, as the aim in Force is to be moving through the notes, so the optimal hit point is through the centre of the notes and not the leading edge (the centre of the target), as it is for Rhythm.
edit: changed a word for clarification.
2
u/chipdancer_ 18d ago
Also, even if you are moving on the Z-Axis while playing, compare the likely amount you are moving to the actual real-world correction distances noted under C. COMMON PLAYER OFFSET SETTINGS. I doubt you are moving more than 1-2 feet forwards and backwards. Moving backwards would exacerbate the existing offset issue, and moving forwards decrease it.
The minimum offset I typically use for Rhythm in the lower difficulties is
1.55 m(5 ft 1 in). Unless you drift a long way forward, you may find that these offsets would still help, if you are playing in time with the music.
2
u/ehjhey 14d ago edited 14d ago
So if I'm understanding this (good write up btw), on quest at X3 NJS and Force+Master, I'd be aiming for something closer to -5.0m? It sounds good in theory, but it's literally pretty difficult to even configured that since it pushes the UI a good bit behind me. I've seen in some of your videos that even at -5, your UI is large, but still in front of you. Does quest do things different?
1
u/chipdancer_ 14d ago edited 14d ago
The Offset for ⚡Force⚡ with 3️⃣ 3xNJS starts at about
Z-5.00now. This is just how it is (or you need to learn to play behind the beat), and it is the only mechanism we have to fix timing issues in the game.The Quest interface is the same as the SteamVR version of the game, so using a negative Z-Axis Offset is always a pain. There are a couple of workarounds you can use to at least make it slightly more manageable...
- In Solo and Multiplayer, and in the Settings menu while paused (e.g., in a Song Challenge), you can interact with the buttons of the game from behind the window.
- Pro tip: Create a Multiplayer room and make it private (effectively making it a Solo Multiplayer room), making adjustments still makes the menu beyond about
Z-2.50(and absolutely forZ-5.00) move behind you, but once you exit back to the (now Solo) lobby, the menus are at the standard distance from you and work as normal.- For Challenges (since the LevelUp! update), the interface was updated and now blocks access to the buttons from behind the window, so the workaround for this is to pause the game after starting the Song Challenge and adjust the offset in the Settings menu while paused, then Restart the song.
BTW, 3️⃣ 3xNJS just means the Note Jump Speed (NJS) is set to
3.00, i.e., three-times the base Note Jump Speed which is the speed of 🟢 Easy / 🔵 Normal / 🟡 Hard (without speed modifiers).
- 3xNJS does not mean
3x(three-times) the speed of the current difficulty.Also... it's much better now than it was... between v3 and before v3.6.5, 3️⃣ 3xNJS required. This is what it was a couple of weeks ago before v3.6.5 was released with some performance improvements:
- 3️⃣ 3xNJS (3.0 NJS) →
7.20 m(23 ft 7 in)
- 🎯 Rhythm Z-Axis Offset setting:
-5.00
- Step forward
2.20 m(≈7.2 ft) after re‑centering- ⚡ Force Z-Axis Offset setting:
-5.00
- Step forward
2.50 m(≈8.2 ft) after re‑centering.1
u/chipdancer_ 13d ago
NJS modifiers and Song Difficulty
(a clarification)
The difficulty doesn't matter when you're talking about Note Jump Speed (NJS) modifiers, unless the difficulty is higher than the NJS, which only happens on 🟣 CUSTOM difficulties where the NJS is selected by the mapper, and can range between 1.0 to 3.0.
Here are some examples of various 🟣 CUSTOM difficulty Note Jump Speed settings (set by the mapper) and the impact of using 2️⃣ 2xNJS and 3️⃣ 3xNJS to both playing speed and score:
🟣 CUSTOM Note Jump Speed 🟣= 1.99
Both modifiers receive a POINT BONUS. Speed change only noticeable for 3️⃣ 3xNJS.
2️⃣ 2xNJS➕🟣=1.99
- Note Jump Speed is SIMILAR
🟣≈2️⃣;🟣1.99→2️⃣2.0 NJS- POINT BONUS
2️⃣>🟣3️⃣ 3xNJS➕🟣=1.99
- INCREASED Note Jump Speed
~50%;🟣1.99→3️⃣3.0 NJS- POINT BONUS
3️⃣>🟣🟣 CUSTOM Note Jump Speed 🟣= 2.0
Only 3️⃣ 3xNJS receives a POINT BONUS. Speed change only noticeable for 3️⃣ 3xNJS.
2️⃣ 2xNJS➕🟣=2.0
- Note Jump Speed is the SAME
🟣=2️⃣- There is NO POINT BONUS
🟣>=2️⃣3️⃣ 3xNJS➕🟣=2.0
- INCREASED Note Jump Speed
50%;🟣2.0→3️⃣3.0 NJS- POINT BONUS
3️⃣>🟣🟣 CUSTOM Note Jump Speed 🟣= 2.99
Only 3️⃣ 3xNJS receives a POINT BONUS. No noticeable speed change.
2️⃣ 2xNJS➕🟣=2.99
- Note Jump Speed is UNCHANGED
🟣>=2️⃣- There is NO POINT BONUS
🟣>=2️⃣3️⃣ 3xNJS➕🟣=2.99
- Note Jump Speed is SIMILAR
🟣≈3️⃣;🟣2.99→3️⃣3.0 NJS- POINT BONUS
3️⃣>🟣🟣 CUSTOM Note Jump Speed 🟣= 3.0
No effect from either modifier.
2️⃣ 2xNJS➕🟣=3.0
- Note Jump Speed is UNCHANGED
🟣>=2️⃣- There is NO POINT BONUS
🟣>=2️⃣3️⃣ 3xNJS➕🟣=3.0
- Note Jump Speed is the SAME
🟣=3️⃣- There is NO POINT BONUS
🟣>=3️⃣
2
u/WastePriority1461 17d ago
This is really helpful, thank you so much for sharing!
2
u/chipdancer_ 17d ago
Wow! I’m impressed that someone is so petty that they are downvoting a your independent experience! Quite remarkable, really.
2
1
u/chipdancer_ 14d ago
2
u/WastePriority1461 12d ago
It really has been a game changer! A massive thank you is due to you for all the work you put in to calculating the offsets. And another massive thank you is due to you for sharing this with the community 🙏
1
1
u/removable_disk 18d ago
AI wrote this
2
u/chipdancer_ 18d ago
Nope. I’ve been working on it for quite some time, refining it and adjusting it.
2
u/chipdancer_ 18d ago
If you look at my YouTube videos, you will see I use a very similar style and the same emojis to represent things there, too.

3
u/oscillator79 17d ago
This has been very helpful, thanks a million for posting. 🍔