From d11e9d3b77e68b53185c2194fc7599253686ebdb Mon Sep 17 00:00:00 2001 From: KennyTV Date: Fri, 6 Nov 2020 11:37:58 +0100 Subject: [PATCH] Start working on 20w45a --- all/pom.xml | 2 +- bukkit/pom.xml | 2 +- bungee/pom.xml | 2 +- core/pom.xml | 2 +- .../api/ViaBackwardsPlatform.java | 5 +- .../api/data/VBMappingDataLoader.java | 13 +- .../Protocol1_16_4To1_17.java | 54 ++++++ .../packets/BlockItemPackets1_17.java | 89 +++++++++ .../data/mapping-1.16.2to1.17.json | 169 ++++++++++++++++++ fabric/pom.xml | 2 +- pom.xml | 4 +- sponge/pom.xml | 2 +- velocity/pom.xml | 2 +- 13 files changed, 336 insertions(+), 12 deletions(-) create mode 100644 core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/Protocol1_16_4To1_17.java create mode 100644 core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/packets/BlockItemPackets1_17.java create mode 100644 core/src/main/resources/assets/viabackwards/data/mapping-1.16.2to1.17.json diff --git a/all/pom.xml b/all/pom.xml index 90ac4d87..f578e90e 100644 --- a/all/pom.xml +++ b/all/pom.xml @@ -16,7 +16,7 @@ viabackwards-parent nl.matsv - 3.2.1-SNAPSHOT + 3.3.0-20w45a viabackwards-all diff --git a/bukkit/pom.xml b/bukkit/pom.xml index 72095d93..2a79f6c1 100644 --- a/bukkit/pom.xml +++ b/bukkit/pom.xml @@ -16,7 +16,7 @@ viabackwards-parent nl.matsv - 3.2.1-SNAPSHOT + 3.3.0-20w45a viabackwards-bukkit diff --git a/bungee/pom.xml b/bungee/pom.xml index 55265d0d..124490dd 100644 --- a/bungee/pom.xml +++ b/bungee/pom.xml @@ -16,7 +16,7 @@ viabackwards-parent nl.matsv - 3.2.1-SNAPSHOT + 3.3.0-20w45a viabackwards-bungee diff --git a/core/pom.xml b/core/pom.xml index ae4223b3..7ba0e852 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -16,7 +16,7 @@ viabackwards-parent nl.matsv - 3.2.1-SNAPSHOT + 3.3.0-20w45a viabackwards-core diff --git a/core/src/main/java/nl/matsv/viabackwards/api/ViaBackwardsPlatform.java b/core/src/main/java/nl/matsv/viabackwards/api/ViaBackwardsPlatform.java index 81637340..255ba9c6 100644 --- a/core/src/main/java/nl/matsv/viabackwards/api/ViaBackwardsPlatform.java +++ b/core/src/main/java/nl/matsv/viabackwards/api/ViaBackwardsPlatform.java @@ -32,6 +32,7 @@ import nl.matsv.viabackwards.protocol.protocol1_15_2to1_16.Protocol1_15_2To1_16; import nl.matsv.viabackwards.protocol.protocol1_15to1_15_1.Protocol1_15To1_15_1; import nl.matsv.viabackwards.protocol.protocol1_16_2to1_16_3.Protocol1_16_2To1_16_3; import nl.matsv.viabackwards.protocol.protocol1_16_3to1_16_4.Protocol1_16_3To1_16_4; +import nl.matsv.viabackwards.protocol.protocol1_16_4to1_17.Protocol1_16_4To1_17; import nl.matsv.viabackwards.protocol.protocol1_16to1_16_1.Protocol1_16To1_16_1; import nl.matsv.viabackwards.protocol.protocol1_16_1to1_16_2.Protocol1_16_1To1_16_2; import nl.matsv.viabackwards.protocol.protocol1_9_4to1_10.Protocol1_9_4To1_10; @@ -46,7 +47,7 @@ import static us.myles.ViaVersion.api.protocol.ProtocolRegistry.registerProtocol public interface ViaBackwardsPlatform { - String MINIMUM_VV_VERSION = "3.2.0"; + String MINIMUM_VV_VERSION = "3.3.0"; /** * Initialize ViaBackwards. @@ -94,6 +95,8 @@ public interface ViaBackwardsPlatform { registerProtocol(new Protocol1_16_1To1_16_2(), ProtocolVersion.v1_16_1, ProtocolVersion.v1_16_2); registerProtocol(new Protocol1_16_2To1_16_3(), ProtocolVersion.v1_16_2, ProtocolVersion.v1_16_3); registerProtocol(new Protocol1_16_3To1_16_4(), ProtocolVersion.v1_16_3, ProtocolVersion.v1_16_4); + + registerProtocol(new Protocol1_16_4To1_17(), ProtocolVersion.v1_16_4, ProtocolVersion.v1_17); } /** diff --git a/core/src/main/java/nl/matsv/viabackwards/api/data/VBMappingDataLoader.java b/core/src/main/java/nl/matsv/viabackwards/api/data/VBMappingDataLoader.java index 0f4ebeb4..21864762 100644 --- a/core/src/main/java/nl/matsv/viabackwards/api/data/VBMappingDataLoader.java +++ b/core/src/main/java/nl/matsv/viabackwards/api/data/VBMappingDataLoader.java @@ -114,8 +114,8 @@ public class VBMappingDataLoader { public static Int2ObjectMap loadItemMappings(JsonObject oldMapping, JsonObject newMapping, JsonObject diffMapping) { Int2ObjectMap itemMapping = new Int2ObjectOpenHashMap<>(diffMapping.size(), 1F); - Object2IntMap newIdenfierMap = MappingDataLoader.indexedObjectToMap(newMapping); - Object2IntMap oldIdenfierMap = MappingDataLoader.indexedObjectToMap(oldMapping); + Object2IntMap newIdenfierMap = MappingDataLoader.indexedObjectToMap(newMapping); + Object2IntMap oldIdenfierMap = MappingDataLoader.indexedObjectToMap(oldMapping); for (Map.Entry entry : diffMapping.entrySet()) { JsonObject object = entry.getValue().getAsJsonObject(); String mappedIdName = object.getAsJsonPrimitive("id").getAsString(); @@ -139,6 +139,15 @@ public class VBMappingDataLoader { itemMapping.put(oldId, new MappedItem(mappedId, name)); } + // Look for missing keys + if (!Via.getConfig().isSuppressConversionWarnings()) { + for (Object2IntMap.Entry entry : oldIdenfierMap.object2IntEntrySet()) { + if (!newIdenfierMap.containsKey(entry.getKey()) && !itemMapping.containsKey(entry.getIntValue())) { + ViaBackwards.getPlatform().getLogger().warning("No item mapping for " + entry.getKey() + " :( "); + } + } + } + return itemMapping; } } diff --git a/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/Protocol1_16_4To1_17.java b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/Protocol1_16_4To1_17.java new file mode 100644 index 00000000..e63008ac --- /dev/null +++ b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/Protocol1_16_4To1_17.java @@ -0,0 +1,54 @@ +package nl.matsv.viabackwards.protocol.protocol1_16_4to1_17; + +import nl.matsv.viabackwards.api.BackwardsProtocol; +import nl.matsv.viabackwards.api.data.BackwardsMappings; +import nl.matsv.viabackwards.api.rewriters.SoundRewriter; +import nl.matsv.viabackwards.protocol.protocol1_16_4to1_17.packets.BlockItemPackets1_17; +import us.myles.ViaVersion.api.remapper.PacketRemapper; +import us.myles.ViaVersion.api.rewriters.StatisticsRewriter; +import us.myles.ViaVersion.api.rewriters.TagRewriter; +import us.myles.ViaVersion.api.type.Type; +import us.myles.ViaVersion.protocols.protocol1_16_2to1_16_1.ClientboundPackets1_16_2; +import us.myles.ViaVersion.protocols.protocol1_16_2to1_16_1.ServerboundPackets1_16_2; +import us.myles.ViaVersion.protocols.protocol1_17to1_16_4.Protocol1_17To1_16_4; + +public class Protocol1_16_4To1_17 extends BackwardsProtocol { + + public static final BackwardsMappings MAPPINGS = new BackwardsMappings("1.17", "1.16.2", Protocol1_17To1_16_4.class, false); + + public Protocol1_16_4To1_17() { + super(ClientboundPackets1_16_2.class, ClientboundPackets1_16_2.class, ServerboundPackets1_16_2.class, ServerboundPackets1_16_2.class); + } + + @Override + protected void registerPackets() { + executeAsyncAfterLoaded(Protocol1_17To1_16_4.class, MAPPINGS::load); + + new BlockItemPackets1_17(this, null).register(); + + SoundRewriter soundRewriter = new SoundRewriter(this); + soundRewriter.registerSound(ClientboundPackets1_16_2.SOUND); + soundRewriter.registerSound(ClientboundPackets1_16_2.ENTITY_SOUND); + soundRewriter.registerNamedSound(ClientboundPackets1_16_2.NAMED_SOUND); + soundRewriter.registerStopSound(ClientboundPackets1_16_2.STOP_SOUND); + + new TagRewriter(this, null).register(ClientboundPackets1_16_2.TAGS); + new StatisticsRewriter(this, null).register(ClientboundPackets1_16_2.STATISTICS); + + registerOutgoing(ClientboundPackets1_16_2.RESOURCE_PACK, new PacketRemapper() { + @Override + public void registerMap() { + handler(wrapper -> { + wrapper.passthrough(Type.STRING); + wrapper.passthrough(Type.STRING); + wrapper.read(Type.BOOLEAN); // Required + }); + } + }); + } + + @Override + public BackwardsMappings getMappingData() { + return MAPPINGS; + } +} diff --git a/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/packets/BlockItemPackets1_17.java b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/packets/BlockItemPackets1_17.java new file mode 100644 index 00000000..c8bbb76b --- /dev/null +++ b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_16_4to1_17/packets/BlockItemPackets1_17.java @@ -0,0 +1,89 @@ +package nl.matsv.viabackwards.protocol.protocol1_16_4to1_17.packets; + +import nl.matsv.viabackwards.api.rewriters.TranslatableRewriter; +import nl.matsv.viabackwards.protocol.protocol1_16_4to1_17.Protocol1_16_4To1_17; +import us.myles.ViaVersion.api.minecraft.chunks.Chunk; +import us.myles.ViaVersion.api.minecraft.chunks.ChunkSection; +import us.myles.ViaVersion.api.remapper.PacketRemapper; +import us.myles.ViaVersion.api.rewriters.BlockRewriter; +import us.myles.ViaVersion.api.rewriters.ItemRewriter; +import us.myles.ViaVersion.api.type.Type; +import us.myles.ViaVersion.protocols.protocol1_16_2to1_16_1.ClientboundPackets1_16_2; +import us.myles.ViaVersion.protocols.protocol1_16_2to1_16_1.ServerboundPackets1_16_2; +import us.myles.ViaVersion.protocols.protocol1_16_2to1_16_1.types.Chunk1_16_2Type; +import us.myles.ViaVersion.protocols.protocol1_16to1_15_2.data.RecipeRewriter1_16; +import us.myles.ViaVersion.protocols.protocol1_17to1_16_4.types.Chunk1_17Type; + +public class BlockItemPackets1_17 extends nl.matsv.viabackwards.api.rewriters.ItemRewriter { + + public BlockItemPackets1_17(Protocol1_16_4To1_17 protocol, TranslatableRewriter translatableRewriter) { + super(protocol, translatableRewriter); + } + + @Override + protected void registerPackets() { + ItemRewriter itemRewriter = new ItemRewriter(protocol, this::handleItemToClient, this::handleItemToServer); + BlockRewriter blockRewriter = new BlockRewriter(protocol, Type.POSITION1_14); + + new RecipeRewriter1_16(protocol, this::handleItemToClient).registerDefaultHandler(ClientboundPackets1_16_2.DECLARE_RECIPES); + + itemRewriter.registerSetCooldown(ClientboundPackets1_16_2.COOLDOWN); + itemRewriter.registerWindowItems(ClientboundPackets1_16_2.WINDOW_ITEMS, Type.FLAT_VAR_INT_ITEM_ARRAY); + itemRewriter.registerSetSlot(ClientboundPackets1_16_2.SET_SLOT, Type.FLAT_VAR_INT_ITEM); + itemRewriter.registerEntityEquipmentArray(ClientboundPackets1_16_2.ENTITY_EQUIPMENT, Type.FLAT_VAR_INT_ITEM); + itemRewriter.registerTradeList(ClientboundPackets1_16_2.TRADE_LIST, Type.FLAT_VAR_INT_ITEM); + itemRewriter.registerAdvancements(ClientboundPackets1_16_2.ADVANCEMENTS, Type.FLAT_VAR_INT_ITEM); + itemRewriter.registerSpawnParticle(ClientboundPackets1_16_2.SPAWN_PARTICLE, Type.FLAT_VAR_INT_ITEM, Type.DOUBLE); + + blockRewriter.registerAcknowledgePlayerDigging(ClientboundPackets1_16_2.ACKNOWLEDGE_PLAYER_DIGGING); + blockRewriter.registerBlockAction(ClientboundPackets1_16_2.BLOCK_ACTION); + blockRewriter.registerBlockChange(ClientboundPackets1_16_2.BLOCK_CHANGE); + blockRewriter.registerVarLongMultiBlockChange(ClientboundPackets1_16_2.MULTI_BLOCK_CHANGE); + blockRewriter.registerEffect(ClientboundPackets1_16_2.EFFECT, 1010, 2001); + + // Some chunk sections will be lost ¯\_(ツ)_/¯ + protocol.registerOutgoing(ClientboundPackets1_16_2.UPDATE_LIGHT, new PacketRemapper() { + @Override + public void registerMap() { + handler(wrapper -> { + wrapper.passthrough(Type.VAR_INT); + wrapper.passthrough(Type.VAR_INT); + wrapper.passthrough(Type.BOOLEAN); + + wrapper.write(Type.VAR_INT, wrapper.read(Type.VAR_LONG).intValue()); // Sky mask + wrapper.write(Type.VAR_INT, wrapper.read(Type.VAR_LONG).intValue()); // Block mask + wrapper.write(Type.VAR_INT, wrapper.read(Type.VAR_LONG).intValue()); // Empty sky mask + wrapper.write(Type.VAR_INT, wrapper.read(Type.VAR_LONG).intValue()); // Empty block mask + }); + } + }); + + protocol.registerOutgoing(ClientboundPackets1_16_2.CHUNK_DATA, new PacketRemapper() { + @Override + public void registerMap() { + handler(wrapper -> { + Chunk chunk = wrapper.read(new Chunk1_17Type()); + wrapper.write(new Chunk1_16_2Type(), chunk); + + for (int i = 0; i < chunk.getSections().length; i++) { + ChunkSection section = chunk.getSections()[i]; + if (section == null) continue; + for (int j = 0; j < section.getPaletteSize(); j++) { + int old = section.getPaletteEntry(j); + section.setPaletteEntry(j, protocol.getMappingData().getNewBlockStateId(old)); + } + } + }); + } + }); + + itemRewriter.registerClickWindow(ServerboundPackets1_16_2.CLICK_WINDOW, Type.FLAT_VAR_INT_ITEM); + itemRewriter.registerCreativeInvAction(ServerboundPackets1_16_2.CREATIVE_INVENTORY_ACTION, Type.FLAT_VAR_INT_ITEM); + protocol.registerIncoming(ServerboundPackets1_16_2.EDIT_BOOK, new PacketRemapper() { + @Override + public void registerMap() { + handler(wrapper -> handleItemToServer(wrapper.passthrough(Type.FLAT_VAR_INT_ITEM))); + } + }); + } +} diff --git a/core/src/main/resources/assets/viabackwards/data/mapping-1.16.2to1.17.json b/core/src/main/resources/assets/viabackwards/data/mapping-1.16.2to1.17.json new file mode 100644 index 00000000..7ad4e7aa --- /dev/null +++ b/core/src/main/resources/assets/viabackwards/data/mapping-1.16.2to1.17.json @@ -0,0 +1,169 @@ +{ + "blockstates": { + "minecraft:dirt_path": "minecraft:grass_path", + "minecraft:cauldron": "minecraft:cauldron[level=0]", + "minecraft:water_cauldron[level=1]": "minecraft:cauldron[level=1]", + "minecraft:water_cauldron[level=2]": "minecraft:cauldron[level=2]", + "minecraft:water_cauldron[level=3]": "minecraft:cauldron[level=3]", + "minecraft:lava_cauldron": "minecraft:cauldron[level=3]", + "minecraft:lightning_rod[facing=north,powered=true]": "minecraft:end_rod[facing=north]", + "minecraft:lightning_rod[facing=north,powered=false]": "minecraft:end_rod[facing=north]", + "minecraft:lightning_rod[facing=east,powered=true]": "minecraft:end_rod[facing=east]", + "minecraft:lightning_rod[facing=east,powered=false]": "minecraft:end_rod[facing=east]", + "minecraft:lightning_rod[facing=south,powered=true]": "minecraft:end_rod[facing=south]", + "minecraft:lightning_rod[facing=south,powered=false]": "minecraft:end_rod[facing=south]", + "minecraft:lightning_rod[facing=west,powered=true]": "minecraft:end_rod[facing=west]", + "minecraft:lightning_rod[facing=west,powered=false]": "minecraft:end_rod[facing=west]", + "minecraft:lightning_rod[facing=up,powered=true]": "minecraft:end_rod[facing=up]", + "minecraft:lightning_rod[facing=up,powered=false]": "minecraft:end_rod[facing=up]", + "minecraft:lightning_rod[facing=down,powered=true]": "minecraft:end_rod[facing=down]", + "minecraft:lightning_rod[facing=down,powered=false]": "minecraft:end_rod[facing=down]", + "minecraft:tuff": "minecraft:cobblestone", + "minecraft:calcite": "minecraft:polished_diorite", + "minecraft:tinted_glass": "minecraft:black_stained_glass", + "minecraft:powered_rail[powered=true,shape=north_south,waterlogged=true]": "minecraft:powered_rail[powered=true,shape=north_south]", + "minecraft:powered_rail[powered=true,shape=north_south,waterlogged=false]": "minecraft:powered_rail[powered=true,shape=north_south]", + "minecraft:powered_rail[powered=true,shape=east_west,waterlogged=true]": "minecraft:powered_rail[powered=true,shape=east_west]", + "minecraft:powered_rail[powered=true,shape=east_west,waterlogged=false]": "minecraft:powered_rail[powered=true,shape=east_west]", + "minecraft:powered_rail[powered=true,shape=ascending_east,waterlogged=true]": "minecraft:powered_rail[powered=true,shape=ascending_east]", + "minecraft:powered_rail[powered=true,shape=ascending_east,waterlogged=false]": "minecraft:powered_rail[powered=true,shape=ascending_east]", + "minecraft:powered_rail[powered=true,shape=ascending_west,waterlogged=true]": "minecraft:powered_rail[powered=true,shape=ascending_west]", + "minecraft:powered_rail[powered=true,shape=ascending_west,waterlogged=false]": "minecraft:powered_rail[powered=true,shape=ascending_west]", + "minecraft:powered_rail[powered=true,shape=ascending_north,waterlogged=true]": "minecraft:powered_rail[powered=true,shape=ascending_north]", + "minecraft:powered_rail[powered=true,shape=ascending_north,waterlogged=false]": "minecraft:powered_rail[powered=true,shape=ascending_north]", + "minecraft:powered_rail[powered=true,shape=ascending_south,waterlogged=true]": "minecraft:powered_rail[powered=true,shape=ascending_south]", + "minecraft:powered_rail[powered=true,shape=ascending_south,waterlogged=false]": "minecraft:powered_rail[powered=true,shape=ascending_south]", + "minecraft:powered_rail[powered=false,shape=north_south,waterlogged=true]": "minecraft:powered_rail[powered=false,shape=north_south]", + "minecraft:powered_rail[powered=false,shape=north_south,waterlogged=false]": "minecraft:powered_rail[powered=false,shape=north_south]", + "minecraft:powered_rail[powered=false,shape=east_west,waterlogged=true]": "minecraft:powered_rail[powered=false,shape=east_west]", + "minecraft:powered_rail[powered=false,shape=east_west,waterlogged=false]": "minecraft:powered_rail[powered=false,shape=east_west]", + "minecraft:powered_rail[powered=false,shape=ascending_east,waterlogged=true]": "minecraft:powered_rail[powered=false,shape=ascending_east]", + "minecraft:powered_rail[powered=false,shape=ascending_east,waterlogged=false]": "minecraft:powered_rail[powered=false,shape=ascending_east]", + "minecraft:powered_rail[powered=false,shape=ascending_west,waterlogged=true]": "minecraft:powered_rail[powered=false,shape=ascending_west]", + "minecraft:powered_rail[powered=false,shape=ascending_west,waterlogged=false]": "minecraft:powered_rail[powered=false,shape=ascending_west]", + "minecraft:powered_rail[powered=false,shape=ascending_north,waterlogged=true]": "minecraft:powered_rail[powered=false,shape=ascending_north]", + "minecraft:powered_rail[powered=false,shape=ascending_north,waterlogged=false]": "minecraft:powered_rail[powered=false,shape=ascending_north]", + "minecraft:powered_rail[powered=false,shape=ascending_south,waterlogged=true]": "minecraft:powered_rail[powered=false,shape=ascending_south]", + "minecraft:powered_rail[powered=false,shape=ascending_south,waterlogged=false]": "minecraft:powered_rail[powered=false,shape=ascending_south]", + "minecraft:detector_rail[powered=true,shape=north_south,waterlogged=true]": "minecraft:detector_rail[powered=true,shape=north_south]", + "minecraft:detector_rail[powered=true,shape=north_south,waterlogged=false]": "minecraft:detector_rail[powered=true,shape=north_south]", + "minecraft:detector_rail[powered=true,shape=east_west,waterlogged=true]": "minecraft:detector_rail[powered=true,shape=east_west]", + "minecraft:detector_rail[powered=true,shape=east_west,waterlogged=false]": "minecraft:detector_rail[powered=true,shape=east_west]", + "minecraft:detector_rail[powered=true,shape=ascending_east,waterlogged=true]": "minecraft:detector_rail[powered=true,shape=ascending_east]", + "minecraft:detector_rail[powered=true,shape=ascending_east,waterlogged=false]": "minecraft:detector_rail[powered=true,shape=ascending_east]", + "minecraft:detector_rail[powered=true,shape=ascending_west,waterlogged=true]": "minecraft:detector_rail[powered=true,shape=ascending_west]", + "minecraft:detector_rail[powered=true,shape=ascending_west,waterlogged=false]": "minecraft:detector_rail[powered=true,shape=ascending_west]", + "minecraft:detector_rail[powered=true,shape=ascending_north,waterlogged=true]": "minecraft:detector_rail[powered=true,shape=ascending_north]", + "minecraft:detector_rail[powered=true,shape=ascending_north,waterlogged=false]": "minecraft:detector_rail[powered=true,shape=ascending_north]", + "minecraft:detector_rail[powered=true,shape=ascending_south,waterlogged=true]": "minecraft:detector_rail[powered=true,shape=ascending_south]", + "minecraft:detector_rail[powered=true,shape=ascending_south,waterlogged=false]": "minecraft:detector_rail[powered=true,shape=ascending_south]", + "minecraft:detector_rail[powered=false,shape=north_south,waterlogged=true]": "minecraft:detector_rail[powered=false,shape=north_south]", + "minecraft:detector_rail[powered=false,shape=north_south,waterlogged=false]": "minecraft:detector_rail[powered=false,shape=north_south]", + "minecraft:detector_rail[powered=false,shape=east_west,waterlogged=true]": "minecraft:detector_rail[powered=false,shape=east_west]", + "minecraft:detector_rail[powered=false,shape=east_west,waterlogged=false]": "minecraft:detector_rail[powered=false,shape=east_west]", + "minecraft:detector_rail[powered=false,shape=ascending_east,waterlogged=true]": "minecraft:detector_rail[powered=false,shape=ascending_east]", + "minecraft:detector_rail[powered=false,shape=ascending_east,waterlogged=false]": "minecraft:detector_rail[powered=false,shape=ascending_east]", + "minecraft:detector_rail[powered=false,shape=ascending_west,waterlogged=true]": "minecraft:detector_rail[powered=false,shape=ascending_west]", + "minecraft:detector_rail[powered=false,shape=ascending_west,waterlogged=false]": "minecraft:detector_rail[powered=false,shape=ascending_west]", + "minecraft:detector_rail[powered=false,shape=ascending_north,waterlogged=true]": "minecraft:detector_rail[powered=false,shape=ascending_north]", + "minecraft:detector_rail[powered=false,shape=ascending_north,waterlogged=false]": "minecraft:detector_rail[powered=false,shape=ascending_north]", + "minecraft:detector_rail[powered=false,shape=ascending_south,waterlogged=true]": "minecraft:detector_rail[powered=false,shape=ascending_south]", + "minecraft:detector_rail[powered=false,shape=ascending_south,waterlogged=false]": "minecraft:detector_rail[powered=false,shape=ascending_south]", + "minecraft:rail[shape=north_south,waterlogged=true]": "minecraft:rail[shape=north_south]", + "minecraft:rail[shape=north_south,waterlogged=false]": "minecraft:rail[shape=north_south]", + "minecraft:rail[shape=east_west,waterlogged=true]": "minecraft:rail[shape=east_west]", + "minecraft:rail[shape=east_west,waterlogged=false]": "minecraft:rail[shape=east_west]", + "minecraft:rail[shape=ascending_east,waterlogged=true]": "minecraft:rail[shape=ascending_east]", + "minecraft:rail[shape=ascending_east,waterlogged=false]": "minecraft:rail[shape=ascending_east]", + "minecraft:rail[shape=ascending_west,waterlogged=true]": "minecraft:rail[shape=ascending_west]", + "minecraft:rail[shape=ascending_west,waterlogged=false]": "minecraft:rail[shape=ascending_west]", + "minecraft:rail[shape=ascending_north,waterlogged=true]": "minecraft:rail[shape=ascending_north]", + "minecraft:rail[shape=ascending_north,waterlogged=false]": "minecraft:rail[shape=ascending_north]", + "minecraft:rail[shape=ascending_south,waterlogged=true]": "minecraft:rail[shape=ascending_south]", + "minecraft:rail[shape=ascending_south,waterlogged=false]": "minecraft:rail[shape=ascending_south]", + "minecraft:rail[shape=south_east,waterlogged=true]": "minecraft:rail[shape=south_east]", + "minecraft:rail[shape=south_east,waterlogged=false]": "minecraft:rail[shape=south_east]", + "minecraft:rail[shape=south_west,waterlogged=true]": "minecraft:rail[shape=south_west]", + "minecraft:rail[shape=south_west,waterlogged=false]": "minecraft:rail[shape=south_west]", + "minecraft:rail[shape=north_west,waterlogged=true]": "minecraft:rail[shape=north_west]", + "minecraft:rail[shape=north_west,waterlogged=false]": "minecraft:rail[shape=north_west]", + "minecraft:rail[shape=north_east,waterlogged=true]": "minecraft:rail[shape=north_east]", + "minecraft:rail[shape=north_east,waterlogged=false]": "minecraft:rail[shape=north_east]", + "minecraft:activator_rail[powered=true,shape=north_south,waterlogged=true]": "minecraft:activator_rail[powered=true,shape=north_south]", + "minecraft:activator_rail[powered=true,shape=north_south,waterlogged=false]": "minecraft:activator_rail[powered=true,shape=north_south]", + "minecraft:activator_rail[powered=true,shape=east_west,waterlogged=true]": "minecraft:activator_rail[powered=true,shape=east_west]", + "minecraft:activator_rail[powered=true,shape=east_west,waterlogged=false]": "minecraft:activator_rail[powered=true,shape=east_west]", + "minecraft:activator_rail[powered=true,shape=ascending_east,waterlogged=true]": "minecraft:activator_rail[powered=true,shape=ascending_east]", + "minecraft:activator_rail[powered=true,shape=ascending_east,waterlogged=false]": "minecraft:activator_rail[powered=true,shape=ascending_east]", + "minecraft:activator_rail[powered=true,shape=ascending_west,waterlogged=true]": "minecraft:activator_rail[powered=true,shape=ascending_west]", + "minecraft:activator_rail[powered=true,shape=ascending_west,waterlogged=false]": "minecraft:activator_rail[powered=true,shape=ascending_west]", + "minecraft:activator_rail[powered=true,shape=ascending_north,waterlogged=true]": "minecraft:activator_rail[powered=true,shape=ascending_north]", + "minecraft:activator_rail[powered=true,shape=ascending_north,waterlogged=false]": "minecraft:activator_rail[powered=true,shape=ascending_north]", + "minecraft:activator_rail[powered=true,shape=ascending_south,waterlogged=true]": "minecraft:activator_rail[powered=true,shape=ascending_south]", + "minecraft:activator_rail[powered=true,shape=ascending_south,waterlogged=false]": "minecraft:activator_rail[powered=true,shape=ascending_south]", + "minecraft:activator_rail[powered=false,shape=north_south,waterlogged=true]": "minecraft:activator_rail[powered=false,shape=north_south]", + "minecraft:activator_rail[powered=false,shape=north_south,waterlogged=false]": "minecraft:activator_rail[powered=false,shape=north_south]", + "minecraft:activator_rail[powered=false,shape=east_west,waterlogged=true]": "minecraft:activator_rail[powered=false,shape=east_west]", + "minecraft:activator_rail[powered=false,shape=east_west,waterlogged=false]": "minecraft:activator_rail[powered=false,shape=east_west]", + "minecraft:activator_rail[powered=false,shape=ascending_east,waterlogged=true]": "minecraft:activator_rail[powered=false,shape=ascending_east]", + "minecraft:activator_rail[powered=false,shape=ascending_east,waterlogged=false]": "minecraft:activator_rail[powered=false,shape=ascending_east]", + "minecraft:activator_rail[powered=false,shape=ascending_west,waterlogged=true]": "minecraft:activator_rail[powered=false,shape=ascending_west]", + "minecraft:activator_rail[powered=false,shape=ascending_west,waterlogged=false]": "minecraft:activator_rail[powered=false,shape=ascending_west]", + "minecraft:activator_rail[powered=false,shape=ascending_north,waterlogged=true]": "minecraft:activator_rail[powered=false,shape=ascending_north]", + "minecraft:activator_rail[powered=false,shape=ascending_north,waterlogged=false]": "minecraft:activator_rail[powered=false,shape=ascending_north]", + "minecraft:activator_rail[powered=false,shape=ascending_south,waterlogged=true]": "minecraft:activator_rail[powered=false,shape=ascending_south]", + "minecraft:activator_rail[powered=false,shape=ascending_south,waterlogged=false]": "minecraft:activator_rail[powered=false,shape=ascending_south]", + }, + "items": { + "minecraft:dirt_path": { + "id": "minecraft:grass_path", + "name": "1.17 Dirt Path" + } + }, + "sounds": { + "block.amethyst_block.break": "", + "block.amethyst_block.chime": "", + "block.amethyst_block.fall": "", + "block.amethyst_block.hit": "", + "block.amethyst_block.place": "", + "block.amethyst_block.step": "", + "block.amethyst_cluster.break": "", + "block.amethyst_cluster.fall": "", + "block.amethyst_cluster.hit": "", + "block.amethyst_cluster.place": "", + "block.amethyst_cluster.step": "", + "block.cake.add_candle": "", + "block.calcite.break": "", + "block.calcite.step": "", + "block.calcite.place": "", + "block.calcite.hit": "", + "block.calcite.fall": "", + "block.candle.ambient": "", + "block.candle.break": "", + "block.candle.extinguish": "", + "block.candle.fall": "", + "block.candle.hit": "", + "block.candle.place": "", + "block.candle.step": "", + "block.copper.break": "", + "block.copper.step": "", + "block.copper.place": "", + "block.copper.hit": "", + "block.copper.fall": "", + "block.large_amethyst_bud.break": "", + "block.large_amethyst_bud.place": "", + "block.medium_amethyst_bud.break": "", + "block.medium_amethyst_bud.place": "", + "entity.minecart.inside.underwater": "", + "block.small_amethyst_bud.break": "", + "block.small_amethyst_bud.place": "", + "item.spyglass.use": "", + "item.spyglass.stop_using": "", + "block.tuff.break": "", + "block.tuff.step": "", + "block.tuff.place": "", + "block.tuff.hit": "", + "block.tuff.fall": "", + "small_flame": "" + } +} \ No newline at end of file diff --git a/fabric/pom.xml b/fabric/pom.xml index 8fc47f41..8ed5e90b 100644 --- a/fabric/pom.xml +++ b/fabric/pom.xml @@ -16,7 +16,7 @@ viabackwards-parent nl.matsv - 3.2.1-SNAPSHOT + 3.3.0-20w45a viabackwards-fabric diff --git a/pom.xml b/pom.xml index 67742c3e..dfee87ce 100644 --- a/pom.xml +++ b/pom.xml @@ -16,7 +16,7 @@ nl.matsv viabackwards-parent - 3.2.1-SNAPSHOT + 3.3.0-20w45a pom Allow older clients to join newer server versions. @@ -65,7 +65,7 @@ us.myles viaversion - 3.2.1-SNAPSHOT + 3.3.0-20w45a provided diff --git a/sponge/pom.xml b/sponge/pom.xml index 308310c5..a992b2b5 100644 --- a/sponge/pom.xml +++ b/sponge/pom.xml @@ -16,7 +16,7 @@ viabackwards-parent nl.matsv - 3.2.1-SNAPSHOT + 3.3.0-20w45a viabackwards-sponge diff --git a/velocity/pom.xml b/velocity/pom.xml index 82e9fe43..20213bf4 100644 --- a/velocity/pom.xml +++ b/velocity/pom.xml @@ -16,7 +16,7 @@ viabackwards-parent nl.matsv - 3.2.1-SNAPSHOT + 3.3.0-20w45a viabackwards-velocity