Camotoy
bc0cfde8f9
Set the minimum Java version to 16; drop Bedrock 1.17.0 ( #2477 )
2021-09-10 14:10:56 -04:00
Camotoy
93f5298ee3
Introduce specialized maps for block state operations
...
By introducing fixed maps, we are able to reduce the overhead of needing to store arbitrary numbers; fixed maps start at one number and must be sequential. This commit also reduces some overhead of lecterns in block updating as we are able to utilize our own maps to reduce object boxing and removing the function of Map#compute of trying to re-insert a value.
2021-09-09 21:33:48 -04:00
Camotoy
f22d286ea1
Add world border translation ( #1839 )
...
As Bedrock does not have world border support, this PR translates what the Java server sends us for a world border into particles and fog, while also preventing the Bedrock client from moving outside of the world border.
Co-authored-by: Luke <32024335+lukeeey@users.noreply.github.com>
Co-authored-by: ofunny <play@ofunny.world>
2021-09-09 21:27:38 -04:00
David Choo
8461cf76b7
Smooth Pistons ( #1542 )
...
With proper piston collision for players as well.
2021-09-09 21:20:25 -04:00
Redned
c1e66f306c
Play sound when totem is used
2021-09-04 13:52:02 -05:00
Camotoy
206368e448
JavaExplosionTranslator: clean up vector usage
2021-09-02 19:42:50 -04:00
Camotoy
b9541505af
Bump version to try and fix deploying; other nitpicks
2021-08-30 13:55:01 -04:00
Camotoy
3c18eb44aa
Use instance of ThreadLocalRandom for particle offsets
...
Random instances are synchronized meaning this was a potential deadlock situation.
2021-08-26 21:43:53 -04:00
Camotoy
ab540b1951
Ensure more entity tasks are run on the player session
2021-08-21 09:54:52 -04:00
Camotoy
3d04a957d0
Ensure that exceptions in player event loop are handled
...
Any stray exception means that the entire event loop comes crashing down.
2021-08-17 20:57:46 -04:00
Camotoy
7ae91a40ec
Ensure every packet is ran on the same thread per player ( #2473 )
...
This removes a lot of concurrency checking that needs to be done, because there should be no way two packets can be handled at the same time.
2021-08-16 20:39:29 -04:00
Camotoy
f4437e45a8
Attempt to make Geyser build
2021-08-16 14:00:12 -04:00
Camotoy
ac17963baa
Player effect cache cleanup
...
Only cache effects and not their values unless we actually use the value.
2021-08-16 11:53:56 -04:00
Camotoy
5d90ba91f7
Move LoginSuccessPacket handling to its own translator
2021-08-14 12:52:35 -04:00
Camotoy
9f4c2ce5fc
Fix rare StackOverflowError in DeclareCommands
...
This behavior is exhibited with the NanoLimbo software version 1.2.2.
2021-08-13 23:56:44 -04:00
Camotoy
8c95e26189
Fix experimental toggle'd biomes not accounting for chunk offset
2021-07-29 14:35:03 -04:00
Camotoy
7a99aa0ddf
Merge branch 'biomes'
2021-07-28 20:27:34 -04:00
Konicai
b86648332a
Auth type refactor in internal config ( #2410 )
2021-07-28 19:44:09 -04:00
Camotoy
5529a1cc1c
Fix spectator gamemode movement
...
- Don't allow the player to toggle flight status in spectator mode
- Fix weird flight movement when player was previously on the ground
- The player is always flying in spectator mode, no exceptions
2021-07-28 13:21:18 -04:00
Camotoy
8c96c3b11d
Biome reworkings
...
- Introduce biome mappings for having a constant reference between Java biome identifier and their Bedrock equivalents
- Don't assume biome IDs and instead listen to the server for biome IDs
- Ensure that only valid Bedrock biomes are sent. With the caves and cliffs experimental toggle, Bedrock will crash if an invalid biome ID is sent its way.
2021-07-27 20:29:27 -04:00
RednedEpic
9817dc932a
Merge branch 'feature/optimizations' into master
2021-07-21 21:44:49 -05:00
David Choo
8f98162c69
Fix Item drop animation ( #2406 )
2021-07-21 21:48:59 -04:00
Redned
b4921132e1
Replace BiMap with an Object2IntBiMap
2021-07-18 14:43:17 -05:00
David Choo
2766038db9
Update player bounding box in more scenarios ( #2377 )
...
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-07-18 10:58:08 -04:00
Camotoy
db1563aa79
Better estimate for new biome data size
2021-07-15 20:51:13 -04:00
Camotoy
3b55826d70
Make the ByteBuf in ChunkDataTranslator allocate a more decent size
2021-07-15 18:33:49 -04:00
Camotoy
99a7f9a012
Explain that yes, we have to write 32 biome palettes always
2021-07-15 18:31:47 -04:00
Camotoy
d19ff657de
Ensure overworld constraints are used everywhere
2021-07-14 21:46:56 -04:00
Camotoy
feb64e08df
Fix biomes crashing and more (huge thanks to @dktapps
2021-07-14 21:14:53 -04:00
Camotoy
b2619fa7c7
Address some null pointers ( fixes #2378 , #2380 )
2021-07-13 18:12:55 -04:00
Redned
f7ef90278b
Implement a new registry system ( #2306 )
...
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-07-12 21:19:40 -04:00
Camotoy
32bbd8ae1c
Attribute rewrite
...
This commit solves a couple issues:
- Entities that don't implement LivingEntity don't need to bother with attributes
- We don't need to cache all attributes for every entity
- Mounted entities' hearts were inconsistent
No entity as of this commit caches their attributes except for the player entity.
2021-07-08 10:30:59 -04:00
Camotoy
605f56b895
Update to 1.17.1-rc1
2021-07-04 10:42:28 -04:00
Camotoy
74a5a4a366
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.17.1
2021-07-04 10:36:18 -04:00
Camotoy
7ae27c79e8
Ensure that the player never dimension switches to the same dimension
...
Fixes #2342
2021-07-01 08:48:22 -04:00
Camotoy
b757032457
Show iron golem attack animation
...
TODO: Do the same for the hoglin and zoglin - this requires more work with the hitbox.
2021-06-29 22:36:30 -04:00
Camotoy
f9f74a0da8
Determine chunk Y offset on Java packet processing thread
...
Should stop NullPointerExceptions if the session closes before chunks are processed
2021-06-25 13:51:52 -04:00
Camotoy
71fe2621fc
Remove obsolete chunk merging
2021-06-23 16:48:56 -04:00
Camotoy
3a2cff7864
Clean up a bunch
...
Mostly checked with IntelliJ, but manually performed. The only issue I possibly anticipate is item name/lore issues, but the new method should be technically better.
2021-06-20 21:42:22 -04:00
Camotoy
c60600e0f9
Update to 1.17.1-pre1
2021-06-20 12:35:48 -04:00
Camotoy
569c36680d
Remove debug statement
2021-06-16 19:12:18 -04:00
Camotoy
c4131428ea
Translate more new level events
2021-06-16 19:09:35 -04:00
Camotoy
139167d090
Don't hardcode the bell block ID
2021-06-15 14:48:18 -04:00
Camotoy
cc2d26dda8
Translate new world events
...
The copper-related ones do not show if the Bedrock player performs them. This will be fixed later.
2021-06-09 19:48:38 -04:00
Camotoy
bb20afb123
Warn if server is using high/low dimension heights and remove translations on some strings
2021-06-07 23:09:42 -04:00
Camotoy
01d7648296
Implement new entity statuses and goat milk sounds
2021-06-07 19:16:36 -04:00
Camotoy
207af5dffb
Listen to PlayerPositionRotationTranslator#dismountVehicle
2021-06-06 11:58:03 -04:00
Camotoy
19f8e2dfac
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.17
2021-06-06 11:42:59 -04:00
Tim203
1ded2086e3
Merge remote-tracking branch 'origin/floodgate-2.0' into feature/1.17
...
# Conflicts:
# connector/src/main/java/org/geysermc/connector/network/UpstreamPacketHandler.java
2021-06-06 01:16:57 +02:00
Tim203
01492647fc
Some small changes
2021-06-06 01:05:05 +02:00