Camotoy
60de3187c6
Yeet NbtItemStackTranslator
2023-04-08 12:45:13 -04:00
Camotoy
503296a9cf
Decrease final startup memory usage
2023-04-07 14:08:22 -04:00
Camotoy
b6113dfd31
Optimizations and regression fix
2023-04-06 21:47:37 -04:00
Camotoy
d9811d08e3
Merge remote-tracking branch 'origin/master' into feature/protocol-3.0
2023-04-06 13:26:28 -04:00
Camotoy
a7c04d5323
Fix #3619
2023-03-26 13:20:53 -04:00
David Choo
021ffe2d94
Update ringing bell block event logic ( #3625 )
...
Check for BellValue instead of a GenericBlockValue
Removes now unnecessary JAVA_BELL_ID from BlockStateValues
2023-03-19 11:30:56 -04:00
Camotoy
9609686eb3
Version out potion registry
...
The ID of (for example) redstone dust has shifted, meaning that our hack of re-using IDs no longer works.
Fixes #3620
2023-03-17 19:07:31 -04:00
Camotoy
03c0767965
Finish 1.19.4 support and add Bedrock 1.19.70 support
2023-03-14 15:37:57 -04:00
Camotoy
ee754c529b
Add implementation for ClientEmoteEvent
...
Also, a few random changes I've stored since forever.
2023-02-15 00:17:14 -05:00
SupremeMortal
1769f2a85c
Merge branch 'master' into feature/protocol-3.0
2023-02-14 22:09:48 +00:00
Camotoy
0bba18c726
Initial support for 1.19.60 Bedrock
2023-02-05 13:29:28 -05:00
Camotoy
c13cd3893f
Should replace repairMaterials in ItemMapping
2022-12-30 20:57:38 -05:00
Camotoy
3f4ed67597
Add Item classes to partially replace ItemMapping. Part 1?
2022-12-29 15:10:40 -05:00
Camotoy
7f38496d61
Return null if no definition found
2022-12-23 20:24:53 -05:00
Camotoy
e295f910c4
BlockMappings extends DefinitionRegistry
2022-12-23 19:40:42 -05:00
Camotoy
08c15a86ec
You can connect now. Command translation doesn't work though.
2022-12-23 16:18:48 -05:00
Camotoy
ebcb82c7e7
Fix custom item register message being printed twice
2022-12-23 12:18:09 -05:00
Konicai
4b847350b6
Protocol 3.0: ContainerType enum and registries ( #3470 )
...
* P3 Updates: ContainerType enum and registries
* Remove unused math import
2022-12-23 12:06:41 -05:00
Camotoy
3e778cdb49
Merge branch 'feature/protocol-3.0' of https://github.com/GeyserMC/Geyser into feature/protocol-3.0
2022-12-20 20:01:05 -05:00
Camotoy
4fe9aeca40
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/protocol-3.0
2022-12-20 19:47:45 -05:00
Konicai
2d3dd89162
Some misc fixes
2022-12-14 17:57:08 -05:00
Konicai
a988fbf290
Update inventory translators
2022-12-14 17:23:55 -05:00
Konicai
84248fa902
Merge remote-tracking branch 'upstream/master' into feature/protocol-3.0
...
# Conflicts:
# core/src/main/java/org/geysermc/geyser/entity/type/living/monster/EndermanEntity.java
# core/src/main/java/org/geysermc/geyser/inventory/holder/BlockInventoryHolder.java
# core/src/main/java/org/geysermc/geyser/network/ConnectorServerEventHandler.java
# core/src/main/java/org/geysermc/geyser/network/GameProtocol.java
# core/src/main/java/org/geysermc/geyser/network/UpstreamPacketHandler.java
# core/src/main/java/org/geysermc/geyser/registry/populator/BlockRegistryPopulator.java
# core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java
# core/src/main/java/org/geysermc/geyser/session/GeyserSession.java
# core/src/main/java/org/geysermc/geyser/text/ChatTypeEntry.java
# core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockInventoryTransactionTranslator.java
# core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaCommandsTranslator.java
# core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaDisguisedChatTranslator.java
# core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaPlayerChatTranslator.java
# core/src/main/java/org/geysermc/geyser/translator/protocol/java/entity/player/JavaPlayerInfoTranslator.java
# core/src/main/java/org/geysermc/geyser/translator/protocol/java/level/JavaExplodeTranslator.java
# core/src/main/java/org/geysermc/geyser/util/DimensionUtils.java
# core/src/main/java/org/geysermc/geyser/util/InventoryUtils.java
# gradle/libs.versions.toml
2022-12-14 15:58:17 -05:00
Kas-tle
b27b1c86bd
Makes bows, crossbows, tridents, projectiles, and lighters registered as custom items function properly ( #3420 )
...
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-12-11 13:15:49 -05:00
Camotoy
6876a90c3b
Lower size of BiomeDefinitionsPacket
2022-12-09 13:39:24 -05:00
Konicai
7d165e329b
Revert "Drop anything below 1.19.50"
...
This reverts commit 58eede37
2022-12-03 17:20:33 -05:00
Konicai
58eede37c0
Drop anything below 1.19.50
2022-12-02 00:28:24 -05:00
Konicai
92aa2059d2
Merge remote-tracking branch 'upstream/master' into JE-1.19.3
2022-12-01 22:00:57 -05:00
RednedEpic
8f96823048
Add support for Bedrock 1.19.50 (560)
2022-11-28 20:53:17 -06:00
Konicai
2f56f02477
Recipe fix thing
2022-11-22 18:58:34 -05:00
Kas-tle
7171ade0bd
Prevent double placement for custom block items ( #3399 )
2022-11-18 14:04:22 -05:00
RednedEpic
74798d8071
Remove old network code & use manual ping
2022-10-30 17:00:08 -05:00
RednedEpic
3f42d68f4e
Update to latest Protocol changes & cleanup item registry populator
2022-10-30 11:34:08 -05:00
RednedEpic
a133308f51
It compiles!
2022-10-29 22:02:11 -05:00
RednedEpic
18e7db8c30
Start on update to Protocol 3.0
2022-10-29 19:23:21 -05:00
Camotoy
a612be60aa
Warn when custom item name begins with a digit
2022-10-21 14:09:17 -04:00
Camotoy
0e07991edf
Changes as I was randomly staring at the code
2022-10-17 23:36:46 -04:00
Camotoy
f59e33d749
Fix behavior of matching custom item predicates
...
Huge thanks to Kastle for helping me disect this behavior.
- The Unbreakable NBT tag is not the only source for determining if an item should be treated as unbreakable. The damage NBT is also taken into account.
- Custom item options must be processed in an ascending order.
- Multiple conditions may be necessary for an item to be selected.
- Conditions do not have to be exact. See the comments in CustomItemTranslator for an explanation.
- Added a test so we don't break this behavior in the future.
2022-10-10 15:40:07 -04:00
Camotoy
cb864b3c98
Fix NPE with furnace minecart with NBT data
2022-09-30 21:21:37 -04:00
Camotoy
1b6cfad5ad
Fix ghost blocks when insta-mining on 1.19+
...
Fixes #3113
2022-09-27 19:24:50 -04:00
Camotoy
55f7253a98
Let biomes NBT be parsed by 1.19.30
2022-09-21 12:27:16 -04:00
Camotoy
e64e12ff98
Initial support for 1.19.30 Bedrock
2022-09-14 21:17:08 -04:00
ImDaBigBoss
f1da9d7072
Allow events to be registered by any class
...
Supersedes & closes #3073
Co-authored-by: Redned <redned235@gmail.com>
2022-09-04 16:11:08 -05:00
RednedEpic
e5337b6298
Reintroduce GeyserDefineCommandsEvent and cleanup a few things
2022-09-04 13:08:17 -05:00
Tim203
13046a8602
Fixed building and switched event library
2022-08-13 22:48:12 +02:00
Konicai
259fed247a
Merge remote-tracking branch 'upstream/master' into ext-1.19.20-fixes
...
# Conflicts:
# core/pom.xml
2022-08-09 19:27:25 -04:00
7man7LMYT
ef81bdeb6b
Update items to 1.19.20 ( #3215 )
...
* Update to 1.19.20
* Add 1.19.20 mapping
* Revert biome changes
2022-08-09 16:52:53 -04:00
Konicai
ee5e916112
Merge remote-tracking branch 'upstream/master' into ext-1.19.20
...
# Conflicts:
# core/pom.xml
2022-08-09 14:36:54 -04:00
Camotoy
f74713c0ed
Initial support for 1.19.20 Bedrock
2022-08-07 12:09:54 -04:00
Konicai
aee43e68fa
Merge remote-tracking branch 'upstream/master' into feature/extensions
...
# Conflicts:
# ap/pom.xml
# api/base/pom.xml
# api/geyser/pom.xml
# api/pom.xml
# bootstrap/bungeecord/pom.xml
# bootstrap/bungeecord/src/main/java/org/geysermc/geyser/platform/bungeecord/GeyserBungeePlugin.java
# bootstrap/pom.xml
# bootstrap/spigot/pom.xml
# bootstrap/sponge/pom.xml
# bootstrap/standalone/pom.xml
# bootstrap/standalone/src/main/java/org/geysermc/geyser/platform/standalone/GeyserStandaloneBootstrap.java
# bootstrap/velocity/pom.xml
# common/pom.xml
# core/pom.xml
# core/src/main/java/org/geysermc/geyser/command/CommandManager.java
# core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java
# core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaLoginTranslator.java
# core/src/main/resources/languages
# pom.xml
2022-08-02 00:01:05 -04:00
Camotoy
40fde6b046
Some nitpicks and cleaning up the provider API
...
The command changes here are not final. Internally we're discussing if we want to allow extensions to register root commands on platforms.
2022-07-26 18:33:39 -04:00
sctigercat1
467286060c
Update items to 1.19.10 ( #3151 )
...
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-07-19 21:23:04 -04:00
Kas-tle
363d72da91
Merge remote-tracking branch 'origin/master' into feature/extensions
2022-07-12 05:26:52 +00:00
Camotoy
897c4dcfec
Changes
2022-07-09 18:39:02 -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
David Choo
9ea22042eb
Fix some item interactions ( #3083 )
...
* Remove Bedrock only banner patterns from the creative inventory
* Add sound for tadpole bucket
* Fix lily pad and frogspawn placing on mobile/single stacks
* Workaround? Fix? for bucket usage on mobile
* Simplify math and update position+rotation whenever ServerboundUseItemPacket is sent
* Rotate the player back after using an item and fix glass bottles
* ITEM_USE actionType 1 does not need the rotation fix
Increase delay for look back
* Add some checks
* Prevent buckets and spawn eggs from being unintentionally placed when interacting with special blocks
As of 1.19 Bedrock no longer sends a PlayerActionPacket with action=BLOCK_INTERACT. Bedrock now sends action=ITEM_USE_ON_START before and action=ITEM_USE_ON_STOP after using an item on a block. However, this is not useful as it is sent for all block interactions.
* Fix inventory transactions being rejected after restoreCorrectBlock
The held item's netId is always 0 in the InventoryTransactionPacket.
* Touch ups
* Fix lookAt for different poses and sneaking + cauldron + bucket interactions
Fix boat items being desynced when placing them very close to collision
Fix bottles being desynced when tapping above water
Resend the held item if we do encounter a desync
* Avoid getting blockstate twice and fix comment
* Use generated interaction data
* Fix glass bottles being double filled and phantom water bottles/water buckets
* Don't update the entire inventory on useItem
* Use Geyser's inventory copy for check
* Use ItemTranslator#getBedrockItemMapping to avoid NBT translation
* mappings
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-06-24 16:48:28 -04:00
David Choo
5e1769d2bd
Translate goat horns ( #3057 )
2022-06-15 22:55:11 -04:00
ImDaBigBoss
4e2f74481b
Updated to 1.19
2022-06-08 14:09:14 +02:00
Camotoy
c8856d487d
Compile too
2022-06-06 22:56:08 -04:00
Camotoy
3ac2c981a7
Swap pitch and volume for warden heartbeat
2022-06-02 18:57:33 -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
davchoo
41cd7f4574
SoundEvent and ParticleEvent are now combined
2022-05-26 19:57:45 -04:00
davchoo
a70f1bc003
Reinforced deepslate can't be moved by pistons
2022-05-26 18:09:27 -04:00
davchoo
66a7efaa96
Yeet 1.18.30 and old palette stuff
2022-05-25 22:11:35 -04:00
davchoo
c5de293373
Allow 1.19.0 to join and use new block mappings
2022-05-25 21:50:50 -04:00
Camotoy
bbf45b6a4c
Compiles; provide your own mappings for now
2022-05-25 15:55:15 -04:00
RednedEpic
fbaa6c1f5f
Remove entity work from main extension branch for now
2022-05-07 10:11:21 -05: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
4ae9bdf4b9
Merge branch 'master' into feature/extensions
2022-05-01 09:44:47 -05:00
Camotoy
8a1799e0e3
Remove block tag adding to villager trading
...
Fixes sugar cane being untradeable.
2022-04-29 13:24:58 -04: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
d6cb5bd52d
ItemMappings: use array for ItemMapping class
2022-04-04 14:08:35 -04:00
Camotoy
877301a500
Remove locator map from creative menu; show some map colors
...
Java allows any map color but Bedrock only allows a few, so we take what we can get.
Fixes #2617
2022-03-23 16:21:04 -04:00
RednedEpic
9939a26a5b
Add RemoteServer API
2022-03-19 21:55:29 -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
7d1ec5c41a
Support offhand interactions with entities
2022-02-24 22:49:10 -05:00
Camotoy
619ce53c50
Javadoc fix for Registries.RECIPES
2022-02-21 20:51:31 -05:00
Camotoy
811ae178c9
Store recipes in a more compact GeyserRecipe type
...
This prevents us from storing some unnecessary data.
Also removes some 1.11 recipe compatibility code that is essentially unusable.
2022-02-21 16:11:51 -05:00
Camotoy
252348ebd8
Implement globe banner pattern translation
...
Co-Authored-By: Konicai <71294714+Konicai@users.noreply.github.com>
2022-02-19 12:07:30 -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
08a78731df
Drop 1.17.30 support; add support for 1.18.10.28 beta
2022-02-06 17:15:12 -05:00
Camotoy
9d908c5598
Create IntMappedRegistry to prevent boxing
2022-02-01 20:15:31 -05:00
RednedEpic
778f004d99
Slight cleanups and make Extension an interface
2022-01-15 16:27:35 -06:00
Tim203
3251d9010c
We're in 2022 now
2022-01-01 20:03:05 +01:00
David Choo
ad5a98c859
Improve Statistics Form ( #2667 )
...
* Improve statistics form
Fix furnace minecart java identifier
Use clean Java identifier in times mined
Fix icons for statistic form
Show all generic statistics by initializing them to zero
Color every other line grey
Format numbers like on Java Edition
* Update for Java 16 and MCProtocolLib changes
* Sort all statistics alphabetically and color them.
* Update for MCProtocolLib changes
* Re-add clean java identifiers registry and properly fix block break statistics
Also translate before sorting >.>
* Use toLowerCase(Locale.ROOT)
* Use the format provided by MCProtocolLib
* Simplify condition
* Move statistics init and bump MCProtocolLib version
2021-12-07 20:05:44 -05:00
Camotoy
763743a845
Allow for implementations to provide a custom resource loader
...
This will allow Geyser-Fabric to work without resource loading issues. This commit also ensures try-with-resources is used anywhere a resource is accessed.
2021-12-03 11:01:06 -05:00
Camotoy
1ce3709c79
Make this Javadoc checker happy
2021-11-30 11:27:39 -05:00
Camotoy
af8c26a4a5
Remove unnecessary version check for minecart furnace icon information
...
All supported protocols are now 1.17.30 or later.
2021-11-28 17:18:37 -05:00
Camotoy
9ba1efaa30
1.18 does not have its own block palette
...
Our logic to finding block palettes was just borked.
2021-11-28 11:03:45 -05:00
Camotoy
c200e3e6fa
Update mappings; remove unnecessary item workarounds
2021-11-23 14:22:44 -05:00
Camotoy
98816f1eaa
1.18 Bedrock properly works now
2021-11-22 22:37:22 -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