00:00:00
this video is sponsored by skillshare
00:00:01
hello everybody in today's video let's
00:00:03
talk about keyboards and render games
00:00:05
we'll be going through
00:00:06
polling rate and chord splitting and how
00:00:08
it affects games like eterna ocean
00:00:09
standard osumania and coiva but first
00:00:11
let's talk about polling rate people
00:00:13
make a big deal about polling rates for
00:00:14
mines and report rates per second for
00:00:16
tablets but what about keyboards
00:00:18
keyboard polling rate is probably the
00:00:20
most neglected part of a gaming setup in
00:00:21
general
00:00:22
with most websites claiming that you
00:00:24
would never need a keyboard that pulls a
00:00:26
thousand hertz and 125hz keyboard works
00:00:28
just fine
00:00:29
which is true if you're just typing but
00:00:31
for rhythm games it's a bit different
00:00:33
plus i'm pretty willing to bet that you
00:00:35
yes you the person watching is using
00:00:37
125hz keyboard right now
00:00:39
if you like the test just open up also
00:00:41
and turn up the size of the hit era
00:00:42
about to maybe three times scale or
00:00:44
something big and play any map that's
00:00:45
250 bpm or 125 bpm
00:00:48
if your bar is doing something like this
00:00:50
your keyboard is 125 hertz but if it
00:00:52
doesn't do that it could be that your
00:00:53
keyboard's pulling rate is different for
00:00:54
125 hertz
00:00:56
all the polling rate on your keyboard is
00:00:57
inconsistent if you're unfamiliar with
00:00:59
what the hit error bar on o2 actually is
00:01:01
it's actually a timing input bar so this
00:01:03
bar shows your inputs throughout a map
00:01:04
so when you hit a note you'll see a line
00:01:06
on the bar
00:01:06
and what this line means is where your
00:01:08
inputs sit on the timing window of that
00:01:10
node so every line is every key press
00:01:12
and the arrow above is the average
00:01:13
timing of your hits
00:01:14
if the arrow order lines moves to the
00:01:16
right of the bar it means that you're
00:01:17
hitting too late if it moves to the left
00:01:19
it means you're hitting too early
00:01:20
if you completely miss notes it won't
00:01:22
show on a bar at all the colors also
00:01:23
signify the hit result blue means 300
00:01:26
green means 100 and yellow means 50. so
00:01:28
why did i guess your keyboard was 125
00:01:30
hertz
00:01:31
because 125 hertz is standard pulling
00:01:33
rate for usb devices
00:01:34
there are also keyboards with other
00:01:35
polling rates like 100 hertz or 75hz but
00:01:37
those are rarer
00:01:38
so it's been a bit but what is polling
00:01:41
rate usb peripherals such as mice or
00:01:43
keyboards
00:01:43
send information to your pc on a regular
00:01:45
cycle think of every few million seconds
00:01:47
your keyboard or mouse tells your pc
00:01:49
what it's doing if you're not touching
00:01:50
your keyboard it'll constantly update
00:01:51
your pc with info that is doing nothing
00:01:54
and then when you press a key the next
00:01:55
time in cycles is when it sends your pc
00:01:57
that you've pressed the key
00:01:58
this updating every few milliseconds is
00:02:00
called pulling and pulling rate is how
00:02:02
many times the keyboard pulls per second
00:02:04
the faster your keyboard polling rate is
00:02:05
the more times per second you update
00:02:07
your pc with information which means the
00:02:08
time between each update is smaller for
00:02:10
a keyboard with 125hz polling rate you
00:02:12
can only send information to your pc
00:02:14
every eight milliseconds
00:02:15
for a thousand hertz keyboard it sends
00:02:17
information to your pc every one
00:02:18
millisecond so how does this affect
00:02:20
rhythm games
00:02:21
let's say you're playing anything on osu
00:02:22
mania or eterna what happens inside the
00:02:24
keyboard is this graph
00:02:25
the white lines at the bottom is when
00:02:27
the keyboard updates your pc and let's
00:02:29
say the red line is when you press your
00:02:30
key but your key press is at a time when
00:02:32
the keyboard hasn't pulled yet so what
00:02:33
your keyboard does is shift input later
00:02:35
because it only sends the input to your
00:02:36
pc when it pulls
00:02:38
so this means that your input on 125
00:02:40
polling rate keyboard can be one to
00:02:41
eight milliseconds later from when
00:02:42
you've actually pressed the key for the
00:02:44
average computer user that doesn't game
00:02:45
8 milliseconds is so small that doesn't
00:02:47
matter at all but for running gamers
00:02:49
it can be the difference between getting
00:02:50
a 300 or 100 all the difference between
00:02:52
getting a perfect upgrade
00:02:53
another thing about keyboards with
00:02:54
polling rates like 75 hertz 100 hertz
00:02:56
and 125hz is that they have these
00:02:59
dead space bpms whenever you play a map
00:03:01
or chart that has a ppm of the multiple
00:03:02
of their polling rate for example
00:03:04
if your keyboard is 125 hertz and you
00:03:06
play 125 bpm map or a 250 bpm map the
00:03:10
hit error also will look like this
00:03:12
and the input graph for eternal or
00:03:13
quaver will look like this this is
00:03:15
because the bpm lines up with the
00:03:16
polling rate of the keyboard the inputs
00:03:18
time to the bpm will all
00:03:19
shift to these lines on the hit error
00:03:21
here it's a lot more obvious how
00:03:22
keyboard following rate changes whether
00:03:24
you hit a 300 or 100 if your input size
00:03:26
later than the last line the perfect
00:03:27
window the keyboard will send the input
00:03:29
to the next line
00:03:30
which is in the grade window inversely
00:03:31
this means that if you hit in the 100
00:03:33
window it will get sent to the 300
00:03:34
window
00:03:35
so in the end the timing window is still
00:03:36
the same on dead space bpms
00:03:38
except that offset should be plus 4
00:03:40
milliseconds now since you're hitting
00:03:41
later because the timing window has been
00:03:43
shifted forward
00:03:44
as for non-dead space bpm the hit error
00:03:46
or the input graph can look pretty
00:03:47
normal but even if the inputs look
00:03:48
normal each input is actually being sent
00:03:50
1 to 8 ms later than when you've
00:03:52
actually pressed the key note that 1 to
00:03:54
8 milliseconds is for keyboards with
00:03:55
125hz polling rate if your keyboard
00:03:58
polling rate is higher the latency is
00:03:59
lower
00:04:00
and vice versa which is where there's a
00:04:01
problem compared to dead space bpms
00:04:03
because now you don't know whether your
00:04:04
keyboard is going to be sending your
00:04:06
input at 1 millisecond or 8 milliseconds
00:04:07
later or something in between that which
00:04:09
means that your hit window in the best
00:04:10
case scenario will be the same as what
00:04:12
it's supposed to be
00:04:13
but in the worst case scenario it'll be
00:04:14
cut off at the end or you have the front
00:04:16
of the hit window shifted to something
00:04:17
bigger or the entire hit window is
00:04:19
shifted four milliseconds later like in
00:04:20
a dead space bpm
00:04:21
this extremely inconsistent hit window
00:04:23
can affect gameplay because for some
00:04:24
inputs your 300s become hundreds
00:04:26
inversely there are some hundreds that
00:04:27
become three hundreds but for run games
00:04:29
you really don't want to rely on luck
00:04:30
with your hardware
00:04:31
now that we've talked about how polling
00:04:33
rate affects veteran games with timing
00:04:34
windows i'll hand the next section to
00:04:36
senia because he knows eternal and more
00:04:38
vsrgs than i do and he'll be talking
00:04:40
about chord splitting since serkaku has
00:04:42
already explained polling rates i'm
00:04:43
going to cover what chord splitting is
00:04:45
and how can affect your play
00:04:46
let's start with a basic definition of
00:04:47
what chord splitting is exactly chord
00:04:49
splitting is a phenomenon where multiple
00:04:50
simultaneous keystroke inputs to the
00:04:52
keyboard are not registered to the
00:04:54
computer at the same time this can be
00:04:55
due to a couple different factors both
00:04:57
firmware and hardware side
00:04:58
some keyboard firmwares including qmk
00:05:00
only have the ability to send one
00:05:02
keystroke per pull that means if you
00:05:04
press four keys simultaneously the
00:05:05
fastest that the keyboard could actually
00:05:06
send the inputs would be three times the
00:05:08
pulling interval
00:05:09
on a 125 hertz sport that means the
00:05:11
delay between the first and last note
00:05:12
could be as much as 24 milliseconds
00:05:14
aside from firmware the most common
00:05:16
cause of low severity chord splitting
00:05:17
seems to be something hardware side
00:05:19
maybe to do with the keyboard's
00:05:20
construction like poor soldering i've
00:05:22
also seen chord splitting that
00:05:23
originates from the keyboard in question
00:05:25
using hot swap sockets though my sample
00:05:27
size for this is literally only one
00:05:29
that being one of my own keyboards don't
00:05:30
take this to mean that hot swap sockets
00:05:32
universally result in chord splitting
00:05:34
though
00:05:34
honestly i wouldn't be surprised if
00:05:35
that's actually the case at this point
00:05:37
you might be
00:05:38
thinking why does this all matter well
00:05:40
the problem of cord splitting is largely
00:05:41
only applicable to vsrgs and not so much
00:05:43
games like osu standard because you
00:05:45
really won't be sending more than one
00:05:46
input at a time and if you are
00:05:48
you probably aren't expecting good
00:05:50
accuracy anyways but in games like osu
00:05:52
mania bms or eterna
00:05:54
core splitting can make a pretty
00:05:55
significant difference in the accuracy
00:05:56
you're able to achieve depending on how
00:05:58
severe it is
00:05:58
imagine you're playing 7 keep and hit a
00:06:00
7 note chord on time but you get a 50.
00:06:03
because your keyboard pulls at 125hz and
00:06:05
has to wait for a new pull cycle to send
00:06:06
the next successive keystroke of the
00:06:08
chord by the sixth or seventh pull
00:06:10
you're already outside the 100 window
00:06:11
as for four key let's imagine a similar
00:06:13
scenario you hit a four note chord
00:06:15
perfectly on time but due to chord
00:06:17
splitting you don't get perfect
00:06:18
judgments
00:06:18
assuming we're using the same
00:06:20
hypothetical keyboard the delay in
00:06:21
polling cycles is enough to kick the
00:06:23
last note of the quad outside of the
00:06:24
judge for marvelous window on eterna and
00:06:26
the rainbow 300 window on osu mania
00:06:28
that's going to be rather frustrating
00:06:30
when you're trying to add yourself to
00:06:31
the list of 1 million point scores in
00:06:33
anemone but can't hit quads perfectly
00:06:35
of course chord splitting this severe
00:06:37
doesn't apply to all keyboards
00:06:38
most of the gamer band boards i've seen
00:06:40
can send more than one keystroke per
00:06:41
pull
00:06:42
and quite a few of them are also 1000
00:06:43
hertz some keyboards even split
00:06:45
chords by only a couple of milliseconds
00:06:47
is that really enough to make a
00:06:48
difference
00:06:49
well for most people it's not really
00:06:51
going to be noticeable for the vast
00:06:52
majority of players the amount of
00:06:54
accuracy error in their play due to the
00:06:55
limits of their own skill
00:06:56
far outweighs any error that can be
00:06:58
caused by the hardware they're using but
00:06:59
for the highest level of accuracy play a
00:07:01
few milliseconds can still mean losing
00:07:03
points you should have had this is most
00:07:04
apparent in eterna a game with
00:07:06
millisecond based scoring i'm not going
00:07:07
to go into too much detail about how
00:07:09
eternal's wife percent scoring works
00:07:10
but in short your score is dependent on
00:07:12
the precise timing of each individual
00:07:14
note hit and doesn't rely on discrete
00:07:15
windows for score calculation for
00:07:17
example on judge 4 a 22 millisecond hit
00:07:20
and a 23 millisecond hit will be
00:07:21
weighted approximately the same amount
00:07:23
despite the player receiving different
00:07:24
judgments for each hit conversely a zero
00:07:26
millisecond hit and one at 22
00:07:28
milliseconds will have very different
00:07:29
point values despite both being in the
00:07:31
marvelous window
00:07:31
if you want a more in-depth explanation
00:07:33
of life scoring mina's eternal release
00:07:35
post on ffr covers the fundamental
00:07:36
concept of how it works
00:07:38
and adien's video on why 3 explains how
00:07:40
the current system differs from the
00:07:41
original life scoring that was released
00:07:43
in 2016.
00:07:44
polling rate has a large impact here as
00:07:46
well playing on a 125 hertz board makes
00:07:48
getting a wife quad significantly more
00:07:50
difficult
00:07:50
since achieving that type of score
00:07:51
generally requires all of your hits to
00:07:53
be within a standard deviation of around
00:07:55
seven to seven and a half milliseconds
00:07:57
and low pulling rate results in there
00:07:58
being times when it's literally
00:08:00
impossible to hit perfectly accurately
00:08:02
meaning the rest of your hits have to be
00:08:03
even more on time to compensate
00:08:05
alright so if you've been around the
00:08:06
altar community for a while you might
00:08:08
have seen this spreadsheet before and
00:08:09
wondered
00:08:10
what is it so this whole thing started
00:08:12
out of my frustration in trying to find
00:08:14
information about keyboards that would
00:08:15
be relevant to rhythm gamers
00:08:17
manufacturers and peripheral companies
00:08:18
for some reason like to leave out
00:08:20
important details of other products in
00:08:21
the marketing material like pulling rate
00:08:23
so it's often impossible to know what a
00:08:25
keyboard's pulling rate
00:08:26
is without buying one to test in person
00:08:28
since i don't have the kind of money to
00:08:29
buy every relevant keyboard on the
00:08:31
market
00:08:31
the next best thing i had access to was
00:08:33
other players along with foxfire 667
00:08:36
a very high level eterna accuracy player
00:08:38
i started compiling a spreadsheet of
00:08:39
keyboards with known polling rates and
00:08:41
chord splitting properties
00:08:42
before i get into how the information in
00:08:44
the spreadsheet was gathered i think
00:08:45
it's worth mentioning that it's really
00:08:47
only applicable to the highest level of
00:08:48
accuracy players
00:08:49
the landing page of the spreadsheet
00:08:51
states just this that unless you're
00:08:52
incredibly accurate or incredibly fast
00:08:54
buying a new keyboard probably isn't
00:08:56
going to make you a better player now
00:08:57
that that's out of the way
00:08:58
eterna actually has several different
00:09:00
features that have proven to be very
00:09:01
useful in calculating the pulling rate
00:09:03
of a given keyboard replays can be saved
00:09:04
online
00:09:05
and the eterna online website allows
00:09:07
users to view individual replays along
00:09:09
with a millisecond offset of each node
00:09:10
hit in the play
00:09:11
from this information it's usually
00:09:13
pretty easy to tell if there are any
00:09:14
issues with low polling rate
00:09:16
assuming you pick the right files namely
00:09:17
ones at 125 or 250 bpm
00:09:19
low polling rate will manifest itself as
00:09:21
visual lines across the offset plot
00:09:23
similar to how stacked inputs and dead
00:09:24
space show up on osu's hit error
00:09:26
indicator the millisecond offset between
00:09:28
each line gives the pulling interval of
00:09:29
the keyboard chord splitting can
00:09:31
sometimes be more difficult to diagnose
00:09:32
but it's still possible
00:09:34
sometimes it's clear enough at face
00:09:35
value however most of the time it can
00:09:37
only be observed using the offset plots
00:09:39
saved on eo
00:09:40
for very high accuracy scores and by
00:09:42
very high accuracy
00:09:43
i mean very high accuracy if the offset
00:09:46
plot shows clear evidence of consistent
00:09:47
splitting of chord inputs we can take
00:09:49
that to mean the keyboard for one reason
00:09:50
or another cannot consistently send
00:09:52
inputs simultaneously
00:09:54
from what senior has gone through if
00:09:55
you're an accurate player caught
00:09:56
splitting on keyboards does matter
00:09:58
but what about polling rate does it
00:09:59
matter yen in my opinion
00:10:01
for osu it definitely does on higher
00:10:03
levels but if you're playing lower level
00:10:05
maps like two to four stars
00:10:06
it won't make too huge a difference you
00:10:08
can tell from this graph this is the
00:10:10
timing window for each od level nosu b
00:10:12
meaning overall difficulty which is how
00:10:14
tight the timing windows are
00:10:15
the higher the od the tighter the timing
00:10:17
windows and the harder it is to get a
00:10:18
perfect for example it's plus minus
00:10:20
31.5 milliseconds for 308 what that
00:10:24
means is that the timing window for
00:10:25
perfect on oda is 63 milliseconds
00:10:28
which is huge compared to the possible 8
00:10:30
milliseconds of latency a standard 125hz
00:10:32
keyboard has
00:10:33
on the other hand od10 the highest odr
00:10:36
mapper can set for map
00:10:37
is plus minus 19.5 milliseconds for
00:10:40
perfect which is not leaner enough for
00:10:41
keyboards with lower polling rates and
00:10:43
the thing about high level ozo standard
00:10:44
is that
00:10:45
10 is really common because if you're
00:10:46
playing any matter with od8 and you
00:10:48
slept on hard rock the map's od
00:10:49
instantly becomes 10. and then it gets
00:10:50
even worse
00:10:51
because there is od 11. od11 is the
00:10:54
highest od in osu and only applies to
00:10:55
the higher level maps with double time
00:10:57
and hard rock with a perfect timing
00:10:59
window of plus minus 13.5 milliseconds
00:11:01
an 8 millisecond latency can start to
00:11:03
affect accuracy by a lot
00:11:04
although it can still boil down to
00:11:05
player arrow when it comes to accessing
00:11:07
od11
00:11:08
it's really highly unlikely because of
00:11:10
the timing window getting so small
00:11:11
and when it comes to od11 you're pretty
00:11:13
much playing hr dt and there's a lot
00:11:15
more things you should be worried about
00:11:16
in that case
00:11:18
like you know ar11 so a simple way to
00:11:20
put it is with 125hz keyboard od9 almost
00:11:23
becomes od10 on a thousand hertz
00:11:25
keyboard so basically in conclusion for
00:11:26
higher levels it's definitely a great
00:11:28
deal to get a thousand hertz keyboard if
00:11:30
you're playing harder maps with higher
00:11:31
od
00:11:31
but another thing to know is that
00:11:32
accuracy doesn't matter on osu standard
00:11:34
as much as other rhythm games you can
00:11:35
set high pp plays without amazing
00:11:37
accuracy so whether it's worth
00:11:39
getting a good keyboard for better
00:11:40
accuracy plays is ultimately up to you
00:11:42
although for mania i can see a slighter
00:11:44
bigger amount of people at the top who
00:11:45
would need a thousand hurst keyboard as
00:11:47
there is
00:11:47
rainbow 300 timing in this game in mania
00:11:50
rainbow challenger timing is similar to
00:11:52
od10
00:11:53
on oc standard asset a bit more strict
00:11:55
and rainbow changer timing is the same
00:11:57
strictness
00:11:57
no matter what od map you're playing on
00:11:59
mania so if you want to get the highest
00:12:00
scores on mania no matter what level you
00:12:02
are at more rainbow 300s is better and
00:12:04
that timing window doesn't really change
00:12:06
however if you're not really good at
00:12:07
mina in the first place getting a
00:12:08
thousand
00:12:09
keyboard won't magically improve your
00:12:10
accuracy generally most gaming keyboards
00:12:13
pull at a thousand hertz
00:12:14
so there's nothing too much to worry
00:12:15
about if your keyboard is the gaming one
00:12:17
however if you're using a custom
00:12:18
keyboard that's flashed with qmk the
00:12:20
keyboard on default will be
00:12:21
125 hertz other regular keyboards are
00:12:24
also 125hz such as the happy hacking
00:12:26
keyboard and my
00:12:27
filco magistas keyboard on the flip side
00:12:30
there are also other non-gaming
00:12:31
keyboards that has a thousand hertz
00:12:32
polling rate such as vamillo's line of
00:12:34
keyboards
00:12:35
so yeah that's basically about it for
00:12:37
the video keyboard quality matters when
00:12:39
it comes to running games
00:12:40
it can affect a lot if you're at the
00:12:41
highest levels i'd like to thank senior
00:12:43
for helping me out so much in this video
00:12:44
and athen for introducing me to him
00:12:46
i probably wouldn't be able to make most
00:12:47
of this video without zenya's help and
00:12:48
by the way there is one more thing i
00:12:50
need to say about osu
00:12:51
but it's that time hey kids i mean
00:12:54
fellow doubts you know the drill
00:12:55
skillshare is an online learning
00:12:56
community where you can join and learn
00:12:58
almost anything you want
00:12:59
whether you're a beginner or pro
00:13:01
skillshare has got you covered and has
00:13:02
classes suited for your skill level
00:13:04
now you can finally learn from the
00:13:05
legendary mr cool teacher on how to
00:13:07
write games for children's
00:13:09
i mean a game that adults like you and i
00:13:10
love playing i mean jokes aside i
00:13:12
recommend this class called introduction
00:13:14
to arduino
00:13:14
creating interactive projects by mark
00:13:17
frelnvelda
00:13:18
long story short you can write your own
00:13:19
code onto an arduino microcontroller and
00:13:21
get to do
00:13:22
almost anything you want like when i
00:13:23
used an arduino micro to repurpose this
00:13:25
2dx controller to work on pc
00:13:27
and i made every single mistake in the
00:13:28
book on this thing doc caught splitting
00:13:30
that turns your rainbow 300s into 50s
00:13:32
was bad
00:13:33
check this out but now with skillshare
00:13:35
you can learn how to
00:13:36
not do everything like how i did
00:13:37
skillshare is a website specifically
00:13:39
curated for learning so that means there
00:13:40
are no ads and they are always launching
00:13:42
new premium classes
00:13:43
and peer membership is less than 10 a
00:13:45
month for an annual subscription so join
00:13:46
skillshare today the first 1000 people
00:13:48
to click the link in my description will
00:13:50
get a trial of premium membership
00:13:51
and now back to the video so it's an
00:13:53
interesting thing about also that i
00:13:54
discovered while working on this video
00:13:56
apparently the pull rate of osu is the
00:13:58
same as
00:13:58
the game's frame rate so it means that
00:14:00
even if all your equipment is 1000 hertz
00:14:02
it wouldn't matter indian if your game
00:14:03
can only run at 200 fps or 100 fps
00:14:06
i realized this was a thing when i set
00:14:08
osu to non-full screen and 60fps
00:14:11
you can't set 60fps in osu but you can
00:14:13
do it in the user config text file in
00:14:15
the game
00:14:16
folder so i locked it at 60 fps and
00:14:18
played 120 bpm map and it did the same
00:14:20
dead space thing as it did for keyboards
00:14:22
so it means that even though my keyboard
00:14:23
i was using was a thousand
00:14:25
hertz it was sending inputs at 60hz
00:14:27
basically so that's one thing to note it
00:14:29
wouldn't matter in the end if your
00:14:30
computer or laptop can't run also at
00:14:32
over
00:14:32
a thousand frames per second another
00:14:34
thing someone on twitter pointed out to
00:14:36
me was about the bounce on key switches
00:14:38
on keyboards
00:14:39
i'm not completely sure about the bounce
00:14:41
and such but i know that the bounce and
00:14:42
chattering on keyboards can
00:14:44
cause your inputs to basically double
00:14:46
press which is pretty bad for rune games
00:14:48
or most games in general i imagine i
00:14:50
heard that vamilo ducky and osuki pets
00:14:52
are likely to do this well not likely
00:14:54
but they might do it and i do remember a
00:14:56
friend back then telling me about how
00:14:57
their ducky keyboards that they keep
00:14:58
buying for some reason always chatter
00:15:00
but i'm not completely sure about this
00:15:01
and if there's anything i got wrong in
00:15:03
this video please let me know in the
00:15:04
comments and all the relevant things
00:15:06
will be linked in the description
00:15:07
and also there is a way to flash your
00:15:09
custom keyboard from 125hz to 1000hz and
00:15:12
that will also be linked in the
00:15:13
description
00:15:14
i haven't made the video on that yet but
00:15:16
it'll be up on my second channel so
00:15:17
please watch out for it and thank you
00:15:19
for watching
00:15:28
[Music]
00:15:30
[Applause]
00:15:32
[Music]
00:15:41
you