Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mania converts always return 0.00pp, making overwrites impossible #108

Closed
ghost opened this issue Jun 17, 2021 · 17 comments
Closed

Mania converts always return 0.00pp, making overwrites impossible #108

ghost opened this issue Jun 17, 2021 · 17 comments
Labels
bug Something isn't working

Comments

@ghost
Copy link

ghost commented Jun 17, 2021

@ghost
Copy link
Author

ghost commented Jul 26, 2021

issue resolved in dccbc39? please close if verified resolved, or I will close if I verify myself

@infernalfire72
Copy link
Contributor

not resolved, it does not replace the score since it checks for newScorePP > oldScorePP and since Maniera does not have cv support, 0 > 0 == false, therefore will never replace the first score you have set

@infernalfire72
Copy link
Contributor

infernalfire72 commented Jul 26, 2021

How to resolve this (without full cv calc): generally check for score on mania submission.
This will not have much drawback imo since pp is generally dependent on score in mania
Another idea is having multiple layers of "new best score assertion"

@cmyui
Copy link
Member

cmyui commented Feb 13, 2022

Sorry i didn't get around to this for so long - so basically it looks like the issue is convert pp on mania not working and always returning 0.00? is this also the case for other gamemodes converted pp? I can do some investigation myself as well.

@cmyui cmyui changed the title "gulag doesn't seem to save mania scores if you already have a score made" Mania converts always return 0.00pp, making overwrites impossible Feb 13, 2022
@cmyui
Copy link
Member

cmyui commented Feb 13, 2022

Another idea is having multiple layers of "new best score assertion"

Yea we should likely have multiple layers; on very difficult maps since pp is truncated, it's possible for people to repetitively get 0.00pp even if there is a working difficulty calculator, so there should be a fallback (likely to score, and perhaps further steps beyond that)

@cmyui cmyui added the bug Something isn't working label Feb 14, 2022
@juup1ter
Copy link

Sorry i didn't get around to this for so long - so basically it looks like the issue is convert pp on mania not working and always returning 0.00? is this also the case for other gamemodes converted pp? I can do some investigation myself as well.

doesn't seem to be an issue on taiko or catch the beat -- purely a mania issue

@tsunyoku
Copy link
Contributor

tsunyoku commented Feb 22, 2022

i think going forward the best bet is probably not using peace performance (or maniera if we still use that, i don’t remember). we use it on akatsuki and it has caused us multiple issues on other modes and it doesn’t look like it’s being maintained anymore either. i think we should look into using https://github.com/MaxOhn/rosu-pp as it is still maintained, has up to date reworks that peace doesn’t have. it also has python bindings available via pip

@cmyui
Copy link
Member

cmyui commented Feb 22, 2022

does rosu-pp support converted maps?

@alowave223
Copy link
Member

yes, it is

@tsunyoku
Copy link
Contributor

does rosu-pp support converted maps?

yep!

@cmyui
Copy link
Member

cmyui commented Feb 22, 2022

it'd definitely be a good move forwards then.

eventually, i'd like to make our pp calculator use consistent - e.g. rather than using multiple different libraries/programs for pp calculation, to combine it into a single, consistent interface. the code could be simplified GREATLY from this, it's one of my pet peeves with osu server codebases as a whole at the moment.

@tsunyoku
Copy link
Contributor

rosu-pp is a good gateway for this as its really easy to edit (and compile), but would lose the ability of using the pip package directly. in an ideal world we wouldn’t have to have the end user do any compiling for changes but too much of a perfect world. however rosu-pp is pretty well setup for making changes which is why the new WIP akatsuki system is using it since it allows us to use a single calculator across all modes (including rx)

@Pure-Peace
Copy link
Contributor

rosu-pp is a good gateway for this as its really easy to edit (and compile), but would lose the ability of using the pip package directly. in an ideal world we wouldn’t have to have the end user do any compiling for changes but too much of a perfect world. however rosu-pp is pretty well setup for making changes which is why the new WIP akatsuki system is using it since it allows us to use a single calculator across all modes (including rx)

The latest rosu-pp-py seems to already support installation via pip: pip install rosu-pp-py

We can try switching to rosu-pp-py, or keep using peace-performance-python, now it will also build with the latest rosu-pp code instead of peace-performance.

The latest version of peace-performance-python is now 2.0.0.

@tsunyoku
Copy link
Contributor

bancho.py has already switched to rosu-pp!

rosu-pp is a good gateway for this as its really easy to edit (and compile), but would lose the ability of using the pip package directly. in an ideal world we wouldn’t have to have the end user do any compiling for changes but too much of a perfect world. however rosu-pp is pretty well setup for making changes which is why the new WIP akatsuki system is using it since it allows us to use a single calculator across all modes (including rx)

The latest rosu-pp-py seems to already support installation via pip: pip install rosu-pp-py

We can try switching to rosu-pp-py, or keep using peace-performance-python, now it will also build with the latest rosu-pp code instead of peace-performance.

The latest version of peace-performance-python is now 2.0.0.

@Pure-Peace
Copy link
Contributor

bancho.py has already switched to rosu-pp!

rosu-pp is a good gateway for this as its really easy to edit (and compile), but would lose the ability of using the pip package directly. in an ideal world we wouldn’t have to have the end user do any compiling for changes but too much of a perfect world. however rosu-pp is pretty well setup for making changes which is why the new WIP akatsuki system is using it since it allows us to use a single calculator across all modes (including rx)

The latest rosu-pp-py seems to already support installation via pip: pip install rosu-pp-py
We can try switching to rosu-pp-py, or keep using peace-performance-python, now it will also build with the latest rosu-pp code instead of peace-performance.
The latest version of peace-performance-python is now 2.0.0.

Currently this repository still uses peace-performance-python=1.1.2 requirements.txt and some users reported the same issue to me.

So a temporary solution is necessary

@7mochi
Copy link
Contributor

7mochi commented Jan 13, 2023

I think we can close this because it has been fixed in #315

@alowave223
Copy link
Member

Fixed in #315

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

7 participants