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
Kae
848b11399f
Get SE-compatible voice transmission working
2023-07-16 23:04:09 +10:00
Kae
da098c7b48
Support receiving SE voice data, resample per-speaker again because of positional delay
2023-07-16 20:44:15 +10:00
Kae
4e44a4ed75
Get transmission working
2023-07-15 14:01:44 +10:00
Kae
28f4204b09
more Voice work
2023-07-13 19:12:55 +10:00
Kae
c3bf7a3c87
Add vanilla-compatible raw broadcasts
2023-07-13 17:58:35 +10:00
Kae
f9e8b5badf
more work on Voice
2023-07-13 15:01:07 +10:00
Kae
40223a5090
Initial work
2023-07-12 22:16:12 +10:00
Kae
2b964a2384
Remove indent from Star:: in StarInput.hpp
2023-07-12 20:59:23 +10:00
Kae
87f0e49341
Fix asynchronous lighting crash
...
This somehow only occurred on Linux
2023-07-10 19:01:39 +10:00
Kae
fe4cc19618
Change pure string format calls to use fmt::to_string
2023-07-06 19:26:28 +10:00
Kae
58678bfe9d
Attempt to fix rare crash writing configuration
2023-07-05 21:31:36 +10:00
Kae
5df9adcd0e
Fix input bind priority
2023-07-04 20:46:26 +10:00
Kae
bf7418073d
Move input callback creation
2023-07-04 20:45:43 +10:00
Kae
e3461e9053
Start of Interface callbacks, starting with a bindCanvas function for the whole screen
2023-07-04 19:27:16 +10:00
Kae
f73cb3ce03
improve WorldServer debug logging
...
is now consistent with WorldServerThread's use of the world id, which is generally more appropriate
2023-07-03 19:32:23 +10:00
Kae
deb96742e0
Prevent particle copy, tweak debugging some more
...
probably not too time-saving
2023-07-03 18:31:12 +10:00
Kae
1dacc0f41a
Add client world.players
2023-07-03 18:22:44 +10:00
Kae
1742b04eec
Cache plant piece asset paths
2023-07-03 18:22:31 +10:00
Kae
7f65913762
Use more portable encoding for Unicode character in debug strfs
2023-07-03 16:26:42 +10:00
Kae
11e00a8ded
Change debug render time logging to use microseconds
2023-07-03 16:04:17 +10:00
Kae
069d61e487
Fix scaling a better way
2023-07-03 09:10:09 +10:00
Kae
7999442f01
Fix scaling
...
not happy with having to do this, but whatever
2023-07-03 08:57:30 +10:00
Kae
398a5655f4
Add Drawable <-> Lua conversion to LuaGameConverters
2023-07-03 08:51:42 +10:00
Kae
7d86194cae
fix three constructors having a struct keyword in them
...
i didn't even notice, and only MSVC silently let it compile. what the fuck
2023-07-03 04:05:42 +10:00
Kae
2386a95342
Input Binding support
2023-07-02 17:19:54 +10:00
Kae
73841ee041
more Input work
2023-07-02 10:55:25 +10:00
Kae
fe3763ed33
Update StarInput.cpp
2023-07-02 08:17:06 +10:00
Kae
3fc7a85a52
More work on the Input system
2023-07-02 08:16:14 +10:00
Kae
15b0e99460
Initial setup of input stuff
2023-07-02 06:34:43 +10:00
Kae
2c43b50531
Fix immediateSound pool logic
2023-07-02 03:18:35 +10:00
Kae
3c65474062
immediateSound and persistentSound now supports random sound pools
2023-07-02 02:26:13 +10:00
Kae
2a610211a1
Correct UpdateWorldProperties handling on server
2023-07-02 02:02:25 +10:00
Kae
ce68aad078
Move expensive questIndicatorPosition() call
...
need to optimize Object configValue at some point
2023-07-01 08:01:29 +10:00
Kae
45c44408ce
Update StarInspectionTool.cpp
2023-07-01 07:30:30 +10:00
Kae
a8196dfd64
Reorganize root load order
...
Turns out increasing the root load thread count is detrimental. The databases are always stepping on eachother's toes
2023-07-01 04:09:11 +10:00
Kae
ad58a960e4
bring player inspection back!
2023-06-30 11:44:42 +10:00
Kae
b43c59e828
Update StarPlayer.cpp
2023-06-30 07:23:41 +10:00
Kae
7d847fcd6a
Fix rare world lighting thread race
2023-06-30 06:35:46 +10:00
Kae
cb1390e9f3
Fix movement controllers falling through platforms at low timestep hz
2023-06-30 06:35:32 +10:00
Kae
d5fbd2001b
RenderPrimitive micro-optimizations
2023-06-30 04:34:10 +10:00
Kae
47a527ebbf
Update StarHumanoid.cpp
2023-06-30 02:31:41 +10:00
Kae
dc134e168b
Move lightmap wait into WorldPainter to fix single-frame lightmap lag-behind
...
unfortunate
2023-06-29 10:31:59 +10:00
Kae
624c7aaaf1
Move lighting calculation to separate thread
2023-06-29 10:11:19 +10:00
Kae
9d67cda97f
Update StarPlayerLuaBindings.cpp
2023-06-29 08:12:27 +10:00
Kae
0b479ae1b9
fix parsePersonality on other compilers
2023-06-29 06:38:48 +10:00
Kae
fb0ab85089
Lua: player.* identity getters and setters
2023-06-29 05:58:24 +10:00
Kae
9486a56508
Add base variables for warping cinematics
...
I literally only did this because I have an ultra-wide monitor and the letterboxing bothered me
2023-06-29 00:13:43 +10:00
Kae
45493ca8dd
Revert timestep values to default, make configurable
2023-06-29 00:12:05 +10:00
Kae
47ae258c2e
ok maybe don't override the animation state if it's walk
2023-06-28 22:59:15 +10:00
Kae
0b7ddd05d1
Add extremely basic controller support (only movement)
2023-06-28 22:52:09 +10:00
Kae
322ee3a187
Fix non-rotated drawables still being included when calling Humanoid::render with items off
2023-06-28 20:29:05 +10:00
Kae
98c4e55380
Don't show the held item and rotation in the new inventory portrait
2023-06-28 20:22:25 +10:00
Kae
4c006afc94
Add unused support for using the actual humanoid for armor preview
2023-06-28 01:34:37 +10:00
Kae
efa3872396
Don't do spatial logging on the server
2023-06-28 00:50:47 +10:00
Kae
152af87655
Fix broken regex, make game timestep non-const
2023-06-28 00:20:22 +10:00
Kae
baf3a1cf76
Fix crash warping to planets and leftover formatting errors
2023-06-27 20:55:10 +10:00
Kae
332983c97b
The Formatting String Catastrophe
2023-06-27 20:23:44 +10:00
Kae
14b9689b6d
Change formatting to use fmtlib (STILL NEED TO CHANGE TO FMT SYNTAX!)
2023-06-27 19:24:35 +10:00
LDA
c9e889723b
resolved most of the compiler warnings/errors under gcc
...
also update xxhash and tinyformat
2023-06-26 11:58:35 -07:00
Kae
4585c9cafa
Lazy-loading of ImageOperation inside Directives
...
also fixed cases of drawables not staying centered after adding directives that scale
2023-06-27 03:38:57 +10:00
Kae
63b68b3a55
Nameplate and chat bubble improvements
...
They should stack much better now. I also hooked up the true mouth position to the name-tag, but it's too shaky on chat bubbles.
2023-06-27 00:42:07 +10:00
Kae
94c84ad013
Update StarNetworkedAnimator.cpp
2023-06-26 21:41:54 +10:00
Kae
f2fedb0c87
cache NetworkedAnimator drawables
...
could use a LruCache later
2023-06-26 21:39:22 +10:00
Kae
14ef69c0f6
Move error screen over title
2023-06-26 20:40:32 +10:00
Kae
d5d474c673
Fix particles finally
2023-06-26 16:09:40 +10:00
Kae
ed3d5dffc0
slight NetworkedAnimator drawables optimization
2023-06-26 14:40:14 +10:00
Kae
79c5012033
fix Particles not being drawn with the new image member
2023-06-26 02:03:50 +10:00
Kae
09d26d43b5
Add string view variant of Star::String and use it
...
it's 1:30 AM AGAIN !! !!!!!
This might have broken the inventory icons of custom hats a little, need to look into that
2023-06-26 01:42:18 +10:00
Kae
13a74602bd
Upgrade to C++17
2023-06-25 20:01:32 +10:00
Kae
7d205330db
More directives optimization
2023-06-25 18:12:54 +10:00
Kae
e2424b7dcf
Fix up new Object directives handling, more directives rendering improvements, fix chat bubbles and nametags only moving every 2px
2023-06-25 16:10:57 +10:00
Kae
f7d5ff8deb
Fix ArmorWearer setters
...
silly me
2023-06-25 14:03:49 +10:00
Kae
25b021c0cb
More improvements to directives
...
Error logging is back where it should be
2023-06-25 14:00:20 +10:00
Kae
008bd6d3df
more!! more!!!!
2023-06-25 01:16:40 +10:00
Kae
2bd399fd00
Armor optimizations
2023-06-24 23:38:27 +10:00
Kae
7eb010d4a1
Pretty much working now
2023-06-24 22:49:47 +10:00
Kae
7bde128a87
DirectivesGroup prototype
2023-06-24 19:41:52 +10:00
Kae
2798d4bf66
what the fuck it's 1:30 AM. god
2023-06-24 01:30:55 +10:00
Kae
6832c10ed5
Split shaders into their own files
...
some unrelated directives thing too
2023-06-23 23:01:25 +10:00
Kae
4328119e1c
Proper fix for non-master player rotation resetting on load
2023-06-23 20:27:51 +10:00
Kae
49c487cd82
Use the correct interpolator for MovementController rotation
2023-06-23 19:06:05 +10:00
Kae
e5d2e2c462
Micro-optimization to packet creation
2023-06-23 19:05:24 +10:00
Kae
87163147b3
fix crash when disconnecting with inventory open
...
additionally, fix humanoid identity being constantly sent by the server even when unchanged
2023-06-22 13:29:42 +10:00
Kae
320428eddf
slight polishing
2023-06-21 20:36:08 +10:00
Kae
d08b3c3b22
Fix runtime-generated cinematics not working
2023-06-21 16:07:49 +10:00
Kae
acc8bc0280
EntityUpdate server-side optimization
...
Cache net states of the same net version. Also moved readNetState after init in EntityCreate, should fix bugs like MovementController rotation not being read.
2023-06-21 15:48:27 +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
9b75bd8eb2
fix minor culling issues
...
also multiply liquid light by liquid level to fix pop-in problems
2023-06-20 23:04:36 +10:00
Kae
6352e8e319
everything everywhere
...
all at once
2023-06-20 14:33:09 +10:00