bancho.py icon indicating copy to clipboard operation
bancho.py copied to clipboard

Mania converts always return 0.00pp, making overwrites impossible

Open ghost opened this issue 3 years ago • 15 comments

ghost avatar Jun 17 '21 21:06 ghost

issue resolved in https://github.com/cmyui/gulag/commit/dccbc39d02fbdefa6e96329ee2d11f9f6fed361c? please close if verified resolved, or I will close if I verify myself

ghost avatar Jul 26 '21 07:07 ghost

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 avatar Jul 26 '21 11:07 infernalfire72

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"

infernalfire72 avatar Jul 26 '21 11:07 infernalfire72

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 avatar Feb 13 '22 21:02 cmyui

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 avatar Feb 13 '22 21:02 cmyui

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

juup1ter avatar Feb 22 '22 06:02 juup1ter

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

tsunyoku avatar Feb 22 '22 12:02 tsunyoku

does rosu-pp support converted maps?

cmyui avatar Feb 22 '22 14:02 cmyui

yes, it is

alowave223 avatar Feb 22 '22 14:02 alowave223

does rosu-pp support converted maps?

yep!

tsunyoku avatar Feb 22 '22 18:02 tsunyoku

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.

cmyui avatar Feb 22 '22 18:02 cmyui

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)

tsunyoku avatar Feb 23 '22 00:02 tsunyoku

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 avatar Aug 10 '22 17:08 Pure-Peace

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.

tsunyoku avatar Aug 10 '22 17:08 tsunyoku

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

Pure-Peace avatar Aug 10 '22 17:08 Pure-Peace

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

7mochi avatar Jan 13 '23 06:01 7mochi

Fixed in #315

alowave223 avatar Jan 13 '23 06:01 alowave223