Hello! Starbound 1.3 - Spacefarer Update is here!
With the Spacefarer Update, our goal was to give players more things to do in space! Starbound has always focused heavily on traveling from planet to planet, but objectively space is just much cooler than any planet.
Check out the trailer for an overview of what we've added this patch, or check the patch notes below for a more comprehensive list of changes/additions. This is one of the biggest Starbound updates to date and has been really exciting for us to work on. We hope you enjoy it!
Major Changes
Navigation Overhaul
The cockpit navigation interface has been completely overhauled. Planets, moons and ships are all visible and orbit each other in real time. Systems will now contain NPC stations, friendly and hostile NPC ships, and strange space anomalies to visit!
Customizable Mechs
Explore these new space locations in customizable spacefaring mechs! Traverse hostile space in zero gravity, fight powerful new space monsters, and collect unique rewards as you upgrade your mech to progress through more difficult hazards. Mechs can also be deployed to planets, to crush your enemies with overwhelming firepower!
Modular Space Stations
Make a permanent home among the stars with player-owned stations! Use a station transponder to place your station into orbit, then expand it with modular rooms to suit your needs.
Minor Changes / Bug Fixes
- Gameplay now pauses while menu is open (single player only)[/*]
- Non-piercing projectiles (e.g.) rockets now stop at the edge of the entity they hit, correcting knockback direction from explosions[/*]
- Adjusted player and other physics to behave better in zero gravity[/*]
- Remove gravity from asteroid fields[/*]
- Asteroid fields now ring their stars and can be entered at any position[/*]
- Add rail tram vehicles and tram stop objects[/*]
- When opening inventory, first tab will be selected by default[/*]
- Auto-sorting inventory will also stack items[/*]
- Add visual novel engine[/*]
- Fix threat level of player ships to always be 1 for colonist purposes[/*]
- Cheese is now considered produce and players will be paid to launch it into space[/*]
- Made several block types permeable to liquids[/*]
- Perfect armor set now slightly weaker than tier 6 crafted armors[/*]
- Fix several issues with NPC pathfinding[/*]
- Various performance improvements[/*]
- Engineer and Mechanic crew members now give flat bonuses to ship speed and fuel efficiency[/*]
- Ancient Vaults will no longer regenerate if the game is restarted while the vault is open[/*]
- Added unbanip and unbanuuid commands for servers[/*]
- Rail platforms and trams can now be broken using the matter manipulator[/*]
Modding API Changes
- Support script panes opening and closing with inventory (like containers)[/*]
- Item slots / grids in script panes now display tooltips for contained items[/*]
- Special keys are now passed separately to techs as special1, special2, and special3. If a player is lounging, they will be suppressed and instead passed to the active vehicle (if applicable)[/*]
- Support rectangular force regions with a linear force gradient[/*]
- Support setting gravity for specific dungeon IDs in dungeon files[/*]
- Rework canvas widget bindings. Canvas widgets can now be bound to a Lua object and controlled directly[/*]
- Support damage sources for vehicles[/*]
- ActiveItems will now include the player lua bindings when held by a player[/*]
- Techs now have access to the message table for entity message handling[/*]
- Add celestial lua bindings for script panes[/*]
- Behavior nodes must now be explicitly defined in .nodes files. This includes specifying node parameters and outputs, with associated types. (Supported types: json, entity, position, vec2, number, bool, list, table, string)[/*]
- Behavior trees (.behavior) now explicitly specify whether a parameter is a blackboard key or a raw value. This includes parameters passed into module (sub-tree) nodes.[/*]
- Behavior node Lua implementations no longer directly perform blackboard lookups (BData methods). Lookups are performed before running the function, and the raw values are directly available in the “args” argument.[/*]
- Behavior node Lua implementations no longer directly set blackboard values. Node output is set by returning or yielding a second value. This second value is a table of output key to output values.[/*]
Added Lua bindings:
- world.environmentStatusEffects[/*]
- world.materialHueShift[/*]
- world.modHueShift[/*]
- world.materialColor[/*]
- world.setMaterialColor[/*]
- world.entityTypeName[/*]
- world.setDungeonGravity[/*]
- world.setDungeonBreathable[/*]
- world.itemDropItem[/*]
- mcontroller.zeroG[/*]
- mcontroller.atWorldLimit[/*]
- physics.setCollisionEnabled[/*]
- player.blueprintKnown[/*]
- player.unequipTech[/*]
- player.swapSlotItem[/*]
- player.setSwapSlotItem[/*]
- player.loungingIn[/*]
- player.worldHasOrbitBookmark[/*]
- player.orbitBookmarks[/*]
- player.systemBookmarks[/*]
- player.addOrbitBookmark[/*]
- player.removeOrbitBookmark[/*]
- player.addTeleportBookmark[/*]
- player.isMapped[/*]
- player.mappedObjects[/*]
- root.materialConfig[/*]
- root.modConfig[/*]
- root.liquidConfig[/*]
- root.elementalResistance[/*]
- root.dungeonMetadata[/*]
- vehicle.setForceRegionEnabled[/*]
- vehicle.setDamageSourceEnabled[/*]
- pane.setTitle[/*]
- widget.active[/*]
- widget.hasFocus[/*]
- widget.registerMemberCallback[/*]
- widget.itemSlotItem[/*]
- widget.setItemSlotProgress[/*]
- widget.bindCanvas[/*]
- entity.persistent[/*]
Removed Lua bindings:
- activeItem.giveOwnerItem (now available via player)[/*]
- activeItem.ownerHasItem (now available via player)[/*]
- activeItem.takeOwnerItem (now available via player)[/*]
- player.addBookmark (use addTeleportBookmark / addOrbitBookmark instead)[/*]
- root.materialPath (use materialConfig instead)[/*]
- root.getConfiguration (removed for security)[/*]
- root.setConfiguration (removed for security)[/*]
- root.getConfigurationPath (removed for security)[/*]
- root.setConfigurationPath (removed for security)[/*]