File tree Expand file tree Collapse file tree
java/net/aspw/viaforgeplus
injection/forge/mixins/packets Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ ViaForgePlus will not support >= 1.21 due to ViaVersion dropped support Java 8 a
1212- 1.20.4, 1.20.5, 1.20.6 Support
1313- Hypixel Connection Fix
1414- Block Break and Place Sound Fix
15+ - 1.17+ Transaction Packet Fix
1516- 1.16+ Drop Item Swing Packet
1617- 1.7.x breaking blocks while using items
1718- 1.9+ Attack Packet Order Fix
Original file line number Diff line number Diff line change @@ -59,9 +59,9 @@ dependencies {
5959 exclude module : " slf4j-api"
6060 }
6161
62- include " com.viaversion:viaversion:${ project.viaversion_version} "
63- include " com.viaversion:viabackwards:${ project.viabackwards_version} "
64- include " com.viaversion:viarewind:${ project.viarewind_version} "
62+ include " com.viaversion:viaversion-common :${ project.viaversion_version} "
63+ include " com.viaversion:viabackwards-common :${ project.viabackwards_version} "
64+ include " com.viaversion:viarewind-common :${ project.viarewind_version} "
6565 include (" net.raphimc:ViaLegacy:${ project.vialegacy_version} " ) {
6666 exclude group : " com.google.code.gson" , module : " gson"
6767 }
Original file line number Diff line number Diff line change @@ -20,7 +20,7 @@ snake_yml_version=2.2
2020slf4j_version =2.0.12
2121
2222viaversion_version =4.10.1-SNAPSHOT
23- viabackwards_version =4.10.0
24- viarewind_version =3.1.0
23+ viabackwards_version =4.10.1-SNAPSHOT
24+ viarewind_version =3.1.1-SNAPSHOT
2525vialoader_version =2.2.14-SNAPSHOT
2626vialegacy_version =2.2.23-SNAPSHOT
Original file line number Diff line number Diff line change @@ -10,7 +10,7 @@ import net.aspw.viaforgeplus.network.APIConnecter
1010
1111object ProtocolInject {
1212
13- const val modVersion = " 1.0.2 "
13+ const val modVersion = " 1.0.3 "
1414
1515 lateinit var eventManager: EventManager
1616
Original file line number Diff line number Diff line change @@ -39,10 +39,6 @@ public static boolean newerThanOrEqualsTo1_9() {
3939 return ProtocolBase .getManager ().getTargetVersion ().newerThanOrEqualTo (ProtocolVersion .v1_9 ) && !MinecraftInstance .mc .isIntegratedServerRunning ();
4040 }
4141
42- public static boolean newerThanOrEqualsTo1_10 () {
43- return ProtocolBase .getManager ().getTargetVersion ().newerThanOrEqualTo (ProtocolVersion .v1_10 ) && !MinecraftInstance .mc .isIntegratedServerRunning ();
44- }
45-
4642 public static boolean newerThanOrEqualsTo1_13 () {
4743 return ProtocolBase .getManager ().getTargetVersion ().newerThanOrEqualTo (ProtocolVersion .v1_13 ) && !MinecraftInstance .mc .isIntegratedServerRunning ();
4844 }
@@ -58,4 +54,8 @@ public static boolean newerThanOrEqualsTo1_14() {
5854 public static boolean newerThanOrEqualsTo1_16 () {
5955 return ProtocolBase .getManager ().getTargetVersion ().newerThanOrEqualTo (ProtocolVersion .v1_14 ) && !MinecraftInstance .mc .isIntegratedServerRunning ();
6056 }
57+
58+ public static boolean newerThanOrEqualsTo1_17 () {
59+ return ProtocolBase .getManager ().getTargetVersion ().newerThanOrEqualTo (ProtocolVersion .v1_17 ) && !MinecraftInstance .mc .isIntegratedServerRunning ();
60+ }
6161}
Original file line number Diff line number Diff line change 1- package net .aspw .viaforgeplus .injection .forge .mixins .packets ;
1+ package net .aspw .viaforgeplus .injection .forge .mixins .packets . client ;
22
33import net .aspw .viaforgeplus .network .MinecraftInstance ;
4- import net .minecraft .network .EnumConnectionState ;
54import net .minecraft .network .handshake .client .C00Handshake ;
65import org .spongepowered .asm .mixin .Mixin ;
7- import org .spongepowered .asm .mixin .Shadow ;
86import org .spongepowered .asm .mixin .injection .Constant ;
97import org .spongepowered .asm .mixin .injection .ModifyConstant ;
108
119@ Mixin (C00Handshake .class )
1210public class MixinC00Handshake {
1311
14- @ Shadow
15- public int port ;
16- @ Shadow
17- public String ip ;
18- @ Shadow
19- private int protocolVersion ;
20- @ Shadow
21- private EnumConnectionState requestedState ;
22-
2312 @ ModifyConstant (method = "writePacketData" , constant = @ Constant (stringValue = "\u0000 FML\u0000 " ))
2413 private String connectionFixes (String constant ) {
2514 return !MinecraftInstance .mc .isIntegratedServerRunning () ? "" : "\u0000 FML\u0000 " ;
Original file line number Diff line number Diff line change 1+ package net .aspw .viaforgeplus .injection .forge .mixins .packets .client ;
2+
3+ import net .aspw .viaforgeplus .api .ProtocolFixer ;
4+ import net .minecraft .network .PacketBuffer ;
5+ import net .minecraft .network .play .client .C0FPacketConfirmTransaction ;
6+ import org .spongepowered .asm .mixin .Mixin ;
7+ import org .spongepowered .asm .mixin .Overwrite ;
8+ import org .spongepowered .asm .mixin .Shadow ;
9+
10+ @ Mixin (C0FPacketConfirmTransaction .class )
11+ public class MixinC0FPacketConfirmTransaction {
12+
13+ @ Shadow
14+ private int windowId ;
15+ @ Shadow
16+ private short uid ;
17+ @ Shadow
18+ private boolean accepted ;
19+
20+ /**
21+ * @author As_pw
22+ * @reason 1.17+ Transaction Fix
23+ */
24+ @ Overwrite
25+ public void writePacketData (PacketBuffer buf ) {
26+ if (ProtocolFixer .newerThanOrEqualsTo1_17 ())
27+ buf .writeInt (this .windowId );
28+ else {
29+ buf .writeByte (this .windowId );
30+ buf .writeShort (this .uid );
31+ buf .writeByte (this .accepted ? 1 : 0 );
32+ }
33+ }
34+ }
Original file line number Diff line number Diff line change 1+ package net .aspw .viaforgeplus .injection .forge .mixins .packets .server ;
2+
3+ import net .aspw .viaforgeplus .api .ProtocolFixer ;
4+ import net .minecraft .network .PacketBuffer ;
5+ import net .minecraft .network .play .server .S32PacketConfirmTransaction ;
6+ import org .spongepowered .asm .mixin .Mixin ;
7+ import org .spongepowered .asm .mixin .Overwrite ;
8+ import org .spongepowered .asm .mixin .Shadow ;
9+
10+ @ Mixin (S32PacketConfirmTransaction .class )
11+ public class MixinS32PacketConfirmTransaction {
12+
13+ @ Shadow
14+ private int windowId ;
15+ @ Shadow
16+ private short actionNumber ;
17+ @ Shadow
18+ private boolean field_148893_c ;
19+
20+ /**
21+ * @author As_pw
22+ * @reason 1.17+ Transaction Fix
23+ */
24+ @ Overwrite
25+ public void readPacketData (PacketBuffer buf ) {
26+ if (ProtocolFixer .newerThanOrEqualsTo1_17 ())
27+ this .windowId = buf .readInt ();
28+ else {
29+ this .windowId = buf .readUnsignedByte ();
30+ this .actionNumber = buf .readShort ();
31+ this .field_148893_c = buf .readBoolean ();
32+ }
33+ }
34+ }
Original file line number Diff line number Diff line change 1919 " network.MixinNetworkManager" ,
2020 " network.MixinNetworkManager$5" ,
2121 " network.MixinServerData" ,
22- " packets.MixinC00Handshake" ,
22+ " packets.client.MixinC00Handshake" ,
23+ " packets.client.MixinC0FPacketConfirmTransaction" ,
24+ " packets.server.MixinS32PacketConfirmTransaction" ,
2325 " render.MixinEntityRenderer" ,
2426 " render.MixinLayerArmorBase" ,
2527 " render.MixinModelBiped"
You can’t perform that action at this time.
0 commit comments