How it actually works (you don't need to read this)
This is a console application that takes the following arguments:
-t1 <parameter name:value> (group 1 parameter)
-t2 <parameter name:value> (group 2 parameter)
-t3 <parameter name:value> (group 3 parameter)
-t4 <parameter name:value> (group 4 parameter)
-make <parameter name:value> (program will overwrite these parameters with the new value - also works with stuff like SliderTickRate:99, etc)
-name <preffix for the name of the difficulty> (program will add the name value as a prefix for each difficulty and also use it to identify copies made for easier deletion)
-path <full path for the osu Songs folder> (might require to use quote marks if it contains spaces)
Sorry there is no -delete as the GUI allows this process to be performed quicker. If you do not pass any arguments through the application the GUI will open and allow you to manipulate the 4 main parameters (Circle Size, Approach Rate, Overall difficulty and Health Drain).
The program will only make a copy if the beatmap contains at least one value from each of the 4 groups. (The GUI uses group 1,2,3,4 for HP,CS,AR,OD respectively)
One last note: The program only reads values up to the [Events] section on the .osu file, so timing/hitobjects are completely ignored for faster performance.
This is a console application that takes the following arguments:
-t1 <parameter name:value> (group 1 parameter)
-t2 <parameter name:value> (group 2 parameter)
-t3 <parameter name:value> (group 3 parameter)
-t4 <parameter name:value> (group 4 parameter)
-make <parameter name:value> (program will overwrite these parameters with the new value - also works with stuff like SliderTickRate:99, etc)
-name <preffix for the name of the difficulty> (program will add the name value as a prefix for each difficulty and also use it to identify copies made for easier deletion)
-path <full path for the osu Songs folder> (might require to use quote marks if it contains spaces)
Sorry there is no -delete as the GUI allows this process to be performed quicker. If you do not pass any arguments through the application the GUI will open and allow you to manipulate the 4 main parameters (Circle Size, Approach Rate, Overall difficulty and Health Drain).
The program will only make a copy if the beatmap contains at least one value from each of the 4 groups. (The GUI uses group 1,2,3,4 for HP,CS,AR,OD respectively)
One last note: The program only reads values up to the [Events] section on the .osu file, so timing/hitobjects are completely ignored for faster performance.
How to use it
Tip: Please make sure osu! is in the Main Menu and NOT SONG SELECTION screen as it seems to slow everything down or sometimes cause other problems which I keep getting messages about, so please follow this tip.
Tip: It is highly recommended to have an English locale setting while using the application to create maps with decimal values. Some languages seem to use ',' instead of '.' to mark decimals. So the application will generate decimals like 9,5 instead of 9.5 and osu! won't be able to read it. I'm not 100% sure because I haven't tested it but it worked for others: http://www.copsmodels.com/gpcommapnt.htm or if that doesn't work: http://puu.sh/lrWKo.png.
1. Choose the Songs directory. Use the "Find" button if you're lazy, it will try find the folder through the registry.
2. Choose the conditions of which maps you want to take for creating converted copies. If you want all maps then leave everything from 0 to max, if you want Insanes, try AR8-AR10 and OD7-OD10
3. Choose the new parameters for the new copies. The created copies will overwrite these new settings chosen, if "No Change" is selected the GUI will ignore that parameter.
4. Create a name for these new difficulties. For example if you type in "Awesome", and the converted map was called [Best Insane Map], it will rename the copy to [Awesome-Best Insane Map]. This feature will allow you to create custom difficulties independent of each other (lets say copies called AR10 and seperate copies called OD10)
5. Now just click Create Maps and wait till it does its' thing. Also keep in mind that the console's title keeps track of the progress in % value and total beatmap count.
Deletion:
Go to the Delete tab, enter the name of the custom difficulty, and press Delete All. DO NOT WORRY! This feature will only delete files that end with "__<name>__].osu", I am positive that not a single mapper used a double underscore with a random word and then another double underscore to name their difficulty. Thus don't be afraid of the program deleting the wrong maps, I promise it's impossible:
Tip: Please make sure osu! is in the Main Menu and NOT SONG SELECTION screen as it seems to slow everything down or sometimes cause other problems which I keep getting messages about, so please follow this tip.
Tip: It is highly recommended to have an English locale setting while using the application to create maps with decimal values. Some languages seem to use ',' instead of '.' to mark decimals. So the application will generate decimals like 9,5 instead of 9.5 and osu! won't be able to read it. I'm not 100% sure because I haven't tested it but it worked for others: http://www.copsmodels.com/gpcommapnt.htm or if that doesn't work: http://puu.sh/lrWKo.png.
1. Choose the Songs directory. Use the "Find" button if you're lazy, it will try find the folder through the registry.
2. Choose the conditions of which maps you want to take for creating converted copies. If you want all maps then leave everything from 0 to max, if you want Insanes, try AR8-AR10 and OD7-OD10
3. Choose the new parameters for the new copies. The created copies will overwrite these new settings chosen, if "No Change" is selected the GUI will ignore that parameter.
4. Create a name for these new difficulties. For example if you type in "Awesome", and the converted map was called [Best Insane Map], it will rename the copy to [Awesome-Best Insane Map]. This feature will allow you to create custom difficulties independent of each other (lets say copies called AR10 and seperate copies called OD10)
5. Now just click Create Maps and wait till it does its' thing. Also keep in mind that the console's title keeps track of the progress in % value and total beatmap count.
Deletion:
Go to the Delete tab, enter the name of the custom difficulty, and press Delete All. DO NOT WORRY! This feature will only delete files that end with "__<name>__].osu", I am positive that not a single mapper used a double underscore with a random word and then another double underscore to name their difficulty. Thus don't be afraid of the program deleting the wrong maps, I promise it's impossible:
If (foundFile.EndsWith("__" & Name & "__].osu")) ThenYou may also decide to save a batch file that will execute the program with the chosen settings with just a double-click. Or if you want to take it to the next level you may set up a keyboard shortcut or macro to execute the program with those arguments so every time you download a new map you can just press a button to quickly create a specified copy of the map(s).
My.Computer.FileSystem.DeleteFile(foundFile)
End If
Credits
Programmed by Dubu
Thanks to givenameplz for making a number of good suggestions on how to improve this program. I appreciate the help.
Thanks to AJeyB and Zare for assisting me with a few tests in order to fix the crashing error.
Also thanks to everyone else who suggested this idea.
I appreciate any type of feedback, if you find any bugs please let me know! I will try fix them ASAP. You may share your ideas for what reasons you might be using this application.
Programmed by Dubu
Thanks to givenameplz for making a number of good suggestions on how to improve this program. I appreciate the help.
Thanks to AJeyB and Zare for assisting me with a few tests in order to fix the crashing error.
Also thanks to everyone else who suggested this idea.
I appreciate any type of feedback, if you find any bugs please let me know! I will try fix them ASAP. You may share your ideas for what reasons you might be using this application.