forum

Add beatmaps automatically to collections with conditions

posted
Total Posts
29
This is a feature request. Feature requests can be voted up by supporters.
Current Priority: +245
Topic Starter
TheUnk0wnDead
I've got the idea that there could be a function in the collections, that beatmaps get automatically added to one if it has met specific conditions.

I once decided to use the collections to sort my beatmaps, and after some months I somehow added more different collections (I don't like the normal filters, so I filter first my own beatmaps and the mode (!mania/!standard), then cleared/not cleared, ranks achieved, newer ones, etc...)

Examples:


One example, first I filter my beatmaps for the mode !mania, then the cleared ones, additionally I do not like to play HT/NF so I don't count them as cleared.
So the first condition would be that it needs to be the !mania mode, the other that I have any rank on it, then additionally that I have not used HF or NF.

An example list of my collections (left side of |-| ) and the conditions they would have (right side of |-| ):
(I used the numbers to sort, because the collections are sorted alphabetically in the game, and the dots just for readability (could have been just space))

  1. !0.TheUnk0wnDead |-| Creator: TheUnk0wnDead / Own Maps
  2. !m.0.All |-| Mode: !mania
  3. !m.00.Favourites |-| Mode: !mania Favourites
  4. !m.15.Keys:5k |-| Mode: !mania Keycount: 5k
  5. !m.16.Keys:6k |-| Mode: !mania Keycount: 6k
  6. !m.21.New.5 |-| Mode: !mania Date: after "xx-xx-xxxx" and before "yy-yy-yyyy"
  7. !m.21.New.6 |-| Mode: !mania Date: after "yy-yy-yyyy" and before "zz-zz-zzzz"
  8. !m.21.New.7 |-| Mode: !mania Date: after "zz-zz-zzzz"
  9. !m.41.Cleared.Ranked |-| Mode: !mania Rank: Any Status: Ranked Mods: not HT and not NF
  10. !m.42.Cleared.Unranked |-| Mode: !mania Rank: Any Status: not Ranked Mods: not HT and not NF
  11. !m.43.NotCleared(HT/NF) |-| Mode: !mania Rank: None
  12. !m.63.Rank.S |-| Mode: !mania Rank: S
  13. !m.64.Rank.A |-| Mode: !mania Rank: A
  14. !m.65.Rank.B |-| Mode: !mania Rank: B
  15. !m.68.Rank.HT/NF |-| Mode: !mania Rank: Any Mods: HT or NF
  16. !m.69.Unranked |-| Mode: !mania Rank: Any Status: not Ranked
  17. !m.72.Accuracy.S98% |-| Mode: !mania Accuracy: 98%
  18. !m.81.Accuracy.S96-98% |-| Mode: !mania Accuracy: 96-98%
  19. !s.0.All |-| Mode: !standard
  20. !s.00.Favourites |-| Mode: !standard Favourites
  21. !s.355.Diffic.5,50*-5,74* |-| Mode: !standard Difficulty: 5,50* - 5,74*
  22. !s.360.Diffic.5,75*-6,24* |-| Mode: !standard Difficulty: 5,75* - 6,24*
  23. !s.365.Diffic.6,25*-6,74* |-| Mode: !standard Difficulty: 6,25* - 6,74*
  24. !s. ... |-| Mode: !standard ; ...


How it would work:


The player would choose between making a manually made collection, like the one already in the game (in which he chooses the beatmaps himself), a conditional (described below), or a semi one (with conditions, but still can add maps himself). Maybe the function should only include the semi option.

The player would name the collection (which he of course can rename), then click "add condition". First he chooses the type of condition (Mode, Achieved Rank, Status, etc.), then the condition (!mania, Any, Ranked, etc.). After one condition is chosen, he can add additional ones, delete one, or complete the collection. The player can link condition types with the logic phrases and, or and use not for a condition.
The beatmaps will be automatically added if they have met all the chosen conditions of the collection.

For the semi option it could be useful if you could delete the manual added beatmaps, that aren't fullfilling the conditions. I think there should be a function included to show/hide manually added beatmaps or the ones from the collection feature so it's easier to separate them. Or the player would just (delete and) add another collection for that himself.

Workwise of conditions:


To make implementation of conditions easier, I want to gather information about how specific conditions could work. I'll edit this part if I get new ideas or if someone else might give some ideas to add.

And as I already mentioned, the conditions can be used in combinations with logic phrases (not, and, or).

These should better stay in the filters:

Artist, Title, Creator:
Because artists and titles are an user input when uploading a beatmap (can include typos),
but these could be added if players might find it important to filter by beginning letters...


Like the normal filter:

Favourites, Mode, Key Count, Own Maps, Ranked Status
These would work the same way as they do in the groups (filters).


Different workwise:

Date, Length, Difficulty:
These could have additionally the option to select an area of values, not just a lower/higher or exact value.

Recently played:
Similar to "Date" condition, but with an area before "now" (so excludes maps that leave that area).

Leaderboard:
Like the first different conditions, but with place #1 option.

Accuracy:
Like the first different conditions, but additionally the player can input an integer number, so the condition will include any Accuracy until before the next integer (+0.99).

Rank:
Similar to the first different conditions, but with any/none option.

Played/Unplayed:
Played/unplayed maps, so played includes maps you lost on (and maybe even if you ever started playing a map).

Mods:
Additionally to using single mods, the player can choose a mods category (difficulty de-/increase, special).

Creator:
The player will be able to write a name, to include only the creator's beatmaps.


New:

PP:
PP would work as first different conditions.
(as it isn't supported it is less likely to be added)

Collection related:
This could mean that, as an example, one collection will (not) add any beatmaps that are already in another specific / any / none collection(s).
Another possibility is to enter a string (word, etc.), and if any collection matches they will be included in the condition.

Video:
Includes beatmaps with videos.

TL;DR


It would be much easier to create many/bigger collections with a function including conditions instead of right-clicking every beatmap to add it to a collection (I have just over 400 beatmaps in !mania and almost 1000 in standard, others could have thousands of beatmaps).
It would work similar like a filter, but collections stay as long as you don't delete them, and you could include some beatmaps yourself if you want it in that collection.

Please tell me your thoughts about this, thanks!
abraker
Why not have it as a filter instead?
Topic Starter
TheUnk0wnDead
The point is to have it as a collection, which stays permanently as long as you don't delete it, filters are single use if you search for something specific. I thought already about that, that this works just like a filter, but that's the point of the conditions that are being used for it.

Edit: I provided my collections as an example, I just like to filter the beatmaps I am playing, but as I added more collections and got more beatmaps over time, I came up with this idea to make it automatically.
These collections could be playermade: "I like those beatmaps", "I don't like those that much", "rock themed", "electronic themed", etc.
Those ones would be needed to be playermade, but if you want to have collections that could be filtered by the game, it would be much easier than adding all by yourself.

Another example: Let's say I start to play a third mode and I add about hundreds of more beatmaps, I would like to have a permanent overview with several filters without changing them everytime I want to play or just look over the beatmaps.
Then there would be again those collections like "All for that mode"(1 filter), "Cleared in that mode"(2 filters (4 if excluding NF and HT)), "Not cleared in that mode"(2 filters), "S achieved in that mode in ranked" (3 filters), an so on...
Edit

Maybe it could be another feature that you can use several filters at once for a "as long as you don't change it" purpose (like the example filter by mode (!mania/!standard) and not cleared (no rank).
abraker
Request custom filter presets? Tho granted with that it won't be easy to include or exclude specific maps.
Topic Starter
TheUnk0wnDead
What do you mean with "specific maps"?

My reply should give an example of what would be needed to be made by the player and what can be made by the game.

The solution would be the above described feature of the advanced collections, that they can have several filters (including logic phrases (not, and, or)), but with the semi function you could still add the beatmaps on your own, which would have a priority over the set conditions of the collection.

Edit: I don't want to make the main post any longer, so here are my collections which I used for the example list:

I added the beatmaps to these collections by myself and I bet it would have been much easier and less time consuming if the game could have done it for me, which would be the purpose of this feature.

Edit2: It got it already to a routine to edit my collections if I get new beatmaps, clear a map or get a better rank on it, but I think it would be better with this feature so it could be done automatically.
abraker

TheUnk0wnDead wrote:

What do you mean with "specific maps"?

TheUnk0wnDead wrote:

but with the semi function you could still add the beatmaps on your own, which would have a priority over the set conditions of the collection.
^ this
Topic Starter
TheUnk0wnDead
One thing that could be a problem is the "favourite" condition, it needs an internet connection to look what beatmaps are your favourites, I think it would need some type of temporary memory in which the favourite beatmaps from the last online session are saved, but I think this could be added to the game for the normal filter or other things, too.

Edit: Additionally it would be better if you could add beatmaps to your favourites in the game instead of the need to open the browser for it.
Topic Starter
TheUnk0wnDead
I got interested in trying to get higher accuracies on some maps, so I got the idea to specify the accuracy a bit more.

For the accuracy it would be checking the values, so it could include lower and higher numbers. That would be the simple variant, but setting lower would include too much beatmaps, which is why it should be possible to select the lowest and highest accuracy value for the condition, so between those values, so it won't include too much beatmaps.

As an example I am aiming for 99% on some maps, so the highest value I select would be 98.99%, and the lowest number could be 98% or 97%.

A bit different could be to select more specific numbers as an option, but the decimal numbers would get in the way, so if I want all maps with 98% it would ignore the decimal numbers behind it.
In the programm it could work like selecting the input number (98) and adding 0.99 as it's highest number.

So the accuracy condition would have two options, whether to select an area between two numbers or to have an integer number so it will ignore decimal numbers.

Edit: It is needless explanation as it is rather simple...

Edit2: I edited the main post, to explain the workwise of possible conditions.

Please tell me your ideas for more conditions if I have missed any.
(excluding the most conditions which need user input like in names)
pp won't be possible, it isn't supported in the game (or may it?)
GodLike3539
Love the idea.
Topic Starter
TheUnk0wnDead
On the third page and no reply in almost a month, bump.

If you like the idea, please let us know, else we won't know.
If you don't like it, then tell us what you don't like about it and what I could change in the main post if you have suggestions.
Piotrekol
I can see this being useful.
In fact I already keep 2 fairly simple collections using application I wrote(Collection Manager) that could be replaced with this request(assuming osu!.db stops breaking)

"Played" & "unplayed" - because osu!.db resets often so "Recently played" doesn't really work, also you can't F2 in all "Recently played" maps
I usually would pick one of these, filter by stars and F2 away.

And now that you mentioned it, I might consider adding pp filtering(collection creation) sometime in the future in Collection Manager.
Topic Starter
TheUnk0wnDead
I have thought about cleared/not cleared (any/none rank) but not about played/not played, because not cleared doesn't mean you haven't played it yet...

About recently played, in the game it already somehow tells you what maps you played and those you never played, strangely under "never" there are maps that I played though, seems it isn't polished yet (that's probably what you mean with "doesn't really work").

F2 (random map) works only for maps that are in one group or own collection, or what do you mean with "all 'Recently played' maps?
As an example, if I want to play any of my !mania maps at random I don't want to play !standard maps, the random button prevents picking a map from another group/collection.

The date condition would let you choose an area past a specific date (one workwise), recently played would work similar, but work with an area before "now".

Edit:
Added Played/Unplayed and Recently played conditions to main post.
And PP, but that it probably won't be added.
Topic Starter
TheUnk0wnDead
On third page and no reply in a month, bump.

I have no more ideas to add, if you have any, tell me about your thoughts. Threads are for discussions, so of course there can be several opinions that differ from each other.
Topic Starter
TheUnk0wnDead
Whether it is because nobody posted for about 4 months or this idea doesn't seem to be good (enough) for the majority of readers (players)...
I would still support this feature, but there weren't any new replies...
abraker
Nobody posted because there is not much to talk about - no discussion about additional things to this or issues with this.

While support for this indicates the feature is well desired, it will be largely ignored by the devs while they work on osu!lazer. Even when osu!lazer is ready to replace current osu!, requests are likely be moved to the github issue page here for easier tracking of feature requests and bugs.
Crossie
Really in for that!! id love the idea of collection automation
Topic Starter
TheUnk0wnDead
Updated OP.

Came up with another condition, that there are relations between collections.
An example, as said in the OP:
Beatmaps won't get added if they are already included in another specific one.

I read my example collections through and saw that the dated ones would include any beatmaps after that date, but I did them to divide the beatmaps I am adding, which would be a mistake.

Edit:
Another addition, maybe you don't need to select the collection (or any/none), but you could maybe insert a string (word, etc) to include any matching collections to the condition.
Topic Starter
TheUnk0wnDead
Since nobody wrote something in the past half year, bump (and some did already support by voting).

Edit: Added video condition to OP and made small corrections.
Merami Fox

TheUnk0wnDead wrote:

I've got the idea that there could be a function in the collections, that beatmaps get automatically added to one if it has met specific conditions.

I once decided to use the collections to sort my beatmaps, and after some months I somehow added more different collections (I don't like the normal filters, so I filter first my own beatmaps and the mode (!mania/!standard), then cleared/not cleared, ranks achieved, newer ones, etc...)

Examples:


One example, first I filter my beatmaps for the mode !mania, then the cleared ones, additionally I do not like to play HT/NF so I don't count them as cleared.
So the first condition would be that it needs to be the !mania mode, the other that I have any rank on it, then additionally that I have not used HF or NF.

An example list of my collections (left side of |-| ) and the conditions they would have (right side of |-| ):
(I used the numbers to sort, because the collections are sorted alphabetically in the game, and the dots just for readability (could have been just space))

  1. !0.TheUnk0wnDead |-| Creator: TheUnk0wnDead / Own Maps
  2. !m.0.All |-| Mode: !mania
  3. !m.00.Favourites |-| Mode: !mania Favourites
  4. !m.15.Keys:5k |-| Mode: !mania Keycount: 5k
  5. !m.16.Keys:6k |-| Mode: !mania Keycount: 6k
  6. !m.21.New.5 |-| Mode: !mania Date: after "xx-xx-xxxx"
  7. !m.21.New.6 |-| Mode: !mania Date: after "yy-yy-yyyy"
  8. !m.21.New.7 |-| Mode: !mania Date: after "zz-zz-zzzz"
  9. !m.41.Cleared.Ranked |-| Mode: !mania Rank: Any Status: Ranked Mods: not HT and not NF
  10. !m.42.Cleared.Unranked |-| Mode: !mania Rank: Any Status: not Ranked Mods: not HT and not NF
  11. !m.43.NotCleared(HT/NF) |-| Mode: !mania Rank: None
  12. !m.63.Rank.S |-| Mode: !mania Rank: S
  13. !m.64.Rank.A |-| Mode: !mania Rank: A
  14. !m.65.Rank.B |-| Mode: !mania Rank: B
  15. !m.68.Rank.HT/NF |-| Mode: !mania Rank: Any Mods: HT or NF
  16. !m.69.Unranked |-| Mode: !mania Rank: Any Status: not Ranked
  17. !m.72.Accuracy.S98% |-| Mode: !mania Accuracy: 98%
  18. !m.81.Accuracy.S96-98% |-| Mode: !mania Accuracy: 96-98%
  19. !s.0.All |-| Mode: !standard
  20. !s.00.Favourites |-| Mode: !standard Favourites
  21. !s.355.Diffic.5,50*-5,74* |-| Mode: !standard Difficulty: 5,50* - 5,74*
  22. !s.360.Diffic.5,75*-6,24* |-| Mode: !standard Difficulty: 5,75* - 6,24*
  23. !s.365.Diffic.6,25*-6,74* |-| Mode: !standard Difficulty: 6,25* - 6,74*
  24. !s. ... |-| Mode: !standard ; ...


How it would work:


The player would choose between making a manually made collection, like the one already in the game (in which he chooses the beatmaps himself), a conditional (described below), or a semi one (with conditions, but still can add maps himself). Maybe the function should only include the semi option.

The player would name the collection (which he of course can rename), then click "add condition". First he chooses the type of condition (Mode, Achieved Rank, Status, etc.), then the condition (!mania, Any, Ranked, etc.). After one condition is chosen, he can add additional ones, delete one, or complete the collection. The player can link condition types with the logic phrases and, or and use not for a condition.
The beatmaps will be automatically added if they have met all the chosen conditions of the collection.

For the semi option it could be useful if you could delete the manual added beatmaps, that aren't fullfilling the conditions. Or the player would just (delete and) add another collection for that himself.

Workwise of conditions:


To make implementation of conditions easier, I want to gather information about how specific conditions could work. I'll edit this part if I get new ideas or if someone else might give some ideas to add.

And as I already mentioned, the conditions can be used in combinations with logic phrases (not, and, or).

These should better stay in the filters:

Artist, Title, Creator:
Because artists and titles are an user input when uploading a beatmap (can include typos),
but these could be added if players might find it important to filter by beginning letters...


Like the normal filter:

Favourites, Mode, Key Count, Own Maps, Ranked Status
These would work the same way as they do in the groups (filters).


Different workwise:

Date, Length, Difficulty:
These could have additionally the option to select an area of values, not just a lower/higher or exact value.

Recently played:
Similar to "Date" condition, but with an area before "now" (so excludes maps that leave that area).

Leaderboard:
Like the first different conditions, but with place #1 option.

Accuracy:
Like the first different conditions, but additionally the player can input an integer number, so the condition will include any Accuracy until before the next integer (+0.99).

Rank:
Similar to the first different conditions, but with any/none option.

Played/Unplayed:
Played/unplayed maps, so played includes maps you lost on (and maybe even if you ever started playing a map).

Mods:
Additionally to using single mods, the player can choose a mods category (difficulty de-/increase, special).

Creator:
The player will be able to write a name, to include only the creator's beatmaps.


New:

PP:
PP would work as first different conditions.
(as it isn't supported it is less likely to be added)

Collection related:
This could mean that, as an example, one collection will (not) add any beatmaps that are already in another specific / any / none collection(s).
Another possibility is to enter a string (word, etc.), and if any collection matches they will be included in the condition.

Video:
Includes beatmaps with videos.

TL;DR


It would be much easier to create many/bigger collections with a function including conditions instead of right-clicking every beatmap to add it to a collection (I have just over 400 beatmaps in !mania and almost 1000 in standard, others could have thousands of beatmaps).
It would work similar like a filter, but collections stay as long as you don't delete them, and you could include some beatmaps yourself if you want it in that collection.

Please tell me your thoughts about this, thanks!


i have 37k maps this needs implamantation
Topic Starter
TheUnk0wnDead
No recent posts...

Just another personal reason for having such a feature:
For example you either haven't played for a while or you haven't downloaded new beatmaps for some months.

Me for a better example, it's the latter one, and I just downloaded 139 beatmap sets, so there are much more individual maps... now how convenient would it be if all those could be added automatically into my current collections?

Edit: Actually, don't mind me, just more unnecessary comments because I have nothing better to do (other than manually adding those 139 beatmaps to my collections).

Edit2: Another actually, why haven't I thought of this earlier? The way I name my collections, as seen in the OP, I can just add another symbol at the beginning so it gets shown at the top when I want to add new beatmaps (like conditions: all, new and not cleared). This could save some time instead of looking for the row for a collection I want to add several different beatmaps to...
show more
Please sign in to reply.

New reply