Commit graph

127 commits

Author SHA1 Message Date
David Choo
3de2b33e30
Armor stand fixes (#3147)
Co-authored-by: David Choo <davchoo@users.noreply.github.com>
Co-authored-by: The Judge <53906078+thejudge156@users.noreply.github.com>
2022-07-17 21:00:08 -04:00
Kas-tle
363d72da91
Merge remote-tracking branch 'origin/master' into feature/extensions 2022-07-12 05:26:52 +00:00
Camotoy
4d0952c224
Initial support for 1.19.10 Bedrock 2022-07-10 13:33:39 -04:00
David Choo
dc810f1d39
Fix break time while submerged in water (#3110)
* Fix break time while submerged in water

* Review stuff

* LAYERS -> LEVELS
2022-07-02 21:17:14 -04:00
ImDaBigBoss
36c49a7256
Custom item support for extensions (#2822)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-07-02 12:50:16 -04:00
AJ Ferguson
f2f894b1d1
Fix IronGolem cracked texture and sound (#3103)
* Update mappings submodule

* Set IronGolem maxHealth to 100 by default

Fixes cracked texture on vanilla servers

* Add detail to comment
2022-06-30 17:40:30 -04:00
AJ Ferguson
18f6836c15
Set default Warden heartBeatDelay to 40 (#3071) 2022-06-18 15:32:51 -04:00
Xamyr
fef0401add
Fixed armorstand passenger yOffset (#2976) 2022-06-17 22:15:31 -04:00
ImDaBigBoss
4e2f74481b Updated to 1.19 2022-06-08 14:09:14 +02:00
Camotoy
a397f55e8b
Add goat horn count 2022-06-06 21:06:02 -04:00
RednedEpic
bcc68ee4b5 Update to latest MCPL changes 2022-06-05 13:12:36 -05:00
Camotoy
3ac2c981a7
Swap pitch and volume for warden heartbeat 2022-06-02 18:57:33 -04:00
davchoo
2e3e7c6949
Fix sonic boom duration ticking below zero 2022-05-31 15:15:15 -04:00
davchoo
365f8cf7e3
Translate Warden sonic boom event
Bump Protocol to fix Sonic boom flag
2022-05-31 14:58:40 -04:00
Camotoy
eb23a46887
Fix frog color translation 2022-05-31 14:51:21 -04:00
Camotoy
196742a597
Set entities silent client-side, and more
Add warden entity events. Fix up other things.
2022-05-31 14:25:15 -04:00
Camotoy
a3cdfc5306
Use correct type for entity metadata 2022-05-29 21:11:10 -04:00
davchoo
87320f0a78
Fix player head yaw for moveAbsolute teleport
Fixes SkullPlayerEntity rotation
Remove redundant? overrides
2022-05-27 19:03:12 -04:00
davchoo
7b9a98aa09
Add croaking and using tongue poses to frog 2022-05-27 13:59:37 -04:00
Camotoy
4a9eec4c54
Implement last death position translation 2022-05-26 19:34:27 -04:00
Camotoy
85800eb32b
Tadpole 2022-05-26 18:52:04 -04:00
Camotoy
e2ce553d3a
Warden time 2022-05-26 18:41:19 -04:00
Camotoy
83c309711e
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.19-bedrock 2022-05-26 18:05:39 -04:00
Camotoy
d74b0e236d
Fix encoding SpawnParticleEffectPacket for 1.18.30+ 2022-05-26 18:04:58 -04:00
Camotoy
29c819fe21
Implement allay, plus some interaction fixes 2022-05-26 17:51:55 -04:00
Camotoy
59cb0c07c2
Start implementing frogs. Ribbit. 2022-05-26 16:22:53 -04:00
Camotoy
9183897d52
Implement chest boat 2022-05-26 13:11:39 -04:00
Camotoy
ebf18cfb28
Switch all Position instances to Vector3i 2022-05-25 19:17:49 -04:00
Camotoy
193fa23146
Paintings work 2022-05-25 18:44:33 -04:00
Camotoy
bbf45b6a4c
Compiles; provide your own mappings for now 2022-05-25 15:55:15 -04:00
Camotoy
5339127105 Start work on 1.19 2022-05-24 16:16:40 -07:00
David Choo
38625312a1
Prevent max health from being set below 0 (#2980)
* Prevent max health from being set below 0

* Add more detail to comment
2022-05-21 11:54:32 -04:00
David Choo
b33cc512b4
Add custom skull render distance (#2751)
* Add player skull render distance

* Improve updateVisibleSkulls a bit

Avoid rechecking visibility on small movements

* Periodically despawn unused skull entities

* Don't hide skull entity for position/rotation changes

Prevents flickering for skulls that are rotating

* Update visible skulls when a skull is removed

* Only update on removal if an entity is assigned

* No need to check for skull in ChunkUtils

Update copyright year

* Avoid rechecking all skulls when a skull is added/removed

* Allow skull render distance and number to be configured

Renamed some fields to better match their values

* Compare texture property directly from GameProfile

* Remove unnecessary blockState field from SkullPlayerEntity

* Use binarySearch for insertion

Wait for player movement before loading skulls

* Allow culling to be disabled by setting max-visible-custom-skulls to -1

* Only remove skulls in inRangeSkulls when culling is enabled

* Add suggestions from review

* Merge the for loops in updateVisibleSkulls

* Fix skulls being leaked on chunk unload
2022-05-14 15:12:18 -04:00
RednedEpic
fbaa6c1f5f Remove entity work from main extension branch for now 2022-05-07 10:11:21 -05:00
Camotoy
05e98c3a10
Fix edge case in health code since 1.18.30
Fixes #2957
2022-05-04 15:54:19 -04:00
RednedEpic
59d5a6469c Add support for modifying identifiers through the AvailableEntityIdentifiersPacket
This is the first of many commits that address adding support for custom entities through the Geyser API.
2022-05-01 12:25:24 -05:00
RednedEpic
43f23674d6 Merge branch 'master' into feature/extensions
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	core/src/main/java/org/geysermc/geyser/configuration/GeyserJacksonConfiguration.java
#	core/src/main/java/org/geysermc/geyser/network/UpstreamPacketHandler.java
#	core/src/main/java/org/geysermc/geyser/session/GeyserSession.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockFilterTextTranslator.java
#	pom.xml
2022-04-24 11:23:26 -05:00
Tim203
2f54bf0e14
Rotation fixes (#2396)
* Should fix some rotation issues

* Some more changes

* Small changes

* Fixed merge conflicts and updated other classes that changed

* Added translation for the LookAt packet
2022-04-23 13:57:32 -05:00
Konicai
03b067e23e
Merge master into extensions (#2941)
* Don't always store cert/client data used for skin uploaded

This takes up a decent 30K of memory that we don't use after the skin is uploaded. The GameProfileTranslator cannot be run more than once per session.

* Make all moon phases visible

The fix to prevent integer overflows also prevented moon phases from being visible until now.

Fixes #2927

* SetTimeTranslator: cast from long on the entire modulus

This should fix some inaccuracies with time on older worlds.

* Bump version; drop 1.17.40; support 1.18.30

* Actually bump to 2.0.3-SNAPSHOT

* Fix message being sent still if a single escape character is sent

* Replace instances of configs using `generateduuid` for Metrics

* Fix some merge mistakes

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-04-20 21:37:50 -04:00
Camotoy
cf8114543e Bump version; drop 1.17.40; support 1.18.30 2022-04-17 19:53:06 -04:00
Camotoy
1ebc3fd8f6
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-04-07 19:22:46 -04:00
Camotoy
2a05dd57ff
Don't store GameProfile class of players
This stores repetitive information, and also we don't currently use the signature, so it's wasted memory.
2022-03-30 22:30:49 -04:00
RednedEpic
02cda38259 Merge remote-tracking branch 'origin/master' into feature/extensions-gradle 2022-03-19 20:48:14 -05:00
Camotoy
0829b5cd4e
Replicate Bedrock shield behavior more accurately
If the player swings, then they cannot be holding their shield at the same time.

Also fixes an animation edge case with other players.
2022-03-15 13:34:56 -04:00
Camotoy
7f5d81772b Fix inability to toggle sitting of parrots 2022-03-10 15:16:08 -05:00
Camotoy
9154a4571c Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-03-06 20:35:04 -05:00
Camotoy
17fb38e567
This method can be final 2022-03-01 22:50:11 -05:00
Camotoy
e163301d23
Fix StackOverflow possibility with undead horses 2022-03-01 15:44:13 -05:00
Camotoy
b4b5cea42d
Implement offhand support when interacting with entities
By simulating the exact processing that Java Edition does on the client-side, we can achieve full packet parity with Java when interacting with an entity.
2022-02-25 11:02:18 -05:00
Camotoy
7d1ec5c41a
Support offhand interactions with entities 2022-02-24 22:49:10 -05:00
Camotoy
44af9da01d
Use axolotl tempt tag to determine axolotl food 2022-02-11 13:37:19 -05:00
Camotoy
354e87b747
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/extensions 2022-02-10 09:17:27 -05:00
Camotoy
0eed6025a6
Remove protocol checks referencing 1.17.30
These are now unnecessary.
2022-02-08 23:16:11 -05:00
Camotoy
1fba96c339
Address armor stand invisibility edge case
See https://github.com/GeyserMC/Geyser/issues/2780
2022-01-22 16:22:27 -05:00
Camotoy
001a1a7a15
Support proper dimensions for player dying pose 2022-01-19 19:30:45 -05:00
RednedEpic
30303d5f16 Implement support for adding Geyser subcommands 2022-01-16 15:09:53 -06:00
Tim203
3251d9010c
We're in 2022 now 2022-01-01 20:03:05 +01:00
Camotoy
68c13c08fa
Fix some regressions in swim handling 2021-12-25 22:46:16 -05:00
David Choo
65aaa07493
Fix sneaking speed adjustment and bounding box (#2728)
* Fix sneaking speed adjustment and bounding box

Also remove redundant session variable in SessionPlayerEntity

* Add comment to valid field

* Hopefully fix crawling after swimming in water
2021-12-23 19:49:58 -05:00
Camotoy
4c409f98f3 Properly implement piglin/hoglin dimension safety
Whether they shake or not is now controlled by the server, as implemented in Java Edition.
2021-12-20 22:54:34 -05:00
Camotoy
6eb069cc13 Fix evoker fangs not being visible
Also implement sound when attacking
2021-12-20 19:59:12 -05:00
Camotoy
24f09e016d Entity IDs in Java Edition just need to be integers
We don't need to keep them as longs - this just reduces the amount of casting needing throughout the codebase.
2021-12-20 19:25:11 -05:00
Camotoy
15522aed52 Fix fishing rod behavior on Geyser players
Fixes #2716
2021-12-19 19:15:53 -05:00
David Choo
754bb42c19
Fix some mount offsets and strange behaviors with GSit (#2701)
* Prevent boats from floating when a Bedrock player rides in the back

* Update llama and shulker mount height offset

* Fix Trader llama mount offset

* Change passengers to an IntList

Also move rotation lock stuff to EntityUtils

* Allow EntityCache.getEntityByJavaId to return the session's player

Removes many checks from several translators.

* Fix mount offset on armorstands and area effect clouds

Also prevent area effect clouds from despawning when used as an invisible entity (used in GSit to offset players riding on other players)

* Update mount offsets on height changes

TODO test this

* Actually update vehicleId and optimize StriderEntity metadata update

* Don't hide marker armor stands and properly update mount offsets

* What?

* Remove y offset for Shulkers riding other entities

* Confirm teleports in the order received

This allows Bedrock players to move after standing up when using GSit

* Fix mount offset for riders on baby zoglins

* Cache only the latest teleport and confirm teleports immediately

* Fix crawling with GSit

* Inline var and undo respawn method

* Use Entity reference for vehicles

* Remove ridingVehicleEntity from GeyserSession

* Use Entity references for passengers and drop cachedPlayerEntityLinks

* Reuse variable and remove setVehicle(null)
2021-12-18 11:43:57 -05:00
Camotoy
117ebdd9c1
Remove extra semicolon 2021-12-13 13:24:58 -05:00
Camotoy
3d6dd6b8ac
Remove debug code 2021-12-11 16:06:47 -05:00
Camotoy
892855415b
Fix offset team colors
Fixes #2674
2021-12-11 16:05:12 -05:00
Camotoy
2953ea9513
Fix NPE when hovering over ender dragon 2021-12-06 15:06:53 -05:00
Camotoy
70ec77b1e3
Revert this particular change since it wasn't quite ready yet 2021-12-05 19:07:51 -05:00
Camotoy
e954d091b9
Prevent errors from simply being swallowed 2021-12-05 19:03:47 -05:00
Camotoy
9084c59003
Fix regressions in player movement handling 2021-12-02 19:56:12 -05:00
David Choo
a305c22665
1.18 entity name and metadata changes (#2651)
* Fix amount & javaId being used before it is initialized

Fixes invisible falling blocks and incorrectly sized exp orbs

* Add missing item metadata to throwable items and fireballs

Renamed ItemedFireballEntity -> FireballEntity

* Renamed more EntityDefinitions to match MCProtocolLib

* Add some missing metadata and add null check

* Use entity type when possible in debug spawn message

Fallback onto classes simple name
Also don't register ENDER_DRAGON_PART

* Remove redundant entity identifiers and fix END_CRYSTAL and FISHING_BOBBER identifiers

minecraft:end_crystal -> minecraft:ender_crystal
minecraft:fishing_book -> minecraft:fishing_hook

* Cave spider should inherit metadata from spider

* Keep entity definitions in roughly alphabetical order

* Alphabetize entity definitions

* ABCs?

* Bump MCProtocolLib version
2021-11-26 23:03:46 -05:00
Camotoy
daea2618c5
Update for MCProtocolLib changes 2021-11-23 10:55:20 -05:00
Camotoy
966c2155ad
API: change player class to Connection 2021-11-22 14:52:26 -05:00
RednedEpic
83ddbd7d1a Initial api draft 2021-11-21 12:36:42 -06:00
RednedEpic
2c663e0ee5 The Great Refactor Part 3 - Entire project restructure 2021-11-20 17:29:46 -06:00
RednedEpic
3f5cb29ee0 The Great Refactor Part 2 - org.geysermc.connector -> org.geysermc.geyser 2021-11-20 15:34:30 -06:00