From 0ac0dd02f875eef2d774a238911d7b1bd0fb6fd4 Mon Sep 17 00:00:00 2001 From: Zidonuke Date: Tue, 20 Dec 2011 02:41:21 -0500 Subject: [PATCH] Improve max stack hack detection. Don't check for type == 0. Mostly caused by modified save files from inventory editing that don't reset stacks. --- TShockAPI/GetDataHandlers.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index 9cbe9753..d0c5204c 100644 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -122,13 +122,16 @@ namespace TShockAPI short prefix = (short) args.Data.ReadInt8(); int type = (int) args.Data.ReadInt16(); + if (type == 0) + return true; + var item = new Item(); item.netDefaults(type); item.Prefix(prefix); if (stack > item.maxStack) { - return TShock.Utils.HandleCheater(args.Player, String.Format("Stack cheat detected. Remove {0} ({1}) and then rejoin", item.name, stack)); + return TShock.Utils.HandleCheater(args.Player, String.Format("Stack cheat detected. Remove {0} ({1}) > {2} and then rejoin", item.name, stack, item.maxStack)); } return false;