1
0
mirror of synced 2024-12-18 13:45:54 +01:00
Commit Graph

13 Commits

Author SHA1 Message Date
Viv
6baf2e55f2 Add gimcho.tja to test suite 2023-07-10 00:08:59 -04:00
Viv
2dec26d2bf
Add support for #BRANCHSTART p,999,999 and #SECTION commands via imcanz.tja (#30)
This PR adds a new chart to the test suite (`imcanz.tja`) that uses
`p,0,0`, `p,999,999` _and_ `#SECTION` commands:

- `p,0,0`: Forces the chart into the Master branch (since it's
impossible to fail a 0% accuracy requirement)
- `p,999,999`: Forces the chart into the Normal branch (since it's
impossible to pass a 999% accuracy requirement)
- `#SECTION`: Resets accuracy values for notes and drumrolls on the next
measure. (In practice, this just means that the branch condition is
repeated on the next measure, at least according to the official fumen I
have.)

Note: Only the Oni and Hard difficulties have actually been added to the
test suite. The Normal and Easy charts were too broken to easily match
the official fumens. They will need a lot of work to fix charting
errors, so I'm leaving them commented out for now.

Fixes #27.
2023-07-09 19:56:57 -04:00
Viv
ab7708e740 testing/: Tighten up tolerance for fumenOffset/pos 2023-07-08 18:44:37 -04:00
Viv
7b31516438 Fix P2/2P bug and add clsca to the test suite
Fixes #13.
2023-07-08 18:44:37 -04:00
Viv
b874d5c412
Fix inaccurate method for computing the fumenOffset values for the initial measures (#28)
- Before: 'OFFSET' = 2nd measure fumenOffset
- After: ('OFFSET'-Full measure duration) = 1st measure fumenOffset

Both methods will produce the same results if no #MEASURE/#BPMCHANGE
commands are present in the first two measures. However, if these
commands ARE present, then you will get wildly different results.

This change doesn't affect 4/6 tests, but for 2/6 tests there were
#MEASURE/#BPMCHANGE commands. For these songs, I had erroneously "fixed"
the OFFSET values, when they were correct all along. So, I reverted them
back to their original values.

Fixes #25.
2023-07-06 23:38:10 -04:00
Viv
a95b8e7ab1
Add support for #DELAY commands (#24)
This PR adds support for `#DELAY` commands, and adds a fumen-TJA pair
for `linda` to test this.

Fixes #5.
2023-07-05 23:53:48 -04:00
Viv
ce633253ee
Add support for multiplayer charts (STYLE:{Single,Double}, # START {P1,P2}) (#23)
This PR adds support for multiplayer charts, and adds a new multiplayer
TJA/fumen combo for testing.

This PR is quite small, because the only work that needed to be done is
parsing the course metadata. Once the TJA lines are split into courses,
the actual course-by-course parsing logic is identical to the songs that
came before.

Fixes #6.
2023-07-05 16:03:41 -04:00
Viv
d9b1476f4d
Add remaining support for branches (#BRANCHSTART r) (#21)
This PR adds the remaining changes needed to support branching TJA
songs.

- Properly handling `r` (drumroll) based branching conditions
- Handling commands that come after a measure end but _before_ the first
`#BRANCHSTART` command. (This was not previously covered by
`hol6po.tja`.)

As well, it adds a bit of cleanup/refactoring to the changes from the
previous branch PR (#20).

To test these changes, another new branching TJA-fumen pair is added to
the test suite.
2023-07-02 00:00:36 -04:00
Viv
4e613d7237
Add partial support for branches (#BRANCHSTART P, no R, no #SECTION) (#20)
This PR adds partial branch support -- enough to correctly convert
`hol6po.tja`, but likely not enough to convert other songs.

Partially addresses #2.
2023-07-01 17:41:23 -04:00
Viv
6d2f5a73bb Add comments to TJA test files
- Documenting the purpose of each song in the test suite
- Testing that comments are handled correctly
2023-06-29 20:51:13 -04:00
Viv
3e33d5c634 Fix errors in ia6cho charts
The official fumen had some issues where a note ended up in the wrong measure:

- Expected: pos 0.0 on the next measure
- Actual: pos 645 on the prev measure (impossible pos)

They're the same pos, but only pos 0.0 is possible to express in TJA charts, so the fumens themselves had to be updated.

Also, the TJA chart had errors, too:

- The BPMs/SCROLLs in the BPMCHANGE section were incorrect
- Some drumrolls were too short

Fixing these errors caused the failing test to pass.
2023-06-29 19:47:25 -04:00
Viv
5a1d7c9aa3 Add ia6cho to test suite as XFAIL 2023-06-29 02:01:29 -04:00
Viv
2e54975534 Add first tja-fumen pair (mikdp) to test 2023-06-25 13:40:56 -04:00