Hacking Sakura Skin Manager

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
*Sakura Skin Manager is now obsolete, it has been replaced by M3 Skin Maker*

Hi everyone,

I decided to alter a Sakura skin the other day and realised theres no proper tool for extracting skn files. So I decided to write a program to extract skn files, I sort of got carried away though and ended up making a full program to create, preview, compile (uses M3's compiler though), extract and modify skins.

I've tested it a reasonable amount, but I've no doubt there'll be some bugs left. I hope it'll come in handy for people planning on making new skins for Sakura.

Any suggestions or comments welcome.

Download M3 Skin Maker

Notes:

- This program requires dot net 3.5.
- The Preview functionality is not pixel perfect, and was only added for convenience. Any feedback on this is appreciated.
- Whilst the program allows for 32-bit and 24-bit bitmaps, I'd recommend using 16-bit bitmaps, since all bitmaps will be scaled down to 16-bit and whatever image editor you're using is probably better at scaling the colours down.
- This is still in beta state, and I'm open to adding some features on request.

Changelog:

Version 0.3

Fixed a problem where the program was incorrectly informing the user of the wrong image dimensions when attempting to add an image of the wrong size.
Fixed the alignment of ItemBG_Clear items, and the text in the Folder Preview.
Folder Name Text is now correctly in the Folder Preview.
The Preview font has been changed from Segoe UI to Arial for compatability.

Version 0.2

Added Preview pages: 1-Line Mode Folder View, 3 Video Pages, 5 Text View Pages, Setup screens.
Changed the Preview pages so they now update the time in real-time.
Changed the Preview pages so they now update automatically when any changes to the skin are made.
The Extract function now creates a folder based on the currently active filename and extracts the files into that
Added an animated cursor, once all the cursor files have been loaded the new "Animate" Node will show it animated.

Version 0.1 - Initial
 

jurassicplayer

Completionist Themer
Member
Joined
Mar 7, 2009
Messages
4,486
Trophies
1
Location
Pantsuland
Website
www.youtube.com
XP
2,935
Country
United States
Lol this is awesome. It looks so pro compared to my previewer (though I don't like the double-clicking to show stuff. I keep feeling like it only takes one click).
As for some features:
It would be cool to have the previews change time in real time, have a preview of the video player (actually, maybe as many previews as you can possibly make of all of the screens), extract the skins to a folder with the skin's name (it was slightly shocking when all of the sudden, my desktop had a bunch of images xD), animate the cursor (maybe? although you can sort of do that just by highlighting and using the arrow keys to change the frame).

If I think of anything else, I'll post it up xD and goodluck making it even better (TT-TT its going to end up better than mine lol)
 

Dark^'^Knigh

Well-Known Member
Member
Joined
Apr 25, 2007
Messages
1,043
Trophies
0
Location
Paradise
Website
Visit site
XP
86
Country
I'm going to say thanks in advance for the program....is there a tut anywhere on how to compile theme for Sakura? I wouldn't mind having a crack at using your program to (try) make some themes.
 

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
Thanks for the ideas, I've now uploaded version 0.2!

I've done most of the things requested, apart from the single click expanding TreeView nodes. For some reason in dot net the default TreeView control requires a double click to expand unless you click on the line in between a node and the +/-. I'm not sure why it's like this, but I couldn't figure out a good way round it so I've just kept it in for now (it annoys me too).

Check the changelog for details on the changes.
 

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
I'm pretty certain this won't work with Kaura skins, but I'm certainly willing to add that functionality. Are there any Kaura skn files around? The only one I can find is in the Kaura/Skin folder under "Kaura.skn", the Kaura FAQ doesn't link to any. It's definitely a different file format to the sakura skn's. I've not really used Kaura much yet though, mainly using Sakura.

Whats the current status on skinning Kaura? I'll have a look inside that skn file, see what I can find.
 
S

sumarth

Guest
thats cool

i have no idea about programming this, but it would cool if it could at extract moonshell 2 skins and attempt to convert them ... and the user can fix any glitches
 

jurassicplayer

Completionist Themer
Member
Joined
Mar 7, 2009
Messages
4,486
Trophies
1
Location
Pantsuland
Website
www.youtube.com
XP
2,935
Country
United States
The skinning status remained with swapping the images that they had outside of the .skn file. Nobody really knows what is inside the kaura skin files at the moment xD.

After trying to think of anything else you could add to the skin manager, I couldn't really come up with anything amazing, but I found three glitchs while playing with it. (These are just random things I encountered)
Your FileList - Folder Name Text doesn't seem to do anything and your FileList - File Name Text is changing the color for both text and folders (just looking at the preview screen, not the actual .ini)
In the previews with the folder views (including the MP3 one), the topscreen's ItemBG_Clear images are above the other images and look like they are aligned to the top and to the right a little instead of with the icons.
And when I try and load images of the wrong dimension, there is a really misleading return xD. Although it does say that the image dimensions do not match, it says "This image requires a __x__ PNG" in which the blanks are the sizes of the image that I'm attempting to load (purposely not the right dimensions) where it should probably be saying the dimensions of the image needed xD.

sumarth said:
i have no idea about programming this, but it would cool if it could at extract moonshell 2 skins and attempt to convert them ... and the user can fix any glitches
It's not really converting so much as making up new graphics. Between the two of them, there are various images that aren't used (Sakura's sliding icons), things that are renamed, and images that are split apart. Of course, it is slightly easier moving from Sakura to Moonshell2 since overall, most of the Sakura images cover all of Moonshell2 (save the Moonmemo and other small things), but going in the reverse would mean either making up new graphics to cover the ones that Moonshell2 doesn't have but the M3Sakura does, or what I was thinking of doing, which was to just have some of the default graphics cover the missing icons and then just convert it over with those and leave it up to the user to work with the graphics.
Overall, its fairly simple, but at the same time, its no fun having incomplete Moonshell2 skin ports.
 

CannonFoddr

Regular GBATemp Lurker
Member
Joined
Sep 23, 2006
Messages
4,134
Trophies
1
Age
56
Location
Sitting by computer
Website
www.youtube.com
XP
1,289
Country
jurassicplayer said:
Lol this is awesome. It looks so pro compared to my previewer
From what I can see of it - I actually prefer yours JP. & when I mean 'what I can see of it' I mean I can't get any of the 'previews' working
- keep getting an error about the 'Segoe UI doesn't support 'Regular'', which I happen to know is a FONT, but although I have it installed - I'm not using it for anything (except if I do a video then I MIGHT use it then)

Any chance of some screenshots of the preview screens ??? (not all of them though)
 

jurassicplayer

Completionist Themer
Member
Joined
Mar 7, 2009
Messages
4,486
Trophies
1
Location
Pantsuland
Website
www.youtube.com
XP
2,935
Country
United States
CannonFoddr said:
jurassicplayer said:
Lol this is awesome. It looks so pro compared to my previewer
From what I can see of it - I actually prefer yours JP. & when I mean 'what I can see of it' I mean I can't get any of the 'previews' working
- keep getting an error about the 'Segoe UI doesn't support 'Regular'', which I happen to know is a FONT, but although I have it installed - I'm not using it for anything (except if I do a video then I MIGHT use it then)

Any chance of some screenshots of the preview screens ??? (not all of them though)
http://img88.imageshack.us/img88/1337/77971160.jpg
Here are some of the previews (I left out maybe two-three screens). I never noticed that the Segoe UI font looks really similar to the Moonshell2/M3Sakura font, but its ever so slightly different xD
 

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
Thanks for pointing out those bugs, hehe. Easy things to miss
biggrin.gif
. You're right about the Segoe UI font, I used it because I found it most accurately represents the M3 font (although as you said, not perfectly). the only thing I can recommend is ensure you have the Segoe UI font installed with the regular typeface. I suppose I could check whether the font is valid, if not fail back to arial or something.

I'll get this all fixed asap.

As for the Kaura skn files, I've had a look inside and am starting to understand it. It's just a load of 16-bit (5-bits per channel) bitmaps. If anyone wants to know the technical specs the things I've found so far are:

0x00200 - 0x20200 - MainBG (256x256)
0x20200 - 0x40200 - UnknownBG (256x256)
0x40200 - 0x60200 - FuncBG? (256x256)
0x60200 - 0x80200 - FileListBG (256x256)
0x80200 - 0x84A00 - Clock (96x96)

I'm not sure about the 16 byte header, so I'm just ignoring it for now.

Still going through the file now. I'll add Kaura support once I've fixed all the previous bugs
smile.gif



*EDIT*

I've finished version 0.3, fixed all the known bugs. I won't update for a bit until I've done more stuff.
My future plans are:

Kaura skinning support.
Moonshell2 skin importing (should be easy as the moonshell2 skins use the same file format, but as jurassicplayer has pointed out, some files will be missing).
I might add a font generator, if anyone thinks it'll come in handy, to easily add custom fonts to the screensaver etc.
 

Dark^'^Knigh

Well-Known Member
Member
Joined
Apr 25, 2007
Messages
1,043
Trophies
0
Location
Paradise
Website
Visit site
XP
86
Country
Dark^'^Knight said:
I'm going to say thanks in advance for the program....is there a tut anywhere on how to compile themes for Sakura? I wouldn't mind having a crack at using your program to (try) make some themes.
Way to make a guy feel neglected
frown.gif
 

Stormwave

Well-Known Member
OP
Member
Joined
Apr 22, 2010
Messages
237
Trophies
0
Website
Visit site
XP
229
Country
Sorry Dark^'^Knight
smile.gif


The only thing I can recommend is looking through the M3 Sakura FAQ pages on skinning, I'm not sure of any tutorials myself. If theres nothing on there, I might make a readme file for the program to help people.
 

CannonFoddr

Regular GBATemp Lurker
Member
Joined
Sep 23, 2006
Messages
4,134
Trophies
1
Age
56
Location
Sitting by computer
Website
www.youtube.com
XP
1,289
Country
jurassicplayer said:
CannonFoddr said:
Any chance of some screenshots of the preview screens ??? (not all of them though)
http://img88.imageshack.us/img88/1337/77971160.jpg
Here are some of the previews (I left out maybe two-three screens). I never noticed that the Segoe UI font looks really similar to the Moonshell2/M3Sakura font, but its ever so slightly different xD
@ JP: Hey I said 'Not all of them though' -
rofl.gif

@ Stormwave: FYI - 0.3 works just fine, now that I've had a 'play' with the previews... I think I still prefer JP's
May I make a small suggestion though..... Give an option to 'split' the preview screens with a fixed gap - it'll allow people to see how a wallpaper that covers both screens would look like

4547991924_2b9b939b73_o.jpg
 

Densetsu

Pubic Ninja
Former Staff
Joined
Feb 2, 2008
Messages
3,434
Trophies
0
Location
Wouldn't YOU like to know?
Website
gbatemp.net
XP
2,707
Country
United States
Thanks Stormwave, this is exactly the kind of thing I've been wanting--finally an app to extract source files from skins. I hope you don't mind, I linked to it on the M3 Sakura FAQ. I haven't had a chance to try it out yet, but it looks very promising. Thanks for sharing!
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    BigOnYa @ BigOnYa: I played the intro to far cry 5, that is like some crazy Jim Jones cult shit. Still its petty...