chuni: fix lost scores for real - [merged] #20

Closed
opened 2020-04-19 19:39:51 +03:00 by icex2 · 2 comments
icex2 commented 2020-04-19 19:39:51 +03:00 (Migrated from github.com)

In GitLab by @esterTion on Apr 19, 2020, 18:39

Merges chuni-getUserMusic-fix -> master

Problem with current getUserMusicApi:
If several charts of same music get split into different pages, the game will only take the data in first page.
E.g. I have music_id 1 with level of 1 & 3, 1 has small id and 3 has big id, so they are seperated into two pages. The MASTER chart score data is ignored by the game.

Fix in this patch:
I added a select to get the music_ids, then use that as limit and offset, and fetch all the scores of those music_ids.
Also, loading data this way will cause api to broke with maxMusicCount: 300, so I changed it to 100.

One more thing:
We figured out why chunithm won't load all the scores after stored certain number of cm_user_music.
Turns out chuniApp have only 100KB of buffer for inflated (uncompressed) content.
( sub_7B4620 is the inflate function, there are several 102400 value )
If you go over that size, things will blow up.

In GitLab by @esterTion on Apr 19, 2020, 18:39 _Merges chuni-getUserMusic-fix -> master_ Problem with current getUserMusicApi: If several charts of same music get split into different pages, the game will only take the data in first page. E.g. I have music_id 1 with level of 1 & 3, 1 has small id and 3 has big id, so they are seperated into two pages. The MASTER chart score data is ignored by the game. Fix in this patch: I added a select to get the music_ids, then use that as limit and offset, and fetch all the scores of those music_ids. Also, loading data this way will cause api to broke with maxMusicCount: 300, so I changed it to 100. One more thing: We figured out why chunithm won't load all the scores after stored certain number of cm_user_music. Turns out chuniApp have only 100KB of buffer for inflated (uncompressed) content. ( sub_7B4620 is the inflate function, there are several 102400 value ) If you go over that size, things will blow up.
icex2 commented 2020-06-10 01:43:37 +03:00 (Migrated from github.com)

In GitLab by @Felix on Jun 10, 2020, 24:43

Can confirm a similar fix works for Ongeki.

In GitLab by @Felix on Jun 10, 2020, 24:43 Can confirm a similar fix works for Ongeki.
icex2 commented 2020-06-10 01:59:23 +03:00 (Migrated from github.com)

In GitLab by @tau on Jun 10, 2020, 24:59

merged

In GitLab by @tau on Jun 10, 2020, 24:59 merged
Sign in to join this conversation.