Mega Man 8-bit Deathmatch > Tutorial Collection

[TUTORIAL] Creating a customized skin

(1/9) > >>

EDIT: As of the release of v6b in 2023, this post has been rewritten for the MM8BDM wiki.
You can find that article here.

For legacy purposes, the older version of this page has been kept in-tact in the spoiler below; However, it is strongly recommended to read the article on the wiki instead as the information there is much more straightforward and beginner-friendly.

(click to show/hide)
So, you think you're cool enough to make your very own custom skin? This tutorial will guide you on your path to the true misery that is creating skins.


An image editor that supports transparency (I recommend Paint.NET)
Trillster's Skin Assembler Program
A lot of time

Section 1: Setup

Alright, first things first. We need to make the sprites, which is easier said than done.

There are a lot of specifics for skins, so here's what you'll need to know.


8BDM uses certain colors on skins in order to make sure when you pick up weapons, your skin switches to that color. The default colors are specific shades of blue and cyan, which is why in player setup all of the skins are this color.

#0078FC, or color 198 in the 8BDM palette.
#00F8FC, or color 192 in the 8BDM palette.

There are also 2 other colors, black and white.

#000000, or color 0 in the 8BDM palette.
#FFFFFF, or color 4 in the 8BDM palette.

These are important to know, because 8BDM is very picky with it's colors. An off color could mean that it wont translate correctly and it won't work in-game.

Finally, all vanilla skins use an "eye white" which is color 168 (#FCFCFC) on the palette. This only applies to the eyes of the skin. This is done so that modders can translate the white parts of a skin (i.e. in a weapon charging animation) without making the eyes flash as well. Use of it is not required, but it's nice to include if you have the time.

Now that we know the colors, we can actually start making the sprites now.


Open your image editing software and create a new image.

I've created a template here so that it may be easier to understand what exactly you're doing.

Now, before you do anything, please note that you do NOT have to make your skin within the template. You can organize them however you want, and I'd encourage you to do so.

Back on track, you may be confused by a few things in this image, which I'll explain here.

Below each classification (Walk 1, FrontRight, etc.) is a set of numbers or letters in brackets. These are used for naming conventions when compiling your skin. Before we get into that though, we first need to make the sprites. You will need to make an equivalent for every image in the template shown above.

This is the part where you go and make the sprites. I can't really give an 'art' tutorial, but I can however give a few tips.

Make sure everything in your rotations are consistent height-wise. You don't wanna have a character's arm be in 5 different places in just one rotation!
If your character is completely symmetrical, you can probably get away with mirroring the Walk 1 frame to use as the Walk 3 frame.
Try to make it look Megaman-y! Your skin will fit in with the rest of them if it does.
If you're still stuck, ask for pointers from artists within the community. Asking for help is generally helpful.

Section 2: Compiling your skin

This is where the skin assembler comes in. Or not, depending on what you want to do with it.

There are two ways to compile a skin nowadays: Using the assembler, or doing it manually. There are advantages to each, but generally for new skin-makers I would recommend just sticking to the assembler. If you want a more technical understanding of what's going on underneath, I've included the manual method as well.


(click to show/hide)Using the skin assembler is really straightforward.

Open it up and it'll look something like this:

The author is... You! You made the skin, probably.
The skin display name is how it'll show up in game in menus.
The sprite name is the four-character filename of the sprite. Try not to name it something that might conflict with other in-game graphics.
The crouching sprite name is the same thing, but used if you want to have a crouching sprite for your skin. Most skins don't have this so don't worry about it.
The class is for whatever class you want it to be for. If you're just making a skin for the base game, keep it as Megaman.

Sounds! Self explanatory, upload sounds if you want to change them.

The mugshot sprite name is also optional, it's only for mods that use such a thing.
Any option or field prefixed with an asterixis (*) is mandatory and must be filled out, though.

To add your sprites to the file, upload your sprite sheet using the "Open Spritesheet" button. If you used the example sheet as a base, I'd recommend getting rid of the grey borders and white text before doing this.

If it worked, you should get something that looks like this:

Use the sliders and lettered buttons to scroll through frames and rotation angles. Clicking on a frame in the sprite sheet will apply it to whichever frame is currently being viewed in the main Assembler window. For example, if I click on Maestro's FrontRight (45 degree) Idle sprite while having that angle and frame viewed in the editor, it'll overwrite the Protoman sprite with the Maestro sprite. It's a little difficult to show a visual example for this with just images, but try and use the angles from the default Protoman skin included as a reference for which frames should go where.

When you're all finished, hit the Process Skin button and put the file it gives you into your MM8BDM skins folder. It should work just fine.

(click to show/hide)First, you have to take every individual frame and put them into separate PNGs. This can be very time consuming, but there's a tool that can help you do this in seconds.

After you have all of your frames in separate image files, you have to name them correctly. This is where the letters and numbers from the template come in.

Here's how it works: The first 4 characters of the filename define what set of sprites it is. The last 2-4 define the specific rotation of the frame.

For example, here's the base skin's front frame.


PLY1 is the set of sprites, A is the frame (idle) and 1 is the rotation number (front), hence why it's called PLY1A1. It's pretty easy to understand once you get the hang of it. The other frames follow similar formats.

Frame letters:

A = Idle frame

B, C, D, E = Walking frames

F, G = Firing frames

H = Pain frame

Rotation numbers:

x1 = Front

x5 = Back

x6x4 = BackRight

x7x3 = Side

x8x2 = FrontRight

Please note that "x" in this situation refers to any of the the frame letters.

Rotation numbers can be tricky: note that if your FrontRight rotation is facing to the right, then the frame name will be x8x2. However, if your FrontRight is facing to the left, then it becomes x2x8. This is because the numbers are set up to support full asymmetrical rotations.

Typically, skins in this game don't use all 8 rotation angles, which is why they're mirrored like this, but you're free to use them if you'd like. The rotation angles for them are x1, x2, x3, etc... as seen in the above image.
"x8x2" essentially tells the game, "This is the frame for the 8th rotation angle; mirror it for use in the 2nd rotation angle." Same goes for x7x3 and x6x4 as well.

Now that you have your frames in separate images, you now have to compile them into a .pk3 file

Putting your skin into SLADE

Open up SLADE3, assuming that you downloaded it earlier, and create a new zip archive.

Create a new folder and call it 'sprites', then import all of your image files into the sprites folder.

And now, toying around with offsets. Go into your sprites folder and select all of your frames.
On the right of your screen, you should see something that looks like this:

Click Modify Gfx Offsets. A little window like this should pop up:

Click the dropdown menu and select "Monster (GL-friendly)", which should set the offsets for you automatically. This should automatically offset all your frames for you.
Once you're done with that, repeat this process but this time select "Set Offsets" and make sure the Relative box is checked. Then, put a -1 in the second field. What this does is bring all the frames down by a pixel, which is done for reasons. Just trust me on this one.

Once that's done, you should go through your frames and check to see if they're in the right places. While the automatic graphics offsets can be useful, they can sometimes be inaccurate as they offset based on the resolution of the frame. If your skin is particularly animated and changes size a lot during actions, it's wise to check that they stay in the right place so that they're not moving around drastically during animation.

Finally, we need to create a SKININFO file.

A SKININFO file is what you use to define the skin so Zandronum knows what it is. Exit out of the sprites folder if you haven't already. This is where it gets tricky. Create a new entry and name it SKININFO. Click it and on the right there should be a button that says "View as text". Click that, and paste the following code into the textbox:

--- Code: ---{
name = " "
sprite =
class = Megaman
dsnoway = LAND
dsoof = LAND
dspldeth = MEGADEAT
dspdiehi = MEGADEAT
dsplpain = MEGAPAIN
dstaunt = dsnone
gender = other
--- End code ---

The missing spaces can be filled with:

name = What you want your skin to appear as on the Player Setup tab
sprite = The first 4 digits of your skin frames (Ex. PLY1)

You can customize it a bit with sounds, so if your character is heavy you can change LAND to FATLAND. You can also change the pain sounds from MEGAPAIN to MM2PAIN, MM3PAIN, MM4PAIN, etc.
Really, you can make them whatever sounds you'd like, but try not to get too silly with it.

Now, click Save As and save your file as a .pk3 file in your skins folder (which can be found in the same place you installed 8BDM).
Section 3: Testing and FAQ

If you saved your skin in your skins folder, you're all ready to go. Just check out your frames in Roll's mirror, be sure to test out different weapons.


Q: Can other people see my skin?
A: Only if they have it in their skin folders too. Share it with your friends!

Q: My skin doesn't change color with weapons!
A: That means you used the incorrect colors. You'll have to recolor your frames on your sheet and recompile.

Q: My skin moves around a lot while animating!
A: Go back in and tweak the offsets in SLADE3. If you used the Automatic method of compiling, check out the Manual section of Section 2 for help with this.

Q: I tried to download the Skin Assembler installer, but my browser flagged it as a virus. What's wrong?
A: Try downloading the archive version instead. You'll have to unzip it using an external program like WinRAR or 7zip, but it probably won't get your antivirus mad at you.


Hopefully this was a useful resource in creating your skin. As of writing in 2022, this is the first substantial update to the original thread from 2017 which contained some nasty misinformation, so I hope this is more accurate and straightforward. If you have any issues with getting your skin to work, just post a reply below. I'll see if I can get back to you.

pls help meh
this is an bad questiion but pls

what is the size (Xpixels x Xpixels

The size of each individual frame can be whatever you want it to be.

Thanks! I've been wanting to try making my own skin!

I do have a question though, would it be possible to have only one part of the whole skin change color when switching weapons?

Yes. Only things that are colored blue or cyan will change colors, so if only one portion of the skin is that color, then it'll be the only thing that swaps.


[0] Message Index

[#] Next page

Go to full version