Geometry Dash

Geometry Dash

Not enough ratings
How to PROPERLY sync levels.
By ◄FiNiTe►
Hey guys so today I'd like to create this guide, as, in my opinion levels that are perfectly synced to the music give a much better playing experience than non-synced levels, and I'm talking about osu! (rhythm game) level sync here. So, let's start!
   
Award
Favorite
Favorited
Unfavorite
1. Calculate the blocks-per-beat of your song.
To do this, you have to get the beats-per-second of a song, to do this, find it's BPM, divide it by 60, however many songs use half or quarter beats, and you may want to multiply your result by 2 or 4 respectively. For now we will call the result you get (after multiplying by 2 or 4 or whatever (some songs might have other timing signatures)), 'Y'.

Formula: (BPM/60)*signature=beats-per-second

Now that we have 'Y' we can proceed, you need the blocks-per-second in your level, here's a cheat sheet:

Single-reverse-speed speed is ~8.37188 blocks per second.
Single-forward-arrow speed is ~10.3860833 blocks per second.
Double-arrow speed is ~12.713923076923076923076923076923 beats-per-second.
This is wrong, use 129.14 blocks per second as double arrow speed. I think I wrote a wrong digit during division.
Triple-arrow speed is ~15.600526315789473684210526315789 blocks-per-second.
Quad-arrow speed is 19.2 blocks per second.

All these values agree to atleast 4 significant figures with what someone else got (zhander), except the 2x arrow which I redid yesterday and its approx there so its probably right also.

If you want exact measurements here are my notes from when I was measuring it (keep in mind the numbers are what I put into the move trigger, and this was tested on a max length level, which is where the percentages are from):

0.5x=83718(.8?)/1000 (83718 was too slow at 2%, 83719 was too fast at 10%)
1x=83088(.66666?)/800 (83087 was too slow at 5%, while 83088 was too fast at 10%)
2x=63569(.61538461538461538461538461538462?)/500 (63570 was too fast at 8%, 63569 was too slow at 5%)
3x=78002(.63157894736842105263157894736842?)/500 (78003 was too fast at 12%, 78002 was too slow at 7%)

Let's call your blocks-per-second 'Z' in this guide.

Now divide 'Z' by 'Y', and you get your beats-per-block!
For example, lets do 240BPM, and sync it to quarter-beats at triple-arrow speed, so, 240/60 gives us 4, and we then multiply it by 4 for the quarter-beats, giving us 16, then we divide 15.600526315789473684210526315789 by 16! This gives us 0.97503289473684210526315789473684 blocks-per-beat. Let's call the blocks-per-beat 'X'. Now, of course, you don't have to be THAT precise, but it would be nice :^)
2. Find out how many small arrow things you have to move.
This is pretty simple, just multiply your 'X' by 15 for the small arrows (the ones where you press W/A/S/D+Shift), or by 60 (Yes, I counted), for the tiny arrow moving things(TM).
3. Sync a single beat.
Basically, just place an object at which you die, or a sudden BG change, and play the level (Please don't use editor playtest, it's not the most consistent thing ever), and then you can use the BG change as a thing for you to line up orbs, or jumps to, just make sure the jumps are possible when you click at the exact time the beat occurs!
4. Syncing the level.
Just take 'X' and copy+paste your BG change or whatever else you use for the blue lines, moving it by 'X' every time, now, since you can't move the block a 0.158967815279th of a (block-size?), I recommend multiplying 'X' by a power of two (something large maybe to make 'X' cover 25% of the level), then just have your second BG change 'X' after the first, and then copy both and move them by 'X' times a number half the power of two you chose, repeat this as much as you need to sync a jump, this will ensure you won't lose as much accuracy over time.
5. Make sure to re-sync often!
Basically re-do step 3. every so often to ensure that you lose the LEAST possible amount over time, and to (hopefully) fix any timing errors over time.
6. You're done!
Congratulations, you have successfully synced a level! (Or, just read this guide, I have no way of knowing really).
Any suggestions, any ideas!?
Since I'm bad at writing, and my formulae/numbers might be incorrect, or if you have better numbers feel free to drop them in the comments! Feedback is appreciated, (just don't write "Omg ♥♥♥♥♥ gueid xddDdD!1!1dDdxddDdddddddddddd" without saying why you think so).
16 Comments
Anomalocaris canadensis! :] Aug 18, 2023 @ 12:38pm 
This is the best guide I've seen yet
publicly boiled in 5 days Nov 29, 2021 @ 1:22pm 
Back when I played this game I did this for my levels. Pretty well explained!
.Dᴇʟʟᴀsxー♪ Sep 24, 2020 @ 5:32am 
uhm.... I don't understand the calculation of pi:cleancake:
analysis Sep 24, 2020 @ 4:15am 
i think
◄FiNiTe►  [author] Sep 24, 2020 @ 4:14am 
do people actually still read this lol
analysis Sep 24, 2020 @ 4:08am 
by you i didn't mean specifically you i meant whoever is reading this comment rn lol
◄FiNiTe►  [author] Sep 24, 2020 @ 3:29am 
ok but i did it in 2016 8)
also i barely create now L
analysis Sep 23, 2020 @ 12:37pm 
Zhander did a more understandable guide for the same topic (i think?). I recommend you to check it out: https://twitter.com/Shiryuu7_/status/1308486294490800131
analysis Aug 25, 2019 @ 9:12am 
Single Reverse: 8.38 block per second
Single: 10.39 bps
Double: 12.92 bps
Triple: 15.6 bps
Quadruple: 19.2 bps
.Dᴇʟʟᴀsxー♪ Jan 4, 2019 @ 12:22am 
I don't understand the Guide, please Simplify the Guide. I think the Calculation makes people confused. Try fixing it. :cozypoechris: People will start Flaming you if you don't!