Commit Graph

21 Commits

Author SHA1 Message Date
Kae
951fe787c4 Networking changes (needs P2P testing, requires clients to update unfortunately) 2024-07-27 14:09:12 +10:00
Kae
f46d796253 Propagate client admin status to WorldServers 2024-07-20 05:35:06 +10:00
Kae
bb5387fbdb fix seemingly extremely rare race condition leading to exception when joining a singleplayer internal server
happened when the client thread called universeServer->setPause (which locks m_clientsLock) between the client id being added to m_clients and the connection being added to m_connectionServer
2024-06-28 17:09:13 +10:00
Kae
e1b1b2fd59 Ensure the chunk & system that the player's ship is always in their local chunk cache
#74
2024-06-24 14:08:04 +10:00
Kae
662f12da96 improvements to universe.sendPacket and world.sendPacket
adds necessary clientsMutex lock, and returns false if sending failed
2024-04-02 13:39:34 +11:00
ErodeesFleurs
be571b5cd0 add world.sendPacket and fixed deadlock 2024-04-02 09:34:06 +08:00
Kae
d76d217901 Update StarUniverseServer.cpp 2024-03-27 17:09:20 +11:00
Kae
d53c3ae0e7 Store the ship's species as a world property
prevents smorgasbord when upgrading the ship after the player changes the species of the character that owns the ship
2024-03-27 17:06:51 +11:00
Kae
888cde79ef feat: middle click objects in the inventory to open their interface
makes carrying around shop objects easier

might need to restrict the allowed interaction types more, as some may break due to the source entity being the player
2024-03-27 16:00:13 +11:00
ErodeesFleurs
b856377833 add sendPacket lua context 2024-03-19 12:46:50 +08:00
Kae
5ca42599ef make timescale a server command and add a tickrate command 2024-03-19 13:35:55 +11:00
Kae
662b83ff92 Initial commit of experimental zstd network compression
currently a bit buggy
2024-03-14 21:41:53 +11:00
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
Kae
0ef8807539 Changes to support modifying networking while maintaining legacy support 2023-07-31 20:22:09 +10:00
Kae
ddab1db73f Server: Log TCP error and carry on
Fixes the Singleplayer server thread locking up forever and leaving us in an eternal loading screen if the TCP socket fails to bind. Something on my PC is hogging the default server port, which is what made me encounter this.
2023-07-26 18:47:23 +10:00
Kae
af31bde032 Handle world creation error when sending world messages, add active world callbacks 2023-07-24 18:42:55 +10:00
Kae
d93b026829 Add WorldServer script contexts 2023-07-23 13:11:22 +10:00
Kae
5fa97741e5 experimental universe.sendWorldMessage function 2023-07-23 01:01:23 +10:00
Kae
332983c97b The Formatting String Catastrophe 2023-06-27 20:23:44 +10:00
Kae
d6fdd96076 Fixes and stuff
Using proper SDL Audio APIs now
Fixed borderless
Create game window before asset load
Bump up root loading worker thread count to 8
Fix not hearing other player songs on load-in
Fix issues with shipworlds missing ship.level property
Fix rare thread race with received chat packets on the server-side
2023-06-21 15:25:10 +10:00
Kae
6352e8e319 everything everywhere
all at once
2023-06-20 14:33:09 +10:00