Commit Graph

1647 Commits

Author SHA1 Message Date
Tim203 934fc12b16
Warn if we were unable to check if the system clock is accurate 2021-05-26 20:20:59 +02:00
Tim203 776fc4e933
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/GeyserConnector.java
#	connector/src/main/java/org/geysermc/connector/utils/SettingsUtils.java
2021-05-26 02:17:33 +02:00
Tim203 cfa2805e00
Make sure that the time we use is always the same across servers 2021-05-26 01:55:58 +02:00
Camotoy 1f83a5ac9f
Respect tool tier requirement for block breaking (#1837) 2021-05-23 22:32:42 -04:00
Camotoy 986701f06f
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.17 2021-05-23 21:31:40 -04:00
Camotoy 4734ce2059
Update MCProtocolLib + PacketLib (#2211)
By updating these dependencies, we bring in a couple fixes that should improve network performance:

    Use TCP_NODELAY for the Java connection
    Use Epoll/KQueue if possible for the Java connection
    Only use one event loop for the Java connection
    Fix Netty dependencies so Spigot and BungeeCord can use native network types

Currently, Geyser-Spigot pre-1.12 breaks with these changes. It is unlikely that this will be fixed.
2021-05-23 15:55:01 -04:00
Camotoy c588127648
Yeet block tool type
This is 99% controlled by the server now.
2021-05-19 22:34:50 -04:00
Camotoy b5307ab3ed
21w20a support 2021-05-19 22:24:11 -04:00
Camotoy 024655f008
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/1.17 2021-05-19 17:53:06 -04:00
Konicai dfc24f1ecb
Fix Javadoc in CooldownUtils (#2213) 2021-05-14 23:12:37 -04:00
Konicai 3e3b8faf16
Add client setting for cooldown type, refactor show-coordinates (#2193) 2021-05-14 22:48:34 -04:00
Camotoy dbf366b138
ACTUALLY fix swapping armor in hotbar when armor is already present (#2206)
Tested with iOS, desktop and console
2021-05-10 21:14:30 -04:00
Camotoy 5c76bd8544
Merge branch 'master' of https://github.com/GeyserMC/Geyser into floodgate-2.0 2021-05-10 01:03:48 -04:00
Camotoy 95bcd4000f
Interact with an optional resource pack to add more features (#2176)
See https://github.com/GeyserMC/Geyser/wiki/GeyserOptionalPack
2021-05-10 00:48:01 -04:00
Camotoy 41e0ad3e74
Merge branch 'master' of https://github.com/GeyserMC/Geyser into floodgate-2.0 2021-05-09 16:41:31 -04:00
Camotoy 0691bb67b4
Item frame optimization and block picking support (#2203)
Geyser now supports block picking for item frames. It checks to see if the item frame has an item in it - if so, it attempts the same block picking process with the item inside (NBT included). Otherwise, it attempts to pick for an item frame item.

This commit also improves item frames by having the internal map store the entity and not the ID - in many situations, this prevents two maps from having to be searched. Additionally, item frames are no longer despawned if an item is placed on them - rather, it waits until the server tells us to despawn the entity.
2021-05-09 15:44:41 -04:00
Camotoy 51aa96de2e
Fix visual glitch when swapping out armor that's already equipped (#2173)
Bedrock Edition allows you to swap out armor by right-clicking an item in your inventory, even when armor in that slot is already equipped. This PR prevents Bedrock from performing this action if both slots are occupied (which Java Edition will not do).
2021-05-09 01:25:57 -04:00
Camotoy dda0172ded
Allow more blocks to have a place sound on standalone (#2183)
Items such as wall torch blocks currently do not have a place sound on standalone, as their block identifier differs from their item identifier. This commit uses the pick item logic in order to fix place sounds for such blocks.
2021-05-09 01:19:06 -04:00
Camotoy 2aa131f9dc
Fix minecart rotation when not on rails (#2200)
This isn't perfect, but it's better than before, for sure.
2021-05-09 01:11:42 -04:00
Camotoy ce000a496b
Use tags sent from the server, where possible (#2188)
Java Edition has a tags system that allows for some server-side control of certain properties. This PR allows for piglin trading items, wool, and flowers to be determined from the server.
2021-05-02 21:47:11 -04:00
Camotoy f4426f14f7
Merge branch 'master' of https://github.com/GeyserMC/Geyser 2021-05-02 13:17:17 -04:00
Camotoy e74fa6c42d
Allow connections even if encryption failed to initialize post-1.16.220 (#2147)
This allows Java 16 to still be compatible with Geyser.
2021-05-02 13:07:04 -04:00
Camotoy e692b53c3f
Initial update for 21w17a 2021-05-01 23:19:49 -04:00
Tim203 3b9674ac29
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/dump/BootstrapDumpInfo.java
#	connector/src/main/java/org/geysermc/connector/dump/DumpInfo.java
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/translators/java/JavaJoinGameTranslator.java
#	connector/src/main/java/org/geysermc/connector/utils/SettingsUtils.java
2021-05-01 12:16:25 +02:00
Camotoy 1301cd9c30
Fix interact entity packet (#2179)
For the InteractAt type of packet of the PlayerInteractEntityPacket, Java sends a diff between the entity's current position and the hit result of its cursor. Bedrock sends the full vector location in its interaction. Therefore, we just do the diff ourselves.

This fixes taking armor off of armor stands.
2021-04-30 18:35:45 -04:00
Camotoy abc3a187d4
Provide the Geyser file's MD5 and SHA-256 hash in Geyser dumps (#2026) 2021-04-30 12:43:37 -04:00
Camotoy 7d80dff028
Play effect when feeding baby animals (#2146)
Java plays a client-side-only effect when feeding animals. This commit abstracts out the feeding code we already have for interactive tag and checks it when right-clicking any animal that is a baby.
2021-04-26 19:59:12 -04:00
Camotoy 48fcb4733d
Add emote offhand workaround (#2163)
This commit add a new config option, `emote-offhand-workaround`. If set to a value, emoting will perform the offhand swap action.
2021-04-26 16:10:32 -04:00
Camotoy 17ad18f450
Fix some raid entities up (#2144)
* Fix some raid entities up

- Show axe when vindicator is attacking
- Show arm movement and spell color when evoker summons

* Reduce the amount of casting
2021-04-26 15:22:58 -04:00
Camotoy e7f933ba6c
Show proper names for Java-only items (#2159)
Spectral arrows and knowledge books, if unnamed, will now show their correct, translated names.
2021-04-26 14:44:16 -04:00
D3ATHBRINGER13 9de0ebdba7
Small changes (#2169) 2021-04-26 14:16:13 -04:00
Camotoy 9b39affd28
Reduce the amount of values() calls (#2143)
Because apparently it's not just a constant; it makes a new array every time.
Also, GeyserSession#tick() does not need to be public and I made enchantments in commands use the Java list.
2021-04-26 14:15:24 -04:00
Konicai 873e37e1c0
simplify javadoc of updateShowCoordinates() in WorldCache.java (#2162) 2021-04-21 19:05:53 -04:00
Konicai 0a79eb92ac
Fix unwanted behaviour with show-coordinates (#2151)
Co-authored-by: rtm516 <ryantmilner@hotmail.co.uk>
2021-04-21 16:57:01 -04:00
rtm516 f0a002f0e3
Add option to forward the connection hostname over to the remote server (#2149)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-04-21 14:55:08 -04:00
Tim203 085c122d30
Merge remote-tracking branch 'origin/master' into floodgate-2.0 2021-04-21 19:49:49 +02:00
Camotoy bb41c0f9ee
Add an option for setting Bedrock compression level (#2128) 2021-04-19 22:18:18 -04:00
Tim203 14894c8f27
Allow skin uploader to log messages instead of closing the connection 2021-04-17 17:40:53 +02:00
Tim203 11b10e2857
Allow skin uploader to log messages instead of closing the connection 2021-04-17 17:39:08 +02:00
Camotoy 852d5b050d
Fix item enchanting pre-1.14 (#2127)
If the server spams the window property update packet, then the network ID assigned for each enchanting slot will update too quickly, essentially disabling enchanting. This commit remedies this by only updating the network ID of each slot if a property changed.
2021-04-16 11:42:03 -04:00
Camotoy beb7e54b7a
Fix llama carpet decoration (#2125) 2021-04-16 11:30:17 -04:00
Camotoy 6a88a46b51
Fall back to the loopback address when resolving autoconfigured remote (#2090)
This way, if it errors, you're not stuck with 'unknown host: auto' when actually connecting.
2021-04-16 11:28:15 -04:00
David Choo 70e28604b8
Fix various horse bugs (#2115)
* Fix horse health display

* Fix horses warping back when damaged

* Fix horse jumping animation

* Fix horses not taking damage while standing on magma

* Allow mules and donkeys to jump
2021-04-15 15:31:03 -04:00
Camotoy 404419df08
Merge branch 'master' of https://github.com/GeyserMC/Geyser into floodgate-2.0 2021-04-12 15:10:55 -04:00
Camotoy 22c492fda6
More bounding box fixes (#2132)
- Fix decimal formatting error when running Geyser in another region
- Fix sneaking bounding box when flying
2021-04-12 12:42:42 -04:00
Camotoy 120769c7f6
Allow for crawling and moving in one-block spaces where possible (#1814)
This commit brings full support for crawling, sneaking under 1.5-block-tall spaces, and swimming in one-block areas. There is a check in place that decreases the player's speed to something comparable to Java if they are in a situation where they would otherwise go at normal walking speed (for example: without the check, a Bedrock player would go at full walking speed while crawling).
2021-04-12 00:35:53 -04:00
Camotoy 7dc9c031c2
Compile. (#2122) 2021-04-10 11:10:23 -04:00
Camotoy 8e28e445ba
More 1.16.220 fixes... (#2118)
- Fix pre-1.16.220 creative menu having duplicate items
- Fix 1.16.220 creative menu usage
2021-04-10 00:31:24 -04:00
Camotoy 34fa5475ff
Merge branch 'master' of https://github.com/GeyserMC/Geyser into floodgate-2.0 2021-04-09 11:26:03 -04:00
David Choo e5497922d9
Fix player rotation lock while riding boats for 1.16.210+ (#2114) 2021-04-08 23:15:56 -04:00
Camotoy 7a7cf18e99
Fix banners on entity heads (#2110)
On Bedrock, a banner must be placed in the chestplate slot in order to be visible. On Java Edition, banners are placed in the helmet slot. This commit fixes the issue by migrating banners to the chestplate spot if the chestplate spot is empty.

This commit also fixes pillager poses if they're not holding a crossbow, along with a couple other optimizations.
2021-04-08 19:52:54 -04:00
Camotoy e762448957
Set 1.16.220 as the default Geyser version and fix crafting (#2108)
* Set 1.16.220 as the default Geyser version

* Crafting on all items now works

* Don't re-use variables for readability
2021-04-08 19:32:06 -04:00
Camotoy 53ac196b61
Merge branch 'floodgate-2.0' of https://github.com/GeyserMC/Geyser into floodgate-2.0 2021-04-06 00:52:22 -04:00
Camotoy 0a1c51bdad
Merge branch 'master' of https://github.com/GeyserMC/Geyser into floodgate-2.0 2021-04-06 00:52:09 -04:00
Camotoy 86b2901f02
1.16.220 support (#2105)
This update does not break compatibility with any other currently supported version of Bedrock.

Co-authored-by: Redned <redned235@gmail.com>
2021-04-06 00:14:06 -04:00
Tim203 21c8a389e3
Fixed an issue with forwarding player links 2021-04-03 19:50:35 +02:00
Konicai 8f6785e48f
Restrictions to commands players can send on Geyser Standalone (#2099)
- players cannot create a dump
- if the version command is sent by a player, it will not check for new updates
2021-04-02 13:36:30 -04:00
ImDaBigBoss fb18a6493a
Add an option for actionbar hit cooldown (#2006)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-04-01 00:06:01 -04:00
Camotoy aa5c3c30e1
Minor touchups (#2011) 2021-03-31 14:15:55 -04:00
Camotoy 2f42a4c630
Add furnace minecart item translation (#2003)
Conveniently enough, the minecart furnace icon still exists in the vanilla Bedrock Edition game (thanks to Kastle for this discovery). With this and the translation string still being present, we can add the item into the game with only minor issues.
2021-03-31 14:06:05 -04:00
Camotoy 946f38c00a
Merge branch 'master' of https://github.com/GeyserMC/Geyser into floodgate-2.0 2021-03-31 11:55:55 -04:00
Camotoy 3a4b1e4dc7
Prevent NPEs from GeyserConnector.getPlayerByUuid (#2070)
- If GeyserConnector.getPlayerByUuid is given null, it will return null
- Never set a session's UUID to null if possible - but have precautions if for some reason it is
2021-03-24 20:03:51 -04:00
Camotoy 7f03446262
Entity link cache fixes (#2068)
Note that this needs to be revisited to see if it's even needed, or perhaps some sort of Guava cache.

- `getCachedPlayerEntityLink` now removes the entry if found
- Skulls will not have player entity links so we shouldn't bother checking
- Clear the entity link cache on dimension switch
2021-03-24 11:09:24 -04:00
Tim203 677a8d68f6
Add an additional key searching fallback for Floodgate 2.0 2021-03-24 15:50:13 +01:00
Tim203 4c6c397f37
Fixed merge conflicts 2021-03-23 01:46:33 +01:00
Tim203 107cd5bd5a
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
2021-03-23 01:35:02 +01:00
Camotoy 86397ef483
Chunk cache improvements (#2053)
- Check for minimum and maximum Y values to fix stack traces
- Don't run half of the villager sleeping code unless they're actually sleeping
2021-03-21 11:31:09 -04:00
Camotoy 10c77a3214
Fix sign color changes messing with character count (#2054)
Color changes do not affect the maximum amount of characters allowed on a line.
2021-03-21 11:28:19 -04:00
Camotoy 930c4c538e
Update the interactive tag when necessary (#2039)
Update the interactive tag on entity metadata update, item slot change, and sneaking update; that way, if the tag should change, it will change.
2021-03-18 01:11:21 -04:00
Camotoy f827b28852
More smoothed out shield code (#2051)
- Shield code is now down as the player is sneaking - it doesn't wait for the server to update our sneaking status
- Shield is now applied correctly when sneaking and then moving to the shield item
2021-03-18 00:53:14 -04:00
Camotoy b176fc7a2f
SRV improvements and improvements for GeyserConnect (#2048)
- Individual per-player remote, port, and address
- Removal of RemoteServer class
- Do SRV lookup on startup and that's it
2021-03-17 11:15:57 -04:00
Camotoy 3d4fff8dee
Fix sleeping on older Minecraft server versions (#2049)
BED_POSITION is enough to trigger sleep.
2021-03-17 10:38:56 -04:00
Camotoy d41d8b0ebf
Fix item durability 'resetting' on 1.16.210 (#2042) 2021-03-15 14:49:44 -04:00
Camotoy 2f058e05bd
Allow dyed horse leather armor to translate (#2016) 2021-03-14 12:52:09 -04:00
Camotoy 1d8961c498
Allow GeyserWorldManager to be overwritten while still holding a cache (#2036) 2021-03-14 12:26:47 -04:00
Camotoy e71ffa455f
Fix brewing stand fuel input 2021-03-13 23:09:37 -05:00
Camotoy 48aa586b21
More formatting fixes 2021-03-13 18:07:43 -05:00
Camotoy 1cdd66ae0b
Cleaner ItemEntry retrieval in BedrockInteractTranslator 2021-03-13 15:01:55 -05:00
Camotoy 23ab69702d
More review fixes and make beacon more reliable 2021-03-12 17:07:29 -05:00
Camotoy d4c21bb74c
Merge branch 'server-inventory' of https://github.com/GeyserMC/Geyser into server-inventory 2021-03-12 11:51:48 -05:00
Camotoy 821e3126ea
Handful of review fixes 2021-03-12 11:51:37 -05:00
Camotoy 82ccfb1417
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-03-12 11:25:33 -05:00
AJ Ferguson bba602b01e Fix loom output 2021-03-11 17:43:08 -09:00
Camotoy 09105e00b2
Fix item frame dropping on 1.16.210 (#2029)
For whatever reason, item frames use the PlayerActionPacket in any non-creative gamemode, but creative mode keeps existing behavior. This has the benefit of fixing adventure mode item frame item dropping.
2021-03-11 21:11:46 -05:00
Tim203 4229db0a2f
Merge remote-tracking branch 'origin/server-inventory' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
2021-03-10 20:46:50 +01:00
Camotoy e493415241
More cartography parity fixes 2021-03-10 14:43:54 -05:00
Tim203 643098e09e
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/UpstreamPacketHandler.java
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/translators/bedrock/BedrockServerSettingsRequestTranslator.java
2021-03-10 20:42:37 +01:00
Camotoy 370f3c18ba
Use compute for determining if a lectern if present
Reduces having to call both containsKey and get.
2021-03-10 13:54:09 -05:00
Camotoy ded00dfd97
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-03-09 14:45:04 -05:00
Camotoy 9ae7c1de25
1.16.210 support (#2019)
This commit implements 1.16.210 support while still keeping 1.16.100 and 1.16.210 compatibility.

Co-authored-by: AJ Ferguson <AJ-Ferguson@users.noreply.github.com>
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2021-03-09 12:51:48 -05:00
Camotoy d80372e0b4
Also check out-of-bounds on player inventory 2021-03-08 18:17:14 -05:00
Camotoy ffae69471d
Add protection for out-of-bounds inventory management 2021-03-08 18:13:26 -05:00
rtm516 efc7e43e02
Fix settings not displaying due to bedrock bug by delaying 1s (#2010)
* Fix settings not displaying due to bedrock bug by delaying 1s

* Update BedrockServerSettingsRequestTranslator.java
2021-03-08 17:00:44 -05:00
Camotoy da11cd298c
Address requests 2021-03-08 16:57:31 -05:00
Camotoy d19bf07b7a
Don't allocate the entire block size 2021-03-08 16:42:41 -05:00
Camotoy 3f14624d46
Fix some villager block trades being unable to stack 2021-03-08 15:53:47 -05:00
Camotoy 44e9dba759
Reject requests that are unavailable spaces; other things 2021-03-08 14:17:31 -05:00
Camotoy 55a1acfcb6
Fix close request desyncs with inventories of the same type, and
- Small object optimization in DoubleChestInventoryTranslator
- Sending inventory ID of 0 for inventory translation is valid
2021-03-06 12:24:39 -05:00
Camotoy 7fde39f247
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-03-06 11:09:27 -05:00
Camotoy 16e8dd0df1
Don't confirm if the inventory is the same type 2021-03-04 14:04:11 -05:00
Camotoy ca3f9550dd
Remove unused variables; fix opening double chests quickly 2021-03-04 12:26:16 -05:00
Camotoy f926b83b33
Fix capes of a *smaller* size throwing an error (#1998) 2021-03-04 11:32:56 -05:00
rtm516 e0e435fdc5
Fix capes being scaled wrong and invisible skins (#1940)
* Fix capes being scaled wrong and invisible skins

* Flush old image objects

* Remove alpha workaround and fix more scaling issues

* Remove unnecessary scale

* Reduce diff

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-03-03 18:00:29 -05:00
Tim203 a2d3ccfb2f
Whoops. Forgot to update Geyser to match recent global api changes 2021-03-03 19:57:52 +01:00
Camotoy 7e773c9970
Quietly handle unmappable Java items
If vanilla can handle them, so can we.
2021-03-02 19:10:17 -05:00
Camotoy 93726f5818
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-03-02 19:05:49 -05:00
Camotoy e4e9758950
Fix logging into a server with Fabric Networking API (#1995)
* Fix logging into a server with Fabric Networking API

Turns out we prevented the response to LoginPluginRequestPacket. Fabric API 0.28 and later will not let a client join without this response.

* Switch back to Jitpack just for Protocol to prevent weird errors

* Re-add sub protocol check

* Simplify check
2021-03-02 19:02:34 -05:00
Camotoy 61e5784796
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-03-02 00:49:26 -05:00
Camotoy e09f33c614
Clean up and fix more armor stand inconsistencies (#1988) 2021-02-27 12:19:30 -05:00
Tim203 e7eca7f7b9
Fixed reconnecting to the api 2021-02-27 13:14:40 +01:00
Camotoy 6775d88704
Handle no-NBT lecterns 2021-02-26 21:53:24 -05:00
Camotoy f02105e9c7
Fix confirming when the server double-sends a window ID 2021-02-26 20:19:14 -05:00
Camotoy ab9501da69
Use the inventory name always for villager inventories
Testing not crashing on 1.8 and 1.13.2.
2021-02-26 19:03:18 -05:00
Camotoy 6be71fc045
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-26 00:46:44 -05:00
Camotoy acbcf4baf3
Fix shulker boxes resetting data and set all shulker boxes as valid 2021-02-25 21:51:50 -05:00
Camotoy e1db626529
Fix closing the inventory from the server 2021-02-25 18:17:43 -05:00
Camotoy 0727008881
Villager fixes + other stuff
- Consoles trading with villagers should work better
- Villagers closing their inventory work now
2021-02-25 16:12:58 -05:00
Camotoy ae3f50a79c
Firework star item translation (#1968)
Firework stars, unsurprisingly, share some code with fireworks. This commit adds a new FireworkBaseTranslator abstract class that both firework items extend from, in order to use the explosion translation code. Firework stars also show color.
2021-02-25 13:13:24 -05:00
Camotoy 325b8ab4d4
Fix rowing from Java to Bedrock (#1943)
Rowing apparently broke in possibly the 1.16 update and nobody noticed until now.
2021-02-25 13:12:25 -05:00
Camotoy 9f5a356180
Armor stand fixes (#1270)
Armor stands now show armor if invisible. This allows both names and armor to show on an armor stand, and should allow for custom models that use armor stands to show, to an extent.
2021-02-25 12:54:30 -05:00
Camotoy 255c7ac0d2
Revert "Add barrel as a valid single chest block"
Barrels are a bit more complicated to lump in with chests for the time being. It *can* be fixed, but it requires workarounds.

This reverts commit 07f36affb9.
2021-02-25 12:22:05 -05:00
Camotoy 9f1fa51cfc
Merge branch 'server-inventory' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-25 12:15:46 -05:00
AJ Ferguson 07f36affb9 Add barrel as a valid single chest block 2021-02-25 01:41:04 -09:00
AJ Ferguson 9e6402c279 Fixes 2021-02-24 20:14:01 -09:00
Tim203 c16c66b860
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/pom.xml
#	connector/src/main/java/org/geysermc/connector/GeyserConnector.java
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/translators/bedrock/BedrockNetworkStackLatencyTranslator.java
#	connector/src/main/java/org/geysermc/connector/skin/SkinProvider.java
#	connector/src/main/java/org/geysermc/connector/utils/SettingsUtils.java
2021-02-25 02:28:48 +01:00
Camotoy f480fbfdf6
More changes to allow Geyser to cooperate better with bad internet (#1951) 2021-02-21 18:57:09 -05:00
Camotoy 2974afdce0
Small, inconsequential changes 2021-02-21 18:17:31 -05:00
Camotoy e2df486eac
oops 2021-02-20 23:54:15 -05:00
Camotoy f849a5b9f9
A bunch of fixes 2021-02-20 23:52:49 -05:00
David Choo b7828267a5
Projectile Movement (#1929)
Fixes

    #1780
    #1778
    The laggy fireballs
    Llama spit
    Shulker bullets
2021-02-19 11:12:36 -05:00
Camotoy 605201afc0
Make changes required for Protocol 2.6.2 2021-02-17 19:39:10 -05:00
Camotoy 85b8fe2734
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-17 19:33:51 -05:00
Mark Vainomaa c4573bb73d
HAProxy PROXY protocol support for upstream connections (#1713)
* Ignore unknown properties on configuration subclasses

* Implement upstream PROXY protocol support
2021-02-17 18:25:41 -05:00
Camotoy 9208943ac6
Bump Network and Netty dependencies (#1775) 2021-02-17 18:00:53 -05:00
Camotoy d9f8e9eec2
Improve command freezing and fix up command suggestion translation (#1936)
Merge commands with the same parameters (thanks Supreme)
    Add more suggestion types (blocks, items, entities)
    More optimizations


Co-authored-by: SupremeMortal <6178101+SupremeMortal@users.noreply.github.com>
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2021-02-17 18:00:00 -05:00
bundabrg 15027c222e
Fix NPE when a TitlePacket of type TIMES is sent (#1944)
References: https://github.com/bundabrg/GeyserReversion/issues/29

Co-authored-by: bundabrg <bundabrg@grieve.com.au>
2021-02-17 00:58:08 -05:00
bundabrg fc712ea892
Fix NPE in ServerEntityAnimationPacket (#1942)
Closes: https://github.com/bundabrg/GeyserReversion/issues/41

Co-authored-by: bundabrg <bundabrg@grieve.com.au>
2021-02-17 00:23:55 -05:00
YHDiamond 62cbdb8f5c
[ci skip] Fixed if spacing (#1941)
Co-authored-by: yehudahrrs <47502993+yehudahrrs@users.noreply.github.com>
2021-02-16 20:09:18 -05:00
Camotoy 22c39d285e
Make BlockInventoryHolder block strings immutable; clean up lectern unloading 2021-02-16 19:09:57 -05:00
Camotoy 72186d91f1
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-16 16:47:58 -05:00
Camotoy e0bd5a62a7
Fix up some SpotBugs suggestions (#1911)
This is a manual go-through of some bugs SpotBugs pointed out.
2021-02-16 16:25:46 -05:00
Tim203 c79979e3e3
Added timestamp to BedrockData 2021-02-16 18:54:04 +01:00
Camotoy aa47e75da6
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-15 23:49:35 -05:00
Camotoy 1f1d94aa81
Don't allow the sub-MOTD to be empty (#1933)
As of 1.16.210.59, the sub-MOTD cannot be blank: https://bugs.mojang.com/browse/MCPE-117979

This workaround will be implemented now so the widest range of Geyser versions will properly show a ping in 1.16.210 - better an 'outdated server' message than 'unable to connect to world.'
2021-02-15 21:41:11 -05:00
Camotoy 93a74d669d
Skin and skull fixes (#1923)
* Skin and skull fixes

- Handle the occasional greater-than-128-px skin
- Remove unused Jackson dependency
- Update used Jackson dependency
- Handle skin downloading on another thread

* Other small touchups

* Flush after rescaling
2021-02-15 16:36:47 -05:00
Camotoy f2550de633
Ping/MOTD changes required for 1.16.210.59 (#1931) 2021-02-15 12:57:18 -05:00
Camotoy ec23e409b6
Use switch statements, and change default block usage
This is to support future changes of using multiple block translators
2021-02-13 15:29:54 -05:00
Tim203 52ddf8c556
Moved skin uploading to the global api 2021-02-12 22:22:45 +01:00
Camotoy ce33ca56a9
[ci skip] Formatting fixes 2021-02-12 14:43:29 -05:00
Camotoy 78337830c6
Use the real block for opening inventory when possible 2021-02-12 14:39:41 -05:00
Camotoy 98b2a0e51b
Fix NPE with MOTD (#1921) 2021-02-12 14:16:29 -05:00
Camotoy aaeca23f54
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-10 23:53:45 -05:00
Camotoy b16e1d6b43
Threading and ping improvements (#1870)
- Don't schedule for setting jumping on and off if cache chunks is enabled, since we don't need to know that
- Add a new setting to disable player ping forwarding. Hopefully this helps with timeouts.
2021-02-10 12:18:31 -05:00
Camotoy 1ec589fa35
Enable debug property in Log4J config if applicable (#1906)
With this commit, debug messages in Netty and Protocol will now show if debug mode is enabled in the Geyser standalone config.

There is also some small tuning to the PacketTranslatorRegistry for cleanliness and maybe some minor performance.
2021-02-08 13:30:37 -05:00
Camotoy 3140d3ced7
Allow Geyser to boot if it cannot download en_US file (#1907)
This commit allows Geyser to start if it is unable to download Minecraft's English locale file, instead of throwing an exception that stops it.
2021-02-07 22:57:44 -05:00
bundabrg 66fcd87ce6
Remove extra bracket from BOUYANCY_DATA (#1903)
Co-authored-by: bundabrg <bundabrg@grieve.com.au>
2021-02-07 21:18:20 -05:00
Camotoy 8670172f8d
Revert "Start work on using the world block for inventories"
Oops! Not finished yet!!

This reverts commit 454896a7ad.
2021-02-05 11:48:12 -05:00
Camotoy 47879c913b
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-02-04 21:25:29 -05:00
Camotoy c26a2baed6
Add more metrics (#1896)
- Add the Java version being used
- Add the Minecraft server version being used, alongside the platform type that is using that version. Not used for proxies as those have to be on latest to support the latest Minecraft version
2021-02-03 19:54:35 -05:00
Brave Chicken db38b0d45d
Fix EndGateway translation issue (#1892)
* Fix EndGateway translation issue.

* Change contains check to instanceof LongTag as requested.

* Add space after if as requested.

Co-authored-by: Brave_Chicken <bravechickengamer@gmail.com>
2021-02-02 11:40:28 -05:00
Tim203 cf149b58e0
Fixed remaining merge conflicts 2021-02-02 00:46:46 +01:00
Tim203 5ad2510b87
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/command/defaults/SettingsCommand.java
#	connector/src/main/java/org/geysermc/connector/network/UpstreamPacketHandler.java
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
#	connector/src/main/java/org/geysermc/connector/network/session/cache/WindowCache.java
#	connector/src/main/java/org/geysermc/connector/utils/LoginEncryptionUtils.java
#	connector/src/main/java/org/geysermc/connector/utils/StatisticsUtils.java
2021-02-01 12:02:49 +01:00
Camotoy 454896a7ad
Start work on using the world block for inventories 2021-01-30 16:05:27 -05:00
AJ Ferguson 4a8d93752b Handle DESTROY creative action 2021-01-29 03:34:56 -09:00
Camotoy 2d37d3f276 Add more debug logging 2021-01-29 00:36:43 -05:00
Camotoy 3b847d93b3 Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-29 00:32:35 -05:00
rtm516 498f7653d3
Fix NPE when link entity not found and use non-deprecated constructor (#1706)
* Fix NPE when link entity not found and use non-deprecated constructor

* Extract method call to variable

* Update PlayerEntity.java

* Fix indentation
2021-01-28 11:33:26 -05:00
YHDiamond aec08e7d3c
Add images to statistics menu (#1719)
Co-authored-by: YHDiamond <47502993+yehudahrrs@users.noreply.github.com>
2021-01-28 00:23:27 +00:00
Camotoy 1676242c4f
Add precaution if lectern container is not open 2021-01-22 13:36:27 -05:00
Camotoy 3dc5890649
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-22 13:36:06 -05:00
Camotoy 5a8604fe54
Skin fixes and optimizations (#1856)
- Fix self-assigned player skins getting overwritten
- Fix players with no skin silently throwing an exception, and properly handle it instead
- CRITICAL bug fix of handling Deadmau5's skin - it's not handled by his UUID but by his username
2021-01-21 19:03:46 -05:00
Camotoy b93ce33b38
Localize Done in the OAuth prompt (#1851)
Oops.
2021-01-21 22:54:18 +00:00
Camotoy 787e6fe5f7
Fix enchantments when there are less than three options 2021-01-20 18:46:04 -05:00
AJ Ferguson 5d4b368e51 Fix inventory bug when respawning 2021-01-20 11:09:28 -09:00
Camotoy ca620d6dd8
Add some comments and fix book editing in creative 2021-01-19 19:01:51 -05:00
Camotoy 2304c1375e
[ci skip] Clarify strip NBT comment 2021-01-19 18:22:07 -05:00
Camotoy 75ae28f460
Merge branch 'server-inventory' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-17 11:12:47 -05:00
Camotoy f7822e07eb
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-17 11:12:38 -05:00
Camotoy 2d9baf1bfc
Send message to Java if command is Bedrock-only (#1834)
* Send message to Java if command is Bedrock-only

If a Java player attempts to use a Bedrock-only command, such as `geyser statistics`, they will get an error message stating that this command is only for Bedrock players.

This commit also cleans up Velocity Adventure dependency usage. Issues were caused because of the way relocation works and because Velocity also uses Adventure.

* Only look for a session if we have to

* Update languages submodule
2021-01-16 22:18:13 -05:00
RednedEpic da512da511 Include 1.16.5 in version command too 2021-01-15 21:59:41 -06:00
AJ Ferguson 234c6542bb Refactor creative request translator and fix bugs 2021-01-14 19:45:59 -09:00
AJ Ferguson 95703d2ea7 Update inventory if request was rejected 2021-01-13 19:59:11 -09:00
AJ Ferguson 4ee3143fe9 Add delay to legacy recipe detection
Workaround for an issue which will be properly fixed later.
2021-01-13 19:40:01 -09:00
AJ Ferguson 196c9f5c17 Remove debug lines 2021-01-13 19:19:01 -09:00
AJ Ferguson e87ae8f0dd Merge remote-tracking branch 'remotes/upstream/master' into server-inventory-upstream
# Conflicts:
#	connector/src/main/java/org/geysermc/connector/network/session/GeyserSession.java
2021-01-13 18:49:20 -09:00
Camotoy feae0573de
Merge branch 'server-inventory' of https://github.com/Camotoy/Geyser into server-inventory 2021-01-13 21:34:57 -05:00
Camotoy 454fd102d6
Add better destroy support 2021-01-13 21:34:47 -05:00
Camotoy 6fdfcfb35c
Clarify that we do support 1.16.201 (#1836) 2021-01-13 14:28:39 -05:00
AJ Ferguson d3cb069594 WIP. Autocrafting without java recipe book 2021-01-12 16:37:12 -09:00
Extollite c0a64659c2
Close en_us.hash stream (#1833) 2021-01-12 15:41:15 -05:00
Extollite dd0b4bafe8
Close locale streams (#1832)
* Close locale streams

* Fix formatting
2021-01-12 15:06:48 -05:00
Camotoy af405f320a
Prevent CME when adding players' emotes (#1831) 2021-01-12 14:42:53 -05:00
YHDiamond fb283fcce8
Add advancements GUI (#1579)
Using /geyser advancements, Bedrock clients can get a visual on their progress.

Co-authored-by: yehudahrrs <47502993+yehudahrrs@users.noreply.github.com>
Co-authored-by: Olivia <chew@chew.pw>
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
Co-authored-by: rtm516 <ryantmilner@hotmail.co.uk>
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-01-11 21:23:09 -05:00
Camotoy 6a9d4cd071
Implement 1.16.100 anvil renaming support 2021-01-11 20:06:55 -05:00
Camotoy 4db9ec92bf
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-11 19:46:39 -05:00
rtm516 1c0cc4622a
Microsoft account authentication (#1808)
Microsoft accounts can now use Geyser, while maintaining full backwards compatibility with Mojang accounts.

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-01-11 15:52:02 -05:00
Camotoy 6aa74a2322
Allow server pong to appear if MOTDs are too long (#1445)
* Prevent server pong from appearing if MOTDs are too long

If the server MOTDs are 340 characters or longer, they will not appear. If this is the case, we trim each.

* Implement a more exact fix
2021-01-11 15:37:37 -05:00
Camotoy d6461e71fb
Add message if Geyser thinks the English locale is missing (#1825) 2021-01-10 20:00:48 -05:00
David Choo 9232c5565f
Add Ender Dragon effects and sounds (#1781)
* Add Ender Dragon effects and sounds

* Add proper death effect and clean up

* Add Ender Dragon respawn sound

* Possibly fix dragon breath direction?

* Update mappings

* Fix death animation triggering at low health

* Trigger death event when health is 0 and add explosions back

* Add comment
2021-01-09 20:43:03 -05:00
Camotoy 54fb56ea85
Add legacy crafting support for Spigot and finish up standalone 2021-01-09 16:45:32 -05:00
AJ Ferguson 554ec82ef5 Shaped recipe detection 2021-01-09 04:10:27 -09:00
Camotoy 9bfc5d320c
Work-in-progress checks for legacy slot checking 2021-01-09 00:38:53 -05:00
AJ Ferguson 9118ec6840 wip support old crafting 2021-01-08 17:01:31 -09:00
Camotoy ade4c14911
Block breaking refactors (#1336)
Client-side block animations and reach checks are now added.

This commit also includes cleanup in BlockChangeTranslator as well as proper Netherite tool support for calculating block breaking.

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2021-01-07 22:43:36 -05:00
Camotoy fe23c79053
Implement book editing (#1117)
* Implement book editing

Updates the PR created by @ForceUpdate1 for 1.16 support. Seems to work fine now that hand support is in MCProtocolLib.

Co-authored-by: Camotoy <20743703+DoctorMacc@users.noreply.github.com>

* Remove debug line

* Simplify code

Currently still borked for creative mode.

* Fix books on creative

* Bug fixes

* Fix NPE?

* Blind fixes

* Send Book update before any player actions

* Remove debug prints

* Fix out of bounds for page replace and add

* Fix editing desync and remove empty pages from the end

* Send edit packet after signing

* Refactor

* Clean up and fix creative

* Apply suggestions from code review

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>

Co-authored-by: ForceUpdate1 <mneuhaus44@gmail.com>
Co-authored-by: Camotoy <20743703+DoctorMacc@users.noreply.github.com>
Co-authored-by: David Choo <davchoo3@gmail.com>
Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2021-01-07 19:40:34 -05:00
Camotoy 92c86cf15b
Null check tick thread (#1812) 2021-01-05 23:28:31 -05:00
Camotoy c8016647f2
Clean up and add mobile button for horse opening 2021-01-05 19:08:54 -05:00
Camotoy 0641800be7
Add Tickable interface (#1790)
* Add Tickable interface

By having a tickable interface, we're only dedicating one thread to ticking entities and running tasks as opposed to several. This will also help with implementing world border support.

* removeEntity already clears tickableEntities for us

* Only tick the entity if it's not being ticked
2021-01-05 18:41:20 -05:00
AJ Ferguson b6389317f0
Fix minor bug in auth form (#1806) 2021-01-05 13:45:01 -05:00
Camotoy a88678a5c1
Add manual recipes as Recipe classes for future usage 2021-01-04 22:15:55 -05:00
Camotoy 1d47dc3f18
Merge branch 'server-inventory' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-04 20:30:19 -05:00
AJ Ferguson ff69752d2c Remove unnecessary is_block null check 2021-01-04 15:16:21 -09:00
AJ Ferguson 57e176efd6 Optimize stackSize
Co-Authored-By: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-01-04 15:12:26 -09:00
AJ Ferguson a160e3694b Add stackSize to ItemEntry 2021-01-04 14:47:48 -09:00
Camotoy 50f295b4cd
Remove unneeded GeyserItemStack constructor and add comments 2021-01-04 18:19:43 -05:00
Tim203 5ad495ce97
Merge remote-tracking branch 'origin/master' into floodgate-2.0
# Conflicts:
#	common/src/main/java/org/geysermc/common/window/CustomFormBuilder.java
#	common/src/main/java/org/geysermc/common/window/CustomFormWindow.java
#	common/src/main/java/org/geysermc/common/window/FormWindow.java
#	common/src/main/java/org/geysermc/common/window/ModalFormWindow.java
#	common/src/main/java/org/geysermc/common/window/SimpleFormWindow.java
#	common/src/main/java/org/geysermc/common/window/button/FormButton.java
#	common/src/main/java/org/geysermc/common/window/button/FormImage.java
#	common/src/main/java/org/geysermc/common/window/component/DropdownComponent.java
#	common/src/main/java/org/geysermc/common/window/component/InputComponent.java
#	common/src/main/java/org/geysermc/common/window/component/SliderComponent.java
#	common/src/main/java/org/geysermc/common/window/component/StepSliderComponent.java
#	common/src/main/java/org/geysermc/common/window/component/ToggleComponent.java
#	common/src/main/java/org/geysermc/common/window/response/CustomFormResponse.java
#	common/src/main/java/org/geysermc/common/window/response/ModalFormResponse.java
#	common/src/main/java/org/geysermc/common/window/response/SimpleFormResponse.java
#	common/src/main/java/org/geysermc/floodgate/util/EncryptionUtil.java
#	connector/src/main/java/org/geysermc/connector/network/session/cache/WindowCache.java
2021-01-04 13:37:58 +01:00
AJ Ferguson 8928d554a1 WIP autocrafting using java recipe book
work in progress. many edge cases are currently unhandled. will not work at all pre 1.12. (support is planned)
2021-01-03 17:54:26 -09:00
Camotoy 50b80a64d3
Dimension switching cleanup (#1694)
* Dimension switching cleanup

Cleans up dimension switching logic that should no longer be needed. Also fixes above Nether Bedrock building dimension switching.

* Clear thunder on dimension switch too

* Clarify fake dimension switch function name

* Javadoc that
2021-01-03 19:06:20 -05:00
Camotoy 1c7567d79d
Various resource pack fixes (#1769)
- Fixes an instance where an invalid pack_manifest file could be present
- Fixes instances where JSON files were not read as UTF-8
2021-01-03 12:53:26 -05:00
YHDiamond 1a08e1104d
Fix stopsound bug (#1771)
* Fix stopsound not working bug

* removed extra imports

* Update JavaPlayerStopSoundTranslator.java

* Update JavaPlayerStopSoundTranslator.java

* Update JavaPlayerStopSoundTranslator.java

* Fix packet names and fix specific sounds not stopping

Co-authored-by: YHDiamond <47502993+yehudahrrs@users.noreply.github.com>
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2021-01-02 18:51:41 -05:00
AJ Ferguson 528a9a4431 Crafting table slot mappings 2021-01-01 18:37:33 -09:00
Camotoy 396d1b6b61
Fix items on campfires (#1779) 2021-01-01 18:33:21 -05:00
Camotoy eccb48844e
Allow enderman to make provoked sound when angry (#1763) 2021-01-01 16:55:04 -05:00
Camotoy 7a82852134
Merge branch 'server-inventory' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-01 14:22:44 -05:00
Camotoy 2a5c134ea7
Update server inventory copyrights to 2021 2021-01-01 14:22:26 -05:00
Camotoy 8317961340
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2021-01-01 14:20:52 -05:00
Camotoy 186d94917a
Update copyright to 2021 (#1772)
* Update copyright to 2021

Free commit!

* These don't need a copyright

* Don't downgrade the mappings
2021-01-01 10:10:36 -05:00
AJ Ferguson b7b3278d8b item painting. cursor net id 2020-12-31 17:39:54 -09:00
Camotoy 77153e6d4a
Work around there being a void floor in Bedrock (#1405)
* Work around there being a void floor in Bedrock

If the player's Y coordinate is -38 or below, we teleport the player below the void floor and they can safely die. :)

* Don't teleport if below Y -40

* sigh

* Have floorY be its own variable

* Add more comment

* More comments

* Finish my thought
2020-12-31 20:05:00 -05:00
Camotoy c4fc604e0c
Optimize stonecutter button code 2020-12-29 20:31:48 -05:00
Camotoy 3c1a40c56a
Better net ID handling 2020-12-29 19:59:22 -05:00
Camotoy f4b1d470c3
Merge branch 'server-inventory' of https://github.com/AJ-Ferguson/Geyser into server-inventory 2020-12-29 19:02:11 -05:00
Camotoy ac4f6eceac
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2020-12-29 19:01:59 -05:00
AJ Ferguson e3b94bc859
Thrown potion entity color (#1756)
* Fix thrown potion color

* Prevent area effect cloud from appearing to catch on fire

* Don't set ENCHANTED flag on all potions
2020-12-29 18:58:02 -05:00
David Choo fe63a7f7ab
Fix pick block (#1753)
* Use pick_item mappings

* Update mappings

* Update mappings and fix wording
2020-12-29 18:09:42 -05:00
Camotoy a5c020e7ee
More comments 2020-12-28 13:16:17 -05:00
Camotoy 3ba396e625
Fix some temporary inventory blocks not disappearing 2020-12-28 00:47:10 -05:00
Camotoy 2265de3ae9
lecterns 2020-12-28 00:29:27 -05:00
Camotoy 790c695b27
Add TODO 2020-12-27 11:08:48 -05:00
Camotoy 956d264c3e
Anvil renaming works; other things 2020-12-26 22:55:14 -05:00
AJ Ferguson 60da3b9432 Temp slot 2020-12-26 18:44:48 -09:00
Camotoy 4b461e5e0a
Merge branch 'master' of https://github.com/GeyserMC/Geyser into server-inventory 2020-12-26 19:52:16 -05:00
Camotoy d1c571d710
Fix anvil renaming (#1744)
Turns out it *was* our fault. Oops.
2020-12-26 19:51:11 -05:00
Camotoy 7c4e95625a
Cleanup and delete FilterTextPacket - PRing to the main branch 2020-12-26 19:16:35 -05:00
Camotoy 078af59249
Streamline Item Net ID getting; cartography table finished 2020-12-26 16:41:50 -05:00
Tim203 77de991bcf
Change Jenkins url and name to Open Collaboration (#1732) 2020-12-26 21:40:49 +01:00
Camotoy eb5e4d79bb
Add visual damage support with thorns (#1728) 2020-12-26 15:39:46 -05:00
Camotoy 06f346b30b
Fix offset issue 2020-12-26 13:24:50 -05:00
Camotoy c1f5380ed1
Add horse inventory support 2020-12-26 12:20:59 -05:00
Camotoy c7fade295e
Add swap support for creative mode; start on cartography table 2020-12-24 20:43:24 -05:00