Commit Graph

339 Commits

Author SHA1 Message Date
WasabiRaptor
84fe2dfd4c Perfectly Generic Item improvements
spawnitem won't create generic items unless you intend to

generic items will retain the data for what item they were if a mod is uninstalled, and will attempt to restore themselves if re-installed
2024-03-08 18:14:40 -05:00
Kae
6c562470f3 Merge launcher branch 2024-03-08 20:09:27 +11:00
WasabiRaptor
f8a6a3e57d inventory and hotbar size mismatch fixes
I realized why that was there

checking patch arrays in a more clean manner

also support for checking values in other files using a string in the patch arrays

Revert "checking patch arrays in a more clean manner"

sorry that wasn't supposed to be in this one
2024-03-07 19:18:28 -05:00
Niffe
4b4013e5c8 Dynamic sun image
Also adds access to sun scale, ray color, and fixes sun rendering in front of satellites
2024-03-01 18:28:13 +02:00
Kai Blaschke
cd23817bf1
Fixed remaining compiler warnings
Some warnings (e.g. in Opus and the tests) can't be fixed, only suppressed.
2024-02-28 18:30:27 +01:00
Kai Blaschke
28d486446c
Potential bugfix in quest coordinate matcher 2024-02-28 18:30:23 +01:00
Kae
a1addf1ec2
Merge pull request #22 from kblaschke/use-pragma-once
Use "#pragma once" instead of include guards
2024-02-26 13:57:22 +11:00
Kai Blaschke
3073a88cd1
Use "#pragma once" instead of include guards 2024-02-25 15:46:47 +01:00
Kae
ae3ecabcea loadstring shouldn't accept bytecode 2024-02-22 17:25:46 +11:00
Kae
aa987a2177
Merge branch 'main' into small-fixes 2024-02-20 09:49:42 +11:00
Kai Blaschke
d0099a6d79
Fixed some uninitialized members
May have caused undefined behavior in few cases, as most of the fixed members were used before being initialized.
2024-02-19 23:44:59 +01:00
Kai Blaschke
7c4fbad2ba
Removed some redundant std::move usages in return statements. 2024-02-19 18:39:01 +01: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
yzh
1d23b7c1be
maybe fix the /run cmd 2024-02-14 22:39:35 +08:00
yzh
4e331c5404
fix memory leak 2024-02-13 14:49:00 +08:00
Kae
ddc64fb14c Fix up and add options menu slider 2024-01-03 20:08:57 +11:00
Bottinator22
91cf2d8251 Add fork changes (move instruments to their own audio group) 2024-01-02 23:08:51 -08:00
Kae
588065cfc3 Update StarRootLuaBindings.cpp 2023-11-30 21:48:43 +11:00
Kae
2a56c3f9e3 Fix constant tile entity space updates 2023-11-30 21:48:31 +11:00
Kae
2ffd83c283 Restore missing configuration keys from default 2023-11-29 13:37:08 +11:00
Kae
24c2820ce1 Update StarPlayerStorage.cpp 2023-11-27 10:13:21 +11:00
Kae
8181cff72e Hopefully fix the rare lightmap flicker 2023-11-25 23:36:36 +11:00
Kae
f3c7bd1d5e Directives fixes 2023-11-25 23:03:46 +11:00
Kae
9c7d35ee26 A TYPO!!!!! 2023-11-25 22:23:10 +11:00
Kae
1db9091f50 non-zero default for script.updateDt for cases when it's called outside update() 2023-11-24 20:44:43 +11:00
Kae
994b0fe3cf Fix TestUniverse 2023-11-24 20:35:45 +11:00
Kae
de53f8c7d7 fallback to hex string when a player UUID has no corresponding filename 2023-11-24 20:35:21 +11:00
Kae
74985240fc simplify necessary sbinit fields on Windows 2023-11-03 08:07:29 +11:00
Kae
5815a873a7 Add more root.asset* functions 2023-11-03 06:51:17 +11:00
Kae
1f5b954eb2 Fix (vanilla): Item disappearing from action bar after stacking identical item into it 2023-11-02 16:31:35 +11:00
Kae
f5c63fa189 Update StarInput.cpp 2023-11-02 11:13:12 +11:00
Kae
bea100bde9 Setting a configuration value to nil should actually erase it
also configurationVersion set is already checked in Configuration
2023-11-02 08:23:36 +11:00
Kae
0497048b44 Add input.mousePosition 2023-11-02 08:12:21 +11:00
Kae
2cf97d763c add root configuration getters & setters 2023-11-02 08:09:51 +11:00
Zithia Satazaki
213ce4bc0f quick pickupToActionBar manipulation 2023-11-01 15:10:34 -04:00
Kae
508e8f4304 Use invis material to fix constant re-placement of falling blocks 2023-10-31 08:32:20 +11:00
Kae
ae014e5b6f Revert bag slot index type to uint8_t for now
was causing incompatibility on vanilla servers - need to add net element filters for legacy/modified servers first
2023-10-31 08:13:12 +11:00
Kae
7d948f8839 Don't tile predict falling blocks for now
causes too many mispredictions due to not simulating falling blocks locally (and it might still be an issue even if we did simulate it due to slight timing differences between client/server)
2023-10-31 08:10:05 +11:00
Zithia Satazaki
332fb8430b avoid returnless fallthrough 2023-10-30 15:11:15 -04:00
Zithia Satazaki
86f02eab9b these need to be {} wrapped to compile for some reason 2023-10-30 15:05:42 -04:00
Kae
a0272c2189 WebHook test againnn 2023-10-31 06:02:25 +11:00
Kae
ad8c17e338 Merge branch 'main' of https://github.com/OpenStarbound/OpenStarbound 2023-10-31 06:00:11 +11:00
Kae
c8539fba95 WebHook test 2023-10-31 05:59:52 +11:00
Zithia Satazaki
8aeed2baa8 match prior case convention for swap and trash slots 2023-10-30 14:48:45 -04:00
Kae
7eb1cd8dd9 Simplify new player inventory functions 2023-10-31 05:34:26 +11:00
Zithia Satazaki
012572c199 more graceful failure mode for item bag functions 2023-10-30 01:30:25 -04:00
Zithia Satazaki
943729a20e player functions for direct item bag manipulation 2023-10-30 01:05:18 -04:00
Zithia Satazaki
fa6a770cfc add player.actionBarItem and player.setActionBarItem (still needs a bit of work) 2023-10-29 23:15:26 -04:00
Zithia Satazaki
7c29196eff fix player.description being player[" description"] instead 2023-10-29 20:50:38 -04:00
Kae
d425e8e15f Add world.isClient & isServer 2023-10-30 08:03:16 +11:00
Kae
3b0a3efc19 Alias short bind, key, mouse input functions 2023-10-30 06:56:23 +11:00
Kae
09e525fcf3 Fix script.updateDt in tech 2023-10-30 06:52:59 +11:00
Kae
fe2a8038d5 mouseWheel in input.events() matches SE now 2023-10-30 06:18:40 +11:00
Kae
48b8d43ff8 Add player Lua functions from SE 2023-10-25 15:30:31 +11:00
Kae
f5ce3fe7b3 Fix deployment light sources 2023-10-13 08:54:37 +11:00
Kae
991cf9df7e Add vertical speed support to parallax layers 2023-10-12 04:42:24 +11:00
Kae
be27a96505 Tweak tool suppression logic for vehicles 2023-10-10 19:38:29 +11:00
Kae
7c68b8f4af Make the profanity filter not as insanely strict as Warframe's
The profanity filter sucks. Male glitch have a possibility of generating with "Brass" at the start that is never allowed because "ASS"!! and human names Cassie and Cassidy also never pass because of this.
2023-09-05 17:47:11 +10:00
Kae
6f7f3800d3 Don't forget to dirty collision on tile modification failure 2023-08-31 01:12:17 +10:00
Kae
ca21b29f92 Small cleanup 2023-08-21 21:22:25 +10:00
Kae
ce6cadd2a0 Store material item settings in player secret properties instead of parameters 2023-08-21 21:18:27 +10:00
Kae
bd4b1ed45c Update StarMaterialItem.cpp 2023-08-21 21:10:43 +10:00
Kae
a7ae034278 Objects can now be placed under tiles that have non-block collision 2023-08-21 00:59:02 +10:00
Kae
33b7f17bb2 Material Item: Allow entity overlap on non-solid collision kinds 2023-08-20 20:52:56 +10:00
Kae
ecadfa7e44 Bump up prediction expiry time
Also added a new font
2023-08-20 20:48:18 +10:00
Kae
2fe62a178e Fix object color suffix not applying if it's the only directive 2023-08-20 19:25:52 +10:00
Kae
78945304b7 Update StarItemDrop.cpp 2023-08-20 19:07:30 +10:00
Kae
d0aa7c1279 Update StarItemDrop.cpp 2023-08-20 19:05:24 +10:00
Kae
6e7c0498ef Hook tile meshing up to Material Item drop and preview 2023-08-20 18:56:50 +10:00
Kae
0bb0bd30b0 Slight fix to PGI creation 2023-08-20 17:43:09 +10:00
Kae
e5c6d005d7 Add binds to modify material radius 2023-08-20 13:57:27 +10:00
Kae
7a220cae45 player.aimPosition 2023-08-20 12:09:03 +10:00
Kae
bda94556bb Improve item drop beam 2023-08-20 12:08:58 +10:00
Kae
9af6bfe60e Add ItemDrop glow 2023-08-20 11:56:37 +10:00
Kae
3990b196a2 Fix LiquidItem preview (again!) 2023-08-20 10:42:17 +10:00
Kae
572b492b93 Fix collision not refreshing on expired predictions and slight placement issue 2023-08-19 22:49:05 +10:00
Kae
3805db7722 oops: Fix sub-step material placement 2023-08-19 21:35:56 +10:00
Kae
2fb2616384 More accurate liquid collection prediction 2023-08-19 21:08:44 +10:00
Kae
d2ec7f37c1 Predict MiningTool liquid collection 2023-08-19 20:57:55 +10:00
Kae
d65bc3cc8d Add collision cycling to Material items 2023-08-19 20:47:58 +10:00
Kae
ec4f70340e Allow overriding placed collision kind ("""overground""") from world.placeMaterial 2023-08-19 18:26:52 +10:00
Kae
f22eed8304 Add player table to tech scripts 2023-08-19 15:54:52 +10:00
Kae
b7cddf4f0e Item inventoryIcon supports other drawable kinds now 2023-08-19 15:44:16 +10:00
Kae
9665048a9e fix drop prediction only working on drops from blocks 2023-08-19 15:30:27 +10:00
Kae
0c74c70475 Predict placed tile collision 2023-08-19 12:55:32 +10:00
Kae
1af5e5cc89 Material Item equip sound 2023-08-19 12:34:35 +10:00
Kae
d53379f6c2 blah 2023-08-19 12:15:22 +10:00
Kae
156c243360 improve applyTileModifications to be more aggressive 2023-08-19 00:18:51 +10:00
Kae
7860262a3b Fix MaterialItem steps being in reverse
Also multiplied steps for reliability with diagonals
2023-08-18 23:28:31 +10:00
Kae
f6f91b18e8 Various improvements
You can now right click empty slots to insert one from swap.
Added unique sounds for the swap slot count incrementing/decrementing.
Material placement now plays sounds.
2023-08-18 23:14:53 +10:00
Kae
cd36a269fd Account for latency predicting item drop pickup 2023-08-18 21:48:09 +10:00
Kae
b51e174bdc Item drops inherit player velocity, other stuff 2023-08-18 20:03:06 +10:00
Kae
49147c8be5 Fix ItemDrop drawable rendering after added caching
also added poly logging for drops
2023-08-18 18:28:04 +10:00
Kae
0c2015118b Armor Item improvements (& other misc)
TODO: Make option to return to previewing with dummy
2023-08-18 18:06:00 +10:00
Kae
aa0ef06ac6 Predict item drop animation client-side 2023-08-18 16:54:47 +10:00
Kae
50ec1a0406 Animate taken ItemDrops client-side 2023-08-18 16:45:59 +10:00
Kae
c11d20894b Item Drop Improvements 2023-08-18 13:06:07 +10:00
Kae
90267c6105 message.setHandler now accepts a Json config in place of the name 2023-08-15 14:20:56 +10:00
Kae
af74a2f491 Rename global WorldTimestep var to more appropriate name 2023-08-15 13:38:40 +10:00
Kae
65bacddc67 Log missing scripts 2023-08-04 23:47:39 +10:00
Kae
1e9690b433 the unbridled whimsy within me: 2023-08-04 14:28:43 +10:00
Kae
722488a9ab Fix racial liquid descriptions not being used 2023-08-03 16:25:04 +10:00
Kae
37d4abd60f Update StarPlayerStorage.cpp 2023-08-02 23:05:30 +10:00
Kae
6abad768a6 Backups are now placed in their own directory 2023-08-02 22:56:36 +10:00
Kae
b2cabc7567 Game can now load players with non-uuid filenames 2023-08-02 22:25:20 +10:00
Kae
98949574a8 SwimIdle tech parent state 2023-08-02 22:02:21 +10:00
Kae
32e6eab069 Player: Make interaction radius scriptable 2023-08-02 21:59:07 +10:00
Kae
c80b2d2dbc Add loading icon when swapping character 2023-08-02 21:28:37 +10:00
Kae
856e93be3f Skip packet compression on Voice packets
cause 99% of the data is already compressed by Opus
2023-08-02 14:43:49 +10:00
Kae
4af22dd1fa Update StarNpc.cpp 2023-08-01 17:51:58 +10:00
Kae
b7aa185070 Update StarNpc.cpp 2023-08-01 17:05:43 +10:00
Kae
0ef8807539 Changes to support modifying networking while maintaining legacy support 2023-07-31 20:22:09 +10:00
Kae
2dc10fa5ad Tile Prediction improvements
each tile modification is now validated and then added to prediction one-by-one
2023-07-31 17:31:02 +10:00
Kae
72e33fdef5 fix last aim being held when unequipping MaterialItem while holding fire 2023-07-31 16:41:12 +10:00
Kae
830d4deb7b Tile placement improvements
Placing materials is now done in a line to fix gaps at low framerates
2023-07-31 16:00:19 +10:00
Kae
f575bad5e1 fix broken LiquidItem preview (LOL) 2023-07-31 15:00:17 +10:00
Kae
f4ff9dcc49 better debug logMapping for predicted tiles 2023-07-31 14:59:38 +10:00
Kae
610dc72c6d Tile Prediction 2023-07-31 02:40:06 +10:00
Kae
40a2fe57e0 Update StarNpc.cpp 2023-07-29 12:14:11 +10:00
Kae
224ad2c2c0 Reset script panes on character swap 2023-07-29 02:12:03 +10:00
Kae
35fc2679de Allow desired entity ID to be specified in addEntity 2023-07-29 00:52:56 +10:00
Kae
b17b935c10 Fix net identity not updating after swapping character 2023-07-29 00:51:44 +10:00
Kae
5c650d7809 Make client-side NPC collisionPoly override opt-in 2023-07-29 00:49:38 +10:00
Kae
f2afd91d0f Fix Teams not functioning as swapped character 2023-07-26 19:02:33 +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
c090b935ac Update StarNpc.cpp 2023-07-26 16:48:14 +10:00
Kae
aa220e7947 client-side NPCs 2023-07-26 16:45:01 +10:00
Kae
ea084165bf Optimize entityPortrait: Drawable > LuaTable instead of Drawable > Json > LuaTable 2023-07-25 00:49:20 +10:00
Kae
8547c56ba4 Proper LuaString <-> String handling
Null-terminator usage is opt-in
2023-07-24 23:37:55 +10:00
Kae
7b4ae73647 add sb.jsonParse
also rolled up some rand functions into ternary statements
2023-07-24 19:17:17 +10:00
Kae
5a6c27dd9a whoops 2023-07-24 18:43:50 +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
a2d901bd66 Fix ToolUser exception when swapping player
Also made /swap by name exclude the current player when searching
2023-07-24 17:54:31 +10:00
Kae
c6a1d9880f Add DanceDatabase fallback
fixes being crashed when another player uses a modded dance
2023-07-23 22:54:34 +10:00
Kae
0aee45a117 Cache certain item generation calls from interfaces
Helps a little with the lag from recipes when having crafting interfaces open, but it's still noticeable.
Also micro-optimized Root maintenance by unlocking the Root mutexes for their respective shared_ptrs earlier once we have our own shared_ptr.
2023-07-23 22:44:02 +10:00
Kae
121d27446b world.callScriptContext 2023-07-23 13:49:34 +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
cb19eef701 Add character swapping (no GUI yet) 2023-07-22 22:31:04 +10:00
Kae
30dd83aa02 Fix rare backwards compatibility issue with optimized directives in object "color" 2023-07-21 17:52:10 +10:00
Kae
643e8b15a1 Fixes for other compilers 2023-07-21 12:22:26 +10:00
Kae
4b0bc220e4 Support for changing the game's timescale
Context-specific (like per-world) timescales can also be added later
2023-07-21 00:58:49 +10:00
Kae
607be74945 Fix server hang while looking for starter world 2023-07-20 19:10:41 +10:00
Kae
d0307e7aa7 Add celestial callbacks to UniverseClient scripts 2023-07-20 17:53:57 +10:00
Kae
5f86e0f027 Hopefully fix server hang while finding a random starter world 2023-07-20 17:53:17 +10:00
Kae
b964668a38 Let players use tools in lounges 2023-07-20 15:27:28 +10:00
Kae
3aa45ab799 Add voice muting, add input key and mouse functions 2023-07-20 12:52:08 +10:00
Kae
3cdbf8bf01 Lua functions for updating Voice settings, improve loudness visualization 2023-07-19 18:15:49 +10:00
Kae
e1645f37fc Support for player entity message commands 2023-07-19 01:16:22 +10:00
Kae
34bb0b5422 Initial voice HUD indicator setup 2023-07-17 22:20:39 +10:00