Sky Rogue

Sky Rogue

73 ratings
The Complete Guide to Custom Content
By Gunmetal Buffalo
Sky Rogue allows players to add their own models and color schemes to the game.
This guide is intended to cover all aspects of Content Creation and Modding.

I will take you step-by-step through every aspect of the Content Creation process, with plenty of pictures.
If you have ANY questions about customizing Sky Rogue, this is the place to look.

This is also the place to look for Templates and Modding Resources.
All the tools used in this guide are free.
Hello and Welcome, Sky Rogue fans!

In this guide, we're going to be covering the step-by-step process for creating (and using) custom Color Schemes, Decals, and Aero Models. None of these processes are particularly difficult, though documentation is pretty sparse at the time of this writing.

For the purposes of this guide, I will be assuming that you are a first-timer in all things. I'm not particularly experienced myself, so if you spot me making some amateur mistake in here feel free to give me some pointers so that I can improve the guide.

Now, let's get the "scary parts" out of the way first: You are going to need a couple of free tools, or functional equivalents:
  • GIMP[] - An image manipulation program. MS Paint works for the color schemes themselves, but probably won't cut it for working with Decals. As long the software you use can edit .PNG images and get them to save with transparency, it doesn't really matter what you use.
  • Wings3D[] - A modeling program. The developer uses this program to create the Aeros seen in the base game. I downloaded this free software, and had something workable for use in game within a few hours with no prior experience. The modeling and UV Texturing portions of this guide will be written specifically for use with this program. If you're already experienced in a different program, then I can only assume that you're capable of following along in your own software.
  • - An online tool for editing the .json file that each Aero requires. It should go without saying by now that you can use your own thing, I'll explain how each of the parameters affect your model in-game.

You're also going to have to learn things and create your own stuff.


I'll guide you through everything you need to know, and provide you with as many lovely pictures as I can. It may be patronizing at a few points (especially if you're a pro), but my goal is to pass along everything I've learned.

It is my hope that with the help of this guide, more users can create content for this game and share it with the community at large.

Let's fill the workshop with tons of awesome content!
Section 1: Color Schemes - What are they?
The models in this game use a very simple kind of texturing. Blocks of color are arranged in an image, and each section of the plane model pulls the color from one of those blocks. That's it.

Here is the template you will be using.

This is the texture for the default color scheme.

This here is how each section corresponds to a given plane model:
On many of the default planes, the "Thruster" section does not get used. This is because the default planes typically use colors pulled from the "cockpit" sections for the exhaust vents, and use the in-game thrust object (which we will cover later) as the only representation of exhaust.

Here's a visual comparison between the thrusters of the Raiju and the thrusters of my own custom A-Wing:
Both "planes" have been slowed to the point that the in-game thrust objects disappeared. Both are using the default color scheme. The Raiju uses cockpit colors for its thrust vents, while my A-Wing uses the Intake colors for the inside of the engines and the "Thruster" color for the exhaust.

When creating your own Color Schemes, I suggest planning for others to make similar use of the "Thruster" section. When coloring, assume that this color block will be used for exhaust vents. That way, modelers can assume that any given color scheme used with their model will include an appropriate Thruster color. We'll cover that aspect of modeling later, for now just try to envision what each color block is likely to be used for and pick colors appropriately.

Bear in mind that for most planes and most color schemes, the "Intake" section is going to be completely black. Changing the color of this section on your color schemes is going to change the way intake vents look on default planes (and probably a number of other custom plane models).
Section 2: Editing Color Schemes - How Do?
Editing Color Schemes requires very little effort. Simply grab the Template I've provided at the end of this guide, or an existing color scheme that you want to edit, then right click and select "Open With GIMP".

If you want to zoom in to get a better view, hold CTRL and scroll the mouse wheel. The image will stay centered until it becomes so large that it fills the GIMP window. When this happens, continuing to scroll in will zoom in toward the mouse pointer. Hold your mouse pointer over what you want to zoom in on as you're scrolling.

After opening the Template, your window should look something like this:
Now let's say you have some reference images or other color schemes that you want to pull colors from. Simply go to File > Open As Layers. Select the image you want to add as a layer.
That image you added probably filled the whole screen. It's likely *WAY* bigger than your template and it probably covered the whole thing up.


You have two options here, both taking place in that little right-hand 'layers' window. You can click and drag the layer of the imported image down below the template layer, or you can click the little eyeball icon to hide the imported layer.

When you want to edit a layer, make sure it's selected in the layer window. Just because you can see a given layer, doesn't mean you're currently editing that layer. I mess this part up all the time, I start clicking stuff and wondering why nothing's happening.

Anything in the layers window with the little eyeball icon is currently being displayed. The highlighted layer is the one you're currently working with. Layers at the top of the list are at the top of the "stack". If the layer at the top is visible and is the same size or larger than the layers below it, you won't be able to see any of the layers underneath. If a layer at the bottom of the stack is larger than the visible layers above it, you'll see the layers displayed on top of one another.

Okay, now make sure you're working with the layer that has your reference image, and make sure it's visible. It doesn't have to be on top of the stack, it just has to be visible and highlighted. If your reference images are at the bottom of the stack, toggle off the visibility of all of the layers above the image you want to work with.
Notice that all the layers I don't need are toggled off. They're still there and they're still on top of the reference image, I'm just not editing them nor can I see them right now.

Let's grab ourselves some reference colors.
Click on the eyedropper tool in the left-hand 'Toolbox' window.

Left click on the area you want to grab color from. You might want to zoom in to make sure you get the exact pixel perfect color you were aiming for.
You should notice that one of the two colors in your toolbox has now changed to the color of the pixel you selected.

Click the little arrow button when you want to swap your currently-selected color.

I believe that the currently selected color is referred to by other tools and menus as the "foreground color" and the other color selection is the "background color". That's just for future reference, if you start fiddling with the program beyond the scope of this guide.

When you've grabbed the color(s) you want, hide your reference images and bring up your template layer again. This time, you're going to want to select the Paint Bucket.

Go ahead and click all over the place on the box you want to fill with your selected color.

From here, you can rinse and repeat.
Grab the colors you want from your reference images (or other color schemes), come back to your Template layer, and drop the colors where you want them with the paint can.

If you click on the foreground/background color in the Toolbox window, it will bring up a window in which you can create your own custom colors. You can also use that window to select previously-used colors, without having to go back to reference images.



Color Schemes, including the Template, are exactly 128x128 pixels.

Each color block is an exact size, 32x32 pixels.

Without going into too much detail, resizing the template will break it entirely.

It's important that you only change the colors. Two blocks can be the same color, even if they're adjacent. You just don't want random splotches of blue inside your yellow color square; things like that can make your color scheme look weird on all Aeros.

Just remember: No extra marks, no resizing.

To help you with this, you can use the selection tool before using the paint can.

Click and drag a box around the color square you want to change, matching it exactly. At sizes this small, the selection tool should "snap" to pixels, making it easier for you to select only what you want to select. If you're still off, hover over one of the edges of the selection so that a tab appears. Click and drag the tab, use it to resize your selection. Edge tabs will only move that one side, corner tabs will let you drag two sides at once.

Use your paint bucket inside the selected area, and it will fill the entire selection with your color of choice, no "spilling" into adjacent squares.

When you're done, this:

Becomes something like this:

(This is my "TIE Ace" skin, based off of the 181st Imperial fighter wing from Star Wars)

I recommend saving at this point, by going to File > Save As.
That only saves the current project as an .xcf file, you're not done yet.

Delete your reference image layers (don't worry, they're still saved in the .xcf). You should be left with only your custom Color Scheme. If you see any checkered background, you have one more step.

Go to Image > Autocrop Image and you should be left with only your custom color scheme, 128x128 pixels.

Now all you have to do is go to File > Export. Name your color scheme whatever you want it to be called in-game. Put it somewhere safe, we'll cover adding it to your game later.

You'll notice that ".png" is all in lowercase, even in my "big, eye-catching letters" text. ".PNG" messes your files up.

If you export to the wrong format, just open it up in GIMP and try Exporting it again, this time with the '.png' file type.

If you saved when I suggested, to preserve your reference images, do not save changes when you exit GIMP. The file you need for your game is the .png you exported, not the .xcf you saved. The .xcf is solely for your benefit, if you want to go back and make changes, consult your reference images again, or if you some how mess up/lose your exported .png image.

Consult the "Adding Things To Your Game" section to see where you need to place your custom Color Schemes to see them in-game.
Section 3: Decals - How to Not Have Terrible Ones
For this section, you pretty much need GIMP or some program with equivalent functionality.

We're going to be working with layers, transparency, scaling and cropping.

It can be a little tricky at first, but with judicious use of Ctrl + Z I'm confident you'll do just fine.

First, you're going to want to grab yourself a reference image. Hop onto Google or crack open your Pictures folder, you'll need an image to start working from.

Here's mine, fresh off of Google (thanks, Blazbaros! And you too, RedSkittlez-DA):

(Warframe, Aww Yiss)

Now, let's open up our sweet Nose Art in GIMP.

We're gonna have to do a few things to make my dear, sweet Lotus ready for use in-game:
  • Shrink her down to 64x64 pixels.
  • Clean up our newly-scaled image
  • Ensure that the image has a transparency layer
  • Add in a backdrop, if necessary
  • Smash all the layers together
  • Export to .png

So let's try scaling her down, fingers crossed she still looks recognizable.
Go to Image > Scale Image
The highlighted numbers are the ones you want to change. If the height and width are two different numbers, click the little chain on the right so that it "unlocks" the ratio. Change both numbers to 64 and lock the ratio again. Click "scale" to see what happens when your emblem gets mashed down to tiny pixels.

Lookin' good as ever!

Small details are always going to get lost when scaling large images down to tiny 64x64 images. Try to avoid picking particularly complex images, as well as any image where small details are important to the image at large. At this size, text is all but impossible to read unless you already knew what it said.

This is the part where you go in with the little pencil tool:

...and your trusty color tools from earlier. Make sure you're using the pictured settings for your pencil tool. At this size, you only want to be working with a pixel at a time. If you like, you can scale the "size" setting up by a few pixels to color a slightly larger area at once.

Edit your tiny decal until you're satisfied. If you make any mistakes, don't break out the eraser just yet. Instead, use Ctrl + Z or make your errant pixels the same color as the background.

Now we're gonna fiddle with some layers.
My Example Lotus has transparency already. If I were to export her to .png right now, she'd probably work just fine. Thing is, your image might not have transparency when you first load it up in GIMP.

I'll grab a different decal, give it transparency, and we'll return to the Lotus once you've learned how to make parts of your decal transparent.

So here's my temporary decal, freshly scaled to 64x64 and cleaned up for symmetry.
You can add transparency to your starting image and then scale it down, or you can scale first and add transparency second. The order doesn't matter, but it has different results. Doing Transparency first means that most of the imperfections of the process disappear when you scale the image down. It results in "fuzzy" edges, as some of the pixels typically become partially see-through. Scaling first typically makes manual editing easier and results in "hard" edges.

The first step in the transparency process is to add a Transparency Layer. I like to right click in the empty space of the Layer window and select "New Layer", but boring types can use the button I've helpfully highlighted.

When the window pops up, select "Transparency". Name it whatever you like. I like "Transparency". Has a nice ring to it.

Move your Transparency layer to the bottom of the "stack", then ensure that the decal layer is visible and selected.
Right click your decal layer, then choose "Merge Down". This will mash your decal layer and the Transparency layer together.

Now we're going to use two tools to remove our background.
The first is "Select by Color". This is the most viable tool for removing backgrounds from large images. Click on the tool, then left click on the background. Anything of a similar color will be selected. How well this tool works depends on the image. For an image like the one I'm currently using, it works great.
It's kind of hard to see, but there's a dashed line all around my symbol and the edges of the image. The dashed line moves when you're following along at home, so you shouldn't have much of an issue seeing what's been highlighted. In this case, all of the white space is selected. The "Threshold" section is important for this tool, because it determines how similar a color needs to be for the tool to include it in the selection. Higher numbers will cause the tool to select more, lower numbers will make sure the tool only selects a very specific set of colors/shades.

Hit the "delete" key to remove the selection from your image, leaving a transparent area. Alternatively, you could go to Edit > Clear.
Scale your image down to 64x64, if you haven't already.

Once you've shrunk the image down to 64x64, and you've run the "Select by Color" tool, it's time to give your decal a final pass with your pencil and eraser. It's very important that your pencil has the settings I showed you earlier, and that your eraser has the following settings:

The default "brush" for both the pencil and the eraser is "blurry". Only pixels at the exact center of the brush are fully colored/erased, all pixels at the edges of the brush are only partially colored/erased. With the single-pixel brush, the "size" section determines the diameter of the brush in pixels. "Hard Edge" on the Eraser ensures that all pixels you click on are completely erased.

If you're having trouble seeing partially-erased pixels, add in a New Layer but this time select "White", "Background" or "Foreground". Drag your new layer underneath your decal, then select your decal layer again. Now everything you erase reveals the background color, and you'll be able to see the background color through the partially-transparent pixels. When you're done with your final transparency pass, delete your New Layer so that only your decal is left.

I've hit my character limit on this section, and your Decal is probably good to go by this point.
The next section will cover adding "backdrops" to your Decals, but you can skip it if you want.
If you're finished with your Decal, just Export it to a .png like I taught you earlier and refer to the "Adding Stuff to Your Game" section.

Make sure you export to .png, or the Decal will not work!
Section 3.5: Adding Backdrops to your Decals - "Why Should I?"
This will be a "short" section, where I cover adding backdrops to your Decals.

Let's return to my lovely Lotus:
She looks fine when she's placed on certain colors, but some colors make parts of the Decal difficult to distinguish.

Typically, you're going to bind your Decal to a Color Scheme. However, all of the models map colors and Decals in different configurations. If your Color Scheme contains colors that closely resemble your Decal, there's a chance that some models might place your Decal on a color field that makes your Decal difficult to see.

A Backdrop aims to fix this problem by placing most (or all) of your Decal on a patch of color that makes it stand out. If the location that a Decal is placed matches your Backdrop, then your Backdrop blends in and your Decal stands out. Otherwise, your Backdrop stands out from the plane/carrier's color, and your Decal stands out on its Backdrop.

Creating a backdrop is pretty simple.
Create a new Transparency layer and place it on the bottom of the stack, like I taught you in the last section.

However, this time you want to keep the Transparency layer selected. You may want to name/rename your Transparency layer "Backdrop".

You're going to use one of the three select tools in order to create the shape you want for your Backdrop, in the size you want. From left to right, they are: Rectangle, Ellipse, and Free.
  • Rectangle select will let you select a square area, and includes an option for rounding the corners.
  • Ellipse lets you create circular and oval selections
  • Free select can create custom shapes by clicking to place vertices (and then clicking the original to "close the loop"), or will let you "draw" a selection by clicking and dragging.

I'm going to use the Ellipse select, and highlight a section of my transparency layer that envelops the lotus symbol.
I'm going to drop some color into the selection. Because I'm working with a Transparency layer behind my Decal, I can see my Backdrop, move it, resize it or delete it without messing up my Decal.

If you mess up the Transparency layer you're working with, just delete it and create a new one. Keep trying until you get your Backdrop shaped and placed where you want it.

Now it doesn't matter as much if the surface your Decal is placed on is light, dark, or similarly colored.
This decal looks much more "professional" than what we started with.

When you have your Backdrop set up the way you want it, Merge Down all your layers and Export to .png format.

This process isn't necessary for all Decals, but it can prevent solid-color Decals from being lost on surfaces of similar color or preserve details on more intricate designs.
Section 4: Modeling - A Foreword
I am not very good at modeling. My sum total experience in this area at the time of this writing amounts to a couple of days' worth of fooling around in Wings3D in my spare time.

On one hand, this means that the following sections are kind of "the blind leading the blind".

On the other hand, if I can fool around in Wings3D for a couple of hours with no prior experience and create some functional models, you can definitely create something functional and spiffy by using what you learn from this guide.

Along the way, I'm going to teach you the very basic tools and commands I've figured out through my random fumbling. This program has a large, easy-to-find "Undo" button.

We're going to be using it a lot in these next couple sections.

I'll teach you what I can, and try to update these next few sections with anything new that I learn. Beyond that, you're on your own to explore the rest of the tools/functions and troubleshoot your own specific issues. Again, judicious use of the "Undo" button and saving often is what's going to preserve your sanity.

  • Left Click - Select "Lines", "Dots" or "Faces"
  • Right Click - Open up the "tools" dropdown menu (Performs various actions, consult the bottom left portion of your screen for information on what Right-Clicking does at any given time)
  • Middle Mouse Button - Enter Camera Mode. Move the mouse to pan the camera around your model. Left Click to stop moving the camera. Right Click while in Camera Mode to return to the point at which you first entered Camera Mode.
  • Arrow Keys - Move the "focus point" of the camera. This changes the point around which the camera orbits when using Camera Mode
  • C - Connect selected "dots"
  • Space - Deselect everything
  • Delete - Deletes whatever is selected. The model will adapt to deletions automatically, but sometimes that still messes up the whole model. Be careful what you delete and be ready to make use of the "Undo" button.
  • Tab - When moving or scaling anything, hitting Tab will allow you to enter a numerical value for the action. Imagine that whatever Axis you are moving along is a number line, with the current position being 0. Whichever direction positive values move, negative values move in the opposite direction. When moving parts of your plane around, I highly recommend using the numerical input. This allows you to ensure parts of your plane are symmetrical, and move/scale things in specific ratios relative to one another.

You can perform just about any possible action using only the left and right mouse buttons. Make sure to consult the lower left hand portion of the screen often, to see the current contextual actions bound to left and right mouse buttons. They will be referred to as "L" and "R", respectively.
Section 5: Modeling - For Reals This Time
Alright, let's dive right in.
For this section, I'm modeling the plane as I write this section of the guide, so that I can give you guys Work-In-Progress screenshots of the tools and functions I'm using as I encounter them.

I'm going to be attempting an Aero based off of the F-117 Nighthawk.

Models in this game don't have to be "High Poly", which is a blessing.
"High Poly" is shorthand for "High Polygon Count", which would indicate that a given model has a lot of faces and edges.

It's actually best if your models are "Low Poly"; the simpler your plane is, the better.

I've opened Wings3D:


Let's start with what we know.
We know from pictures that the basic shape is kind of like a Pyramid, with wings:

See, I had a plan all along.
I picked this plane because it's easy simple.

Now I'm going to need some material to work with. Luckily, all I have to do is right-click somewhere in that window with the grid, and I can create whatever polygon I want. I'm going to start with a pyramid...

Unfortunately, "Pyramid" isn't one of the basic shapes I can conjure up, but I can improvise!
I select "Cube" from the dropdown.

In order to create my Pyramid, I must first select the edges along the top of the cube. I also click the highlighted button to turn off shading. Right now, I just want to see my shapes and my lines.

I'm now going to Right Click somewhere in the window with the cube, and select "Collapse" from the dropdown menu. I now have my Pyramid!
To keep track of the direction I'm facing and moving things, I toggle on the Axis Display.
Wow! We're really cookin' now!

To select the entirety of my Pyramid, I click "Body Selection Mode".
I right click, and select "Move".
A new window pops up, asking me which axis I'd like to move along. I select Y Axis.
I want to move the pyramid upward, but I don't want to drag it off-center.
In this program, moving your mouse left and right changes the value by which you move and scale things. When Y axis is selected, it's kind of hard to fight the instinct to just move your mouse up or down.

All the same, I get my pyramid to the position I want and I left click to anchor it there.
To deselect everything, I hit Space.
Hitting Space should become a habit for you. Every time you want to switch from moving/editing one thing to moving/editing another thing, you need to hit space or you're just going to add to your currently-selected items.

I want to select the front and rear edges of the base, but I cannot see them from my current camera position. To enter Camera Mode, I press the Middle Mouse Button.

When the camera is in the position I want, I click to lock the camera in place.

Now that I've selected the lines, I want to split them in half. I right click and select "Cut". A new window appears, asking me how many segments I want to divide my lines into. I select "2".
New dots (vertices) appear in the center of the line segments, dividing each one in half.
That cut was so great, I'm going to do it again!

This time, I want to cut the other base lines into four segments!
You can now see the tiny little dots along the base of the pyramid. Trust me, there's a method to my madness.

Y'know what? Screw it, let's cut all the edges of the pyramid into four sections!
Our next step is making some connections.

To do this, all I have to do is click two of the dots. I press "C" to connect them.
I could have connected them by right clicking and selecting "Connect" from the dropdown instead.
Either way, my two dots are now connected by yet another line.
I'm going to follow suit for the rest of the pyramid.
Looking more like Giza every minute...

At the risk of making this look even more like an ancient Egyptian tomb than a high-tech fighter jet, I use my cutting-and-connecting skills to create some mini-triangles on my pyramid.
When will the concentric triangles end?
I'm thinking right about now.

See, this whole time, I've been trying to get my wings set up on the x axis.
With all of these connections, I can start moving dots around.
I select the central dot, where the x axis crosses the base. I right click and select Move > X axis.
This time, I want to be specific about how far I move.
By pressing Tab, I bring up the number entry window. Small numbers go a long way in this editor, so I pick 0.5 for my distance. That moves my dot outward. Success!
I turn my camera to the other side, select the central dot on that side, and Move it -0.5 along the x axis.
I follow this up by bringing the three central dots on both sides outward by 2 and -2, respectively.

My pyramid has been upgraded to a pyramid with wings!
Now that we've got some actual wings on this baby, let's get to work on shaping the body. We'll come back to the wings and give them their slant at the end.

For starters, let's get our "back" moved outward.
-0.2 along the Z axis for the central dot.
-2 along the Z axis for all three should give us a nice slanted body.
Hmm, that's a little weird...

Let's remove the horizontal lines from the back, and connect our rear corners to the pinnacle of the pyramid instead.

Now we'll add a few more lines in, move a few connections around...
I think this is fine for now, let's shift our attention to the front.

I'll strip off the lowest connection, cut the upper connection in half, and form a triangle.
Now I'll move that front point forward, forming a "beak".
We have now touched on all four sides, giving our model a very rough "shape".

To spare you guys the pain of scrolling through a ton of rapid-fire edits, suffice to say that I grabbed the upper "dots" (vertices) of my pyramid and Moved them down the Y axis in ever-smaller increments.

I removed a few connections, deleted a couple of vertices, and made some new connections, resulting in this:
As I start the process of refining this model, I'm going to start jumping ahead several edits at a time. I'm still using the same "Move", "Cut" and "Connect" and "Delete" tools I've already explained to you, until I specifically mention a new tool or technique. Don't worry about following along exactly, I'll share the finished model.
Section 6: Refining your Model - Because "Modeling" Hit the Character Limit
Once your model has its basic shapes, it's time to start refining.

From the last image, it's time to venture underneath the Aero to connect up some of the vertices.
That will suffice for now, we'll return to this section later.

Let's do something about these wings.
Simply moving the tips down the Z axis helped, but something's not quite right.
After consulting the reference images, I figure out that I need to move the points where the wing meets the fuselage (body).

Now that the wings are more or less "in place", let's shape them up a little bit with some more cutting/connecting.
That looks pretty good, we're entering the home stretch.

The width of the rear was bothering me, so I brought the "corners" inward.
Now that we've got the body more or less finalized, let's return to the underside and see what the damage is from my latest round of edits...
Not bad, it looks fine to me.

So, we have ~90% of our plane done.
But how to create the Rudders?

This is where I introduce you guys to the "Extrusion" Tool.
First, I select these lines.
Once they're selected, I divide the lines into 10 segments each.
With my lines cut up, I can select two points to connect, to form a triangle.
All the other points are unnecessary, so I select them and delete them.
Notice that when I delete the unwanted vertices, the model automatically joins all the line segments back together.
Without that extra clutter, you can better see the Triangles I've created.
Now I'll select the faces (not the lines highlighted in the next picture; the area inside the lines) and select the "Extrusion" tool from the Right-Click dropdown menu.
Dragging the faces upward along the Y axis, I've created the shapes that will become our Rudders.

Now let's get really spiffy, and break out the "Bevel" tool on these faces we've raised.
By selecting all of the faces at the top of our Ailerons, we can "slant" our Rudders.
All I did here was just move the top of each Rudder a little bit backward (z axis) and a little bit outward (x axis).
Wow, that was almost too easy!

I think that about covers it.
I think it looks serviceable, don't you?

There's just one last step, now that our model is nice and pretty.
We need to scale and position our Aero in a way that is roughly comparable to "default" Aeros.
We need to make sure that our model is scaled correctly before we reach the section of the guide that covers in-game scaling with .json files. Section 5 of the .json file lets you scale your model up or down, but your Aero will still look weird and small in menus.

It's much easier to roughly scale and position our model now, than it is to try and scale your model up later when it has all of the Decal Positions and UV mapping already done. You're just asking for trouble and tons of troubleshooting headaches. Let's use an existing model to properly scale and position our fancy new Aero.

I believe that at the time of this writing, "Starr Wolf" and its associated .obj file still comes pre-installed with the game files.
Just in case that developer-created "example" mod ceases to be included with the base game at any point in the future, I will provide a link at the end of this guide where you can find a custom "size comparison" .obj file

For reference, Starr Wolf is on the large end of the spectrum as far as "default" Aeros are concerned. I will try to scale my "size comparison" .obj so that it is roughly the size of the average default Aero. That way, you can tell whether your model will appear smaller or larger than default planes when used in-game.

Import either Starr Wolf or my "size comparison" .obj file.

Scale and move your model as a whole, so that it aligns roughly with the reference .obj you imported. When you are done scaling and moving your model, delete the reference .obj; you no longer need it.

Congratulations, you have finished modeling your Aero!

The F-117 model took me ~5 hours of continuous work, including the time spent taking screenshots and writing/editing the guide. This is my second 3D model ever, so I'd say that's a pretty quick turnaround. More experienced users could probably get models made in half that time or less, considering they wouldn't have to spend any time documenting their progress.

If you've never modeled before, don't worry about it. Bring up a cube like I showed you at the start of the modeling section, and just start playing with it. Select, Cut, Move, Resize and Extrude the various parts of your cube. Get an idea of what each tool does. Don't be afraid to mess everything up, the undo button is a very versatile tool.

Just try to avoid hitting CTRL + Z out of habit; that key combination functions as an Undo and then a Redo function in this program. That means that hitting it a bunch of times to "backtrack" actually just alternates between undoing and re-doing the mistake you just made.

When you're a little more comfortable with the program, take a stab at a simple design. A "Flying Wing" design or a cylindrical rocket-style design might be good places to start.
The more you play with the editor, the easier it becomes to envision designs as basic shapes, and then proceed to create those shapes.

This will create a .wings file. We're not ready to export our model yet. First, we have to tackle "UV Texturing".

Don't forget to create "Hard Edges"!
This is something I'd been messing up for a while, until [CB] CorBond57 pointed out that some of my models had missed this step, and thus looked weird in-game. Thanks for the heads-up!

The solution is quite simple, just select the edges that you want to be "Hard", Right-Click and go to "Hardness". Your options are "Hard" and "Soft".
This will turn the edges a different color, orange by default. If you load up Starr Wolf in Wings3D, you can see that it includes a mixture of hard and soft edges. Soft edges appear to get rounded and smoothed out, while Hard edges retain their angular look in-game. My models looked a little weird in-game prior to this segment, because the whole thing got rounded down and smoothed out.
When creating your own models, you can experiment with different mixtures of hard and soft edges to get a different "look" for each part of your model. For any surface that you want to be "round", I would recommend leaving it as a soft edge. For any angles, corners or proper "edges" you want on your final in-game model, change those lines to "Hard" edges.

To the next section!
Section 7: UV Skinning - Where the Rubber Meets the Road
...Or rather, 'where the Texture meets the Aero'...

This section of the guide is deceptively easy, especially if you're using Wings3D.
If you haven't already, open up your model in Wings3D. It doesn't matter if you're re-opening your .wings file from the last section, or Importing a previously-created .obj file via File > Import.

For this section, I'm just going to keep using my WIP F-117.

All you need to do is select the whole model...
Right-click, and select "UV Mapping"

A new, similar-looking window should appear. Note that instead of saying "Geometry", this window says "AutoUV Segmenting".
Start selecting faces you'd like to be the same color.

When you have all the faces for a given color group selected, Right-Click and assign it one of the AUV Chart colors. This is not the final color for your plane, it's just a visual representation of faces that are grouped together.

Hit space and select the next color group.

I'll skip ahead to the point at which your entire plane is divided up into these groups.
Select the whole plane, right-click and select "Continue".

A second window will appear, with options including "Unfolding" and "Projection Normal". I use either one of those two. I honestly can't tell the difference, it doesn't seem to matter very much.

When you select one, everything should disappear from the "Segmenting" window and appear on the right side of the screen in an "AutoUV" window.
Sometimes, depending on the model, one segment or another will refuse to map by one or more methods.
Play around with the different options; the goal is to get all of the grouped faces to appear in the AutoUV window. It doesn't matter how large, small, or oddly-shaped any given section is, nor does it matter if one segment is "projection normal" and the rest is "unfolding"; as long as it shows up in the AutoUV window.
This happened to me in the above photo, after I selected "Unfolding" for the entire model. I had to Select the highlighted faces in the "Geometry" window, then try to use "Projection Normal" to get the highlighted sections to show up in the AutoUV window.
The highlighted segments appeared very large inside the AutoUV window, so I needed to select the faces in the left-hand Geometry window again. To scale the sections down, I Right-Clicked inside the AutoUV window and selected "Scale". I then moved the sections closer together, in preparation for the next step.

You may have noticed that your plane is now sporting a strange-looking texture. This is normal.
At this point you want to go to File > Import Image and select either the Template Color Scheme or one of your own custom Color Schemes. Nothing will happen right away, and again that is normal.

Right click inside the AutoUV window and select "Create Texture". Make sure that you change "Draw Edges" to "None" in the Draw Options.
Remember to click on the "Options" button next to "Background" before hitting 'OK'. You want to make sure that your imported Template / Color Scheme is going to be applied to the AutoUV window when you hit OK.

If you've done everything right, your model should look something like this:
From here, it's just a matter of scaling and moving each piece in the AutoUV window to the color square you want it to pull from. I avoided overlapping in the examples below, but there don't seem to be any ill effects to having sections of your plane's UV map overlap (at least, not here, for the purposes of this game).

The final product looks like this:
Below are some examples of how the plane looks with custom color schemes. I imported the color schemes the same way as the template, I'm simply right-clicking the AutoUV window and selecting "Create New Texture" to change which Color Scheme I'm looking at. The default lighting isn't great in Wings3D (unless you start fiddling with lights in the scene), but you get the idea.

Wow Wow, Such Color!


You may go to File > Export > Waveform (.obj) to create your game model.
Your model is now ready-to-use in-game.
Refer to "Adding Things to Your Game" to find out where you need to put your .obj file.
The model will not appear in-game until you consult the ".json" section of this guide and create a custom .json file for your model.

The next section is "Decal Positioning". You can skip ahead to .json editing if you don't want or don't care about Decals on your plane.

It's just...
You know...
All the cool kids have Decals on their planes...
Section 8: Decal Positioning - Puttin' Stickers on Planes
This section should be pretty brief.

Re-open your .Wings file.
What we're going to do here is create "Quads". Just a fancy word for "flat squares".

The plan is, we create these Quads and place them on our model wherever we want our Decals to go. Then we're going to do UV Mapping on our Quads to apply the Decals to them.

Once our Quads are placed where we want them, we're going to select only our Quads and go to File > Export Selection > Wavefront (.obj).

That's it! Really!

I've pulled up my F-117 from the previous "Modeling" section, it's time to stick some Decals on it.
The way I've been creating Quads so far is simply by creating a Cube and then deleting all but two faces, as shown below:
Excellent! We've got ourselves two Quads!

Let's scale them down, then move them together toward the Rudders.
That's about as close as they're going to get.

Select one of your Quads. Right-Click, then choose "Put On". Select the face that you want to attach your Decal to. Right-Click to Execute.
To produce more Quads, select an existing Quad and choose "Extract". This will copy a new Quad for you to place elsewhere on your plane.

Here's a picture of my F-117, with Quads placed on the rudders and wings.
You'll notice that the rudder Quads are clearly visible, but the wing Quads occupy the same coordinates as the wing, leading to that weird "clipping".

Using the "Put On" tool is likely to place your Quads in such a way that they clip inside the surfaces you stuck them to.
We're going to use some advanced "Move" commands to fix this issue.

First, select a Quad. Now right-click and hover over "Move". Instead of Left-Clicking "Move" like you normally would, Right-Click on "Move".
Now Left Click your Quad again, and you'll notice that an arrow has appeared. This is the axis along which you will be moving your Quad. Since your Quad is flush with the surface you're placing it on, you can now raise and lower your Quad while keeping it flush with the surface.
To separate the Quad from the wing, without it visibly floating above the wing, I'm going to hit TAB and move the Quad only "0.00025". This is an imperceptible distance, but it's still enough to prevent any further clipping issues with our Decal.

Now, what if you want to move a Quad around along the wing, without it coming off?
Simple, use a Planar Move.
Select your Quad, select "Move", and then Right-Click "Planar".
Select the wing segment you want to move the Quad along.
By combining scaling, "Put On", "Advanced Move" and "Planar Move", you can get your Quads set up (relatively) easily wherever you want them.

If you want to rotate your Quad, Right-Click and then Right-Click on "Rotate". Select your Quad as the axis. That will allow you to "spin" the Quad without moving or tilting it.
Now that we have our Decal Positions determined, it's time to UV map them. Select ONLY the Quads, then right click and select "UV Mapping". This time, instead of using our Color Schemes or Templates for the background, we're going to use a Decal. Aside from that, UV Mapping remains pretty much the same. It may take some trial and error, but eventually you should get your Decal to map properly to your Quads.

If you haven't already, export your plane model by selecting it WITHOUT the Quads, then going to File > Export Selection > Wavefront (.obj).

To export your Decal Positions, select ONLY the Quads, then go to File > Export Selection > Wavefront (.obj). Name your Decal .obj something similar to your model name, so that you can easily tell it apart from other Aeros' .obj files.

See "Adding Stuff to Your Game" for more information about how to name and save your .obj files so that they function correctly.

Up next, we're going to cover in-game objects, in-game scaling and getting things to appear correctly in the game, via the use of .json files.
Section 9: Getting Pretty for .json - How to Line Things Up In-Game
This segment is probably the easiest out of the whole guide, but it also requires the most trial and error (at the time of this writing).

The .json files we will be working with tell the game where to put the "fire" from jet thrusters, where to put the wind trails, how big and small things should be, and how many of each object should exist. This file also ties your two .obj files together (Aero and Decals).

If Starr Wolf still comes with the base game files, you can use that .json as a starting point.
At the end of this guide, I will provide a link to a "blank" template .json file.
I would strongly suggest that you use my template .json file, or a .json file created by someone who started with my template, because Starr Wolf's .json does not come with the section of code that includes Decal Positions with your Aero.

Now, let's dive right in.

When editing .json files, I've been using a little online tool ->

However you edit your .json file is fine (even notepad, despite being messy and difficult), it makes no difference so long as you can quickly and easily make changes and save.

This is pretty much the entire process for .json editing:
  • Load up the .json you're working with.
  • Make any/all changes to position, scaling and/or rotation values
  • Save the .json
  • Put your new .json in your "Aeros" folder (and pray)
  • Boot up the game
  • Enter "Free Flight" or "Play" (Free Flight is faster and won't punish you if you die)
  • Visually check the positions of in-game objects when flying your Aero
  • If something is (still) misaligned, exit the game and return to the first step.

For the purposes of positioning, scaling, and rotation:
  • "0" is the X axis
  • "1" is the Y axis
  • "2" is the Z axis

Small numbers have a large effect here. Moving something by "3" is going to move it pretty far. When trying to get fine positioning correct, pick one axis and work with it by decimal points until it's lined up correctly. Then work on the next axis, and the next axis.

When working with, we're primarily going to be dealing with the right-hand side. First things first, use the text boxes to type in the name and description of your Aero, as you want to see it displayed in-game. The "full name" of your Aero is displayed when selecting your Aero. When you're flying, only the "ShortName" is used.

Section 0 - Nothing Important
Where it says "Name" and I typed in "Aero_MOD_F-117", I'm not even sure that does anything.

Sections 2 and 3 - "Wingtips"
These sections control the position, rotation and scale of your Wingtip Contrails. These are the little lines that trail off of the outer edges of your wings. That's pretty much where you want the Contrails to end, right at the outermost edge of your wingtips. You shouldn't need to scale or rotate these.
If you have more than two wings, or for any other reason need more than two contrails, I've highlighted a little box on the left. If you click it, you can duplicate the corresponding section.

Sections 4 and 11 - "Thrust Contrails"
These sections control the position, rotation and scale of your Thrust Contrails. These are the larger trails left behind by your Afterburners.
I typically leave these alone until I've fully positioned my Afterburners, because then you just use the same X and Y axis values you used for the Thrusters. Boom, two birds with one stone.

Section 5 - Your Model
All you have to do with this one is make sure that you type the name of your .obj file correctly, without including ".obj" at the end.

Sections 7 and 8 - Afterburners
These are the little "fires" that come out of the back of Aero engines. How many of these you include, how big they are, and where you put them are up to you. Remember to include a Thrust Contrail for each Afterburner, or each group of Afterburners. You can scale them up or down if you want, but I left my template's scale at 10 across the board.
Again, if you need more of these there is a duplicate button highlighted. Make as many as you need, position them wherever you want. It's on you to remember which ones you're working with.

Section 25 - Decals
This section works identically to Group 5, only this time you're typing in the name of your Decal Position .obj file, without ".obj" at the end.



It is possible to assign the stats of one of the default Aeros to your Custom Aero. To do so, add the following segment to your .json file or use the template included at the end of this guide.NOTE: To make your Custom Aero use the stats of the "Zulu" default Aero, enter "Aeroplane_zoke". Apparently the "Zulu" is known as the "zoke" in the game files.

When you think your .json file has the correct values in it, select "Save to Disk".
Be sure to name your .json file so that it corresponds to your .obj files, and make sure that it ends in ".aero.json".
Section 10: Adding Things to Your Game
To access Workshop mods and version 25.5, you must Right-Click Sky Rogue in your Steam Library.
Go to "Properties", access the "Beta" tab, and select "Indev" from the dropdown menu. The game will update, and all subscribed Workshop content will appear in-game.

Please note that all locally-stored Aeros and Color Schemes are currently unavailable while playing the "Indev" version. For now, 25.3 users can only access local mods, and 25.5 users can only access their subscribed Workshop mods.

Instructions for both versions are listed below. Outdated information will be deleted when it is no longer relevant.

"NEW" WORKSHOP-ENABLED METHOD (Version 25.4 and later)
To install a mod, simply subscribe to it on the Workshop.

The "Mods" folder in your Sky Rogue directory holds all of your mods.
Every mod gets its own folder within "Mods".
Workshop mods will automatically create their own folder and place the appropriate files inside.
  • Color Schemes and Decals go in Mods/MODNAME/Skins
  • The .obj files go in Mods/MODNAME/Meshes
  • The .aero.json files go in Mods/MODNAME/Aeros

There is a link to the Workshop Upload Tool at the end of this guide.
I will cover the specifics of using the tool in that section.

For mods you made yourself and wish to test out locally, I suggest making a folder in "Mods" called "Local", with subfolders labeled "Skins", "Meshes" and "Aeros". Place your local files in the appropriate folders, and they *should* all work in-game.

"OLD" METHOD (For users playing versions earlier than 25.4)
All of your custom content goes in the "Mod" folder.
  • Color Schemes and Decals go in the "Skins" folder
  • Models and their corresponding Decal Positions are placed directly in the "Mod" folder
  • The .json file for each custom Aero goes in the "Aeros" folder

If you don't know how to get to the game files, the easiest, most foolproof way for me to guide you there is as follows:
  • Go to your Library in Steam.
  • Right-click on Sky Rogue in your game list.
  • Select "Properties".
  • Go to "Local Files"
  • Select "Browse Local Files"
  • Remember the file path for next time, and/or create a shortcut

A Quick Rundown of the File Types / Requirements:
  • Color Schemes must be .png file type, 128x128 pixels. Name them what you want them to be labeled in-game.

  • Decals must be .png file type, 64x64 pixels. The developer has informed me, after the writing of this guide, that "Decal sizes can be any power-of-two up to about 1024x1024". Personally, I've been using 64x64 because that's the size of the decal in the "Example" mod that I and others used as a starting point. Scale your Decal however you like, I'm going to assume for the purposes of this guide that you're working with 64x64 images. To use them with a Color Scheme, they must be named the same thing as the color scheme, but end in "_DECAL.png". That means that "X-Wing.png" has a decal called "X-Wing_DECAL.png"

  • Aero Models are saved as .obj files

  • Decal Positions are also saved as .obj files. Make sure that only the decal squares are included in this .obj file and that it's referenced in the .json file (see the .json section). I don't think it's strictly necessary to name this .obj anything specific, but it's much easier to keep track of it if you name it after the model it corresponds to. The Decal Positions for "X-Wing.obj" should probably be called "X-WingDecals.obj". I won't tell you how to live your life (any more than I already am), but I strongly suggest that we all make this part of our naming process, so that we can all recognize each others' custom files easier.

  • The .json files are in .json format (duh). Your Aero's customized .json file needs to end in ".aero.json", though the rest of the file name is pretty much up to you. Again, I would suggest that you make the name of your .json files the same / similar to your model / skin names, so that people can easily identify your files.
Section X: Guide Assets, Templates and Workshop
You'll need these items to get started on your own Custom Content. Since these items won't upload to the Workshop, I'm currently hosting them on my Google Drive

Included in the link is:
  • Color Scheme Template
  • Explanation for Color Scheme Template
  • "Blank" .json file (see the .json section)
  • Scale Reference.obj (for sizing and positioning your Aero to roughly match the default fighter)

In the future, I may add to that list. That section of my Google Drive is reserved for sharing any Sky Rogue files that Workshop can't/won't host.

The developer is hosting the Workshop Upload tool on Sky Rogue's page:

A quick rundown of the program is as follows, written by the developer (Forkbeard):
  • Before doing anything, create a preview image. (.jpg .png or .gif) Maximum 1MB
  • Log into Steam
  • Open SteamWorkshopUploader.exe (Fixer's Note: If you log into Steam as an Admin, run the tool as an Admin)
  • Click "Create Item" and make sure you didn't get an error. The error will tell you what you need to do.
  • Rename "MyNewMod" to whatever you actually want to call it (the name actually doesn't matter at all, just name it whatever is easiest for you to organize)
  • Put your mod's files into this folder.
  • Click on the button to open the .workshop.json file. Change the settings to match your mod. All paths are relative. Again, follow the model of the other mods when in doubt.
  • Make sure visiblity is set to 0, which is Public. 1 is Friends Only, 2 is Private.
  • When everything is ready, click the submit button. If you get a "SUBMITTED!" reply, check the workshop and verify the mod shows up in the list of mods you've made.

In the process of writing this guide, I had a number of issues with uploading due to the preview images I was trying to use. If pressing "Submit" causes the Tool to sit there saying "Uploading" forever, or if your workshop shows only an "empty shell" after you hit "Submit", change the preview image and try submitting again. It's also worth checking your mod's file folders and .workshop.json to make sure that all the names line up. In your .workshop.json, the "preview image" section should include the file extension.

Thank you so much for reading my guide! I really hope it helps you create some cool stuff!
Since I'm going to be shamelessly downloading all of your delicious content, and because I subjected you to all that reading, the least I can do is provide you guys with Workshop links to everything I've made before and during the creation of this guide!

< >
BlackArmorTails May 9 @ 5:22pm 
This guide helped me big time in making skin packs for this game. However, I am figuring out how to update any skin packs or mods I already have created. This is because I am trying to fix some tags for a skin pack I made, and I don't want to have to re-upload anything. Help and suggestions on changing or updating tags would be appreciated.
RocketPowered Apr 15 @ 4:12am 
Does anyone know how to add custom stats to aeros? I have an idea in mind.
Also, what's the name for the Rogue Mk.II if I want to assign its stats to a custom aero?
WhiteCrow Dec 5, 2017 @ 1:54am 
Very well written guide. Thanks for taking the time.
BOT Mike Oct 4, 2016 @ 2:35pm 
Welp, time to make a TARDIS.
Netrolf Jun 27, 2016 @ 10:27am 
Hey guys, I'm back making aeros again. In fact I have two almost ready to be upload but I have an issue on both of them. :crafting:

- My first aeros has an afterburner issue, the flames are drawn backward. They start where they should end and grow until they reach what should be their initial position. I checked my 3D model to be sure, even reset Xform and all to be sure but I can't manage to figure what's wrong.

- My other aero is ready but i'd like to know where I can find the settings of the cockpit view in the json and also if there is a "twin gun" position somewhere.

Thank you guys ! :happymeat:
BenKenobix Feb 22, 2016 @ 10:28am 
ok my bad, i put the texture name in the decal section of the .json ... I removed it and it works ^^
BenKenobix Feb 21, 2016 @ 10:51am 
Hi guys, i'm just trying to model my first plane for the game, i followed the differents steps (except that i'm using Blender and not Wings3D) and I have some issus with the uv mapping.
In Blender, my object is correctly mapped, but in Sky Rogue, the texture is ... pretty bad.
Here's a picture in Blender :
and here's another in the sky rogue mod previewer (same that in game) :
However, when i import the .obj in Blender, everything is ok with the texture...
Any ideas ?
dood Dec 13, 2015 @ 4:08pm 
Angry Ed Dec 12, 2015 @ 10:34pm 
Also, any idea why in the "in mission" aero select screen my modded plane shows up as incredibly tiny while most of the rest show up at normal size (apparently a few of the default aeros show up smaller too, but not this small).
Angry Ed Dec 8, 2015 @ 12:43pm 
Hey, got another issue with my newest mod. I followed all the directions for doing decals but even though they seem to show up fine in Wings 3D:

They show up lacking all color information and backwards in the game itself:

I know it's not the best example but this happens with my other decals I'm trying to add too, and they're not showing up inverted and colorless on other aeros so I'm imagining it's something I did wrong with exporting. Normals seem to be pointing the right way and I moved them far enough so they're not Z-fighting with the plane's geometry, so I'm stumped. Anyone have any ideas?