Sunday, May 13, 2018

[Starbound] How to Make your Own Race

So you've decided to make your own race, and you don't know where to start. This guide aims to details everything you need to know to get your race off the ground.

Programs You'll Need

Good news! Starbound modding only requires any basic graphics editor (that can create transparent pixels) and any text editor.


Free Graphic programs:

GIMP [www.gimp.org]
paint dot NET [www.getpaint.net]

Great Graphic editor if you are willing to spend $15

Aseprite [www.aseprite.org]

Free word editors designed for coding

Notepad++ [notepad-plus-plus.org]
Atom [atom.io]

Browser based editors

Piskel [www.piskelapp.com]
Editpad [www.editpad.org]

File compressing

PNGGauntlet [pnggauntlet.com] - Shrinks .png file sizes.
7Zip [www.7-zip.org] - To unpack and pack any file in general.
PAKit [pakit.cf] - To pak and unpak starbound mods. (Note, do not pak a mod if you are uploading it to steam, it will do it for you).

Making Gifs

ScreenToGif [www.screentogif.com]

The Template

I have currently created 2 templates for race making. One basic and one advanced.

Basic includes:
  1. S.A.I.L.
  2. Respawn Cinematic
  3. Teleport
  4. Codex
  5. Hair and Body parts
  6. Interface
  7. Outfits
  8. Basic Sword
  9. Ship and Ship assets
  10. Recipes
  11. Sfx Hurt sounds
  12. Shiplocker Treasure Pool

Advanced includes:
  1. All Tier armours - various races
  2. Race Spawner
  3. Custom ship pet - Fennix
  4. Penguin Merchant (craft at inventors table)
  5. A simple particle effect.
  6. Hat with the effect added to it. (purchase at merchant)
  7. Race Spawner (purchase at merchant)
  8. Blank banners (purchase at merchant)
  9. Basic furniture with your race's colony tag (purchase at merchant)
  10. +All what is in the basic version

Get them here:
Basic
Advanced

Character Extender

You can't see your custom race without one. I prefer to use Kawa's xbawks-mode character

Naming your race

For the purpose of this guide, I will stick to using the advanced template throughout. Once you have downloaded it from the website of your choice you will notice its in .7z format. This format compresses the file to a smaller size than standard .zip which is why I've chosen it. To extract this file you will need 7zip, its free, open source and can open many different compressed files.

After extraction, place the folder in your 'mods' folder, that is located in your 'Starbound' folder.

Open your race's folder and double click on the file called ADVANCED_RACE_TEMPLATE_EASY_SETUP.bat
The .bat file (short for batch) is Windows only, and will not work for Linux and Mac users. You will need to source a program that will allow you to change 'skadvtest' to your race name.

Picking a name

The .bat file will ask you to choose a name longer than 3 characters. Bare in mind this name is NOT visible to the public, its for the use of Starbound, so it MUST be unique. Avoid using names like Mouse or Robot, that might be something someone else may pick. Since this name is not seen, you could pick the name 'asjuajdh', for the 'proper' then in game the race shows up as being called the Teletubbies.
Do NOT use uppercase (capital letters), spaces, or any character either than the standard a-z english alphabet. Not adhereing to this standard may make your race not show up in character select.

For this example I will use the name 'myfirstrace'. After picking your name, press enter and wait for the .bat to finish.


Press any key or close the window.

Okay now let's really name the race

Where does my race name actually show?
Navigate to your species folder then myfirstrace.species *Note, when I use 'myfirstrace' in this guide you would go to the name you chose when you used the .bat. Also the text program featured in these
screenshots is Notepad++) .


As you can see, here we can choose what to put as a description, and where to name our race in character select.
Note: Write your name in uppercase as that is what the vanilla races use.

Sprite Guide

Where to start?

Skittles' Template Goodies
Download the .7z file on the first post. In it are .psd files AND .png files that should cover all of your race making and armour making needs.

Colour mapping

Starbound colour mapping

I have highlighted what each colour each code is. The first colour is what is on the sprite, and the second colour is what it will be changed to.

Most graphic programs are able to give you the hex code for the colour you wish to use, if not you can use HTML Color Codes

For this guide I will bring one of the rejected beta races to life.

rejected beta races starbound

That big eyed race looks fun!


Here is what the new head looks like after changing the colours to the same as the human's body pallette.


In game. How fun!

Now lets unpack some assets before we get too stuck into things.

Unpacking the Assets

It is important as examing the vanilla races will help you learn how to make your race in the way you wish. For example if you wish for your race to glow you can study the Novakid's species file to see how its done.

"statusEffects" : [ "novakidglow" ],
"humanoidOverrides" : {
"bodyFullbright" : true
},

More info abut this in this video

The Ship

Sprites for the ship are found in 3 places.

cinematics/story/smallship - This is the ship as it escapes earth in the beginning.
objects\protectorate\objects\protectorateship - The ship you see and the end of the Protectorate Tutorial level.
ships\myfirstrace - Where your Tier 1 to Tier 8 sprites are.

For each Tier, there are 3 images for it.

myfirstraceT3blocks
This dictates the physical space and spawned items of the ship. (I have enlarged it here for clarity).


myfirstraceT3
The sprite of the ship


myfirstraceT3lit
The same sprite, however what ever is opaque will be darker than what is transparent.


For each Tier there is a structure file. This is where your crew size is listed.

In your ships folder, there is a blockkey.config. Each segment has a "value", this represents a colour shown in the myfirstraceT3blocks image.

"value" : [0, 128, 0, 255],

It represents Red, Blue, Green, and opacity.

What should I have done before my first release?

There are some things you should have in your mod before your first release, as adding/changing them later can be a bit of a pill.

PNGGauntlet - A great program for compressing the file size of your .png files. I cannot stress how well this works, and I have had mods been halved in size.

The most important of all of these is the name that you chose in the .bat file. If you change that after your first release, then Starbound will see your update as a separate race to the previous version.

The ship. Changing this later can cause player's ships to muck up and become corrupted, unless its just a simple sprite change, and you aren't changing the physical structure of the ship.

Troubleshooting

Something is wrong! How do I fix it? First step is to check your log. You will find it in your Starbound folder, in 'storage'. There are 6 logs, the ones numbered 1-5 are older logs. The one we want is the non-numbered one on the top.



Open it up and do a word search for the word error, too easy!

Things to keep an eye peeled for

I can't see my race! - Do you have a character extender?

[Error] Application: exception thrown, shutting down: - That line is usually found at the bottom of the log, and it tends to be the culprit thats causing your game to crash.

[Error] Could not load recipe /recipes/anvil1/armor/tier1/myfancyclothing: (ItemException) No such item 'wovenfabric' - Oops, looks like your recipe lists an item that doesn't exist. Perhaps you meant 'fabric'.

[Error] Object myfancybed defined twice, second time from /objects/beds/myfancybed .object - Oops, two of your items have the same itemname. One must be changed.

[Error] Exception caught loading asset: /recipes/yummyfood/yumbikkie.recipe, (AssetException) Could not read JSON asset /recipes/yummyfood/yumbikkie.recipe
Caused by: (JsonParsingException) Error parsing json: bad array, should be ',' or ']' at 9:50 - This says in your recipe, at line 9, character 50 you have made a mistake and it should be a comma or bracket.

Check for those pesky commas

Go to objects\myfirstface\myfirstracemerchant\myfirstracemerchant.object
See the item list

"items" : [
{ "item" : ["bomb", 5] },
{ "item" : "myfirstracekittyhead" },
{ "item" : "myfirstracebannerlarge" },
{ "item" : "myfirstracebannersmall" },
{ "item" : "myfirstracewoodchair" },
{ "item" : "myfirstracewooddoor" },
{ "item" : "myfirstracewoodenbed" },
{ "item" : "myfirstracewoodendesk" },
{ "item" : "spawnermyfirstrace" }
]

See how the last item does NOT have a comma. This is important. If you add a comma there, your game will not start. If you remove a comma from one of the items above, your game will not start.

(to be expanded with common errors later)

Uploading to Steam

Double click on Starbound in your games list.

Choose 'Launch Mod Uploader Tool'.


Press Select Mod Directory and naviage to where your mod is, and select that folder.

Replace the information seen here with your own. Do not fret if what you have put in your description isn't perfect, because stage 2 is where we will refine the mod listing.


I will expand on this later, but for now go to your workshop and have a gander at your file before release.

Screenshots

You will want to take screenshots using .png as the jpeg artifacts really show up on pixel art.


Yuck!

In steam, go to 'Settings', then 'In-Game', then tick '[When a screenshot is taken] Save an uncompressed copy'. You will be prompted to choose a folder for screenshots (it will be different to where the others are kept). In this new folder .png versions will be saved.


Ahh much better!

"But Skittles, how can I insert pictures into my descriptions?" I hear you ask.

Lets grab some mods

Greenscreen Blocks Can make your life a little easier. Read the mod desc on information on how to use them.

Extra Zoom Levels So we can zoom all the way out to 1x.

While in Starbound, in the chat type
/admin (press enter)
/fullbright (press enter)
/spawnitem greenscreenblock 600 (press enter)

Build your green platform and take a screenshot (I prefer to use at x1 and resize later).



Open it up in your graphics editor and select the green colour and remove it.


Bamn!

Upload your image to your mod.

Click on the image in your showcase, then click on the bigger image to bring up the original file, then right click and do 'Copy image address'.


In the description of your mod paste the image link between [img][/img]

It will look similar to:
[img]https://steamuserimages-a.akamaihd.net/ugc/859487850037696280/SS95489682559B6538AD6772C9F41F440941A90B/[/img]

If you have copied the right link, it should show up as a nice little embeded image.

For examples check out
The Advanced Template

How about a gif?
ScreenToGif

Conclusion

The info above is more than enough to get you started, you will get better and discover other tricks if you practice.

Guide by Skittles

Share:

0 comments:

Post a Comment