Commit graph

591 commits

Author SHA1 Message Date
RednedEpic
b6c2592b5c Add missing import 2020-04-04 02:08:23 -05:00
Redned
ddf2f471ea
Merge branch 'master' into chunk-fix 2020-04-04 02:00:18 -05:00
RednedEpic
786f137e28 Add support for team prefixes, suffixes, and colors (Fixes #150) 2020-04-04 01:27:34 -05:00
RednedEpic
9b487d7d03 Fix combat by sending the animate packet after damage (Closes #260) 2020-04-03 17:20:14 -05:00
RednedEpic
3aa7b2ddad Use IntSet for JAVA_RUNTIME_WOOL_IDS 2020-04-02 18:09:09 -05:00
RednedEpic
e76b67265a Rebase 2020-04-02 17:53:45 -05:00
RednedEpic
be9396f585 Merge branch 'master' into inventory 2020-04-02 17:01:17 -05:00
Redned
4a8aeda677
Merge pull request #249 from endevrr/block-break-animations (Closes #153)
Block breaking animations
2020-03-28 13:58:44 -05:00
William Johnstone
eb707a71df Add requested changes 2020-03-28 16:03:09 +00:00
Redned
721761cc18
Merge pull request #248 from endevrr/inventory
Fix waterlogged blocks
2020-03-27 22:01:25 -05:00
endevrr
20e6c7fcbf
Merge branch 'inventory' into block-break-animations 2020-03-28 00:04:53 +00:00
William Johnstone
0caee67e43 Finalise block breaking, (water calculations omitted because of no access to server api) 2020-03-27 23:39:53 +00:00
William Johnstone
a00cf75bc7 Fix waterlogged blocks 2020-03-27 23:23:26 +00:00
Redned
00b93c5527
Merge pull request #243 from DoctorMacc/inventory
Implement bed colors (Closes #222)
2020-03-27 15:20:00 -05:00
BuildTools
7cbb0388e2 Update mappings submodule 2020-03-27 16:16:33 -04:00
BuildTools
7b5bb22321 Rename BEDCOLORS to BED_COLORS 2020-03-27 14:21:34 -04:00
BuildTools
17258dcaf6 Remove debugging code 2020-03-27 13:09:40 -04:00
BuildTools
7a402c40b3 Use mappings to generate bed colors 2020-03-27 13:08:21 -04:00
RednedEpic
03e11df58b Fix null potion type message in console (Addresses #227) 2020-03-26 23:29:16 -05:00
RednedEpic
5222232e72 Add rest of fixes for operator bug 2020-03-26 23:00:52 -05:00
BuildTools
e5766ef96a Store bed colors in Object2ByteOpenHashMap 2020-03-26 18:34:54 -04:00
BuildTools
22908c4de7 Remove whitespace 2020-03-26 10:31:57 -04:00
BuildTools
545ab0f268 Move bed-specific code to BedBlockEntityTranslator.java 2020-03-26 10:22:44 -04:00
BuildTools
5301c8c3f6 Implement bed colors
Java Edition includes the bed color in the namespaced ID; in Bedrock edition it's one of the tag values as a block entity. This code involves creating a table between block states and bed color numbers and looking that up on chunk load or block update.
2020-03-25 22:03:46 -04:00
Redned
bb601daf26
Merge pull request #239 from e3ndr/master
Make translators annotation based.
2020-03-25 01:01:37 -05:00
Ender
f8407eeb5a Add requested changes to PR 2020-03-25 00:55:09 -05:00
Ender
bbf6683bd8 Make all translators annotation based 2020-03-23 23:24:17 -05:00
Ender
13a58dc825 Begin making translators annotation based
Also, rename TranslatorsInit to Translators; makes alot more sense.
2020-03-23 23:03:33 -05:00
DoctorMacc
a821312f7e
Add switch for dealing with ChatColor.NONE
In-game chat uses ChatColor.NONE for handling reset of text.
2020-03-23 15:13:45 -04:00
William Johnstone
60662ae06c Moved break time checks to BlockUtils class, Created ItemUtils and added helper function to get enchantment levels on items, implemented a entity effect cache, added haste and mining fatigue check for block breaking animations, fixed block breaking animations for blocks with speeds that are not affected by tools. 2020-03-22 22:59:34 +00:00
William Johnstone
a0884596e3 Fix issue with players being able to update their own gamemode 2020-03-21 22:59:16 +00:00
William Johnstone
4b40b07bf8 Refactor code and improve sword breaking 2020-03-21 21:37:55 +00:00
William Johnstone
09cdcbdf94 Add block breaking animations that actually work (still incomplete, doesn't take enchantments or player effects into account, also doesn't account for being in the air or underwater) 2020-03-21 20:14:09 +00:00
William Johnstone
350bb28c7c revert last commit as I'm starting over 2020-03-20 21:28:20 +00:00
William Johnstone
650a1e2ab1 Start block breaking animations (inventory is broken) 2020-03-20 20:34:16 +00:00
Tim203
8b824cccf7
Added VR as InputMode (fixes #219) 2020-03-19 12:51:14 +01:00
RednedEpic
0a3a4a9ee1 Merge remote-tracking branch 'origin/master' 2020-03-18 16:10:45 -05:00
Redned
62b183a387 Update bedrock protocol lib and remove trove 2020-03-18 16:10:28 -05:00
Ender
1f8a2c5765 Make the passthrough motd display correctly on clients
Before: https://i.e3ndr.xyz/?i=W63C
After: https://i.e3ndr.xyz/?i=SGKS
2020-03-17 17:55:11 -05:00
RednedEpic
51050e3868 Merge remote-tracking branch 'origin/master' 2020-03-17 11:43:28 -05:00
RednedEpic
21dc2e8362 Add Geyser reload command and commands for platforms (Closes #141) 2020-03-17 11:43:09 -05:00
RednedEpic
1bcee8d36f Merge branch 'master' into inventory 2020-03-15 13:21:37 -05:00
RednedEpic
16c9317a36 Fix flickering sky if time is too high (Closes #200)
This was caused because the max int size is 2,147,483,647, which is what Minecraft: Bedrock Edition uses in the time packet. In Minecraft: Java Edition, a long is used which has a max length of 9,223,372,036,854,775,807, thus causing the sky to bug out.

This commit uses the modulus operator with the max time value per-day of 24,000 to retrieve the remainder.
2020-03-15 13:20:55 -05:00
RednedEpic
e203cfd4a7 Move back to XUID for Floodgate
The normal identity UUID caused problems and caused the bedrock client to crash when using Floodgate. This was likely because on bedrock edition, it's a version 3 UUID opposed to java edition which uses version 4.
2020-03-14 14:03:44 -05:00
RednedEpic
105ce2b3b5 Add effect translations 2020-03-10 19:40:51 -05:00
RednedEpic
6eac178305 Merge branch 'master' into inventory 2020-03-10 18:46:27 -05:00
Tim203
37d377b483
Floodgate now uses identity instead of xuid 2020-03-09 21:32:19 +01:00
RednedEpic
acc30f2432 Move DeviceOS to common module 2020-03-08 11:45:00 -05:00
RednedEpic
9e203d48aa Fix running Geyser commands ingame 2020-03-06 19:37:35 -06:00
RednedEpic
0e355c1a95 Fix natural creeper explosion animation not showing up 2020-03-06 19:27:12 -06:00
RednedEpic
70d6a28c22 Merge branch 'master' into inventory 2020-03-06 17:30:46 -06:00
RednedEpic
7bd53c95c3 Work on a lot more entity flags 2020-03-06 17:29:11 -06:00
RednedEpic
e4c2f79bc5 Fix a couple minor entity bugs 2020-03-06 15:56:48 -06:00
RednedEpic
119f35b690 Fix chat getting cut off (Closes #188) 2020-03-06 15:44:49 -06:00
AJ Ferguson
f71c70224b Only translate full chunks 2020-03-05 17:55:22 -09:00
RednedEpic
b2d611e24c Fix some problems brought from merge conflicts 2020-03-05 20:53:58 -06:00
RednedEpic
418026dbe6 Merge branch 'block-entities' into inventory 2020-03-05 20:00:14 -06:00
AJ Ferguson
eaf45ff6f7 Fix chunk view position bugs on some servers 2020-03-05 16:26:36 -09:00
AJ Ferguson
223e94a31d Revert non-full chunk fix
This fix causes far too much lag on big non-full chunk updates
2020-03-05 10:45:50 -09:00
RednedEpic
6b22bcec2b Merge branch 'master' into inventory 2020-03-04 21:35:20 -06:00
RednedEpic
1670c77672 Only allow console to shut down Geyser with a command 2020-03-04 20:44:42 -06:00
RednedEpic
936cbad67d Get log4j2 working and fix commands 2020-03-04 20:35:23 -06:00
RednedEpic
e52a461a73 Attempt to get log4j2 working 2020-03-01 10:48:49 -06:00
AJ Ferguson
ebc81735c0 Merge remote-tracking branch 'remotes/origin/master' into inventory 2020-02-29 12:46:56 -09:00
Redned
773abc9fde
Update packetlib to 1.5-SNAPSHOT 2020-02-29 15:32:03 -06:00
RednedEpic
f9a1656b8e Merge remote-tracking branch 'origin/plugin' into plugin 2020-02-26 19:31:45 -06:00
RednedEpic
2bdf3d4d7f Merge branch 'master' into plugin 2020-02-26 19:31:19 -06:00
Tim203
b97fa2b1c8 Added a response to the PluginMessage packet in the Login state 2020-02-26 23:53:26 +01:00
AJ Ferguson
bfca25bbe3 Fix compile errors 2020-02-25 22:31:55 -09:00
AJ Ferguson
bc3992f775 Merge remote-tracking branch 'remotes/upstream/master' into inventory
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/translators/TranslatorsInit.java
#	connector/src/main/java/org/geysermc/connector/network/translators/inventory/updater/ChestInventoryUpdater.java
2020-02-25 22:12:39 -09:00
RednedEpic
09e4bbd8ca Make sure scale is not null when setting armor stand as baby
If it's null, it's invisible.
2020-02-25 19:52:27 -06:00
RednedEpic
4c87a13e25 Snap height only if on ground
(Original commit 2dc6ab453f931ac2083a6d142e963beb0a101b94)
2020-02-25 19:36:36 -06:00
RednedEpic
f5bc328737 Merge branch 'master' into feature/new-protocol-lib 2020-02-25 18:54:31 -06:00
RednedEpic
f0e01ab1c9 Fix getting stuck in wall bug
Due to java doubles being somewhat more "precise" and bedrock positions being sent in floats instead, this caused bedrock players to get stuck in blocks when jumping or running near them in a certain way, thus causing the server to try and correct their position, potentially flagging anticheats and causing the server to print a "moved wrongly" message in console.

See: https://stackoverflow.com/questions/322749/retain-precision-with-double-in-java
2020-02-25 18:50:09 -06:00
RednedEpic
1af4d71bd1 Remove extra height added to position when server corrects movement
This should fix the bug where you can "climb" up blocks. Although this doesn't fix the random spasm the client gets, it should prevent players from climbing up blocks (and getting stuck in them), thus preventing anticheats from going crazy.
2020-02-24 20:04:18 -06:00
Redned
b41d66dd19
Set can climb for entity back to true
This has nothing to do with the bug where players can "climb" up blocks, but rather disabling this feature disables the ability to climb up vines and ladders. This commit reverts that.
2020-02-23 18:02:54 -06:00
Redned
35ed1ec916
Merge pull request #156 from AJ-Ferguson/chunk-fix
Chunk fixes
2020-02-23 14:38:20 -06:00
RednedEpic
720f69d913 Set can climb for entity to false 2020-02-16 14:07:40 -06:00
RednedEpic
41a24ca6ab Merge branch 'master' into plugin 2020-02-16 13:25:37 -06:00
RednedEpic
f87ff70369 Update to NukkitX Protocol Lib 2.5.1 2020-02-16 13:07:35 -06:00
RednedEpic
9ffec0021c Fix movement bugs *and* allow for teleportation 2020-02-16 12:40:54 -06:00
OnlyBMan
18a50d4e3e Fix baby armorstands showing even when invisible 2020-02-15 21:35:05 -05:00
RednedEpic
f52684f0dd Fix teleportation 2020-02-15 19:06:18 -06:00
RednedEpic
ee85abf34c Fix player movement not being visible, movement bugs and laggy entities
(Addresses #74, #109)
2020-02-15 17:39:34 -06:00
AJ Ferguson
2d0a584106 Fix swimming 2020-02-15 01:18:41 -09:00
RednedEpic
e6d166d4d4 Merge branch 'master' into feature/new-protocol-lib 2020-02-14 17:58:53 -06:00
RednedEpic
4bb34cdcce Merge branch 'master' into feature/new-protocol-lib 2020-02-14 17:57:28 -06:00
RednedEpic
4186715083 Update to NukkitX Protocol Lib 2.5.0 release 2020-02-14 17:39:26 -06:00
RednedEpic
bf90b803ca Fix interact and attack in interact translator 2020-02-14 17:27:08 -06:00
AJ Ferguson
35bf1b455e Fix new player entity data getting lost while loading skin 2020-02-13 17:45:15 -09:00
AJ Ferguson
fa7324e1f5 Add support for offhand 2020-02-13 17:45:14 -09:00
AJ Ferguson
b18b83fd9a Fix armor not showing if partially armored 2020-02-13 17:45:14 -09:00
AJ Ferguson
276a8d6485 Fix hotbar slot changing when the player's hand is updated
The default value is 0.
-1 seems to leave the selected hotbar slot unchanged.
2020-02-13 17:45:14 -09:00
AJ Ferguson
bf1835e691 Fix Block IDs
Quick fix. Might have a different method for getting block IDs in the future
2020-02-12 22:29:44 -09:00
AJ Ferguson
b1a0ed3e91 Merge remote-tracking branch 'remotes/upstream/master' into inventory
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/translators/TranslatorsInit.java
#	connector/src/main/java/org/geysermc/connector/utils/Toolbox.java
2020-02-12 21:58:09 -09:00
AJ Ferguson
7f194b2d54 Increase render distance instead of chunkpublisher radius 2020-02-11 13:42:02 -09:00
AJ Ferguson
3615ec2b90 Fix ChunkPosition 2020-02-10 18:24:09 -09:00
AJ Ferguson
9008036ee4 Merge remote-tracking branch 'remotes/upstream/master' into chunk-fix
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/translators/block/BlockTranslator.java
#	connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaChunkDataTranslator.java
#	connector/src/main/java/org/geysermc/connector/utils/ChunkUtils.java
#	connector/src/main/java/org/geysermc/connector/utils/Toolbox.java
2020-02-10 17:38:56 -09:00
SupremeMortal
c70cf0bb47
Make biomes tag final 2020-02-09 22:55:07 +00:00
SupremeMortal
f9cd88eaa2
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/direct-block-mapping
 Conflicts:
	connector/src/main/java/org/geysermc/connector/utils/Toolbox.java
2020-02-09 22:53:57 +00:00
SupremeMortal
9594b42523
Add waterlogging support 2020-02-09 22:06:22 +00:00
SupremeMortal
c9f33f8344
Pull in new submodule changes 2020-02-09 21:22:39 +00:00
RednedEpic
e8a1e0dae1 Add velocity platform support 2020-02-08 13:43:50 -06:00
AJ Ferguson
516fc51162 Small changes 2020-02-05 20:23:06 -09:00
AJ Ferguson
e4ab4b336c Chunk fixes 2020-02-05 19:32:33 -09:00
AJ Ferguson
e0a1435d51 Send confirmation packet when spawning
Fixes some chunk bugs
2020-02-05 19:23:08 -09:00
AJ Ferguson
13f198845c Fix bugs when rapidly switching dimensions 2020-02-05 19:21:09 -09:00
OnlyBMan
0bb18d26b0 Load biome definitions only once instead of everytime a new player joins 2020-02-05 22:02:23 -05:00
OnlyBMan
4dff067faa Add biomes 2020-02-05 21:10:34 -05:00
RednedEpic
0cf574ddcb Merge branch 'master' into feature/direct-block-mapping 2020-02-05 18:59:20 -06:00
RednedEpic
4f461bf374 Start on converting to the new NukkitX protocol library updates 2020-02-05 18:55:34 -06:00
AJ Ferguson
3d61b3ce28 Bump OpenNBT lib to 1.4-SNAPSHOT
This fixes the NPE when sending an ItemStack with a null NBT tag.
This also fixes some item movement bugs on pure vanilla servers.
2020-01-30 23:15:18 -09:00
AJ Ferguson
1a9aa4255f Some refactoring and bug fixes
Still much to do.
Inventory desyncing when crafting will be fixed soon.
2020-01-30 16:05:57 -09:00
AJ Ferguson
5e5aeed578 Merge remote-tracking branch 'remotes/upstream/master' into inventory 2020-01-30 12:08:39 -09:00
AJ Ferguson
3e4fd618e5
Fix offline auth bug
Handled in GeyserSession#connect
2020-01-28 23:28:23 -09:00
RednedEpic
240f41ff03 Use Path instead of File for floodgate key file in config
...and fix related issues with the file not being found.
2020-01-26 11:22:21 -06:00
RednedEpic
989312835f Fix custom name visible flag (Closes #137) 2020-01-26 00:05:05 -06:00
RednedEpic
e0f6c8a170 Fix chests and potentially other block entities 2020-01-25 23:51:29 -06:00
RednedEpic
d520a5670a Merge branch 'master' into block-entities 2020-01-25 23:05:36 -06:00
Redned
c4857c6a54 Merge branch 'master' into plugin 2020-01-25 23:03:47 -06:00
RednedEpic
cc3cf70257 Search for key in Geyser plugin folder in plugin versions 2020-01-25 22:59:00 -06:00
Tim203
ba724bb7d6 Added the Nintendo Switch as DeviceOS 2020-01-25 13:10:58 +01:00
RednedEpic
a55381faaf Add support for Minecraft 1.15.2 and fix kick with villager (Fixes #138) 2020-01-22 20:28:08 -06:00
RednedEpic
6bb478bda4 Merge branch 'master' into block-entities 2020-01-19 22:35:33 -06:00
RednedEpic
ed322029f3 Update hybrid mode reference to 'floodgate' in config.yml 2020-01-18 17:53:56 -06:00
RednedEpic
6702c59a15 Fix auth type check from merge conflict 2020-01-18 16:50:17 -06:00
RednedEpic
88fc3cf843 Fix building 2020-01-18 16:48:46 -06:00
RednedEpic
52b23950ea Merge branch 'master' into plugin (should fix building) 2020-01-18 16:46:07 -06:00
RednedEpic
5c7755b772 Shade netty into Bukkit jar 2020-01-18 16:38:40 -06:00
RednedEpic
843c7a3047 Add support for showing item in hand for entities (Closes #106) 2020-01-11 13:05:43 -06:00
AJ Ferguson
9f7cba1915 Fix build error caused by mappings submodule 2020-01-08 19:48:03 -09:00
RednedEpic
dc594ee22c Update license headers
Certain headers for classes that are to be removed (e.g. plugin api) were not updated to prevent merge conflicts.
2020-01-08 21:05:42 -06:00
RednedEpic
b1d93fb633 Organize entity packages a bit more 2020-01-08 20:35:00 -06:00
RednedEpic
814da2453c Implement sheep colors and shearing (Closes #126) 2020-01-08 20:26:44 -06:00
Tim203
c5205cc873 Added a simple way to identify Geyser players.
Keep in mind that using this to identify players is less secure than using Floodgate
2020-01-07 22:29:49 +01:00
AJ Ferguson
66f5ed9495 Merge remote-tracking branch 'remotes/upstream/master' into inventory
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/translators/TranslatorsInit.java
#	connector/src/main/java/org/geysermc/connector/network/translators/java/JavaRespawnTranslator.java
2020-01-04 14:39:01 -09:00
RednedEpic
2fc591e341 Merge Floodgate changes 2020-01-03 23:58:58 -06:00
RednedEpic
0c24ffc629 Merge branch 'master' into plugin 2020-01-03 23:25:00 -06:00
RednedEpic
7d14d079ef Fix NPE with ServerInfo being null for ping passthrough 2020-01-02 12:37:30 -06:00
AJ Ferguson
8a19e35342 Update mappings submodule 2019-12-31 16:49:30 -09:00
SupremeMortal
d686a009d1
Fix most block palette issues. Others are due to the mappings 2019-12-31 23:24:54 +00:00
RednedEpic
0eb182d0da Add block value translator
You can now see chest opening/closing animations :)
2019-12-31 13:24:59 -06:00
RednedEpic
a59e330db9 Add default tags for campfire block entity 2019-12-31 12:33:42 -06:00
RednedEpic
da645abec4 Add support for banner block entities
Colored banners still need to be implemented. The color for banners themselves is set as part of the block entity on bedrock meanwhile in java edition its set as part of the block state.
2019-12-31 12:31:04 -06:00
RednedEpic
bc2df705ef Fix campfires 2019-12-31 11:53:42 -06:00
AJ Ferguson
cc4cfd020e Support end credits 2019-12-30 19:26:11 -09:00
AJ Ferguson
423d02306c Fix compass 2019-12-30 19:24:21 -09:00
RednedEpic
da8bd8a659 Actually fix signs and start on campfire/container translators
Since signs are not sent as block (tile) entities in chunks when it comes to later Minecraft versions, caching and sending the signs after the chunk packet has been sent was the only way to fix this. Sign data sending has intentionally been delayed in JavaUpdateTileEntityTranslator in the event that a chunk takes a long time to send and the block entity data is sent first.
2019-12-30 21:55:17 -06:00
SupremeMortal
94851ef4b8
Move all block related code into BlockTranslator
It makes more sense.
2019-12-31 00:14:38 +00:00
SupremeMortal
2e46ecf28f
Rename map and use correct ID when entering. 2019-12-30 23:37:30 +00:00