mirror of
https://github.com/refactorinqq/SLC-1.8.9.git
synced 2024-11-10 07:21:32 +01:00
anticheat detections
This commit is contained in:
parent
22daedeca6
commit
163fd92770
@ -99,6 +99,7 @@ public class Client {
|
|||||||
public ServerData lastServerData;
|
public ServerData lastServerData;
|
||||||
public TextUtils textUtils;
|
public TextUtils textUtils;
|
||||||
private SkillIssue skillIssue;
|
private SkillIssue skillIssue;
|
||||||
|
private PlayerResponse.BanInfo banInfo;
|
||||||
|
|
||||||
public static void memoryDebug(String paramString) {
|
public static void memoryDebug(String paramString) {
|
||||||
LogManager.getLogger().info("-- Start Memory Debug -- " + paramString);
|
LogManager.getLogger().info("-- Start Memory Debug -- " + paramString);
|
||||||
@ -294,10 +295,11 @@ public class Client {
|
|||||||
Minecraft.getMinecraft().displayGuiScreen(new GuiError("Authorization Error. Try restarting the game"));
|
Minecraft.getMinecraft().displayGuiScreen(new GuiError("Authorization Error. Try restarting the game"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(Client.getInstance().getAccount().isBanned()) {
|
|
||||||
|
if(banInfo != null && banInfo.banned && !banerror) {
|
||||||
logger.info("STARTING > ERROR: " + "Account is banned");
|
logger.info("STARTING > ERROR: " + "Account is banned");
|
||||||
Minecraft.getMinecraft().displayGuiScreen(new GuiError("Your account is banned"));
|
Minecraft.getMinecraft().displayGuiScreen(new GuiError("Your account is banned. Reason: " + banInfo.reason));
|
||||||
return;
|
banerror = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
Client.logger.info("STARTING > mod-instances-post-init");
|
Client.logger.info("STARTING > mod-instances-post-init");
|
||||||
@ -450,8 +452,11 @@ public class Client {
|
|||||||
|
|
||||||
GsonBuilder builder = new GsonBuilder();
|
GsonBuilder builder = new GsonBuilder();
|
||||||
Gson gson = builder.create();
|
Gson gson = builder.create();
|
||||||
|
PlayerResponse playerResponse = gson.fromJson(content, PlayerResponse.class);
|
||||||
|
|
||||||
return gson.fromJson(content, PlayerResponse.class);
|
this.banInfo = playerResponse.banInfo;
|
||||||
|
|
||||||
|
return playerResponse;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
return null;
|
return null;
|
||||||
@ -469,13 +474,13 @@ public class Client {
|
|||||||
}
|
}
|
||||||
this.updateUserInformation();
|
this.updateUserInformation();
|
||||||
}
|
}
|
||||||
if(Client.getInstance().getAccount() != null) {
|
if(banInfo != null) {
|
||||||
if(Client.getInstance().getAccount().isBanned() && banerror == false) {
|
if(banInfo.banned && !banerror) {
|
||||||
if(Minecraft.getMinecraft().theWorld != null) {
|
if(Minecraft.getMinecraft().theWorld != null) {
|
||||||
Minecraft.getMinecraft().theWorld.sendQuittingDisconnectingPacket();
|
Minecraft.getMinecraft().theWorld.sendQuittingDisconnectingPacket();
|
||||||
Minecraft.getMinecraft().loadWorld(null);
|
Minecraft.getMinecraft().loadWorld(null);
|
||||||
}
|
}
|
||||||
Minecraft.getMinecraft().displayGuiScreen(new GuiError("Your account is banned"));
|
Minecraft.getMinecraft().displayGuiScreen(new GuiError("Your account is banned. Reason: " + banInfo.reason));
|
||||||
banerror = true;
|
banerror = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -60,7 +60,7 @@ public abstract class GuiContainerMixin extends GuiScreen {
|
|||||||
|
|
||||||
@Inject(method = "mouseClicked", at = @At("TAIL"))
|
@Inject(method = "mouseClicked", at = @At("TAIL"))
|
||||||
private void silent$checkHotbarClicks(int mouseX, int mouseY, int mouseButton, CallbackInfo ci) {
|
private void silent$checkHotbarClicks(int mouseX, int mouseY, int mouseButton, CallbackInfo ci) {
|
||||||
// checkHotbarKeys(mouseButton - 100);
|
checkHotbarKeys(mouseButton - 100);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Redirect(method = "drawScreen", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/inventory/GuiContainer;drawDefaultBackground()V"))
|
@Redirect(method = "drawScreen", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/inventory/GuiContainer;drawDefaultBackground()V"))
|
||||||
|
@ -6,6 +6,8 @@ import net.silentclient.client.event.EventManager;
|
|||||||
import net.silentclient.client.event.EventTarget;
|
import net.silentclient.client.event.EventTarget;
|
||||||
import net.silentclient.client.event.impl.ClientTickEvent;
|
import net.silentclient.client.event.impl.ClientTickEvent;
|
||||||
import net.silentclient.client.skillissue.SkillIssue;
|
import net.silentclient.client.skillissue.SkillIssue;
|
||||||
|
import net.silentclient.client.utils.Requests;
|
||||||
|
import org.json.JSONObject;
|
||||||
|
|
||||||
public class Detection {
|
public class Detection {
|
||||||
protected Minecraft mc = Minecraft.getMinecraft();
|
protected Minecraft mc = Minecraft.getMinecraft();
|
||||||
@ -24,6 +26,12 @@ public class Detection {
|
|||||||
this.detections += 1;
|
this.detections += 1;
|
||||||
this.lastDetection = System.currentTimeMillis();
|
this.lastDetection = System.currentTimeMillis();
|
||||||
Client.logger.warn(String.format("[SkillIssue]: %s Detection: %s (vl: %s)", name, data, detections));
|
Client.logger.warn(String.format("[SkillIssue]: %s Detection: %s (vl: %s)", name, data, detections));
|
||||||
|
(new Thread(() -> {
|
||||||
|
Requests.post("https://api.silentclient.net/anticheat/detect", new JSONObject().put("type", name.toLowerCase()).put("message", data).toString());
|
||||||
|
if(detections >= 10) {
|
||||||
|
Client.getInstance().updateUserInformation();
|
||||||
|
}
|
||||||
|
})).start();
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventTarget
|
@EventTarget
|
||||||
|
@ -4,7 +4,6 @@ import net.silentclient.client.event.EventTarget;
|
|||||||
import net.silentclient.client.event.impl.EntityAttackEvent;
|
import net.silentclient.client.event.impl.EntityAttackEvent;
|
||||||
import net.silentclient.client.mods.hud.ReachDisplayMod;
|
import net.silentclient.client.mods.hud.ReachDisplayMod;
|
||||||
import net.silentclient.client.skillissue.SkillIssue;
|
import net.silentclient.client.skillissue.SkillIssue;
|
||||||
import net.silentclient.client.utils.PlayerUtils;
|
|
||||||
|
|
||||||
public class Reach extends Detection {
|
public class Reach extends Detection {
|
||||||
private long lastHit = 0;
|
private long lastHit = 0;
|
||||||
@ -15,7 +14,7 @@ public class Reach extends Detection {
|
|||||||
|
|
||||||
@EventTarget
|
@EventTarget
|
||||||
public void totallyNoReachHax(EntityAttackEvent event) {
|
public void totallyNoReachHax(EntityAttackEvent event) {
|
||||||
if(System.currentTimeMillis() - lastHit < 500 || !PlayerUtils.isSurvival()) {
|
if(System.currentTimeMillis() - lastHit < 500) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(mc.objectMouseOver != null && mc.objectMouseOver.hitVec != null) {
|
if(mc.objectMouseOver != null && mc.objectMouseOver.hitVec != null) {
|
||||||
|
@ -147,7 +147,7 @@ public class Players {
|
|||||||
|
|
||||||
public static void unregister() {
|
public static void unregister() {
|
||||||
try {
|
try {
|
||||||
String content = Requests.post("https://api.silentclient.net/account/set_online", new JSONObject().put("online", true).toString());
|
String content = Requests.post("https://api.silentclient.net/account/set_online", new JSONObject().put("online", false).toString());
|
||||||
|
|
||||||
Client.logger.info("STOPPING > unregistering-player > response: " + content.toString());
|
Client.logger.info("STOPPING > unregistering-player > response: " + content.toString());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
@ -19,6 +19,7 @@ import java.util.concurrent.TimeUnit;
|
|||||||
|
|
||||||
public class PlayerResponse extends AbstractReply {
|
public class PlayerResponse extends AbstractReply {
|
||||||
public Account account;
|
public Account account;
|
||||||
|
public BanInfo banInfo;
|
||||||
|
|
||||||
public Account getAccount() {
|
public Account getAccount() {
|
||||||
return account;
|
return account;
|
||||||
@ -514,4 +515,9 @@ public class PlayerResponse extends AbstractReply {
|
|||||||
public ArrayList<Number> hats = new ArrayList<Number>();
|
public ArrayList<Number> hats = new ArrayList<Number>();
|
||||||
public ArrayList<Number> shields = new ArrayList<Number>();
|
public ArrayList<Number> shields = new ArrayList<Number>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class BanInfo {
|
||||||
|
public boolean banned;
|
||||||
|
public String reason;
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user