Commit Graph

587 Commits

Author SHA1 Message Date
EnZaXD
76abe4432f
Handle items with invalid amount in 1.20.3->.5 (#3889) 2024-05-29 16:46:25 +02:00
EnZaXD
d8aa3c4b39
Add DataItem constructor without data short (#3884) 2024-05-28 10:52:57 +02:00
RK_01
869755ec4a
Perform deep copy in DataItem#copy (#3883) 2024-05-27 13:28:39 +02:00
Nassim Jahnke
792f52e637
Fix firework flight show item conversion
Fixes #3877
2024-05-26 13:02:38 +02:00
Nassim Jahnke
c5756fe45c
Rename Position to BlockPosition 2024-05-21 13:05:15 +02:00
EnZaXD
f92d241028
Use Key#namespaced in entity type enums (#3858) 2024-05-17 21:04:54 +02:00
RK_01
91f31b578f
Clean up tags rewriting (#3856) 2024-05-16 10:31:05 +02:00
EnZaXD
04b31d70b2
Fixup legacy entity type hierarchy and namings (#3849) 2024-05-14 20:56:07 +02:00
Nassim Jahnke
75d86851ce
Apply IJ code reformat, rename rewriter methods, change metadata references to entity data
Doing lots of things in one commit to not muddy file history too much - almost all of these changes are fully automated
2024-05-14 20:55:33 +02:00
Nassim Jahnke
d6b5b5dc3e
Move PS compatibility to an addon
PS has long been dead, so moving it away removes unnecessary complexity/the extra module. The additional code when getting the protocol version was long dead as well, since all connections are injected.
2024-05-14 18:54:24 +02:00
EnZaXD
fcfea24b36
Rework logging inside protocols, add Protocol#getLogger() (#3843) 2024-05-14 18:54:23 +02:00
FlorianMichael
d47b5be7f3
Move GameMode enum into api module
Actually not needed there but still fits in there
2024-05-14 18:54:22 +02:00
Nassim Jahnke
5286efde15
Move type instances out of its enclosing class
Type constants being hold by its own abstract class has lead to classloading issues in the past, now we're finally free
2024-05-14 18:54:19 +02:00
Nassim Jahnke
501f65e216
Packet and entity type renames
Use Mojang mapped names for packet types to be consistent with functionality and easy to look up
2024-05-14 18:53:51 +02:00
Nassim Jahnke
e965e97139
Package/class renames and moves 2024-05-14 18:53:05 +02:00
Nassim Jahnke
75db1a7cdf
Start work on ViaVersion 5.0.0
Bump Java target to 17, clean up using its new language features
Remove unnecessary checked exception throwing
Remove deprecated code
2024-05-14 18:53:02 +02:00
Nassim Jahnke
f1b92fea8d
Move loadFullMappings to MappingDataBase, use loadMiMappings 2024-05-05 14:41:30 +02:00
Nassim Jahnke
d691096ce1
Move around types, apply to other enums
This doesn't include ALL abstract types, mostly if they are single-use or not at all relevant to our handling and most likely never will
2024-05-05 12:10:57 +02:00
Nassim Jahnke
73ed425bf7
Fixup entity type hierarchy 2024-05-04 18:11:50 +02:00
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
5f90bcbbaf
Fix item cost type reading 2024-04-28 15:15:17 +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
f20d99fcef
Add 1.20.6 to .5 version
We technically don't know whether that will stay true, but might as well now to prevent confusion, as it wouldn't have any consequences if it did change
2024-04-26 15:02:57 +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
9dd3348510
Move appendClientbound/Serverbound methods to Protocol interface 2024-04-24 20:11:05 +02:00
Nassim Jahnke
f2b9c42590
Remove snapshot version support 2024-04-23 17:01:46 +02:00
Nassim Jahnke
bc0b4470f6
1.20.5-rc3 2024-04-22 16:20:09 +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
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
Gero
0acaed7c7a Use correct item type for 1.20.5 particle reading 2024-04-20 23:50:24 +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
1be0605f51
Eat remaining particle data in spawn particle 2024-04-19 17:02:08 +02:00
Nassim Jahnke
c75b4d8ef5
1.20.5-rc2 2024-04-19 15:38:35 +02:00
Gero
e08c263ced Add missing dust_color_transition data remapping (changed in 24w03a) 2024-04-19 11:02:11 +02:00
Nassim Jahnke
f7aa1a516e
Fill wolf_food item tag 2024-04-18 18:58:29 +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
FlorianMichael
033d5ae49a
Handle removed item conversion in component rewriter 2024-04-17 22:39:08 +02:00
Nassim Jahnke
8cf9114403
1.20.5-pre4 2024-04-17 15:01:16 +02:00
EnZaXD
bd8e469216
Fix IdAndData constructor without data field (#3789) 2024-04-17 08:46:56 +02:00
EnZaXD
57d7fd59cc
Change IdAndData#setData parameter to int (#3788) 2024-04-16 21:00:04 +02:00
EnZaXD
ea5cf3e594
Add IdAndData util and replace conversions (#3786) 2024-04-16 15:55:55 +02:00
Nassim Jahnke
13eec3c2ea
1.20.5-pre3 2024-04-16 15:36:02 +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
4343aa17fc
Add missing annotations to StatePropertyMatcher 2024-04-13 20:57:32 +02:00
Nassim Jahnke
ba4404fad6
1.20.5-pre1 2024-04-10 17:33:10 +02:00
Nassim Jahnke
d04aaeb926
Handle color in area effect cloud 2024-04-08 14:21:11 +02:00
FlorianMichael
7b28683b6a
Add remaining data backup handling 2024-04-08 13:18:49 +02:00
Nassim Jahnke
1fe23e4aeb
Fix trade list handling 2024-04-07 13:36:02 +02:00
Nassim Jahnke
c743c20334
Update wolf textures again, add utility methods 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
fd4db24d44
Fix intangible projectile data reading 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
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
Nassim Jahnke
936dcafc11
Make HolderSet an interface 2024-04-06 21:26:42 +02:00
Nassim Jahnke
bf11a0a7de
Start working on 24w11a 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
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
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
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
617ef10667
Remove MetaType1_8#NonExistent (#3774) 2024-04-05 19:48:59 +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
Nassim Jahnke
307414eb51
Move simple mcstructs usage into utils 2024-04-01 14:13:43 +02:00
EnZaXD
0a2fd8f296
Add MappingDataLoader#getLogger and MappingDataLoader#getDataFolder (#3757) 2024-03-24 22:04:41 +01:00
EnZaXD
f2c816df72
Add mapped and unmapped identifier read method (#3756) 2024-03-24 12:14:42 +01:00
EnZaXD
098f7ff3c2
Allow platforms to use the mapping system (#3754) 2024-03-24 11:10:20 +01:00
RK_01
18f04bf8ea
Add more functionality to ChunkUtil (#3755) 2024-03-24 11:05:30 +01:00
Nassim Jahnke
b426302e76
Merge branch 'master' into dev
# Conflicts:
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/packets/EntityPackets.java
#	common/src/main/java/com/viaversion/viaversion/rewriter/EntityRewriter.java
#	gradle/libs.versions.toml
2024-03-09 12:59:36 +01:00
Nassim Jahnke
3442cda8ce
Update ViaNBT 2024-03-09 12:57:55 +01:00
Nassim Jahnke
93990c8baa
Merge branch 'master' into dev
# Conflicts:
#	common/src/main/java/com/viaversion/viaversion/protocols/protocol1_19to1_18_2/packets/EntityPackets.java
#	common/src/main/java/com/viaversion/viaversion/rewriter/EntityRewriter.java
#	gradle.properties
#	gradle/libs.versions.toml
2024-03-07 13:45:10 +01:00
Nassim Jahnke
f868dfa125
Update ViaNBT 2024-03-07 13:30:33 +01:00
Nassim Jahnke
386495e168
Handle map related data and skull owners
Co-authored-by: Drex <nicknamedrex@gmail.com>
2024-03-06 13:26:06 +01:00
EnZaXD
908823c612
Make ItemRewriter type getters nullable and optional (#3737) 2024-03-05 23:23:57 +01:00
Nassim Jahnke
2d03110f08
Small refactor 2024-03-01 14:10:44 +01:00
Nassim Jahnke
92878a39ef
We continue to fall 2024-03-01 13:46:26 +01:00
Nassim Jahnke
39180e22b8
The endless pit continues to be endless 2024-03-01 12:13:43 +01:00
Nassim Jahnke
f68aed464d
Once again refactor structured data storage
Optionals are no more
2024-02-29 19:59:18 +01:00
Nassim Jahnke
6ffa24b50b
Add todos 2024-02-29 18:23:46 +01:00
Nassim Jahnke
e51d7b3fdb
Fix initial item sending, add some data translation and more rigid data structures 2024-02-29 17:03:50 +01:00
Nassim Jahnke
01bb8dedda
More renames 2024-02-29 12:08:29 +01:00
EnZaXD
6cdca97d35
Add classic version range to VersionType#CLASSIC javadoc (#3729) 2024-02-29 11:11:23 +01:00