blueberrymuffin3 / osu-js

https://osu-js.pages.dev
MIT License
2 stars 1 forks source link

Parameter (`P`) commands not always applied properly #23

Closed blueberrymuffin3 closed 2 years ago

blueberrymuffin3 commented 2 years ago

Some maps omit an endTime from parameter commands, and it appears that osu!stable applies the parameter for the whole duration of the storyboard object in this case.

Example: Additive on animated "streaks" https://osu-js.pages.dev/play/?1610972

blueberrymuffin3 commented 2 years ago

This seems to conflict with the osu!wiki:

https://osu.ppy.sh/wiki/en/Storyboard/Scripting/Commands#parameter-(p)-command

Unlike the other commands, which can be seen as setting endpoints along continually-tracked values, the Parameter command apply ONLY while they are active...

https://osu.ppy.sh/wiki/en/Storyboard/Scripting/Shorthand#start-and-end-times-are-the-same

If a command has the same start time and end time, you can leave out the endtime (though you still need the comma before and after where it would be). This:

_(event),(easing),(starttime),,(params...)

is treated as this:

_(event),(easing),(starttime),(endtime),(params...)