Mixing Skins
This guide will teach you how to create your own personal mix skin. You will need to know the file names of assets in a skin. If you don’t, please consult the skinnable files list for file names and other bits of information.
Please note that more often than not, the different skins’ assets will look wildly different from each other. This means that mixing is often best reserved for mixing gameplay elements.
Basic knowledge
For more information about the following, read this part of the skinning tutorial.
- HD and SD images - Your game will either render SD or HD images depending on your resolution. To check this, open settings in-game, using
CTRL + O
, navigate to theGRAPHICS
section, and find theResolution
setting. If you have a vertical resolution (the second value) of 800 or above, your game is using HD images. If it is less, your game will be using SD images. HD images have an@2x
suffix appended to them (indicating that the image resolution is double that of the SD resolution). Note that if you use an HD resolution and no HD image is present for an element, it will automatically fall back to the SD image, if it is present. As such, you should be mixing with both HD and SD images so that your mixed skin displays correctly for anyone who wants to use it. - .png vs. .jpg - osu! only supports .png images for skin elements, with one exception -
menu-background.jpg
, which must be a .jpg image. - .mp3 vs. .wav - While osu! supports both .mp3 and .wav sounds, it prioritizes .wav sounds. If
failsound.mp3
andfailsound.wav
are both present,failsound.wav
will play when you fail a map. As .mp3 is much smaller than .wav, it is recommended to use .mp3 for longer sounds such asfailsound.mp3
andapplause.mp3
. It is not recommended to use .mp3 for gameplay or interface sounds as they have a slight delay when playing. skin.ini
- This file defines skin behavior, such as whether the cursor should expand or not, what color your combo colors are, etc. There are many more commands that dictate your skin’s properties so read theThe skin.ini
section of this guide for more information.- All animation frames start at 0.
Mixing images
Mixing images is simple if you learn the different file names, or consult the skinnable files list. The steps are as follows:
- Open the folders of the skins you want to mix from in your file explorer. These folders can be found by navigating to the
Skins\
directory of your osu! installation. By default this will be located atC:\Users\[User Name]\AppData\Local\osu!\Skins\
. You can locate this by pressingCTRL + O
in the osu! window to bring up settings, clickingOpen osu! folder
, and navigating to theSkins\
directory. Alternatively, you can go to settings, navigate to theSKIN
section, and clickOpen current skin folder
for all skins you want to mix. - Create a new folder in the
Skins\
directory and name it something that you will remember, we will call our examplemixedskin
. - Select your mixed skin from the skins drop down list. This can be found by pressing
CTRL + O
to bring up settings, navigating to theSKIN
section, and clicking onCurrent skin:
. - Decide what images from which skins you want to use. For example, we want to use the cursor from
skin1
, the hitcircle and hitcircle overlay fromskin2
, and so on, inmixedskin
. - Copy these images into the folder we created. We copy
cursor.png
andcursortrail.png
fromskin1
, andhitcircle.png
andhitcircleoverlay.png
fromskin2
, and all of their HD equivalents, if present, intomixedskin
- Reload your skin with
CTRL + ALT + SHIFT + S
. With our example, it should be the default skin withskin1
’s cursor andskin2
’s hitcircle. Make sure to reload your skin after all changes you make for those changes to take effect. - Repeat steps 4 and 5 until you have reached your desired result.
If you are mixing default-x.png
, score-x.png
, and/or combo-x.png
numbers, please also read the The skin.ini
section of this guide.
Mixing animations
The steps for mixing animations are largely similar to the steps for mixing images, with only a few major differences:
- You will need to delete all animations and/or images of the same element already present in your mixed skin. (e.g. delete all
followpoint-x.png
files present if you wish to use followpoints from a different skin). - You will have to copy all animation files.
- You might need to make sure that the
AnimationFramerate:
command in your mixed skin’sskin.ini
(talked about in theThe skin.ini
section of this guide) is set to the same value as it was set in the skin you are taking the animation from for some animations to look as they should. Note that this will probably break other animations, such asfollowpoint-x.png
, so most of the time it is better not to specify this command at all.
Apart from these differences above, the process is the same as described in the Mixing images
section of this guide.
Mixing sounds
The steps for mixing sounds are also largely similar to the Mixing images
section of this guide, with the difference that the files you are replacing will be .mp3 or .wav instead of .png. Follow the instructions in the Mixing images
section, using sound files instead. Note that there are numerous menu sounds but you can get a full menu sound set with ~7 sound files.
The skin.ini
There are a few things that you should check when mixing a skin:
AnimationFramerate:
- This dictates how many frames of an animation will be displayed in one second. If this command is not present, the default setting will be used which is to display all frames of an animation once every second. If the animation(s) you are copying over to your mixed skin relies on this command being set to 30 frames per second, 60 frames per second, etc., you will have to adjust other animations in your skin to compensate for this. For example, if we have to use anAnimationFramerate
setting of60
but ourfollowpoint-x.png
only goes up to 9 (10 frames), you will need to have six copies of each frame. Copyfollowpoint-0
five times and name these copiesfollowpoint-1
,followpoint-2
, and so on and so forth. Then do the same for the other 9 frames. Your followpoints will now look normal as they animate at the same framerate as yourAnimationFramerate
setting.Combo#:
- This dictates your combo colors, i.e., the tint that is applied to yourhitcircle.png
, andsliderstartcircle.png
in gameplay. This setting goes up to 8 and takesr, g, b
color codes. Note that the combo colors start atCombo2
and loop back around to finish onCombo1
. The color is applied multiplicatively, so if you want yourhitcircle.png
, andsliderstartcircle.png
to be un-tinted, useCombo1: 255, 255, 255
. This setting also affects approach circles in osu!standard and fruits in osu!catch.HitCirclePrefix:
,ScorePrefix:
,ComboPrefix:
- This dictates the prefix for the default, score, and combo images. Make sure to set these to the same prefix as the skin you copied the files from, or they will not display in game. Note that if your default, score, and/or combo images are in a nested folder, you will have to specify this here. For example, if yourdefault-x.png
images are in a folder callednum
, and are prefixed withc-
, setHitCirclePrefix:
tonum\c
.HitCircleOverlap:
,ScoreOverlap:
,ComboOverlap:
- This dictates how many pixels the default, score, and combo images will overlap with each other. Higher values will lead to a greater overlap and lower values will lead to a lesser overlap. Note that this value is for the SD overlap, it will be doubled for HD resolutions and images. Set this to the same value as in the skin you mixed default, score, and combo images from if you want them to be spaced the same as that skin.