Commit Graph

2345 Commits

Author SHA1 Message Date
Nassim Jahnke
07bb0269c3
Auto: Update copyright headers 2024-04-30 22:23:11 +02:00
Nassim Jahnke
57c0d83608
Clean up component rewriter 2024-04-30 16:09:11 +02:00
Nassim Jahnke
4854b131b8
Some cleanup 2024-04-30 09:02:24 +02:00
Nassim Jahnke
1864b66e42
Handle new banner patterns in backwards translation 2024-04-29 23:58:57 +02:00
Nassim Jahnke
8aa6769193
Handle empty items in item lists 2024-04-29 23:11:10 +02:00
Nassim Jahnke
a77e328dfe
Put components in entity data through component rewriter
Cursed, but possibly needed
2024-04-27 21:39:20 +02:00
Gero
9c84e0dbe9 Fix remapping of 1.20.5 CLICK_WINDOW_BUTTON 2024-04-27 21:26:28 +02:00
Nassim Jahnke
66e0453398
Fix block protocols disconnect packet 2024-04-27 12:13:09 +02:00
Nassim Jahnke
7ec6888a30
Handle invalid command argument types
The client ignores these presumably for modded servers
Fixes #3806
2024-04-27 11:26:18 +02:00
Nassim Jahnke
c9733948b3
Use raw data filler in 1.12->1.13 2024-04-27 10:23:04 +02:00
Nassim Jahnke
798b70cbe6
Be even more defensive about half valid items in hover events
While they aren't particularly useful or intended, they were valid
2024-04-26 19:00:37 +02:00
Nassim Jahnke
a1c182f291
Ignore invalid names in the data component for hover events as well 2024-04-26 10:01:29 +02:00
Nassim Jahnke
8e63fd635b
Ignore invalid names in player heads 2024-04-26 09:29:19 +02:00
FlorianMichael
f422e03348
Rename ranged protocol version names 2024-04-25 20:31:22 +02:00
Nassim Jahnke
fdf735420f
Add enforce-secure-chat setting to determine what is sent to the client by default 2024-04-25 20:21:36 +02:00
Nassim Jahnke
b13fbbe175
Fix various issues in hover events serialization 2024-04-25 10:34:24 +02:00
Nassim Jahnke
3dfcd6b9b9
Fix written book hover serialization 2024-04-24 15:47:56 +02:00
Nassim Jahnke
8df0c0ae2e
Catch component parsing exceptions separately instead of failing the entire item 2024-04-24 15:47:47 +02:00
Nassim Jahnke
d2ca6a82be
Assume enforce secure chat as false by default
Setting it to true will result in chat validation errors on the client for other players without chat sessions or valid signatures
2024-04-24 10:26:35 +02:00
Nassim Jahnke
9654a613cd
Put combat kill through component rewriter 2024-04-24 10:15:53 +02:00
Nassim Jahnke
c5e6fa7d0c
Fix trim material ids at tail 2024-04-24 10:11:22 +02:00
Nassim Jahnke
b78f9d350b
Check for lore length, not component length 2024-04-23 23:53:24 +02:00
Nassim Jahnke
ebbe1b6da2
Make backwards enchantment code more readable 2024-04-23 23:44:12 +02:00
Nassim Jahnke
3aed7cb949
Fix mending translation from getting the id from the wrong class 2024-04-23 19:56:17 +02:00
Nassim Jahnke
e2f3dc7572
Limit enchantments to 0-255 2024-04-23 19:32:32 +02:00
Nassim Jahnke
9894671274
Add back default method 2024-04-23 13:47:05 +02:00
Nassim Jahnke
71ab15b331
Serialize to 1.20.3 components in conversion
Aside from hover events, only reading of components changed and we need the 1.20.3 hover input. Hover events are already handled by us.
2024-04-23 13:39:15 +02:00
Nassim Jahnke
34bc5b9d36
Put item name and lore through component rewriter
An absolute classic moment where servers are putting hover events into not hoverable item names and lore
2024-04-23 13:07:05 +02:00
Nassim Jahnke
b47446d9f7
Merge branch 'refs/heads/dev' into preview 2024-04-23 10:59:45 +02:00
EnZaXD
dcf741a2ba
Fix sound mapping lookup in 1.8->1.9 (#3801) 2024-04-23 10:46:40 +02:00
Nassim Jahnke
a4adef3cec
Fix attribute slot handling 2024-04-22 23:57:55 +02:00
Nassim Jahnke
f525ad98e7
Fix handling of sweeping 2024-04-22 16:24:13 +02:00
Nassim Jahnke
d3d6d4f1cd
Fixes to hover event handling, some cleanup 2024-04-22 16:05:44 +02:00
Nassim Jahnke
5069b26c2f
Reuse previously sent enforces-secure-chat value 2024-04-22 16:05:40 +02:00
FlorianMichael
079671060c
Remove items from extra-identifiers-1.20.3 file 2024-04-22 07:13:03 +02:00
Nassim Jahnke
89cd8aec1d
Merge branch 'refs/heads/dev' into preview 2024-04-21 23:47:01 +02:00
Nassim Jahnke
7ac7ea485f
Add UserConnection to component rewriters as well 2024-04-21 23:01:58 +02:00
Nassim Jahnke
5e4f25efeb
Merge branch 'refs/heads/dev' into preview
# Conflicts:
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/BlockItemPacketRewriter1_20_5.java
#	common/src/main/java/com/viaversion/viaversion/rewriter/EntityRewriter.java
#	common/src/main/java/com/viaversion/viaversion/rewriter/ItemRewriter.java
2024-04-21 22:51:45 +02:00
Nassim Jahnke
a152993ffd
Add UserConnection to item rewriters
Already required for ViaBackwards, later required for ViaVersion as well due to synchronized registry entries in items
2024-04-21 22:39:13 +02:00
Nassim Jahnke
73daac471c
Split up version data in dump 2024-04-21 21:55:59 +02:00
Nassim Jahnke
f4e9225f85
Store item identifiers, make identifier files more compact via global table 2024-04-21 20:47:38 +02:00
EnZaXD
1ed22327f6
Replace string->component conversion in 1.8->1.9 (#3794) 2024-04-21 16:00:30 +02:00
EnZaXD
ce2ad7d5eb
Change default value for new ocelot setting (#3797) 2024-04-21 15:15:17 +02:00
FlorianMichael
d7e66260de
Add 1.20.5 nbt->component conversion base
Has to be implemented into ViaBackwards yet and handlers are still missing
2024-04-21 14:53:25 +02:00
FlorianMichael
dc6d581123
Update mcstructs and use new component serializer 2024-04-21 12:13:59 +02:00
FlorianMichael
bd3f1206e6
[ci skip] document 1.9 metadata in MetaIndex 2024-04-21 11:35:10 +02:00
FlorianMichael
b9e92e5c1f
Fix zombie metadata in 1.10->1.11 2024-04-21 11:24:20 +02:00
Gero
0acaed7c7a Use correct item type for 1.20.5 particle reading 2024-04-20 23:50:24 +02:00
FlorianMichael
3055a4277d
Use toString() method in ComponentUtil 2024-04-20 22:52:40 +02:00
Gero
bcbe69d24c Fix ITEM_NAME component to tag conversion 2024-04-20 22:44:22 +02:00
EnZaXD
33cc21d6e6
Add setting for ocelot->cat translation in 1.13.2->1.14 (#3796) 2024-04-20 15:17:26 +02:00
Nassim Jahnke
949b3d712e
Fix illager metadata in 1.13->1.14 2024-04-20 13:36:00 +02:00
Nassim Jahnke
216dcb2931
Remove invalid zombified piglin data 2024-04-20 12:43:08 +02:00
Nassim Jahnke
bff1536529
Fall back to keys without namespace in registry data 2024-04-20 12:06:39 +02:00
Nassim Jahnke
b221e47eb7
Add creative mode range attributes if needed
Add the range argument either with or without modifiers depending on the gamemode to otherwise reset them
2024-04-19 21:35:41 +02:00
EnZaXD
fb434a79bd
Use correct deserialization method in SerializerVersion#toComponent (#3795)
MCStructs has multiple methods for parsing jsons depending on the version, we should use them correctly in our wrapper to support all possible cases of components.
2024-04-19 17:05:07 +02:00
Nassim Jahnke
1be0605f51
Eat remaining particle data in spawn particle 2024-04-19 17:02:08 +02:00
Gero
e08c263ced Add missing dust_color_transition data remapping (changed in 24w03a) 2024-04-19 11:02:11 +02:00
Nassim Jahnke
1bb85b11e9
Merge branch 'refs/heads/dev' into preview 2024-04-19 10:11:05 +02:00
AJ Ferguson
128e191132
Fix 1.15->1.16 item attribute uuid (#3793) 2024-04-19 10:09:17 +02:00
Nassim Jahnke
3520f99d5a
Remove empty items from various block entities 2024-04-19 09:56:24 +02:00
RaphiMC
7825a1e460
Handle show_entity type field 2024-04-18 23:11:19 +02:00
RK_01
bfde4b953c
Fix 1.11->1.12 show_achievement rewriter (#3792) 2024-04-18 20:45:19 +02:00
Nassim Jahnke
57b37457d6
Add spit damage type
The client depends on it
2024-04-18 20:12:38 +02:00
Nassim Jahnke
f7aa1a516e
Fill wolf_food item tag 2024-04-18 18:58:29 +02:00
Nassim Jahnke
b1468ac6d0
Update particle codec format
Was changed in 1.20.5-pre1
2024-04-18 18:36:22 +02:00
Nassim Jahnke
27b5fdb4ff
Merge branch 'refs/heads/dev' into preview
# Conflicts:
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_13_1to1_13/metadata/MetadataRewriter1_13_1To1_13.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_14to1_13_2/metadata/MetadataRewriter1_14To1_13_2.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_15to1_14_4/metadata/MetadataRewriter1_15To1_14_4.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_16_2to1_16_1/metadata/MetadataRewriter1_16_2To1_16_1.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_16to1_15_2/metadata/MetadataRewriter1_16To1_15_2.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_17to1_16_4/packets/EntityPackets.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_18to1_17_1/packets/EntityPackets.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19_3to1_19_1/packets/EntityPackets.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/packets/EntityPackets.java
2024-04-18 16:17:05 +02:00
Nassim Jahnke
a99273db2e
Always call onMappingDataLoaded in TagRewriter
In case they are needed in the future, so that we don't also have to check whether the different methods are actually called
2024-04-18 16:12:57 +02:00
Nassim Jahnke
64f911ed4a
1.20.5-rc1 2024-04-18 15:47:44 +02:00
EnZaXD
4302dd61aa
Remove Protocol1_9To1_8#FIX_JSON usage in 1.11->1.12 (#3791) 2024-04-18 15:26:13 +02:00
EnZaXD
98c5d38d0c
Push book contents through component conversion in 1.8->1.9 (#3790) 2024-04-18 15:25:48 +02:00
FlorianMichael
033d5ae49a
Handle removed item conversion in component rewriter 2024-04-17 22:39:08 +02:00
EnZaXD
8fe0681778
Replace incoming/outgoing usages with client/server bound (#3787) 2024-04-16 20:59:48 +02:00
EnZaXD
ea5cf3e594
Add IdAndData util and replace conversions (#3786) 2024-04-16 15:55:55 +02:00
Nassim Jahnke
31ccd2ab9b
1.20.5-pre2 2024-04-15 17:14:23 +02:00
FlorianMichael
2be190d152
Some consistency cleanup 2024-04-13 22:32:56 +02:00
FlorianMichael
4e25549682
Handle legacy item hover events
Co-authored-by: RaphiMC <50594595+raphimc@users.noreply.github.com>
2024-04-13 21:01:34 +02:00
FlorianMichael
287678c12a
[ci skip] Add comments for conversion direction to classes 2024-04-13 20:58:38 +02:00
FlorianMichael
970986bc59
Add component rewriter for 1.20.3->1.20.5 2024-04-13 20:56:54 +02:00
RK_01
2586788bf6
Fix config read/write error when parent file is null (#3783) 2024-04-10 17:35:25 +02:00
EnZaXD
0c2c8400ae
Make handling of optional block metadata more explicit in <1.19.4 (#3782) 2024-04-10 17:34:56 +02:00
Nassim Jahnke
ba4404fad6
1.20.5-pre1 2024-04-10 17:33:10 +02:00
RK_01
6f53c069ea
Fix 1.12 -> 1.13 held enderman block translation (#3781) 2024-04-10 10:43:48 +02:00
Nassim Jahnke
99f29e2597
Prepare proper banner id tracking, small other fixes 2024-04-09 12:40:16 +02:00
EnZaXD
7932b79080
Explain backup tags (#1) 2024-04-08 16:59:33 +02:00
FlorianMichael
4b780b92ee
Fix armor trim conversion 2024-04-08 15:05:01 +02:00
Nassim Jahnke
d04aaeb926
Handle color in area effect cloud 2024-04-08 14:21:11 +02:00
FlorianMichael
9f1ee27afc
Add missing checks in item id conversions 2024-04-08 13:36:58 +02:00
Nassim Jahnke
5f685884ff
Handle entity effect particle in spawn particle 2024-04-08 13:33:59 +02:00
FlorianMichael
ba2e50cc88
Fix StructuredDataConverter#removeItemBackupTag 2024-04-08 13:31:13 +02:00
FlorianMichael
7b28683b6a
Add remaining data backup handling 2024-04-08 13:18:49 +02:00
Nassim Jahnke
510747a7cd
Replace empty items in recipes 2024-04-08 10:53:39 +02:00
Nassim Jahnke
8c5752bb4c
Update unsupported java version warning 2024-04-07 22:34:20 +02:00
Nassim Jahnke
33e2a1fc13
Send unsigned messages if possible
The server cannot guarantee that the last seen values are correct, so in order to avoid kicks from invalid signatures, we will just strip them if possible.
2024-04-07 22:05:14 +02:00
Nassim Jahnke
83223c1520
Also handle ack in serverbound chat message 2024-04-07 20:35:07 +02:00
FlorianMichael
935077222e
Simplify code 2024-04-07 20:08:16 +02:00
FlorianMichael
8961660846
Fix chat command handling 2024-04-07 19:43:29 +02:00
Nassim Jahnke
1fe23e4aeb
Fix trade list handling 2024-04-07 13:36:02 +02:00
Nassim Jahnke
06394c1f74
Apply network limits 2024-04-07 11:41:57 +02:00
Nassim Jahnke
68c2af2795
Replace unknown sounds with direct value in registry data 2024-04-06 23:47:27 +02:00
Nassim Jahnke
c2489c7a4c
Back up 1.20.5 data components in VB for creative clients 2024-04-06 21:26:44 +02:00
Nassim Jahnke
c743c20334
Update wolf textures again, add utility methods 2024-04-06 21:26:44 +02:00
FlorianMichael
228689f181
Remove temporary goat horn fix 2024-04-06 21:26:44 +02:00
Nassim Jahnke
67e6e1a2e3
24w14a 2024-04-06 21:26:44 +02:00
Nassim Jahnke
a2c1c52f51
24w13a 2024-04-06 21:26:44 +02:00
Nassim Jahnke
0b7fdd4c69
Update wild wolf texture field name 2024-04-06 21:26:43 +02:00
Nassim Jahnke
4849ca0745
Start working on 24w12a 2024-04-06 21:26:43 +02:00
Nassim Jahnke
60b782455d
Fix display tag setting and doubled item id rewriting 2024-04-06 21:26:43 +02:00
FlorianMichael
3fef71db2e
Added missing null checks for CONTAINER_LOOT handler 2024-04-06 21:26:43 +02:00
Nassim Jahnke
9ca02680c8
Fix enchantment level 2024-04-06 21:26:43 +02:00
FlorianMichael
5899886b42
Fixes 2024-04-06 21:26:42 +02:00
Nassim Jahnke
c2567115d8
Fix various issues 2024-04-06 21:26:42 +02:00
Nassim Jahnke
4255876c22
Fix up block state handling, add PotDecorations wrapper 2024-04-06 21:26:42 +02:00
FlorianMichael
57a589924d
More structured data handling 2024-04-06 21:26:42 +02:00
Nassim Jahnke
936dcafc11
Make HolderSet an interface 2024-04-06 21:26:42 +02:00
Nassim Jahnke
b6489b8343
Fix block predicate parsing 2024-04-06 21:26:41 +02:00
Nassim Jahnke
bf11a0a7de
Start working on 24w11a 2024-04-06 21:26:41 +02:00
Nassim Jahnke
7d41706026
Rewrite block predicates the other way around as well 2024-04-06 21:26:41 +02:00
FlorianMichael
93f081dd84
Add even more backwards rewriters 2024-04-06 21:26:41 +02:00
Nassim Jahnke
3f82b150d2
Handle CanPlaceOn and CanDestroy tags 2024-04-06 21:26:39 +02:00
Nassim Jahnke
7a96498f6d
Some sanity checks, get item id by name fast 2024-04-06 21:26:17 +02:00
FlorianMichael
817febe605
Even more work! 2024-04-06 21:26:16 +02:00
Nassim Jahnke
bb4a8b73e0
Small cleanup 2024-04-06 21:26:16 +02:00
Nassim Jahnke
8d3492ba30
Add more structured data -> nbt converters 2024-04-06 21:26:16 +02:00
Nassim Jahnke
658364b643
Add a few structured data -> nbt converters 2024-04-06 21:26:16 +02:00
Nassim Jahnke
666b204ebb
Prepare class for structured data->tag rewriting 2024-04-06 21:26:16 +02:00
Nassim Jahnke
bfab9b0c11
Banner patterns and wolves 2024-04-06 21:26:15 +02:00
Nassim Jahnke
121f107ff3
More handled structures 2024-04-06 21:26:15 +02:00
Nassim Jahnke
426bd9aa99
More handled structures 2024-04-06 21:26:13 +02:00
Nassim Jahnke
7a66bb8e1c
More handled structures 2024-04-06 21:25:39 +02:00
Nassim Jahnke
329abcac7d
More handled structures 2024-04-06 21:25:08 +02:00
Nassim Jahnke
0961de898d
Handle books, among other things 2024-04-06 21:25:05 +02:00
Nassim Jahnke
b4ee564aa2
24w10a, more item component work 2024-04-06 21:23:57 +02:00
EnZaXD
73178b504e
Inline player on-ground movement handler (#3777) 2024-04-06 09:29:57 +02:00
EnZaXD
d0cc531386
Cleanup MetaIndex style and field names (#3775) 2024-04-05 20:15:41 +02:00
EnZaXD
617ef10667
Remove MetaType1_8#NonExistent (#3774) 2024-04-05 19:48:59 +02:00
EnZaXD
5569caf610
Improve horse armor patch in 1.8->1.9 (#3773) 2024-04-05 15:46:20 +02:00
EnZaXD
868a5bd24e
Remove non existing metadata from MetaIndex (#3772) 2024-04-05 15:45:13 +02:00
EnZaXD
b113a82710
Catch errors in <= 1.20 custom payload reading (#3770) 2024-04-04 22:25:02 +02:00
EnZaXD
3ee4c8ed63
Make ViaVersion fake nbt format consistent (#3771)
Adding ItemRewriter#nbtTagName utils to prefix nbt tags with a consistent format:
<Platform>|<Protocol name>|<original nbt name>
2024-04-04 09:31:58 +02:00
EnZaXD
cd65925d6b
Add conversion methods to SerializerVersion and replace missing MCStructs usages (#3769) 2024-04-01 15:52:57 +02:00
Nassim Jahnke
307414eb51
Move simple mcstructs usage into utils 2024-04-01 14:13:43 +02:00
EnZaXD
51745cb2ef
Rewrite 1.12.2->1.13 ComponentRewriter (#3765) 2024-04-01 13:38:43 +02:00
EnZaXD
f44782d21d
Fix minor inconsistencies in protocol packages (#3768) 2024-04-01 12:55:50 +02:00
EnZaXD
7556f7b8fa
Move chat registry dumps into nbt files (#3763) 2024-03-31 15:07:46 +02:00
EnZaXD
abd58399cd
Remove entity metadata buffering in 1.8->1.9 (#3766) 2024-03-30 22:27:40 +01:00
EnZaXD
098f7ff3c2
Allow platforms to use the mapping system (#3754) 2024-03-24 11:10:20 +01:00
Nassim Jahnke
feefe6f278
Merge branch 'master' into dev
# Conflicts:
#	bukkit-legacy/src/main/java/com/viaversion/viaversion/bukkit/util/ProtocolSupportUtil.java
#	bukkit/src/main/java/com/viaversion/viaversion/bukkit/platform/BukkitViaInjector.java
#	bungee/src/main/java/com/viaversion/viaversion/bungee/handlers/BungeeServerHandler.java
#	bungee/src/main/java/com/viaversion/viaversion/bungee/providers/BungeeVersionProvider.java
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_9to1_8/storage/EntityTracker1_9.java
#	common/src/main/java/com/viaversion/viaversion/update/UpdateUtil.java
#	velocity/src/main/java/com/viaversion/viaversion/velocity/platform/VelocityViaInjector.java
#	velocity/src/main/java/com/viaversion/viaversion/velocity/service/ProtocolDetectorService.java
2024-03-22 20:54:44 +01:00
Nassim Jahnke
b07cf03dc1
Check for jsonnull in component conversion
Closes #3745
2024-03-17 16:23:27 +01:00
Nassim Jahnke
0a921d9bdc
Use the correct entity sound rewriter method 2024-03-14 14:43:37 +01:00