Go to file
Kai Blaschke 431a9c00a5
Fixed a huge amount of Clang warnings
On Linux and macOS, using Clang to compile OpenStarbound produces about 400 MB worth of warnings during the build, making the compiler output unreadable and slowing the build down considerably.

99% of the warnings were unqualified uses of std::move and std::forward, which are now all properly qualified.

Fixed a few other minor warnings about non-virtual destructors and some uses of std::move preventing copy elision on temporary objects.

Most remaining warnings are now unused parameters.
2024-02-19 16:55:19 +01:00
assets/opensb Fix up and add options menu slider 2024-01-03 20:08:57 +11:00
attic Font update 2023-08-04 20:58:09 +10:00
cmake everything everywhere 2023-06-20 14:33:09 +10:00
doc make the chat really pretty!! 2023-06-21 00:59:41 +10:00
lib Throw away 32-bit support 2023-07-01 08:39:38 +10:00
scripts switch build type on old build scripts 2024-02-18 18:20:01 +11:00
source Fixed a huge amount of Clang warnings 2024-02-19 16:55:19 +01:00
.gitattributes update gitattributes 2023-07-03 15:51:48 -07:00
.gitignore fix Opus options (the right way) 2023-11-26 23:01:02 +11:00
.gitmodules Add Opus library 2023-07-10 16:55:44 +10:00
README.md Update README.md 2024-02-05 07:43:04 +11:00

OpenStarbound

This is a fork of Starbound. Contributions are welcome! You must own a copy of Starbound to use it. Base game assets are not provided for obvious reasons.

It is work-in-progress, so up-to-date compiled builds for all platforms are not yet available. GitHub Actions will likely be set up to provide compiled builds in the future.

However, a manually compiled client build (Nov 30th, 2023) is available here. Please note that this is a development build. It is not considered stable and should not be used in normal play. Extract it to a new win_opensb folder in your Starbound installation, adjacent to the win32 & win64 folders.

If you do decide to compile it anyways, you must also make sure it loads the game assets in /assets/opensb/.

Changes:

  • You can now make .patch files that are just merged in. That's why the patch files in here are unusually simple.

  • Some Lua functions like getters and setters for player identity values, but not every function from StarExtensions has been ported yet.

  • Character swapping (rewrite from StarExtensions, currently command-only: /swap name case-insensitive, only substring required)

  • Custom user input support with a keybindings menu (rewrite from StarExtensions)

  • Positional Voice Chat that works on completely vanilla servers, uses Opus for crisp, HD audio (rewrite from StarExtensions)

    • Both menus are made available in the options menu in this fork rather than as a chat command.
  • Multiple font support (switch fonts inline with ^font=name;, .ttf assets are auto-detected)

  • World lightmap generation has been moved off the main thread

  • Experimental changes to the storage of directives in memory to greatly reduce their impact on frametimes

    • Works well when extremely long directives are used for "vanilla multiplayer-compatible" creations, like generated clothing.
  • Client-side tile placement prediction (rewrite from StarExtensions)

    • You can also resize the placement area of tiles on the fly.
  • Support for placing foreground tiles with a custom collision type (rewrite from StarExtensions, requires OpenSB server)

    • Additionally, objects can be placed under non-solid foreground tiles.
  • Some minor polish to UI

Discord