Commit Graph

637 Commits

Author SHA1 Message Date
dbef69d6e6
Terrain fixes 2024-04-18 16:27:33 +07:00
46900554c3
Don't flush when writing universe time packet 2024-04-18 14:52:05 +07:00
de735cc5b8
Send network packets right away 2024-04-18 14:31:08 +07:00
bad3fd9b16
Fix painting does nothing 2024-04-18 14:23:32 +07:00
adab78f0c0
Improve StringByteString performance 2024-04-18 14:09:44 +07:00
3ead24267c
Active item half functional 2024-04-18 14:04:37 +07:00
30ca2c9573
Add random:randn 2024-04-17 15:57:06 +07:00
d755e6cd66
Items (not finished), Item Registry, performance tweaks, memory improvements, loading performance improvements 2024-04-17 15:35:32 +07:00
9f52e2314d
container objects "functional" 2024-04-15 21:28:43 +07:00
77aa05d9f3
Loungeable objects, some cleanup to entities in general 2024-04-14 20:59:01 +07:00
403aac63de
Some initial fixes for Lua bindings and stuff 2024-04-14 11:48:19 +07:00
8ee60c0f4d
Some initial Lua bindings (object, animator, root, sb) 2024-04-14 01:45:15 +07:00
38b189ac88
Remove old iteration of "avatar" 2024-04-12 11:00:38 +07:00
7f0f647494
Wire connecting? 2024-04-12 10:36:43 +07:00
a46269aa15
Performance improvement bits 2024-04-12 10:24:47 +07:00
164040b45b
SpawnEntityPacket 2024-04-11 20:36:23 +07:00
8fe7a6f951
Update all methods to not reference global timestep constant
this sets up ground for variable tick rate
2024-04-11 15:06:32 +07:00
7cd0f5e173
TileModification packets 2024-04-10 22:41:41 +07:00
b3b51aefa5
Bring back lazingly initialized perlin noise 2024-04-10 10:07:44 +07:00
318b689d2d
Fix memory requirements of previous commit :) 2024-04-10 09:55:28 +07:00
e134554879
Item drops stuff, but i accidentally inflated chunk memory requirements 2024-04-09 23:24:33 +07:00
8987dc5270
Use linked map and linked set so placements appear in the same order as they were supplied by dungeon parts 2024-04-09 10:59:20 +07:00
c91b448e66
More work on objects, orientations and spaces are working? kind of 2024-04-09 10:56:50 +07:00
c2e5b32c94
Very compact dungeon representation in RAM, but it is quite slow 2024-04-08 14:06:12 +07:00
53bb3bd843
Dungeons generation (need optimizing), BlockableEventLoop (finally normal event loop) 2024-04-08 12:14:42 +07:00
68f3d6aa29
Flatten perlin noise structure, improving perfomance by margin of 4
не рузен
2024-04-06 03:02:32 +07:00
43e9c2412d
Cave liquid 2024-04-06 01:57:44 +07:00
6f6150475e
Grass generation 2024-04-05 23:35:35 +07:00
a839af1041
Merge TicketList into ServerChunk 2024-04-05 19:55:45 +07:00
c3c928de92
Terrain generation, staged async chunk loading 2024-04-05 18:30:45 +07:00
31ea958304
Fix orbital warp actions 2024-04-04 10:59:34 +07:00
aea534add4
Fix findRandomWorld not accounting for satellites 2024-04-04 10:59:17 +07:00
cb384be77a
SkyParameters are now finally generated 2024-04-04 10:50:46 +07:00
55253f78d1
Some fixes 2024-04-04 01:00:48 +07:00
db09de857b
SystemWorld, fixed MWCRandom, event loops, universe io 2024-04-04 00:31:57 +07:00
3b2e1d06c3
Actually load versioning.config 2024-04-02 21:57:53 +07:00
66a3f0304a
Minor cleanup, VersionedAdapter 2024-04-02 21:53:18 +07:00
24fdf7ab70
Coroutine scope for connection 2024-04-02 20:38:03 +07:00
209c1a5776
TileEntities, WorldObject 2024-04-02 20:07:11 +07:00
cb63b47b12
Some sky implementation work 2024-03-30 20:12:40 +07:00
ff746f43ae
Delay perlin noise initialization until actually used 2024-03-30 18:15:06 +07:00
fd1a63a22c
little bit polishing 2024-03-30 15:02:12 +07:00
6302661019
Entity spatial index 2024-03-30 12:36:17 +07:00
f452cbeeb1
Some polishing 2024-03-29 18:01:17 +07:00
21a13134a4
Player warping test code 2024-03-29 17:03:39 +07:00
f2c2db2e9d
ServerWorldTracker 2024-03-28 22:29:21 +07:00
77f19b77ff
Rename MaterialModifier to TileModifier 2024-03-28 21:54:55 +07:00
0c60dd6a02
Make worlds be capable of loading from disk, and capable of sending to legacy clients 2024-03-28 21:43:47 +07:00
6df7710dc2
Fix some bloppers 2024-03-28 19:19:24 +07:00
602c21edfc
Implemented all terrain selectors 2024-03-28 18:32:52 +07:00
c8683a15bd
Move terrain selectors to ru.dbotthepony.kstarbound.world.terrain 2024-03-28 13:34:01 +07:00
1d5953eb36
Move biome classes to world subpackage 2024-03-28 13:32:21 +07:00
b8a8e79819
Entity.description 2024-03-28 13:17:01 +07:00
7973724193
Compensate for system scheduler inaccuracy instead of spin locking
this eliminates CPU cycles burning
2024-03-28 13:07:00 +07:00
9b9856ebd1
EntityDestroyPacket 2024-03-28 13:01:57 +07:00
bf5710542e
Tile damaging? 2024-03-28 10:15:43 +07:00
a5192bc551
Proper chunk tracking 2024-03-27 23:09:52 +07:00
82b09721fc
Little more implementation 2024-03-27 18:05:02 +07:00
3579f46209
2 Players in same place test 2024-03-27 17:11:38 +07:00
9bbef92ea9
Fix not networking collision type 2024-03-27 15:02:11 +07:00
9c1772a766
Functional serverside player network receive 2024-03-27 14:30:44 +07:00
551eac4072
move defs/player to defs/actor/player 2024-03-20 20:23:50 +07:00
8149fcb48d
More work towards implementing legacy protocol, new entity class tree 2024-03-20 20:18:41 +07:00
afc45aac92
More legacy protocol implementation 2024-03-20 12:39:21 +07:00
94cc53b176
Moar packets implemented, chat, tiles, broadcast, ... 2024-03-20 00:22:26 +07:00
21f3a66283
Now original game client can properly connect and be on server, and also can request a disconnect 2024-03-19 16:59:01 +07:00
66aa99acc2
NetworkedElement, Json RPC and ClientContextUpdate fixes 2024-03-19 15:22:05 +07:00
d37bad79c6
WorldTemplate, WorldLayout, VisitableWorldParameters, Biomes, BiomeDefinitions, Trees, Grass, Bushes, Terrain Selectors
RenderDirectives, JsonRPC, Json adapters fixes, DispatchingTypeAdapter
2024-03-17 11:10:18 +07:00
73cf5f596c
We welcome the Universe 2024-02-29 14:59:54 +07:00
a06ed42268
Bump kommons 2024-02-18 13:23:36 +07:00
df972dd891
Update code to match latest kommons 2024-02-15 19:51:15 +07:00
067d16eaf3
Bump kommons 2024-02-15 19:49:26 +07:00
a0c63d3aaf
BTreeDB.hasKey 2024-02-15 14:15:56 +07:00
0f91102e6b
Ah yes, BTreeDB 2024-02-15 14:05:42 +07:00
f6d138400f
BTreeDB gone async 2024-02-12 17:27:04 +07:00
fd233b9ab5
More work on legacy protocol 2024-02-12 16:06:51 +07:00
c2dc7c2e11
Start implementing legacy protocol 2024-02-10 22:55:24 +07:00
075b8259be
Move stuff around 2024-02-10 16:49:58 +07:00
1e04b7e777
Bump kommons 2024-02-08 20:23:40 +07:00
8671c4bfad
More networking work 2024-02-08 19:59:39 +07:00
0eea0fa13f
More grinding on entities and their networking 2024-02-05 03:17:30 +07:00
cae0a89ea2
Slightly more efficient spinning 2024-02-04 20:36:22 +07:00
d8f4d06d83
NtQueryTimerResolution 2024-02-04 20:06:12 +07:00
4ff09bea2b
sigh 2024-02-04 18:03:18 +07:00
666d746936
More networking workings 2024-02-04 14:26:45 +07:00
3e2872ea5e
Execution spinner for unified and improved spinning 2024-02-04 13:42:13 +07:00
e9b2ae84d2
bump kommons 2024-02-03 23:04:16 +07:00
c4241a027a
bump kommons 2024-02-03 20:50:54 +07:00
c5d1e0f4c7
Migrate to kommons 2024-02-03 20:41:51 +07:00
c65d3f1a88
Some renamings 2024-02-03 13:46:50 +07:00
8c731366af
USE_CAFFEINE_INTERNER compilation flag 2024-02-02 18:18:41 +07:00
278f66d892
Finally, client threads 2024-02-02 17:53:20 +07:00
0b961b72ae
Merge Player and Connection 2024-02-02 17:00:02 +07:00
bd8d0e58df
"Fix" random crash inside stbi_load_from_memory caused by JVM releasing DirectByteBuffer while it is being used 2024-02-02 15:47:42 +07:00
cb38ecfde7
Move JsonUtils to json package 2024-02-02 12:30:22 +07:00
4d58f0ab71
Kind of more networking stuff 2024-02-02 12:09:22 +07:00
2b95bf5e3e
More work on chunk map and chunk tickets 2024-02-01 18:33:11 +07:00
a028694010
Functional chunk tickets, chunk source, player chunk tracking 2024-02-01 15:58:44 +07:00
3561bf7086
Remove unused class 2024-01-28 20:26:38 +07:00
81ff32b8c1
Move starbound file system to top package 2024-01-28 20:25:31 +07:00
b7ec73bf0f
Server and network test code 2024-01-28 16:13:07 +07:00
f58b0bca80
Actor movement controller 2024-01-25 19:46:41 +07:00
8fe6da7218
Window icon 2023-12-02 15:38:00 +07:00
19c3da7b8f
jvm heap usage bar on loading screen 2023-12-02 00:16:45 +07:00
e0c511af33
Fix dot animation 2023-12-01 23:50:32 +07:00
125af3141d
actor entity 2023-12-01 21:06:34 +07:00
bfc39a6cb6
Don't directly depend on forkjoinpool 2023-12-01 21:06:28 +07:00
f4cb791125
Speed up loading by lazy adapters 2023-12-01 20:23:16 +07:00
efadaeb28c
Get rid of loading log since it stalls threads 2023-12-01 20:16:21 +07:00
35fc841037
fixes 2023-12-01 19:22:49 +07:00
cc1c0124ae
Add missing logging 2023-12-01 19:07:51 +07:00
b79161cca2
Load font from pak files, bootstrap window 2023-12-01 19:03:51 +07:00
2793154bbb
bring back very thin boxes instead of lines 2023-12-01 13:48:30 +07:00
4db69db0cd
Regular movement code port from original engine 2023-12-01 13:28:25 +07:00
2b94bfd41f
Collision detection updates 2023-11-20 14:18:57 +07:00
1526a1c127
Universe thread, more synchronization (to allow more pararllel code), initiate player movement test once again 2023-11-11 14:25:31 +07:00
8af66ff359
move json out of io package 2023-11-10 22:51:32 +07:00
24529aba3e
Switch to Luna from PUC Lua 2023-11-10 22:25:41 +07:00
f0791a47b7
Make mailbox be lightweight as possible 2023-10-26 00:34:06 +07:00
792e0c6ff6
Original game tile collision geometry 2023-10-25 22:28:49 +07:00
d782b33970
Fix native memory leak
in GC language.
2023-10-22 14:01:21 +07:00
d0862ab454
Micro optimize interner 2023-10-22 13:39:46 +07:00
064689fc25
Massively improve memory usage of world tiles 2023-10-22 10:12:39 +07:00
949ed802ad
Redesigned registry 2023-10-22 00:45:22 +07:00
8cd84a4501
Significantly reduce memory usage by cells 2023-10-19 08:13:57 +07:00
8afef646ae
Sparse chunk map instead of infinite chunk map, allowing to create huge worlds, without complexity of "infinite" worlds 2023-10-19 00:47:53 +07:00
93deb62d4b
Immutable chunk cells 2023-10-19 00:03:38 +07:00
ba0d792e83
Misc fixes 2023-10-18 22:36:46 +07:00
b1b5b598f0
preciseWait flag on client 2023-10-18 22:25:49 +07:00
5fb6d817fc
Parallel move(), remove more outdated code, complete MailboxExecutorService 2023-10-14 22:23:30 +07:00
30b168766d
Remove kbox2d from deps and remove leftover code from previous testing stages 2023-10-14 19:26:28 +07:00
b9975657d4
SAT testcode 2023-10-14 10:39:20 +07:00
2280882247
Add ScheduledExecutorService impl to ManualExecutorService 2023-10-13 00:42:10 +07:00
906e6a0373
Fix world keys in test code 2023-10-12 19:16:54 +07:00
d0216b997e
Make world have executor 2023-10-12 19:16:45 +07:00
8d8d4029a7
Fix btree keys not being properly compared 2023-10-12 19:16:21 +07:00
0b163481e7
Have textures be logically loaded from Image itself 2023-10-12 08:10:37 +07:00
c8488c3565
Async image data loading 2023-10-11 23:54:27 +07:00
7cb9a7951f
Use immediateFuture 2023-10-11 23:29:52 +07:00
0c6736ef90
Misc fixes 2023-10-11 21:56:22 +07:00
7fcad1352e
Revert "Help GC in light calculation"
This reverts commit 86a44581a5.
2023-10-04 23:32:09 +07:00
86a44581a5
Help GC in light calculation 2023-10-04 22:50:23 +07:00
f874b880ef
Use common ForkJoinPool for light calculations 2023-10-03 14:39:06 +07:00
425494e104
Smarter multithreading 2023-10-03 14:05:27 +07:00
6ae8066ebc
multithreaded chunk geometry batching 2023-10-02 11:07:55 +07:00
71a6f388fc
Further parallelize game asset loading 2023-09-30 01:04:47 +07:00
302aa9b83a
Loading log progress bars 2023-09-29 23:34:15 +07:00
e96d668f26
Add asset path stack push/pop when loading globals 2023-09-29 22:47:44 +07:00
087c4616b6
Add base movement parameters 2023-09-29 22:45:59 +07:00
2aac9f405d
rename movement params classes 2023-09-29 22:32:11 +07:00
b3f7cee963
fix 2023-09-29 22:14:01 +07:00
ccf696a156
Move stuff around to reduce stress on main starbound class 2023-09-29 22:05:26 +07:00
86782e259e
KOptional type adapter, and movement controller defs structures 2023-09-29 20:26:49 +07:00
c0ecbe9a8b
Proper and accurate grid raycasting 2023-09-29 18:27:41 +07:00
97d441deba
Multithreaded game loading 2023-09-25 18:59:43 +07:00
5901d756ee
Fix missing texture not being properly uploaded to memory 2023-09-23 23:07:07 +07:00
8647d8e74a
Specify as stream draw 2023-09-23 23:01:36 +07:00
40782fd18f
Fix possible memory leaks regarding unused resources, and tighten cache store times 2023-09-23 22:59:30 +07:00
178953bce7
Geometry batching 2023-09-23 22:40:31 +07:00
1479f7483a
what 2023-09-23 12:20:46 +07:00
4a1a26a493
Text renderer batching 2023-09-23 10:57:46 +07:00
4c39ff2069
Remove unused shader files 2023-09-22 16:13:02 +07:00
8d32daa840
Lightmap support in uber shader 2023-09-22 14:20:50 +07:00
339891b6e2
New shader render pipeline 2023-09-22 12:24:08 +07:00
62dfc63839
HashTableInterner fixes 2023-09-20 17:25:40 +07:00
352dea020a
Update GL46 refs to GL45 2023-09-20 14:54:58 +07:00
85e81a0b0b
OpenGL object tracking cleanup 2023-09-20 14:51:33 +07:00
1e8cc5898d
Raise OpenGL version back to 4.5, since without Direct State Access there is so much headache 2023-09-20 14:11:07 +07:00
60c5b2a9ab
new sahders draft 2023-09-20 14:07:57 +07:00
123573e056
Downgrade OpenGL to 3.3 since no 4.0+ features were used 2023-09-18 19:58:40 +07:00
1de2b4c167
Better frame scheduling 2023-09-18 00:06:41 +07:00
a41037826c
Fixes to dataValue and flickering lights 2023-09-17 22:28:27 +07:00
328cab8127
Fix having multiple starbound clients being broken 2023-09-17 21:32:43 +07:00
3ad0e78c10
Remove unused graphics stuff, merge GLStateTracker with StarboundClient 2023-09-17 21:25:20 +07:00
ef52700ff2
Redo how images are handled, more world objects work, custom tailored interner 2023-09-17 18:27:16 +07:00
57c32beb0d
Bare minimum for object loading 2023-09-16 17:00:21 +07:00
84e9fd842a
Actual world lighting, world objects test 2023-09-10 13:12:37 +07:00
da66fa389d
Use anonymous thread local here 2023-09-09 17:18:59 +07:00
9ca98f10be
Don't create random 2023-09-09 17:18:47 +07:00
bc9896d327
Make Starbound class be singleton again 2023-09-09 11:34:24 +07:00
528a2e6c59
Some renamings and make Either be able to handle nulls 2023-09-08 23:39:13 +07:00
6397637538
Actual Light test 2023-09-08 00:00:43 +07:00
0f4b7ace07
Add RenderConfig#initialBuilderCapacity 2023-09-06 19:06:12 +07:00
386d71b92f
Make vertex builder be able to switch geometry type on the fly 2023-09-06 18:54:51 +07:00
96cc44c592
Fixed render regions actually being repeated for wrapped around chunks 2023-09-06 00:20:29 +07:00
ef838d52c2
Updated render classes structure to be less alien 2023-09-06 00:05:39 +07:00
370c93226b
More appropriate preferred render region size 2023-09-05 22:11:13 +07:00
f71b561ad7
Liquid rendering in regions 2023-09-05 22:02:48 +07:00
36d83b6a8e
Faster forEachRenderRegion 2023-09-05 21:34:24 +07:00
538f8a9b72
Undo dynamic chunk dimensions, add render regions instead for solid grid rendering 2023-09-05 21:12:23 +07:00
94fe3662ad
Arbitrary dimension chunks, null/not null cell distinction 2023-09-05 16:09:09 +07:00
fb44d77353
Minor cleanups 2023-09-04 22:07:29 +07:00
1e1c5a83c1
Chunk render offsets
this thing is broken
2023-09-04 20:58:28 +07:00
07ba48c121
Fix repeating chunks not being put into collect 2023-09-04 11:05:42 +07:00
dc72bf1b18
Remove gpu light rendering 2023-09-04 11:00:00 +07:00
7a69dee5ca
faaster 2023-09-04 09:43:36 +07:00
3398ba62ee
Cleaner version of previous commit 2023-09-04 08:35:31 +07:00
3647643351
Circular aware chunk compilers 2023-09-04 07:56:48 +07:00
0657ee8ef7
Chunk map, circular worlds second attempt 2023-09-03 23:08:10 +07:00
e436864e12
Optimize cell view 2023-09-03 17:40:31 +07:00