Show Longest Stream in a Map
Under Length/BPM/Objects/etc
Make another parameter that shows "Longest Stream: x"
Make it show the length of the longest stream on the map, i.e. longest consecutive 1/4s circles (or 1/8 sliders) that the map has.
To calculate this, well, osu already has a list of objects and their timings in ".osu" files, just make the game have two vars for current stream length and max stream length, make it go over the map, every time it hits an object that is 1/4 spaced on the timeline or less from the last one it was on increase stream length var by 1 and if you find that the next object is more than 1/4 time-spaced then compare stream length to max length, update max if needed, then reset current length to 1 and go on. Then once the map is fully processed just display the maximum length of consecutive stream.
This information is very important and would help people who are trying to FC maps to know from the start if they should bother trying to FC or not since they'll be able to compare their own stream abilities to the given information. Basically this'll be handy to know, and it's easy to implement too.
---
For multibpm maps: make the longest stream parameter show which bpm it's for, i.e., lets say the map has 200bpm section and 240bpm section, and the longest stream is a 50-note 200-bpm stream, you'd see: "Longest Stream: 50(200)".
For maps that are mapped with 1/3 and 1/6, or rather, to generalize "what is a stream" (for example also if a map is mapped with 1/4 and 1/8 instead of 1/2 and 1/4 which would mean streams are actually 1/8, or if it's mapped with 1/1 and 1/2 and streams are 1/2) make the game use whatever was the smallest time spacing between circles (and not sliders) as the stream speed. i.e. lets say osu starts processing a map to find this value, and the first circles are all 1/2 spaced, it would consider the stream speed to be 1/2, until hitting some 1/4-spaced circles. This would work equally well for 1/6 or 1/8 or any other value that can be.
Under Length/BPM/Objects/etc
Make another parameter that shows "Longest Stream: x"
Make it show the length of the longest stream on the map, i.e. longest consecutive 1/4s circles (or 1/8 sliders) that the map has.
To calculate this, well, osu already has a list of objects and their timings in ".osu" files, just make the game have two vars for current stream length and max stream length, make it go over the map, every time it hits an object that is 1/4 spaced on the timeline or less from the last one it was on increase stream length var by 1 and if you find that the next object is more than 1/4 time-spaced then compare stream length to max length, update max if needed, then reset current length to 1 and go on. Then once the map is fully processed just display the maximum length of consecutive stream.
This information is very important and would help people who are trying to FC maps to know from the start if they should bother trying to FC or not since they'll be able to compare their own stream abilities to the given information. Basically this'll be handy to know, and it's easy to implement too.
---
For multibpm maps: make the longest stream parameter show which bpm it's for, i.e., lets say the map has 200bpm section and 240bpm section, and the longest stream is a 50-note 200-bpm stream, you'd see: "Longest Stream: 50(200)".
For maps that are mapped with 1/3 and 1/6, or rather, to generalize "what is a stream" (for example also if a map is mapped with 1/4 and 1/8 instead of 1/2 and 1/4 which would mean streams are actually 1/8, or if it's mapped with 1/1 and 1/2 and streams are 1/2) make the game use whatever was the smallest time spacing between circles (and not sliders) as the stream speed. i.e. lets say osu starts processing a map to find this value, and the first circles are all 1/2 spaced, it would consider the stream speed to be 1/2, until hitting some 1/4-spaced circles. This would work equally well for 1/6 or 1/8 or any other value that can be.