Starbound

Starbound

35 ratings
The ultimate guide on creating microdungeons! [PART 1]
By Fabmat
This guide teaches you how to create your own microdungeons for Starbound. It is a in depth easy to understand step-by-step Guide and gives you links to every program you need.
   
Award
Favorite
Favorited
Unfavorite
Before you Start
!!!ATTENTION!!! As of Tiled Version v1.2.2 This Guide will NOT Work! Please Install Tiled Version v1.1 to continue using this Guide!



What you need

Only Tiled is necessary, but the others are extremely helpful and strongly recommended.
Step 1: Assets
Unpacking your Assets

For the People using Windows and Linux this step is going to be much easier than for Mac users.
Windows and Linux
Download the ModPackHelper linked above if you haven't already.
(If you don't want or can't use it, use the tutorial here[starbounder.org])
Then, open the .zip file.
You will see these files.
Now, move them to ../Starbound/mods
If you are using Windows, open the .bat file.
If you are using Linux, open the .sh file
This Window will open. ->
Now just press 0 and confirm with enter.
This might take some time.
When finished, the files will be extracted to ../Starbound/assets/_unpacked.

Mac
Just use the Tutorial found here[starbounder.org]
Step 2: The Important folders.
Getting an overview
If you look into the unpacked folders, you might be confused as to what all of them contain and which one you have to use to make microdungeons.
First, open the dungeons folder.
Now, you can see all the dungeons, which can spawn in randomly in the game.
They are broken up in different categories, mainly:
  • Races
  • Space
  • Microdungeons/Encounterdungeons
  • Other
In the folders named after the races their big dungeons are located, for exaple cities.
In the space folder you will find everything that can spawn in in space since the 1.3 Update.
In the microdungeons/encounterdungeons folders you will find the dungeons, which i want to focus on for this Tutorial.
In the other folder you will find a lot of microdungeons for minibiomes and some scripted encounters.
Now, open the microdungeons folder
The microdungeons
The categories for microdungeons are the following:
  • Biomes
  • Underground
  • Terrainfeatures
The biomes folder is containing all planet specific dungeons overground.
The underground folder is containing all planet specific dungeons underground.
The terrainfeatures folder is mostly uninteresting. Its purpose is it to give the planets some cool bumps and craters.
Now, open the biomes folder
Step 3: Getting started with Tiled
Starting up
Deciding on what to do
The contents of the biomes folder are self-explanatory.
They list all biome specific dungeons.
For this Tutorial, i have choosen to show my small vine cellar as an example, but, of course, you can choose anything here.
So, lets open up the garden folder, which is the main biome for lush starter planets.
Creating a template
Now you can see all dungeons that can spawn on lush planets.
Lets create a Template now, to make this process easier in the Future.
Open up the graveyard.json using Tiled.
Now, you will end up with something like this:





But what does everything mean?
Dont worry, ill explain everything.
Lets start in the top left hand corner.
There you will find these buttons:


Their contents are self-explanatory.
Right below them, one can see buttons not quite as self-explanatory.
These are the first three:



What they mean (left to right):
  • New file
  • Open file
  • Save file

Directly right from them there are the undo and redo buttons.



You wont need the next two buttons for map making, ignore them.


The next buttons are crucial for editing the front and back layers, which contain the blocks of your microdungeons.


  • Stamp Brush | The most important tool, used for placing blocks.
  • Terrain brush | Irrelevant for Starbound modding.
  • Bucket Fill Tool | Self-explanatory
  • Eraser Tool | Self-explanatory
  • Rectangular Select | Used for limiting the Area in which you can edit blocks.
  • Magic Wand | Used to select coherent blocks.
  • Select same tile | Marks all blocks of the same type.

The last buttons are used to edit the Object and other non-block Layers.


  • Select Objects | Cant be used to place Objects!!!! Selects existing objects.
  • Edit Polygons | Used for editing existing polygons
  • Insert Rectangle | Creates Rectangles, which can be given parameters.
  • Insert Ellipse | Irrelevant for Starbound modding.
  • Insert Polygon | Irrelevant for Starbound modding.
  • Insert Polylines | Used to draw lines, necessary for wiring.
  • Insert Tile | Used to Place Objects
  • Insert Text | Irrelevant for Starbound modding.

Now, lets move on to the Right.
There, you can see this window:









These are the layers of objects.
There are Object
and Block layers

They are Edited with seperate Tools, as mentioned above.
What they mean:

  • Items | layer for dropped Items
  • Ancors etc. | layer for Objects important to make your Dungeons spawn in correctly.
  • Outside the map | Self-Explanatory
  • Wiring-Locked Doors | Self-Explanatory
  • Monsters & NPCs | Self-Explanatory
  • Wiring-Lights and guns | Self-Explanatory
  • Objects | Layer for Furnishings and other objects.
  • Mods | NOT for modded blocks, layer for modifying block properties. (making them snowy etc.)
  • Front | Layer for foreground blocks
  • Back | Layer for background blocks

Now, finally going down from there, you can see this window:

It contains all blocks and Objects found in Starbound, categorized in different Tabs.
The ones that need explaining are the liquids Tab and the miscellaneous Tab.
The liquids Tab

You might ask "Well, whats so special about this tab, looks just like liquids to me?"
Well, i am glad to answer that!
You see, the liquids which do not fill the whole tile and have a brown edge, are endless liquid sources, as seen at the core of planets with the endless lava or on ocean Planets.
Thats it for this Tab.
Now for the misc. Tab.

This looks weird, doesn't it?
I will go through them, one by one.
  • The first tile is just air. Nothing to see here.
  • The pink tile will just be filled out with anything the generator would have put there anyways.
  • The third tile is an invisible wall, players cannot trespass.
  • The red tile, which has Ps written on it is a player spawn marker. It only comes to use, when you create a dungeon where the player gets teleported to, like the big story dungeons, like the holy Floran hunting grounds.
  • The white tile, with Air written on it, requires the generator to have Air placed in the front layer there, before the dungeon is placed.
  • The Black So thile requires the generator to have a solid object placed in the front layer there, before the dungeon is placed.
  • The brown BI tile is placed in the object layer. It places a biome specific item, like a bush for garden biomes or a larvae egg for hive biomes.
  • The green BT tile is placed in the object layer. It places a biome specific tree.
  • The Sv Tiles are placing biome specific blocks, for example, on lush Planets the first tile places Dirt, the second tile cobblestone and the third mud.
  • The 12th Tile is also an Air tile but it can be overwritten by the generator.
  • The C tiles are important for big dungeons, they connect them properly.
  • The grey tile, with Air written on it, requires the generator to have Air placed in the back layer there, before the dungeon is placed.
  • The grey So thile requires the generator to have a solid object placed in the back layer there, before the dungeon is placed.
  • The White X tile is an invisible wall.
  • The Blue X Tile is an invisible wall, but Water can flow through it.
  • The G tiles are only relevant to Space dungeons.
Step 4: Creating A Template
Lets take care of this first:
For Tiled to operate correctly, you first need to add all Starbound tilesets so that Tiled can display all graphics correctly.
Click the map button-> Add external Tileset.
Now, navigate to ..Starboundassetspackedtilesetspacked


Mark all five json files there and open them.
Then, go to Objects by Category and add all files there.
Now everything should be correct.
The next step is bulldozing everything. Litterally.


Click on the Object layer










Make sure to select this tool.



Now, highlight every object, exept for the tiles which have "Air" or "So" written on them.










BULLDOZE!!! I mean.. press delete.
Now, fill the ground with the brown Sv tiles.
Make sure to be in the front layer !!!
Go into the back layer and erase everything above the ground.
It should look like this:


If you have completed this step, great! You now have a universal template!
Save it as Template.json





IMPORTANT: THE FILE WILL ONLY OPEN WHEN SAVED IN THE SAME FOLDER AS THE FILE YOU STARTED FROM!!!
Step 5: Creating the dungeon & making it spawn in the Game.
Placing Blocks
To place blocks, just choose the layer in which you want your block to be. Then, select the materials Tab in the tilesets window.

Click on the block you want to place, and make sure to have the Stamp tool selected.
Now just place it.
Placing Objects
To place Objects, select an Object out of one of the tilesets. Make sure to select the object layer and the Insert Tile tool

Now, place your Object.
If you want to Flip your Object, use the select Object tool.

Now, mark the Object you want to flip.

Right-click it and select "Object Properties"

This Window will open:

Now, tick the Horizontally box.

NEVER flip Objects vertically.
Adding Loot
Open up the Object properties of the storage Object.
Now Click on the small plus at the Bottom of the Window.

Name the property "parameters"

Now, write in the box right of it:
{"treasurePools":["basicTreasure"]}
It will contain Treasure now!
Adding NPCs or monsters.
Go to the NPCs and Monsters layer.
Now select the "Create Rectangle" Tool.

Create a 1x1 Rectangle.
Right-Click it.
Add parameters like you would do for an object.
For knowing what to write right next to the parameters property, open up another .json, in which your desired Monster or NPC spawns, select the red cube there and just copy the properties of it.

Making it spawn
For more detailed Tips and information on the creation of dungeons, please watch my Youtube video, it takes too long to write down.
Now, create whatever you want. I will go by the example of my small wine cellar.

When you are finished, save your creation.
Now, to make a mod out of it, first create a new folder in the ..Starboundmods directory.

You can name it however you want. Litterally.
Now, you need to recreate the folder structure, like the one in which you have created your microdungeon.
That means, if you created your microdungeon in ..Starboundassets_unpackeddungeonsmicrodungeonsbiomesgarden, then you have to create the same structure in the mods folder. The structure should look like this in the end:
..Starboundmodsmyreallycoolnewmodyaydungeonsmicrodungeonsbiomesgarden
If you are done with that, copy your .json file into that folder.
!!!From this point on you cant edit it anymore!!!
Now, we only need to create one more file, then your mod is ready!
In the same folder as your json, create a new text document.

First, you need to rename it.
For you to know what to rename it to, take a look into your original folder, in this case the garden folder.
You will find a file with a .dungeon ending.

Copy its name and make it the name of your txt file.
Now, add a .patch at the end.
In my case, i now have a blank gardenmicrodungeons.dungeon.patch file.
Open the file with Notepad++ now.
Now, paste the following bit of code in there and replace "Yourdungeonname" with the name of your microdungeon file.
[ { "op": "add", "path": "/metadata/anchor/-", "value": "Yourdungeonname" }, { "op": "add", "path": "/parts/-", "value": { "name" : "Yourdungeonname", "rules" : [ [] ] ], "def" : [] } } ]
For mods with more microdungeons, just copy the code in the {} outer brackets, dont forget to put a comma after the }, bracket though.
If you have completed this step, you are done!
...
Well, tecnically.
Theres stil some testing to do. and you need to upload it, too.
Step 6: Testing
Now that you got you mod, it is time for some testing!
Start up a Starbound server.
"But, i dont want to forward ports and isnt that unsafe and.."
No! nobody can join your server and you do not need to do anything to get it started!
Its only purpose is it to show you a log, so that you can identify possible bugs.
So, go to the Starbound folder, open the win32 folder and just start the starbound_server.exe

This window will open.

Now, if you didn't get any errors, open Starbound.
If you did get errors, check the FAQ or write a comment.
When Starbound is opened, click Join Game.
Then, Type in the information as shown.

Now you are in your game with your Mod!
Sadly, you will have to search for your Microdungeons for yourself, since there is no way of spawning them in.
If you want to upload your mod, search for them and take a reasonable amount of screenshots.
Step 7: Uploading
When you mod is finished, tested and you have some screenshots, It is time for uploading!

Uploading to Steam

Launch the mod uploader tool.

This Window will open.

Click on the "Select mod directory" button.
A windows explorer window will open.
Select the folder of your mod, located in ../Starbound/mods
Now you are able to fill out the form.
The boxes are Self-Explanatory.
Dont forget to upload a thumbnail for your mod.
It should be 500x500 pixels wide.
Otherwise it will look like my thumbnails and be distorted.
By uploading a thumbnail too large for the uploader window, you might destroy it a little bit, so that the "Upload to steam" button gets pushed out of the monitor.
This is easily fixed by making the window a fullscreen window though.
When uploaded, the mod will automatically be set to private at first, you need to set it to public first to make it appear on the workshop.
When everything is finished, you are done! Great job!

Uploading to the official forums

First, you need to pack your mod.
Just open the ModPackHelper.

Select option 1.
Now, select your mod folder
It will get packed into a .pak file.
Open the Website of the forum[community.playstarbound.com]
Then, you need to Log in or create an account.

Now, click on "Add Mod"

Fill out the form, upload the .pak file.
Dont forget to add screenshots.
Click Save and you are done! great job!
(Probably) [F]requently [A]sked [Q]uestion
Q: When I try to open a .json file with Tiled i only get an error, which reads "Tile used but no tileset specified." How do I fix this?

A: This means, that you moved the file out of its original folder. Tiled cant read any files which are moved out of their original folder, exept if you edit the file. It is much easier to just move the file back for editing thogh, which is why I recommend this solution.

Q: I get errors, when starting up my server and i can't join the game on my server. Wht is the problem?

A: It could be caused by these two reasons.
  1. You made a simple typo when writing your dungeon name in your .patch file. Look in your .patch file and search for typos.
  2. You placed a bracket or a comma where you shouldnt have placed one. You can easily find typos like this by looking in your server log. Scroll up until you find a line that reads: "[time] Caused by: (JsonParsingException) Error parsing json: unexpected character parsing word at [coordinate]:[Coordinate]". The important part here are the coordinates. The first one defines the line of the typo. The second one defines the letter in the line that contains an error. Just go to the line in your .patch file and correct your error.

Q: When I try to beam down to the surface of a Planet I just land on my ship again. Why?

A: In one of your dungeons, you placed an object, which is flipped even though it is not supposed to be flipped that way.

Q: I have a problem, which isn't listed here, what do I do?

A: Join my discord or send me a Twitter or Steam DM. I am glad to give you the Support you need. All links are listed below.
Links
Twitter
Youtube
Discord[discord.gg]
My Mods

If you like what i am doing enough, to be willing to support me, here is my Patreon[www.patreon.com].

Thanks for Reading my Guide! It took a long time to Complete and it wasn't easy, but i am happy with the outcome!
Check out my Mods, leave a Rating, follow me for more and leave a nice comment! :)

Have a nice day!
-Fabmat
15 Comments
FalloutDuck 13 Nov, 2020 @ 11:33pm 
What do you do if you want your dungeon to spawn on the moon?
Natod 8 Feb, 2019 @ 6:30pm 
i noticed a bug: when i create the "parameters" property in the chest and type the treasurePool data, SB does not load the dungeons. Is there anything i can do to fix this?
Natod 8 Feb, 2019 @ 6:10pm 
thanks, this was really helpful.
but there is a way of spawning microdungeons!
if you type, for example, /placedungeon desertmicrodungeons, it places a random desert biome microdungeon. you can use this if you have the name for the biome you put the new microdungeon in, and just type the placedungeon command.
Presumptuous Spacemans 29 Aug, 2017 @ 11:59am 
when is the other guide going to be done? ;-;
Fabmat  [author] 10 Aug, 2017 @ 6:12am 
[Edgy Name] np bro.
Madelyn 10 Aug, 2017 @ 4:36am 
Hello again! Nice to see that you followed up on creating a guide! Thanks so much, this is gonna be a huge help for me :D
blxxdpxrn 7 Aug, 2017 @ 4:46am 
Where is russian guide? :mrb_boris:
Presumptuous Spacemans 5 Aug, 2017 @ 2:08pm 
is there any way to change the rarity i have never found my dungeon yet...
Fabmat  [author] 4 Aug, 2017 @ 5:33pm 
@Pheonix if it gives you errors when starting up Starbound or beaming down it is, if not it isn't. Where does it tell u that the object isnt lined uü correctly though?
Fabmat  [author] 4 Aug, 2017 @ 5:31pm 
@Alpha (snakeanarchy) No that is not planned currently. The Future Part (s) was/were planned on bigger dungeons and dungeons ising modded blocks.