Commit Graph

1462 Commits

Author SHA1 Message Date
Camotoy a2a7e99402
GUI Improvements (#1462)
- Added `GeyserCommand.isExecutableOnConsole()`. If this is set to false, the command will not appear as an option in the GUI.
- Added `GeyserCommand.getSubCommands()`. If not empty, the subcommand options will now appear in the GUI.
2020-10-27 18:40:00 -04:00
SupremeMortal 04f0318bd0 Use new Open Collaboration maven repository 2020-10-27 11:24:18 +00:00
David Choo d93d4d0942
Projectile fixes (#1451)
* Predict the trajectory of projectiles and add particles

* Correct lingering potion gravity

* Update last position on move absolute

* Clean up

* Add egg to ItemRegistry and update mappings
2020-10-26 11:54:37 -04:00
rtm516 c30cb78e74
Add statistics menu (#1424)
* Add statistics menu

* Changed back button text

* Add check to make sure the player requested the statistics display

* Better item translation support; misc changes

* Clean up session getting?

* Remove extra debug that is likely unnecessary

* Remove unused function

* Update languages submodule

* Clean up javadoc comment

* Fix typo

Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
Co-authored-by: Camotoy <20743703+DoctorMacc@users.noreply.github.com>
2020-10-24 23:33:49 +01:00
RednedEpic dfba278f4d Use correct methods in refreshEmotes 2020-10-23 01:36:34 -05:00
RednedEpic ee8c718c62 Translate emote list packet 2020-10-23 01:25:24 -05:00
rtm516 7f2b2e0913
Bedrock <-> Bedrock skin display fix (#1195)
* Implement partial bedrock skin fix

* Fix equals method

* Fix ViaVersion

Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
2020-10-22 23:01:03 -05:00
Redned 62d984da61
Make userAuths information more clear 2020-10-19 20:56:01 -05:00
Camotoy 7f5fac38c6
Update to Adventure 4.1.1 (#1410)
* Update to Adventure 4.0.0

* Update to 4.0.1

* Update again, I guess.
2020-10-19 19:09:16 -04:00
Camotoy b02bc33393
GeyserSession: Set a default value for attackSpeed (#1419)
Fixes cooldowns not showing on a fresh world.
2020-10-19 19:03:31 -04:00
DaPorkchop_ 18e2a52d98
fix decoding sections with duplicate palette entries (#1430) 2020-10-19 09:43:51 +01:00
Camotoy 45429a9357
SettingsUtils: fix 'show coordinates' setting persistence (#1429)
The boolean that toggled this was accidentally in the wrong spot.
2020-10-18 23:29:11 -04:00
DaPorkchop_ 0635605a24
fix chunk section decoding (#1418)
* fix chunk section decoding

* switch back to official MCProtocolLib
2020-10-18 10:59:37 -04:00
David Choo 5c28eaca15
Fix mob mount positions (#1392)
* Fix mob mount positions

Uses offsets from Java Edition.

* Fix Boat mount pos for multiple passengers and Fix Ravager

Remove unnecessary horse metadata

* Fix Minecart & Boat Mount Pos, Fix Player Height Offset

* Use offset of EntityType.PLAYER

* Add back metadata
2020-10-17 23:50:41 -04:00
Camotoy ae70dbeece
JavaOpenWindowTranslator: Use MessageUtils for inventory name (#1416)
* JavaOpenWindowTranslator: Use MessageUtils for inventory name

* Remove important messaging
2020-10-17 23:13:04 -04:00
RednedEpic 64f2233581 Fix wolf collar color when it's no longer angry (Closes #1404) 2020-10-15 01:54:05 -05:00
DaPorkchop_ 7d2745dee6
Faster chunk conversion (#1400)
* BlockStorage is never used concurrently, no need to synchronize

* initial, semi-functional, faster chunk conversion

* faster chunk conversion works well for every situation except spigot

* delete unused ChunkPosition class

* preallocate and pool chunk encoding buffers

* make it work correctly on spigot

* make field naming more consistent

* attempt to upgrade to latest MCProtocolLib

* remove debug code

* compile against my MCProtocolLib fork while i wait for my upstream PR to be accepted

* return to Steveice10 MCProtocolLib
2020-10-15 01:30:25 -05:00
RednedEpic 40de801eb0 Add sound when an arrow hits a player 2020-10-15 01:21:44 -05:00
Tim203 2ca2436cdc
Don't use the general thread pool to run an async method (#1397)
* Don't use the general thread pool for an async method

* Align nested class at the bottom
2020-10-14 23:34:24 -04:00
DaPorkchop_ 73bec588fa
fix some NPEs caused by race conditions in chunk conversion (#1396)
* fix some NPEs caused by race conditions in chunk conversion

tbh the whole session should be read-write locked for every operation

* fix code style issues
2020-10-13 11:11:52 -04:00
DaPorkchop_ 191777773c
Don't use wrapper objects for positions in ChunkCache (#1398)
* make ChunkPosition use a hashCode implementation with far better hash distribution

this should improve the performance when used as a hash table key

* ChunkCache no longer uses position wrapper objects

this yields a roughly 15-20% increase in performance when converting chunk data

* fix code style issues
2020-10-13 15:44:47 +01:00
RednedEpic 9b3cd8f725 Fix area effect clouds 2020-10-12 20:36:11 -05:00
Camotoy 1b00eaca4a
Set AuthType in Metrics to lowercase (#1395) 2020-10-12 21:28:54 -04:00
Luke 3f7120d9da
Add player device OS to metrics (#1391)
* Add player device os to metrics

* Add player version, Geyser version, and default locale

Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
2020-10-12 21:17:15 -04:00
Camotoy 96db37c14c
Fix bucket interactions on creative mode (#1369)
* Fix bucket interactions on creative mode

Bedrock uses the BLOCK_INTERACT enum of BedrockActionTranslator to truly indicate if a bucket should be used or not. In order to hook into this, we need to delay the bucket placing by about 5 milliseconds - this gives us time to cancel the interaction if needed.

Bucket sounds will now not play in this case as well.
2020-10-12 20:02:41 -04:00
Camotoy ffcff96bea
Set default values for classes as well (#1387)
Geyser can now start even if the config file is empty. Tested on Spigot and doesn't affect custom values.
2020-10-10 18:08:21 -04:00
Camotoy ec609fa868
Make crossbows prettier (#1359)
- Fix crossbow NBT translation - now crossbows will show as loaded
- Pillagers now more closely resemble Java Edition pose behavior
2020-10-08 20:40:50 -04:00
Camotoy 59f72d0e65
BedrockMobEquipmentTranslator: Don't change item slot if already on that slot (#1353)
* BedrockMobEquipmentTranslator: Don't change item slot if already on that slot

* Update comment
2020-10-09 01:07:50 +01:00
Tim203 45c5ef02cd
Various Scoreboard fixes (#1381)
* Various Scoreboard fixes

Fixes #1328 and a few other potential Scoreboard problems

* Consistent whitespacing

Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
2020-10-08 19:30:05 -04:00
Camotoy 4514167835
Fix fire being punched in all directions (#1370)
Apply the fix we have for fire but for all block faces.
2020-10-08 18:44:15 -04:00
Arktisfox 16eb2a491a
Area cloud fixes (#684)
* Fix NotNull error with particles, replace incorrect string meta with int meta.

* Add back newline

* Remove debug line

* Update Protocol and prepare for merge

Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
2020-10-08 18:33:36 -04:00
Camotoy 172a5a6db8
Add Fabric as a platform type (#1376)
* PlatformType: Add Fabric as a platform

* Don't use XML reflections on Fabric
2020-10-07 18:51:36 -04:00
Camotoy 90656a9846
Jenkins improvements (#1368)
- Show changes in the Discord webhook
- Delete after 20 builds

Co-authored-by: rtm516 <ryantmilner@hotmail.co.uk>
2020-10-07 18:50:39 -04:00
Camotoy ba6f174058
Add support for fishing rods pulling Bedrock players (#1355)
Fishing rods pulling players is a clientside feature on Java. On Bedrock, a SetEntityMotionPacket is sent to the client. Therefore this PR implements the Java fishing rod pulling mechanics and sends it off to Bedrock, which sends MovePlayerPackets that are sent to the server.
2020-10-02 15:44:46 -04:00
Camotoy 772cb246f0
Forward keep alive packets to the client (#1344)
* Forward keep alive packets to the client

Previously, MCProtocolLib (our Java protocol library) handled keep alive packets for us. This commit disables that option and 'forwards' the keep alive packets to the client, and sending the keep alive packet back once Bedrock sends us a ping response.

* Delete DataCache

* Update to latest MCProtocolLib

* Swap values around as a sanity check
2020-09-29 14:15:11 -04:00
Camotoy 3c4cde9677
Tipped arrow translation (#1331)
* Tipped arrow translation

- Tipped arrow items are now properly translated both ways
- Tipped arrow particle effects are also translated, by having a list of all colors Java could send us and their Bedrock ID

* Remove a whitespace
2020-09-29 13:30:37 -04:00
Camotoy aee9ccc7d2
DoorSoundInteractionHandler: ignore iron [trap]doors (#1343) 2020-09-29 13:21:43 -04:00
Camotoy 9bb52afc8a
BedrockRespawnTranslator: prevent some respawn bugs (#1346) 2020-09-29 13:21:25 -04:00
Camotoy a5b00e09a1
Villager trade fixes (#1350)
This commit mainly focuses on fixing the crashing of villagers that occurred pre-1.14.

Co-authored-by: AJ Ferguson <AJ-Ferguson@users.noreply.github.com>
2020-09-29 13:19:37 -04:00
bundabrg 650c02ef66
Remove 'geyser' from parameters when executing a command under Spigot, Bungeecord, Sponge, Velocity (#1266)
* Remove 'geyser' from parameters when executing a command under Spigot, Bungeecode, Sponge, Velocity

Fixes https://github.com/bundabrg/GeyserReversion/issues/8

* Fix case when there are no sub commands

Co-authored-by: bundabrg <bundabrg@grieve.com.au>
2020-09-28 23:49:46 -04:00
EasyClifton 3650321576
Update README.md (#1349)
Make the server address look cool (for build 405, sorry)
2020-09-28 17:09:57 -05:00
rtm516 7c49391b9d
Fix gamemodes not fully applying on server switch (#1348)
* Fix gamemodes not fully applying on server switch

* Revert previous commit and move session flag updating to the adventure settings method
2020-09-28 17:43:50 -04:00
Luke d9b05f5b72
Update the CI link in the README (#1339) 2020-09-25 15:52:44 -04:00
Camotoy beae39e280
Prevent Bedrock from changing gamemode client-side (#1337)
In vanilla Bedrock, if you have operator status, the client sends a packet to change gamemode without confirmation from the server. Since we have a custom server option to request the gamemode, we just reset the gamemode and ignore this packet.
2020-09-25 20:09:02 +01:00
Camotoy fa0864b8a1
Fix picking up liquids with buckets (#1311)
* Fix picking up liquids with buckets

The last fix to prevent bucket placement upon interacting with an inventory had an oversight with empty buckets, making them unusable. This commit fixes that while keeping the previous fix.

* Remove debug line

* Fix milk drinking and visual bucket item apperance

* Comment elaboration

* Make indentiation better
2020-09-24 15:11:42 -04:00
Camotoy 1ec768d95d
Fix interaction spam bug (#1324)
* Fix interaction spam bug

This references the Nukkit 1.0 fix for the client bug of spamming to interact. Holding down still works.

* Remove interaction position set at action type 1

* Remove debug line
2020-09-24 12:54:18 -04:00
Redned 0cd43818f1
Use SERVER_READY in BedrockRespawnTranslator to fix respawn bug 2020-09-22 20:10:38 -05:00
Camotoy b4c7682130
Implement experience sounds (#1320)
Bedrock sends a level event for the experience sound around the same time as a Java entity collect item packet is sent.
2020-09-22 14:16:57 -04:00
Camotoy 2dc7dc10ff
Remove warning about slot 50 (#1325)
We know that it occurs with console crafting.
2020-09-22 14:15:59 -04:00
Camotoy 02aeddbadd
Scoreboard: Fix various issues (#1286)
* Scoreboard: update score on UpdateType.ADD

* Actually fix

* Readd the Objective when a score changes

It looks like Objectives only update when you Remove the Objective and add it back using the SetDisplayObjective. This is hopefully a hotfix, but I think that there is no better way.

* Explain score tracking

Co-authored-by: Tim203 <mctim203@gmail.com>
2020-09-21 23:55:13 -04:00