Skip to content

Commit 414a042

Browse files
committed
Release 1.1. New config Options.
1 parent 321fbe3 commit 414a042

4 files changed

Lines changed: 19 additions & 5 deletions

File tree

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ apply plugin: 'forge'
1919

2020
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
2121

22-
version = "1.7.10-1.0"
22+
version = "1.7.10-1.1"
2323
group= "com.gamerforea"
2424
archivesBaseName = "PacketUnlimiter"
2525

src/main/java/com/gamerforea/packetunlimiter/CoreMod.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,22 @@ public final class CoreMod implements IFMLLoadingPlugin
1313
{
1414
public static final String MODID = "PacketUnlimiter";
1515
public static final String NAME = "PacketUnlimiter";
16-
public static final String VERSION = "1.0";
16+
public static final String VERSION = "1.1";
1717

1818
public static boolean isObfuscated = false;
19-
public static boolean bigPacketWarning = false;
19+
public static boolean bigPacketWarning = true;
20+
public static boolean readNbtLimit = false;
21+
public static boolean writeNbtLimit = false;
22+
public static boolean unpackNbtLimit = false;
2023

2124
public CoreMod()
2225
{
2326
Configuration config = new Configuration(new File("config", NAME + ".cfg"));
2427
config.load();
25-
bigPacketWarning = config.getBoolean("bigPacketWarning", "general", true, "Включить оповещение при превышении стандартного лимита (2 MB)");
28+
bigPacketWarning = config.getBoolean("bigPacketWarning", "general", bigPacketWarning, "Включить оповещение при превышении стандартного лимита (2 MB)");
29+
readNbtLimit = config.getBoolean("readNbtLimit", "general", readNbtLimit, "Включить ограничение чтения NBT");
30+
writeNbtLimit = config.getBoolean("writeNbtLimit", "general", writeNbtLimit, "Включить ограничение записи NBT");
31+
unpackNbtLimit = config.getBoolean("unpackNbtLimit", "general", unpackNbtLimit, "Включить ограничение распаковки NBT");
2632
config.save();
2733
}
2834

src/main/java/com/gamerforea/packetunlimiter/asm/ASMTransformer.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
import org.objectweb.asm.tree.MethodNode;
1111
import org.objectweb.asm.tree.VarInsnNode;
1212

13+
import com.gamerforea.packetunlimiter.CoreMod;
14+
1315
import net.minecraft.launchwrapper.IClassTransformer;
1416

1517
public final class ASMTransformer implements IClassTransformer, Opcodes
@@ -33,6 +35,9 @@ private static byte[] patchPacketBuffer(byte[] basicClass)
3335
for (MethodNode mNode : cNode.methods)
3436
if (mNode.name.equals(writeNbt) && mNode.desc.equals("(Lnet/minecraft/nbt/NBTTagCompound;)V"))
3537
{
38+
if (CoreMod.writeNbtLimit)
39+
continue;
40+
3641
InsnList insn = new InsnList();
3742
insn.add(new VarInsnNode(ALOAD, 0));
3843
insn.add(new VarInsnNode(ALOAD, 1));
@@ -42,6 +47,9 @@ private static byte[] patchPacketBuffer(byte[] basicClass)
4247
}
4348
else if (mNode.name.equals(readNbt) && mNode.desc.equals("()Lnet/minecraft/nbt/NBTTagCompound;"))
4449
{
50+
if (CoreMod.readNbtLimit)
51+
continue;
52+
4553
InsnList insn = new InsnList();
4654
insn.add(new VarInsnNode(ALOAD, 0));
4755
insn.add(new MethodInsnNode(INVOKESTATIC, "com/gamerforea/packetunlimiter/asm/PacketBufferPatch", "readNBTTagCompoundFromBuffer", "(Lnet/minecraft/network/PacketBuffer;)Lnet/minecraft/nbt/NBTTagCompound;", false));

src/main/java/com/gamerforea/packetunlimiter/asm/PacketBufferPatch.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ public static NBTTagCompound readNBTTagCompoundFromBuffer(PacketBuffer buf) thro
6060
arr = ArrayUtils.addAll(arr, arr1);
6161
}
6262

63-
return CompressedStreamTools.func_152457_a(arr, new NBTSizeTracker(Long.MAX_VALUE));
63+
return CompressedStreamTools.func_152457_a(arr, new NBTSizeTracker(CoreMod.unpackNbtLimit ? 2097152 : Long.MAX_VALUE));
6464
}
6565
}
6666
}

0 commit comments

Comments
 (0)