Hey everyone! I hope December’s treating you well.

The unstable release of Starbound 1.2 is here! This means a stable release is nearly here, but not quite – we may still make changes or find all kinds of exciting bugs that need fixing ahead of the official release. But if you’re a Steam user and you just can’t wait, you can check out the update ahead of time by running “Starbound – Unstable” from your Steam library!

For 1.2, we wanted to focus on giving you more to do after you’ve finished all that saving the universe business. To that end, we’ve added endgame procedural dungeons and bosses, the ability to terraform planets, weapon upgrades, and elemental damage! Take a look at the patch notes below for details, and click through if you’re interested in bug/performance fixes and changes to the modding API.

If you’d rather wait for the stable release, sit tight! We won’t keep you waiting too long. :)

Major Changes

Ancient Vaults Players who have completed the main storyline can visit a mysterious trader on the Outpost who will send them on a quest to activate and enter the Ancient Gateways found floating in some systems These gateways provide access to Ancient Vaults : challenging procedural dungeons left by the ancients, filled with dangerous guardians (including procedural bosses !) and fantastic lost technologies

Terraforming Using powerful devices acquired from the Ancient Vaults along with a new Essence currency, you can now transform regions or whole planets into entirely different biomes Terraformers can be used to expand a region across a planet’s surface, replacing natural blocks, objects and plant life, and eventually changing the type of the planet itself Microformers are consumable single-use terraformers which provide even more region types to add to your worlds

Weapon Upgrades Use the ancient anvil available at the end of Ancient Vaults and spend Essence to upgrade your outdated legendary weapons, opening up many new options for endgame combat styles

Elemental Damage Monsters now have resistance and weakness to elemental damage types, making your choice of weapons more important than ever



Minor Changes / Bug Fixes

Holding the activation key while in a distortion sphere tech will force deactivation, to avoid being permanently stuck in small spaces

Contain tooltips within the game window when they’re near the edge

Fix a bug with monster kill sounds not playing correctly

Several bug fixes to monster/NPC behaviors and pathfinding

Various typo and asset fixes

Add appropriate “bushes” to the Rust biome

Update SDL2 to 2.0.5, should fix some fullscreen issues

Fix some security vulnerabilities in server packet handling

Performance Improvements

Improve generation time of older, image-based dungeons

Other minor improvements to dungeon and world generation

Use larger texture atlases on graphics cards that support them

Various optimizations to monster/NPC scripts

Modding API Changes

Behavior Tree system moved to engine for performance reasons, now accessible with the root.behavior lua binding. (Check lua documentation) Cleanup node removed Decorator node lua implementation changed Action node arguments moved around, now (args, output, nodeId, dt).

Generic currency support. Additional currencies can be added and consumed without requiring configuration To associate a currency with a currency item, to be used in crafting, it needs to be configured in /currencies.config .coinitem files changed to .currency

Object changes for terraforming support Objects can have a new boolean key, “biomePlaced” which if true will cause them to be placed and removed by terraforming. Objects can have a new boolean key, “rooting” which if true will mark all of their anchor spaces as roots and prevent those tiles from being broken until the object is broken (identical to how trees and vines work).

Player inventory can now be configured in player.config, allowing changes to: Number of bags Inventory size of each bag Number of action bars Action bar size NOTE: modifications to player inventory size need to be applied both server side and client side, and will invalidate existing characters

