forum

A suggestion for improving the SPM calc [Added]

posted
Total Posts
12
This is a feature request. Feature requests can be voted up by supporters.
Current Priority: +0
Topic Starter
adamskii_uk
EDIT: Since peppy commented that my original explanation of this feature was a bit too long for something so simple (he was right), I have added a shorter, easier to understand version below. If you want a more detailed explanation of the feature, then please read the rest of this post, otherwise, you can skip past it to the next post in this thread. Also, if you want the SPM feature I have mentioned in this post to be added to Osu!, you will need to acknowledge this by posting in this thread, otherwise it may be rejected.


adamskii_uk wrote:

Short version

Since the SPM results are different for spinners with different lengths and beatmap difficulty, this makes it difficult to compare spinner scores with other people. So, I have come up with an alternative method for calculating the SPM for spinners, to help fix this problem.

As you can see in the image below, there are 8 lines joining to the center of the spinner at 45 degree angles. These 8 lines would be invisible to a player, but would be visible to Osu!, to help track a players cursor movements whilst performing spinners. This would enable Osu! to know exactly how many cursor rotations have occurred during a spinner, and would provide more accurate SPM results, that would be uneffected by spinner lengths and beatmap difficulties.
I hope you can all understand my explanation of how this method works, since I'm not always good at translating my ideas into words, so that other people can understand it. :)

I'm really pleased that Osu! has a SPM (Spins Per Minute) feature for spinners, however, as some people have already noticed when posting their spinner scores, the SPM results are different for spinners with different lengths, and the difficulty of the beatmap also affects the SPM results too. For example, I could be spinning at roughly the same speed on two spinners, and then I would get an average of 1000+ SPM on the first one, and only 500+ SPM on the second. So, after some thought, I have come up with an alternative method for calculating the SPM for spinners, which would give the same results regardless of the spinner length and the difficulty of a beatmap.

Take a look at the image below. As you can see from the image, there are 8 lines joining to the center of the spinner at 45 degree angles, and the lines are named A,B,C,D,E,F,G and H. These 8 lines would be invisible to a player, but would be visible to Osu! to help calculate the SPM value. When a spinner appears on the screen for the first time, no starting point has yet been determined, and if you look at the image below again, you will see that the cursor is between lines B & C. With the cursor in the position that's in the image, if a player started rotating the spinner clockwise, the starting point for the spinner would be line C after he passes through it, and if the person were to go anticlockwise, the starting point would be line B.

When a player starts spinning clockwise and the starting point is line C, then the next line the cursor should pass through is line D. Once a players cursor has gone through all of the 8 lines sequentially for the clockwise direction (C...D,E,F,G,H,A,B), and has passed through line C again, the player will have then achieved one complete rotation for the spinner.

If a person starting spinning clockwise and went through lines C...D,E,F,G and H, then Osu! would expect the next line for the players cursor to pass through to be line A. However, if a player were to stop rotating before passing through line A, and then started rotating anticlockwise, then passes through line H again, Osu! would then set line H as a new starting point for the spinner. Also, if a person were to play Osu! using a touch screen and Osu! expected line A to be the next line for the cursor to pass through, and the cursor passed through line F instead, due to the person lifting the stylus and placing it on the screen in a different location, then Osu! would reset the starting point to line F.


peppy
This is already how it works, mostly. Of course, there is some inertia involved in the actual spinner rotations, and it eventually spins faster than it would be if it was following your mouse cursor 1:1. To be honest, I don't really see how this will change the calculation. I want to provide an accurate calculation of the actual spinner circle's rotation, rather than hand movement. This may not be what everyone is looking for, but its the way I think it should work.

This does in turn mean that you will get different spin rates depending on the length of the spinner, as there is a slight bonus for shorter spinners to ensure they can be completed, reflexes considered.
Topic Starter
adamskii_uk

peppy wrote:

I want to provide an accurate calculation of the actual spinner circle's rotation, rather than hand movement. This may not be what everyone is looking for, but its the way I think it should work.
When I suggested a RPM counter for spinners in the beginning of July, I was expecting the results to be more global, so Osu! could give me feedback on my average mouse rotation speeds when performing spinners. But, as it currently stands, the SPM feature is only really useful if we are comparing results with IDENTICAL spinner lengths, with the same beatmap difficulties, same MODs used, etc.

With the way Osu! currently calculates the spinner SPM value, my average speed is anywhere between 600-1000+ SPM depending on the spinner I'm playing on, so looking at my results, my maximum speed is just slightly over 1000 SPM. Now, if I were to post my spinner scores in a thread on this forum (ie. in this paragraph), and someone were to read it, and they also have a top speed of around 1000, that person would probably assume that we are both equally as good as each other at performing spinners. The problem with this though is that the spinner SPM results are dependant on spinner length and the beatmap difficulty, etc, so our results could have been completely different if we had recorded our top speeds with the same spinners/beatmaps as each other.

For example, if someone were to play on a spinner where they can consistently perform speeds of around 1000 SPM, and I were then to play on it, I might only get a maximum speed of 750 SPM. And if that same person were to play on a spinner where I can consistently get 1000 SPM, he/she might get speeds in excess of 1200. So you see, the way Osu! currently works out the SPM, it's almost impossible to compare results with each other, unless we are posting scores for the exact same beatmaps/spinners as each other.

The method for calculating a spinners SPM I mentioned on my first post would fix all of these issues, and would make the results more global, so we can then compare our top speeds with each other, regardless of the spinner lengths and beatmap difficulty, etc. However, peppy, if you still feel like your method is useful, then how about including both my method of calculating the SPM, and yours, then having a toggle button in the corner of the spinner window to switch between them both? :)
peppy
Eh. I never planned on having spinner RPM as being a way of getting your average spinner speed across songs, and as i said, am happy with the current implementation. If you wish to compare spinner speeds, you might want to try this map.

Not that I'm not willing to listen to your suggestions, but unless there is a large response pushing for this, it is unlikely to change.
Saturos
I'm in favor of adamskii. ;x
peppy
This map has been deleted on the request of its creator. It is no longer available.
Topic Starter
adamskii_uk
This map has been deleted on the request of its creator. It is no longer available.
Saturos
tl;dr version:

Make SPM rates much more accurate so that spinners of different lengths don't also result in SPM varience.

Ehhhh, even that feels too long. Let's try again:

SPM is wrong, fix plx.
awp
I saw the wall of text,

then I saw the picture and was like "Ah, I get it." To tell you the truth, I only read like half a paragraph of the OP; the picture explained almost everything to me. Granted 90% of the userbase couldn't make heads or tails of the image without a deep explanation because they don't think like a...think like a...

...well, they don't think.
Topic Starter
adamskii_uk
I've updated my first post with a much shorter, and easier to understand explanation of the feature. ;) :P

However, after editing my first post, the thread now looks messed up. :roll: The width of my first post is now much longer than everyone elses. I'm not sure why this has happened, since I'm using the exact same image attachment as before. I could resize the image to fix the problem, but I decided to leave it, just in case I've found a bug on the forum that needs to be fixed.
peppy
The shorter version:

osu! tracks RPM, not SPM. adam is asking for osu! to track mouse spins per minute, rather than spinner revolutions per minute. The implementation of tracking is arbritrary.
peppy
Changed in latest test build. Marking complete.
Please sign in to reply.

New reply