diff --git a/bukkit/pom.xml b/bukkit/pom.xml
index a45685c6f..26c6f5d26 100644
--- a/bukkit/pom.xml
+++ b/bukkit/pom.xml
@@ -5,7 +5,7 @@
viaversion-parent
us.myles
- 2.0.0-19w12b
+ 2.0.0-19w13a
4.0.0
diff --git a/bungee/pom.xml b/bungee/pom.xml
index 957ba2c48..fda94c3e4 100644
--- a/bungee/pom.xml
+++ b/bungee/pom.xml
@@ -5,7 +5,7 @@
viaversion-parent
us.myles
- 2.0.0-19w12b
+ 2.0.0-19w13a
4.0.0
diff --git a/common/pom.xml b/common/pom.xml
index 34b16a3ad..e56a347a0 100644
--- a/common/pom.xml
+++ b/common/pom.xml
@@ -5,7 +5,7 @@
viaversion-parent
us.myles
- 2.0.0-19w12b
+ 2.0.0-19w13a
4.0.0
diff --git a/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java b/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java
index 4d56f923c..5b26b8a00 100644
--- a/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java
+++ b/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java
@@ -67,7 +67,7 @@ public class ProtocolVersion {
register(v1_13 = new ProtocolVersion(393, "1.13"));
register(v1_13_1 = new ProtocolVersion(401, "1.13.1"));
register(v1_13_2 = new ProtocolVersion(404, "1.13.2"));
- register(v1_14 = new ProtocolVersion(467, "1.14"));
+ register(v1_14 = new ProtocolVersion(468, "1.14"));
register(unknown = new ProtocolVersion(-1, "UNKNOWN"));
}
diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/MetadataRewriter.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/MetadataRewriter.java
index e4b3123b5..4a4863b86 100644
--- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/MetadataRewriter.java
+++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/MetadataRewriter.java
@@ -120,6 +120,13 @@ public class MetadataRewriter {
metadatas.remove(metadata); // TODO "Has target (aggressive state)", maybe moved to pos / entity status
}
}
+
+ // TODO Are witch and ravager also abstract illagers? They all inherit the new metadata 14 added in 19w13a
+ if (type.is(Entity1_14Types.EntityType.WITCH) || type.is(Entity1_14Types.EntityType.RAVAGER) || type.isOrHasParent(Entity1_14Types.EntityType.ABSTRACT_ILLAGER_BASE)) {
+ if (metadata.getId() >= 14) { // TODO 19w13 added a new boolean with id 14
+ metadata.setId(metadata.getId() + 1);
+ }
+ }
} catch (Exception e) {
metadatas.remove(metadata);
if (!Via.getConfig().isSuppressMetadataErrors() || Via.getManager().isDebug()) {
diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/Protocol1_14To1_13_2.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/Protocol1_14To1_13_2.java
index 9e2232001..eb76c3f44 100644
--- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/Protocol1_14To1_13_2.java
+++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/Protocol1_14To1_13_2.java
@@ -177,7 +177,7 @@ public class Protocol1_14To1_13_2 extends Protocol {
}
});
- registerIncoming(State.PLAY, -1, 0x02); //Unknown packet added in 19w11a
+ registerIncoming(State.PLAY, -1, 0x02); //Set Difficulty packet added in 19w11a
registerIncoming(State.PLAY, 0x02, 0x03);
registerIncoming(State.PLAY, 0x03, 0x04);
registerIncoming(State.PLAY, 0x04, 0x05);
@@ -190,7 +190,7 @@ public class Protocol1_14To1_13_2 extends Protocol {
registerIncoming(State.PLAY, 0x0C, 0x0D);
registerIncoming(State.PLAY, 0x0D, 0x0E);
- registerIncoming(State.PLAY, -1, 0x0F); //Unknown packet added in 19w11a
+ registerIncoming(State.PLAY, -1, 0x0F); //Lock Difficulty packet added in 19w11a
registerIncoming(State.PLAY, 0x0E, 0x10);
registerIncoming(State.PLAY, 0x0F, 0x11);
registerIncoming(State.PLAY, 0x10, 0x12);
@@ -214,10 +214,12 @@ public class Protocol1_14To1_13_2 extends Protocol {
registerIncoming(State.PLAY, 0x23, 0x25);
- registerIncoming(State.PLAY, 0x27, 0x29);
- registerIncoming(State.PLAY, 0x28, 0x2A);
+ registerIncoming(State.PLAY, -1, 0x27); //Unknown packet added in 19w13a
- registerIncoming(State.PLAY, 0x2A, 0x2C);
+ registerIncoming(State.PLAY, 0x27, 0x2A);
+ registerIncoming(State.PLAY, 0x28, 0x2B);
+
+ registerIncoming(State.PLAY, 0x2A, 0x2D);
}
public static int getNewSoundId(int id) {
diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/PlayerPackets.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/PlayerPackets.java
index 3fdb37a69..b821311fe 100644
--- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/PlayerPackets.java
+++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/PlayerPackets.java
@@ -18,7 +18,7 @@ public class PlayerPackets {
public static void register(Protocol protocol) {
// Open Sign Editor
- protocol.registerOutgoing(State.PLAY, 0x2C, 0x2D, new PacketRemapper() {
+ protocol.registerOutgoing(State.PLAY, 0x2C, 0x2E, new PacketRemapper() {
@Override
public void registerMap() {
map(Type.POSITION, Type.POSITION1_14);
@@ -110,7 +110,7 @@ public class PlayerPackets {
});
// Update Structure Block
- protocol.registerIncoming(State.PLAY, 0x25, 0x27, new PacketRemapper() {
+ protocol.registerIncoming(State.PLAY, 0x25, 0x28, new PacketRemapper() {
@Override
public void registerMap() {
map(Type.POSITION1_14, Type.POSITION);
@@ -118,7 +118,7 @@ public class PlayerPackets {
});
// Update Sign
- protocol.registerIncoming(State.PLAY, 0x26, 0x28, new PacketRemapper() {
+ protocol.registerIncoming(State.PLAY, 0x26, 0x29, new PacketRemapper() {
@Override
public void registerMap() {
map(Type.POSITION1_14, Type.POSITION);
@@ -126,7 +126,7 @@ public class PlayerPackets {
});
// Player Block Placement
- protocol.registerIncoming(State.PLAY, 0x29, 0x2B, new PacketRemapper() {
+ protocol.registerIncoming(State.PLAY, 0x29, 0x2C, new PacketRemapper() {
@Override
public void registerMap() {
handler(new PacketHandler() {
diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/WorldPackets.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/WorldPackets.java
index 6da9918cc..c69ad83b2 100644
--- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/WorldPackets.java
+++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_14to1_13_2/packets/WorldPackets.java
@@ -299,6 +299,11 @@ public class WorldPackets {
difficultyPacket.write(Type.UNSIGNED_BYTE, difficulty);
difficultyPacket.write(Type.BOOLEAN, false); // Unknown value added in 19w11a
difficultyPacket.send(protocol.getClass());
+
+ wrapper.passthrough(Type.UNSIGNED_BYTE); // Max Players
+ wrapper.passthrough(Type.STRING); // Level Type
+
+ wrapper.write(Type.VAR_INT, 0); // Added in 19w13a, maybe difficulty?
}
});
}
diff --git a/common/src/main/resources/assets/viaversion/data/mapping-1.14.json b/common/src/main/resources/assets/viaversion/data/mapping-1.14.json
index 396e6906a..b72f14eb8 100644
--- a/common/src/main/resources/assets/viaversion/data/mapping-1.14.json
+++ b/common/src/main/resources/assets/viaversion/data/mapping-1.14.json
@@ -12354,6 +12354,7 @@
"block.end_portal.spawn",
"entity.evoker.ambient",
"entity.evoker.cast_spell",
+ "entity.evoker.celebrate",
"entity.evoker.death",
"entity.evoker_fangs.attack",
"entity.evoker.hurt",
@@ -12466,6 +12467,7 @@
"entity.husk.step",
"entity.ravager.ambient",
"entity.ravager.attack",
+ "entity.ravager.celebrate",
"entity.ravager.death",
"entity.ravager.hurt",
"entity.ravager.step",
@@ -12636,6 +12638,7 @@
"entity.pig.saddle",
"entity.pig.step",
"entity.pillager.ambient",
+ "entity.pillager.celebrate",
"entity.pillager.death",
"entity.pillager.hurt",
"block.piston.contract",
@@ -12845,6 +12848,7 @@
"entity.vex.death",
"entity.vex.hurt",
"entity.villager.ambient",
+ "entity.villager.celebrate",
"entity.villager.death",
"entity.villager.hurt",
"entity.villager.no",
@@ -12864,6 +12868,7 @@
"entity.villager.work_toolsmith",
"entity.villager.work_weaponsmith",
"entity.vindicator.ambient",
+ "entity.vindicator.celebrate",
"entity.vindicator.death",
"entity.vindicator.hurt",
"block.lily_pad.place",
@@ -12881,6 +12886,7 @@
"weather.rain",
"weather.rain.above",
"entity.witch.ambient",
+ "entity.witch.celebrate",
"entity.witch.death",
"entity.witch.drink",
"entity.witch.hurt",
diff --git a/jar/pom.xml b/jar/pom.xml
index 58848d074..e52fe66c6 100644
--- a/jar/pom.xml
+++ b/jar/pom.xml
@@ -5,7 +5,7 @@
viaversion-parent
us.myles
- 2.0.0-19w12b
+ 2.0.0-19w13a
4.0.0
viaversion-jar
diff --git a/pom.xml b/pom.xml
index 9332dcda6..bbafa488f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
us.myles
viaversion-parent
- 2.0.0-19w12b
+ 2.0.0-19w13a
pom
viaversion-parent
diff --git a/sponge-legacy/pom.xml b/sponge-legacy/pom.xml
index b2e55d302..bae89eb20 100644
--- a/sponge-legacy/pom.xml
+++ b/sponge-legacy/pom.xml
@@ -5,7 +5,7 @@
viaversion-parent
us.myles
- 2.0.0-19w12b
+ 2.0.0-19w13a
4.0.0
diff --git a/sponge/pom.xml b/sponge/pom.xml
index a614abbd4..ccd4111d5 100644
--- a/sponge/pom.xml
+++ b/sponge/pom.xml
@@ -5,7 +5,7 @@
viaversion-parent
us.myles
- 2.0.0-19w12b
+ 2.0.0-19w13a
4.0.0
diff --git a/velocity/pom.xml b/velocity/pom.xml
index d23f4246f..defce482f 100644
--- a/velocity/pom.xml
+++ b/velocity/pom.xml
@@ -5,7 +5,7 @@
viaversion-parent
us.myles
- 2.0.0-19w12b
+ 2.0.0-19w13a
4.0.0