Scores Database and Recording Scores

Suggest new ideas for SMO
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
User avatar
Rebirth
Posts: 31
Joined: Thu Sep 27, 2012 3:14 pm
Location: Kansas City, Missouri
Contact:

Scores Database and Recording Scores

Postby Rebirth » Mon Oct 01, 2012 11:12 am

The old SMO did record every score ever obtained in the server. It saved everything and everything was viewable by any person. This was a great thing, but in this new SMO I would like to see this feature taken to another level

For years, people have been wanting a means to compare scores with one another and see how they would match up against other people on a particular song. Flash Flash Revolution has successfully implemented a system in which all of this happens, with their system. To bring something like this over to Stepmania would be HUGE

This is something that has been attempted before, with the Blue Planet Score Database that Thaor created. When people became aware of that scores database, they entered in hundreds of scores on files nearly overnight. It was a successful experiment and one that had tremendous additional potential, but for whatever reason, Thaor took down the scores database and it died right then.

I know if this could be recreated with the new SMO, Stepmania would begin to flourish once again. Below I will list some arguments
Image

User avatar
Rebirth
Posts: 31
Joined: Thu Sep 27, 2012 3:14 pm
Location: Kansas City, Missouri
Contact:

Re: Scores Database and Recording Scores

Postby Rebirth » Mon Oct 01, 2012 11:13 am

There are some issues that need resolving before this becomes a reality. One being how to rank people/scores on a particular song. DDR used a Dance Point System, which I'm sure many of us are aware of. FFR does something similar. They use combo scoring, but also a secondary "raw scoring" system, where note judgements carry weight just as DDR does. I think the way to go is the DDR version of the Dance Point System for more than one reason.
1. Stepmania, is pretty much a computer/keyboard replica of DDR and I believe the letter grades we receive in the game are based off of DP (D through AA. AAA and AAAA are purely accuracy grades)
2. Many of us use different versions of Stepmania now (SM3.95, SM4, SM5), and SM5 gives different grand total scores than all of the other versions.
DP is the way to go



Here is the stepmania judgement windows taken from the ini:

JudgeWindowSecondsAttack=0.135000
JudgeWindowSecondsMarvelous=0.022500
JudgeWindowSecondsPerfect=0.045000
JudgeWindowSecondsGreat=0.090000
JudgeWindowSecondsGood=0.135000
JudgeWindowSecondsBoo=0.180000
JudgeWindowSecondsMine=0.090000
JudgeWindowSecondsOK=0.250000
JudgeWindowSecondsPerfect=0.045000

Based off this, and also taking into consideration what DDR does with their DP calculations, it would seem accurate to use this scale for SMO:

Marvelous: +4
Perfect: +2
Great: +1
Good: +0
Boo: -2
Miss: -4
OK: +2
NG: +0
Mines: -4

For reference, the DDR DP scale is this:

Marvelous: +2
Perfect: +2
Great: +1
Good: +0
Boo: -4
Miss: -8
OK: +6
NG: +0

This is not DDR though. Everybody (or at least 95% of the people) play with Marvelous turned on, and people absolutely play to "MA" songs. Marvelous should not count as being the same thing as Perfect. DDR also penalizes a person two times for getting any kind of combo breaking note (-4 for boo, -8 for miss.) I think this should also be changed. The maximum DP you would get from a Marvelous is +4, so getting a miss on the same note should yield the same result. -4. There are some issues/arguments though. Those are:

- Some people play with holds off, so this could impact the DP score. However, if someone was to play a song with holds off, you could just have +0 in the overall DP score. (Example: If a song played has 100 holds, getting 100/100 would yield +200 in DP, while if someone played the same song with holds off, you would just get 0/100 or +0).
- The same thing could be said about mines. Successfully avoiding a mine shouldn't add to your DP score (+0) but hitting a mine would result in -4 DP loss per mine. Perhaps someone playing with mines off would assume the results of hitting every mine when calculating their DP score? (example: 20 mines in a song, and if a person played with mines off, their DP would be -80 with mines)
- No Hands is also a way to make things easier, but it does not reflect in the score results screen. A penalty for using No Hands could be something simple like an automatic 200 DP deduction or something like that.
- Or we could just get no deductions for any of these, and just have a flag next to the scores indicating that the person didn't play the original intended chart




Another issue is a sorting issue. People play tons of songs and there are even multiple charts for the same song that are played all the time. (Toph's One More Lovely or Eggman's, for an example). I believe this database needs to mainly include packs, as many people download packs more then single releases now.

As for sorting, I'm sure there is a way for the server to detect which file/chart a person is playing. As long as we have the song included in the database, all the server would have to do is distinguish where the score should be correctly recorded. This can be done by seeing the total number of Marvs, Perfects, Misses, etc and also the number of OK's/Freezes. The server can then match up what the Song Title was and the number of notes that were included in the judgement score screen. (example: say toph's One More Lovely oni has 1400 notes and 30 OK's, and Eggman's One More Lovely has 1200 notes and 2 OK's. If the score result screen shows 1400 total notes AND 30 OK's, AND the title "One More Lovely" , then it is obviously toph's OML oni)
Image

User avatar
blind
Posts: 157
Joined: Mon Oct 01, 2012 3:38 pm
Contact:

Re: Scores Database and Recording Scores

Postby blind » Mon Oct 01, 2012 3:44 pm

I'm all for this. My only thing is, there needs to be some sort of way to know which judgement the player is on. Because we all know people love to mess with scoreboards, and playing on Judge 1 is easy to do.

As for the debates you said, I agree with your reasoning's behind deducting points when not played how it is intended to.
First to get 1,000,000 xp.
R.I.P. first place. :(

User avatar
Izzy
Moderator
Posts: 531
Joined: Thu Sep 27, 2012 3:03 pm
Location: Leawood, Kansas
Contact:

Re: Scores Database and Recording Scores

Postby Izzy » Mon Oct 01, 2012 7:15 pm

I would love smo to be legitimately competitive, but that seems like a big step above just getting the site to display the database correctly. This would be great though.

User avatar
Rebirth
Posts: 31
Joined: Thu Sep 27, 2012 3:14 pm
Location: Kansas City, Missouri
Contact:

Re: Scores Database and Recording Scores

Postby Rebirth » Mon Oct 01, 2012 7:38 pm

It is obviously something that would happen down the road a little bit, but it can be something that lights a spark into the game for activity again
Image

User avatar
SXn-
Posts: 51
Joined: Mon Oct 01, 2012 7:27 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Scores Database and Recording Scores

Postby SXn- » Mon Oct 01, 2012 9:32 pm

so this is about ranking ?

if it's ranking, the best is from accuracy since scoring system is different in every each version of SM


Currently studying how to do 230+ bpm stream and 150+ bpm JS. Skill drop :X

Gooner
Posts: 1
Joined: Tue Oct 09, 2012 12:04 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Scores Database and Recording Scores

Postby Gooner » Tue Oct 09, 2012 12:13 am

I designed this personal ranking primarly for stepmania 5 because of its MIGS DP.


Here is my suggestion for an official ranking system. I made this system for my own personal enjoyment but im sure it would be great to get this official for stepmania online and tournament etc... I base this ranking system off of the game of Street Fighter IV arcade ranking because I thought it was a good one.

LEGENDARY - 10,000,000,000 DP Top Level
Grand King - 3,000,000,000 DP
King - 1,000,000,000 DP
Veteran - 500,000,000 DP High Level
Ultimate Master - 300,000,000 DP
Grand Master -100,000,000 DP
Master II - 35,000,000 DP
Master I - 10,000,000 DP
AAA+ - 5,000,000 DP Upper Mid Level
AAA - 2,500,000 DP
AA - 1,000,000 DP
A - 500,000 DP
BBB - 350,000 DP Middle Level
BB - 250,000 DP
B - 180,000 DP
CCC - 100,000 DP
CC - 70,000 DP
C - 50,000 DP
DDD - 35,000 DP Low Level
DD - 25,000 DP
D - 17,000 DP
EEE - 10,000 DP
EE - 5,000 DP
E - 2,500 DP
FF - 1,000 DP Bottom Level
F - 500 DP
Beginner - 0 DP


LEGENDARY - 10,000,000,000 DP
Grand King - 3,000,000,000 DP
King - 1,000,000,000 DP
Veteran - 500,000,000 DP
Ultimate Master - 300,000,000 DP
Grand Master -100,000,000 DP
Master II - 35,000,000 DP
Master I - 10,000,000 DP
AAA+ - 5,000,000 DP
AAA - 2,500,000 DP
AA - 1,000,000 DP
A - 500,000 DP
BBB - 350,000 DP
BB - 250,000 DP
B - 180,000 DP
CCC - 100,000 DP
CC - 70,000 DP
C - 50,000 DP
DDD - 35,000 DP
DD - 25,000 DP
D - 17,000 DP
EEE - 10,000 DP
EE - 5,000 DP
E - 2,500 DP
FF - 1,000 DP
F- 500 DP
Beginner - 0 DP

Everyone no matter their previous skill or experience starts at beginner. As they play songs and courses, their DP increases. The rate of their DP increase depends on the skill level of the player and the level of songs they play. So for example, a mediocre player would play mid difficult songs and their DP would increase steadily while a high level player would play very difficult songs and their DP would increase at a high rate to higher numbers.

The number of DP they gain per song is based on the Stepmania 5's scoring where it displays 2 numbers (MIGS ITG/MIGS DP) after completing a session. This ranking would go by the MIGS DP. This number is determined by calculating on how you did on the song (i believe)

Whether they gain DP or lose DP or stay neutral depends on their grade/result of the current song the player has played. If the player receives an A or higher on a song, they receive more DP from the number of MIGS DP. if they get below an A, no DP is earned. Failing a song or an E grade would cause you to lose DP.

The higher ranks would introduce more challenging rules to earning DP. For example a person in rank CC would earn DP from grades A or above while a person ranked Master I would have to achieve AAA or higher to earn DP and B or lower would result in them losing DP. So it gets more challenging the higher rank you go.

If a player fails a song or something (depends on player rank) they would lose DP. To find out how much DP they lose, take 20 (which is the highest song difficulty rating) minus the song difficulty number and take the result and multiply it by 500 (depends on player rank) .
For example... I am ranked B with 210,700DP. I fail a 10 footer. This means I lose DP. So I take 20 - 10 = 10 then 10 x 500 = 5,000. So I lose 5,000DP. So then I end up with 205,700DP.

I fail 18 footer. 20 - 18 = 2 then 2 x 500 = 1,000 DP loss. I end up with 204,700DP. What you saw here was that the more difficult the song, the more lenient amount of DP loss because its just and fair. If you fail an easy song which any decent player should pass, obviously you deserve a huge loss.

MIGS DP (when your performance on the song allows you to gain DP) makes it so that the maximum DP able to be earned gets lower the easier the song becomes. So a player who just wants to cheap their way up the high ranks without much risk will have to spend an eternity to get up, while actual good players play difficult songs and they rank up faster. The more difficult song, the greater risk if they would fail. If they are too good and own every stepchart, you would expect them to be top ranks while other players are catching up in the mid level ranks.

Plus, I also recommend for the SMO developer to make it so that we are able to see the total number of songs played, that way we can tell whether a player just use cheap and no risk to finally reach that A rank (10,000 songs played). At the same time, a good player can reach that same A rank with only a quarter of that amount within half the time played by playing difficult songs with high risk, thus backing up the authenticity of the player's skill.
Even add to this by displaying the average song level the player chooses (or most played song on smo website)

This makes it so that not anybody of any skill can easily reach higher ranks. Discourages playing a favorite easy song over and over again, it will get you nowhere really (unless your favorite is the impossible song and u AAA it everytime, obviously you deserve to shoot up to LEGENDARY title lol)


Here are the policies I made to my personal ranking system

From Beginner to BBB, anything A and above earns DP, B and below is no credit. Failing the song loses DP.

A - AA: AA grades and up earn DP/grades A and below is no credit/failing the song loses DP

AAA - AAA+: AA grades and up earn DP/grades A to B is no credit/C and below loses DP

Master I - Ultimate Master: AAA grades and up earn DP/ grades AA to A is no credit/B and below loses DP

Veteran - Grand King: AAA grades and 50>Perfects and up earn DP/ AAA with 50<Perfects to AA is no credit/A and below loses DP

LEGENDARY: AAA with SDPerfects and up earn DP/ AAA with 10+ perfects lose DP and anything below lose DP.

The amount of DP loss...

Beginner - BBB = multiply by 500DP
A - AAA+ = multiply by 3,000DP
Master I - Master II = multiply by 8,000DP
Grand Master - Ultimate Master = multiply by 25,000DP
Veteran = Multiply by 70,000DP
King - Grand King = multiply by 150,000DP
LEGENDARY = multiply by 500,000DP

My ranking system also works with the courses. Basically, its either all or nothing. If you pass the course, you gain whichever number shows up at MIGS DP on results screen for your total DP. If you fail the course, the number earned during the course, that will be your loss. Its pass all, or lose DP.

An idea I would like to see be used for SMO is a betting system. Players compete for exchange of DP. DP becomes a kind of currency. Betting DP on a one on one lobby or multiple player lobby. The player with the best results on the song takes the amount of DP betted. So players can choose to traditionally rank up or bet their already existing amount of DP.

The player cards for my stepmania rank design would be like this...

Gooner [A 521,302DP]
(2,281 Songs) {Rank 874}

This player card should display during the screen when it loads the picked song or course. It wouldn't hurt to make it show when a player joins the lobby. Just like in starcraft they show player stats when they join lobby.


These videos show what I suggest the player cards should look like for SMO and how it shows during the song loading.

http://www.youtube.com/watch?v=sXA5-KbB ... re=related

http://www.youtube.com/watch?v=8Vd0GaIp ... re=related

I also imagine rank titles would have unique color and design. Beginner would be plain. F-FF would be dark red E-AAA+ would be according to their color on stepmania results screen
Master I - Ultimate Master would be neon color Veteran - LEGENDARY would be neon color and graphic design behind the titles.

This was my personal stepmania ranking system that I just used for personal enjoyment and I want to get this out there. This is a huge suggestion for the SMO developer. I also want konami to embrace this design for DDR and their arcade machines along with global internet on their machines. This would bring in more competition to stepmania and ddr.

BassH
Posts: 2
Joined: Sun Oct 07, 2012 8:04 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Scores Database and Recording Scores

Postby BassH » Tue Oct 09, 2012 11:02 am

check this:

The original developer of this leaved the stepmania community but he posted the source/data:


User avatar
foxfire667
Moderator
Posts: 557
Joined: Sat Sep 29, 2012 5:09 pm
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Scores Database and Recording Scores

Postby foxfire667 » Wed Oct 10, 2012 10:16 am


User avatar
Dynamo
Posts: 6
Joined: Sun Oct 14, 2012 6:03 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Scores Database and Recording Scores

Postby Dynamo » Sun Oct 14, 2012 6:55 am

First and foremost, if an accurate ranking system will be put in place there needs to be a distinction between pad and keyboard players. The primary way of doing this would be to have a player choose what 'ladder' they are playing in. This presents a problem since certain players can lie about what hardware they use to play SMO. As a secondary solution, admin(s) could look at detailed stats on a questionable player and restrict them to a division after careful deduction which can be pretty obvious most of the time.

There are two methods of measuring scoring, none of which can yield an accurate ranking system (machine scoring is obviously a bad idea):

Absolute total DP/Current EXP system - This is virtually the same concept as FFR grand total score and although it is a useful/interesting statistic to have, I don't think it constitutes actual skill level. This determines more accurately the quantity and not the quality of scores a player gets.


Percentage DP system
- This one is great for determining high scores on individual simfiles and should be kept for this reason alone. Keeping in mind especially that in a perfect world, the pad players have their own high score lists separate from keyboard players. The flaw with this for determining overall rank is very simple too and is the major flaw in Gooner's system as foxfire pointed out. The best players could play something like Ageha over and over and have a super high average DP% rendering players who challenge their skills incomparable to players who play easy files over and over. This system gets the axe as well but again should be kept for individual song ranks.

The most accurate way of describing skills is simple in concept but possibly a nightmare for implementation and it too has a great deal of flaws but I think something could be developed to start this off:

Average Rank System - Just like FFR, this takes the sum total of a player's standing on each individual simfile and divides by the number of files in the system. Right away we have a problem because there are thousands of simfiles that some may have found in the deep regions of space and others do not have. We would have to make a standardized group of simfiles that would constitute "ladder simfiles". Pad players would have different ladder files than keyboard players. This list of files can range from 100-1000+ songs, it's really up to the developers of the list which should be a group of experienced people I might add. Distinction between difficulties would be a must here of course.

This seems great and all but there's a ton of problems that stem simply from using StepMania as the gaming interface. The issue with modifiers can be dealt with as long as the .ini file isn't tampered with, since you could easily rename a mod like NO HANDS to Note+ or remove the name entirely so it doesn't show up in the results screen. If there are methods of determining if a player mods something even if they edit the .ini then this isn't a problem, I don't know a whole lot about catching cheaters so that's up to someone else.

Another really easy way to mess with ranks is the editing of step charts. Sure, Death Reveals is fast and all but what if I altered the patterns to be 16th rolls the whole time? There's no way of telling that the simfile Player A played is the same as the edited version that Player B played. This is basically the entire lynch-pin of an automated ranking system and the conversation would drop dead every time.

There are basically two solutions to get Average Ranks to work:

1) Some genius manages to code and release a patch of the game that cannot be altered or edited and would constitute "competitive SMO", this includes the group of ladder simfiles in the package and is compatible with SM3.95 and SM5. You would still be able to play SMO on the normal patches but your scores will not be considered for ranking purposes.

2) The authentication process for scoring is not automated and requires players to have a model standing or respect within the community or appropriate video evidence from players who seem suspicious. Scores would have to be submitted then, just like Thaor's old concept already mentioned.


All-in-all for an open-source game like StepMania, the challenges of having a 100% accurate ranking system are huge. Hopefully I get people thinking about some ideas, I'm no programmer or anything so I have no idea of the limitations but average ranks determined by DP% on a specific group of ladder simfiles where pad lists are separated from keyboard lists is the only accurate method in my opinion.
Image

User avatar
Izzy
Moderator
Posts: 531
Joined: Thu Sep 27, 2012 3:03 pm
Location: Leawood, Kansas
Contact:

Re: Scores Database and Recording Scores

Postby Izzy » Sun Oct 14, 2012 8:27 am


User avatar
Angelo
Posts: 72
Joined: Sat Oct 06, 2012 4:31 am
Location: The Netherlands
Contact:

Re: Scores Database and Recording Scores

Postby Angelo » Sun Oct 14, 2012 11:27 am

Unfortunately, the only thing the SMO protocol sends from client to server about a song is the song name, artist, and subtitle. Nothing else. Not even the pack name.

To get more info about songs, there'd have to be a complete update to the SMOP. (If anyone with programming/networking experience is up for that, let me know and we'll get started on improving the current SMOP. I'd rather not rewrite the entire protocol, because that would require much more unneeded work.)
- Angelo
developer

User avatar
Izzy
Moderator
Posts: 531
Joined: Thu Sep 27, 2012 3:03 pm
Location: Leawood, Kansas
Contact:

Re: Scores Database and Recording Scores

Postby Izzy » Sun Oct 14, 2012 5:00 pm

But technically it is possible to send any information that the client has as a packet to the server right? Assuming it was reprogrammed to give that information?


Edit: This is my idea for a better leveling system. This will be more based on skill and only barely related to exp.

Dance points divided by song length will favor more difficult files. If you take that and apply it by your average grade than it is someone based on skill. I added in a small fraction of exp so that you can't do well on one song and top the level leaderboard.

((((.01)(MIG DP))/(AVG Length)) * ((.1)(Avg %))) * (0.000001)(exp)

edit 2: Actually I think I'd prefer to not have it involve exp. This level could determine what "level" of a player you are.

User avatar
Cube
Site Admin
Posts: 354
Joined: Mon Sep 24, 2012 10:18 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Re: Scores Database and Recording Scores

Postby Cube » Tue Oct 16, 2012 3:36 pm


User avatar
Angelo
Posts: 72
Joined: Sat Oct 06, 2012 4:31 am
Location: The Netherlands
Contact:

Re: Scores Database and Recording Scores

Postby Angelo » Tue Oct 16, 2012 3:40 pm

Yeah, I made that fork. It only allows for lua code execution on clients that the server sends. Not very secure, and it should definitely not be in a final distro version, but it was a nice experiment.
- Angelo
developer


[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Return to “SMO Suggestions”

Who is online

Users browsing this forum: No registered users and 8 guests