forum

[WIP] osu! Skin Editor

posted
Total Posts
7
Topic Starter
Stehsaer
Skin Editing can sometimes be a thing of mess, especially for those who aren't quite good at editing files and pictures. So here's a idea/project aiming to make everything easier.

Idea

When the player wants to change an element, let's say approachcircle.png, people usually open the file explorer, and start replacing the elements manually. I want everything done just in a *click* ---- find the element and select.

So the basic idea is using an "Asset Library". In a sentence, elements from skins can be imported, then sorted and stored in a "Asset Library". Without needing to hurt your eyes finding the approachcircle.png in your folder, we can have a dialog pop up, showing you all the different approachcircle.pngs in the library for you to select. This idea also works in audio replacing.

Another feature(maybe?) is a editor for skin.ini. As you might guess, no more notepad.exe for editing skin.ini.


Dev Blog

* 2022-1-15
Status: Very Early Stage
I am using WPF and C# for this project at the moment. Material Design In XAML Toolkit [Link: https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit] is used for better appearance. No plan for UWP or Win32. No plan for linux and Mac. I will stop developing when osu!lazer is *ranked* and the built-in skin editor works better than this project (current one isn't fully developed).

Currently working on the first, usable alpha version. Will post it on Github when finished the first version.

Current Issues


  1. Copyrights & Rules: Is it legal to use elements created by others? If skins created using others' elements can be released in public or not? Should I, as developer, take active actions to avoid users from infringing copyrights or just put a disclaimer and do nothing? What license should I use? Is there any risk that I may violate the rule?
  2. Slow Development: As a senior high school student, I don't have that much time on this project (only weekends usually). Should I keep developing on my own or seek help in the community?
Suggestion and help needed!
Mamat
You might want to look at in-game skin editor here

Topic Starter
Stehsaer

Mamat wrote:

You might want to look at in-game skin editor here

yep
actually I am inspired by this stuff in lazer
but it's kinda... unfinished and somehow hard to use
what's more it's for lazer exclusively so osu!stable is not benefited yet
rednir
Seems like a pretty cool idea. I don't get the asset library part, would you have to import skin elements into the asset library manually? Sounds like it would be better if it just got skin elements from the user's skin folder but 🤷

I have some experience from a similar smaller project so if you end up open sourcing I may take a look if help is needed ;D
abraker
Shouldn't this be labeled as WIP instead of idea?
Topic Starter
Stehsaer

rednir wrote:

Seems like a pretty cool idea. I don't get the asset library part, would you have to import skin elements into the asset library manually? Sounds like it would be better if it just got skin elements from the user's skin folder but 🤷

I have some experience from a similar smaller project so if you end up open sourcing I may take a look if help is needed ;D
My idea is to import all elements from a specific folder in [osu! directory]/skins, automatically,
then sort according to the filename (each element certainly has a very unique file name for it)

but I really have trouble locating the osu directory without asking the user about it.
I guess there must be someway to do so since lazer can import skins, maps etc. from stable.

So for now my solution is ask the user about where his osu! game is located at, and ask the user to select which skin to import. auto and manual 50/50

I will open source the code on github sometime in the future when key features are ready to test.
rednir

Stehsaer wrote:

but I really have trouble locating the osu directory without asking the user about it.
I guess there must be someway to do so since lazer can import skins, maps etc. from stable.
if on windows most people will have their osu directory in "%localappdata%/osu!", or in c# you would use
System.Environment.GetFolderPath(System.Environment.SpecialFolder.LocalApplicationData) + "/osu!/Skins"
Please sign in to reply.

New reply