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

Test the beatmap module #44

Open
fmang opened this issue Jan 8, 2018 · 0 comments
Open

Test the beatmap module #44

fmang opened this issue Jan 8, 2018 · 0 comments

Comments

@fmang
Copy link
Owner

fmang commented Jan 8, 2018

Writing unit tests for a game is no easy task, but fortunately some modules are pure and easy to test. In particular, the beatmap parser and the geometry module.

When playing the following beatmaps, I can't help but feel like the sound effects are… weird:

  • 431396 SENTIVE - Tsuki Usagi -Gekkouyoku- [Lyric's Usagi]
  • 651934 Kaori Oda - Zero Tokei (Short ver.) [Shining]
  • 596833 96neko - Aimai Elegy/96neko - Aimai Elegy (Lasse) [Hard]

It's probably gonna be a tedious task, but I believe the best way to validate the hit parser would be to record an autoplay from the official osu! game and manually identify the played sound samples for the first dozens of hit objects. Then, write that using oshu!'s beatmap structure in a unit test, and check that the parser does interpret the correct thing.

Note that the parser module applies inheritance when parsing, so what appears in the resulting structure is ready to use by the game, and not exactly what's written in the beatmap file. Let's really focus on the expected result from the actual osu! game, rather than guess what the beatmap means.

@fmang fmang modified the milestone: 1.8 Jan 20, 2018
@fmang fmang added this to the 2.0 milestone Feb 24, 2018
@fmang fmang mentioned this issue Feb 28, 2018
@fmang fmang mentioned this issue Mar 10, 2018
@fmang fmang removed this from the 2.0 milestone Mar 15, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant