Skip to content

Sprite tutorial by expert Serumizer Kraken

pastor edited this page Jan 5, 2025 · 8 revisions

image

Alright, for the sprites... the first thing you should do is create frames that contain the sprites. The button you'll use to create a frame is "To Source Frame." The goal is to bundle your sprites in a single or a few frames, making everything easier to manage. The "To Source Frame" button will allow you to create an original frame, which you'll make with the original amber colors.

As an example, I'll show you how to create sprites for numbers. This method isn't the only way to create your sprite frames; it's the method I use, and it works well.

Navigate to the Main editor -> Colorization mode

image

The first thing you need to do is completely color a frame in amber/dark orange_

image

A quick note: for the To Source Frame button to work and be able to create a frame, the frame you’ve created must only contain the original amber colors. These could be the first 16 colors when doing a newer Stern or 4 colors for many older games. In my case, my ROM is 4-color, so I can only use the first 4 colors.

image

Now, on your frame, you need to CTRL+C & CTRL+V the thing that you would like to turn into a sprite. In my case that will be number 0-9.

image

You’ll notice that around all the letters and numbers, there’s always a black border, so it’s important to include this black border in your sprites.

image

The easiest way to add the black border is to select all your numbers using the magic wand tool by holding CTRL+ALT and clicking on one of the numbers with the left mouse button. This will select all pixels that share the same RGB value as the original pixel you clicked on.

image

Once your numbers are flashing because they are selected, you can easily add the black border by selecting the black color first, and then adding shading to the top, bottom, left, and right. This follows a great shading technique used by every advanced Serum user.

image

Now, you’re ready to create a "source/original" frame, but there is plenty of space on this frame that you can use for other sprites, such as words. You can copy the word "BONUS" and paste it onto this frame, as well as other words as long as there is space.

Once again, it’s important that what you copy/paste here is not colored; it must absolutely use the original amber/orange colors. Why? The software compares the original amber color values with the PinMAME rom frames. If you do not follow the basic amber palette the sprite will not be detected!

Once your frame is full and the black borders are present, you can click the "To Source Frame" button.

Now click on the To Source Frame button

This should add a completely new frame at the end of your project. You can now color the numbers and words on this new frame. The frame you used to create this original frame can now be returned to its original state by using the square tool and drawing a rectangle over the entire frame while holding the SHIFT key.

Sprites can also be images. Here’s an example of how I organize my sprites:

image

I add random elements to ensure that this frame is completely unique and that my comparison masks won't mistakenly identify it. Here is this uncolored frame:

image

Now that it's colored, you need to (in my case) create a sprite for each number (words can be a single sprite instead of each letter separately). To do this, you must select the entire number, including the black border.

image

Once selected, press CTRL+C to copy it. Then, go to the sprite window, enter a name for your sprite, and click the + button.

image

Then, press CTRL+V to paste what you just copied.

image

So, repeat this process for all the numbers and words that can appear in front of your logos. A sprite can also contain multiple words, like:

image

Next, define the detection zones on each sprite by drawing a box on a region of the sprite that will uniquely identify that specific sprite. You are looking for a series of pixels that will only exist in that sprite and nowhere else, otherwise your sprite may appear when/where you don't expect it. Drawing the detection zone is done by holding Right click + drag

image

You can define up to four detection zones per sprite. This is useful for sprites that fly across the screen and part of the sprite is off screen, so you could have a detection zone on the left edge of the sprite for when it first appears on the right side of the screen, and a second detection zone on the right edge of the sprite for when it has partially scrolled off the left side of the screen. You use the drop-box here to define the four detection zones.

image

Only one detection zone is sufficient for sprites that are always visible, but multiple is useful when you can have multiple layers of sprites, so one sprite can partially hide the second sprite.

Finally, click the button below to add the currently selected sprite to a single frame or multiple selected frames. If multiple frames are selected, the sprite will be applied to all of them.

image

Keep in mind that each frame can hold a maximum of 32 sprites. While it's rare to reach this limit, doing so may indicate the need for a more efficient approach. Excessive sprites can degrade performance, potentially causing lag in real pin colorizations—so consider the impact on your real pin friends!