Patch 0.13.0
The multithreading patch is now available on the Beta branch! Please report bugs you find so we can fix them before pushing it on to the main branch.
Game
- Added a planetary trading post that sells goods from a nearby planet
- Added an event where a freighter is chased by pirates
- The cultists in asteroid ring sectors now behave the way they're supposed to
- Improved aiming of salvaging turrets
- Fighters search for mothership only every ~5 seconds when it's gone
- Disabled player events while in sector (0:0)
Multithreading
We improved the multithreading handling of the server and client. For those of you who don't know what this means:
In short: The server and client will both run a lot smoother on machines with more CPU cores. Performance for machines with 2 or less cores should be unchanged.If you're interested in the details, I've published a more technical post about the multithreading rework here: http://steamcommunity.com/games/445220/announcements/detail/1434814734654746607But basically, the server is now capable of using all its cores on calculating large battles so that performance should go up by a lot.
- Pirates, Xsotan and other enemies are generated asynchronously, reducing server lag when ships spawn
- Server sector updates are now completely multithreaded
- Client particle updates are now completely multithreaded
- We're planning on doing client sector updates in parallel as well, but we need a little more time for this.
RCON Interface
- Added an RCON interface to the server (default port: TCP 27015)
- The RCON interface requires a password which can be configured in server.ini. Without password, RCON is disabled
- The RCON interface can be used to remotely control the server and enter commands as if over command line
- But you can use any RCON client you'd like
UI
- Improved window handling in build menu
- Added showing amount of goods on the current ship in trading overview
- Added icons to transfer crew & goods ui
Scripting API
- The amount of async script threads can be configured in the server.ini (default: 2)
- Changed setFont parameter from string to FontType enum
- Planet specs are now controlled from within sectorspecifics.lua
- Added a toRandom() function to generate random Uuids
- Added a execute() function to execute code directly within scripts
- Warning Modders: This function should NOT be called with code that is sent from a client!
- Added an AsyncPirateGenerator
- Added an AsyncShipGenerator
- PlanGenerator can now generate plans asynchronously
- Renamed piratehunter.lua to pirateattackstarter.lua
- Renamed events.lua to eventscheduler.lua
- Plan damaging callbacks are now bundled and sent at the end of a frame
- Added a damage type that can be applied to inflictDamage() or destroyBlocks() functions
- Added callback functions to script API for ListBox
- Added a new InputWindow class
- Added a function to return indices of all present factions in a sector
Server
- Added a /workers command for controlling the amount of worker threads
- Sending performance stats to admins is now configurable in server.ini
Client
- Added debris on block destruction
- Improved rendering stability
Misc
- Minor improvements to spelling in loading screen tips
- Added better support for multiple localizations
- Language config files are now .xml and can include more information, such as new fonts
- Improved german translation
- Improved weapon accuracy of ships in sectors without players
- Copy-Pasting of text via Ctrl-V is now possible on Linux
- Frequent updates are now gathered and sent at the end of a frame to save bandwidth
- Improved performance of plan damaging
- Status command prints amount of worker threads into filename
- Improved script updates to avoid updates at the same time for less performance outliers
- Improved logging
Bugfixes
"As usual, user bug reports are marked with [UBR]. Thanks everybody, keep it up!"
- Fixed Fighters not being updated when a player is out of sector
- Fixed wormhole guardian not aggroing alliances
- [UBR] Fixed broken database conversion when fighters are on a ship
- [UBR] Fixed TurretAI not switching targets when target gets out of range
- [UBR] Fixed a crash when shutting down server with lots of players in the same group
- [UBR] Fixed alliance ships being unable to be controlled in strategy mode
- [UBR] Fixed AI health bar not working correctly
- [UBR] Fixed a crash when trying to invite non-existant players to an alliance
- [UBR] Trading overview sorts correctly in all languages, not just english
- [UBR] Fixed huge "Small Xsotan Breeders"
- [UBR] Fixed some wreckages not having resources displayed and not being recognized by salvaging AI ships
- [UBR] Fixed AllianceRank not being registered in the scripting API
- [UBR] Fixed setting and getting script values from alliances
- [UBR] Fixed some components always being added, even when they've been removed from the descriptor
- [UBR] Fixed lasers and glows not showing up in asteroid rings when activating the Xsotan portal
- [UBR] Fixed mouse position being reset after loading screen
- [UBR] Fixed an issue when multiple mines with the same name are founded
- [UBR] Fixed alliance ships being deleted when entering (0, 0)
- [UBR] Fixed wreckages not being where they're supposed to be
- [UBR] Fixed ghost wreckages
