Cancel Invalid Sabotages

This commit is contained in:
D1GQ committed 2024-08-31 11:24:28 -05:00
1 parent 369fe89602
commit 1d9a8db3d4
2 files changed
+22 -3

No files matched your search

+17 -1
View File
@@ -355,7 +355,7 @@ class AntiCheat
if (!GameStates.IsHost || PlayerControl.LocalPlayer == null || player == null || player == PlayerControl.LocalPlayer || player.BetterData().IsBetterHost || !IsEnabled || !Main.AntiCheat.Value
|| (GameStates.IsBetterHostLobby && !GameStates.IsHost) || !BetterGameSettings.DetectInvalidRPCs.GetBool()) return true;
if (!BetterGameSettings.ExperimentalDetectInvalidSabotage.GetBool())
if (!BetterGameSettings.CancelInvalidSabotage.GetBool())
return true;
// Single Fix: 0
@@ -373,9 +373,11 @@ class AntiCheat
if (!player.IsImpostorTeam() || GameStates.IsAnySabotageActive() || !Utils.SystemTypeIsSabotage(SaboType))
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(SaboType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(SaboType)}: {!player.IsImpostorTeam()} || {GameStates.IsAnySabotageActive()} " +
$"|| {!Utils.SystemTypeIsSabotage(SaboType)}");
*/
return false;
}
}
@@ -385,8 +387,10 @@ class AntiCheat
{
if (amount == hostNum && !player.IsHost())
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(systemType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(systemType)}: {amount == hostNum} && {!player.IsHost()}");
*/
return false;
}
@@ -394,8 +398,10 @@ class AntiCheat
{
if (systemType is SystemTypes.Electrical)
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(systemType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(systemType)}: {systemType is SystemTypes.Electrical}");
*/
}
return false;
@@ -405,24 +411,30 @@ class AntiCheat
{
if (player.BetterData().AntiCheatInfo.OpenSabotageNum == 0)
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(systemType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(systemType)}: {player.BetterData().AntiCheatInfo.OpenSabotageNum == 0}");
*/
return false;
}
if (amount == openPanelNum && amount == openPanelNum + 1)
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(systemType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(systemType)}: {amount == openPanelNum} && {amount == openPanelNum + 1}");
*/
return false;
}
if (player.BetterData().AntiCheatInfo.OpenSabotageNum == 1 && amount == openPanelNum + 1
|| player.BetterData().AntiCheatInfo.OpenSabotageNum == 2 && amount == openPanelNum)
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(systemType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(systemType)}: {player.BetterData().AntiCheatInfo.OpenSabotageNum == 1} && {amount == openPanelNum + 1} " +
$"|| {player.BetterData().AntiCheatInfo.OpenSabotageNum == 2} && {amount == openPanelNum}");
*/
return false;
}
}
@@ -432,10 +444,12 @@ class AntiCheat
&& amount != closePanelNum && amount != closePanelNum + 1
&& amount > MaxLightNum)
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(systemType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(systemType)}: {amount != fixNum} && {amount != fixNum + 1}" +
$" && {amount != closePanelNum} && {amount != closePanelNum + 1}" +
$" && {amount > MaxLightNum}");
*/
return false;
}
@@ -443,8 +457,10 @@ class AntiCheat
{
if (amount > MaxLightNum)
{
/*
BetterNotificationManager.NotifyCheat(player, $"Invalid Action RPC: {Enum.GetName(systemType)}");
Logger.LogCheat($"{player.BetterData().RealName} {Enum.GetName(systemType)}: {amount > MaxLightNum}");
*/
return false;
}
}
+5 -2
View File
@@ -19,7 +19,7 @@ class BetterGameSettings
public static BetterOptionItem? RoleRandomizer;
public static BetterOptionItem? DesyncRoles;
public static BetterOptionItem? ExperimentalDetectInvalidSabotage;
public static BetterOptionItem? CancelInvalidSabotage;
}
class BetterGameSettingsTemp
@@ -52,6 +52,7 @@ static class GameSettingMenuPatch
TitleList.Add(new BetterOptionTitleItem().Create(BetterSettingsTab, $"<color=#4f92ff>Host Only</color>"));
BetterGameSettings.WhenCheating = new BetterOptionStringItem().Create(100, BetterSettingsTab, "When a player is caught cheating", ["Notify", "Kick", "Ban"], 2);
BetterGameSettings.InvalidFriendCode = new BetterOptionCheckboxItem().Create(200, BetterSettingsTab, "Detected invalid FriendCodes", true);
BetterGameSettings.CancelInvalidSabotage = new BetterOptionCheckboxItem().Create(900, BetterSettingsTab, "Cancel Invalid Sabotages", true);
BetterGameSettings.UseBanPlayerList = new BetterOptionCheckboxItem().Create(300, BetterSettingsTab, "Use Ban Player List", true);
BetterGameSettings.UseBanNameList = new BetterOptionCheckboxItem().Create(400, BetterSettingsTab, "Use Ban Name List", true);
BetterGameSettings.UseBanWordList = new BetterOptionCheckboxItem().Create(500, BetterSettingsTab, "Use Ban Word List", true);
@@ -63,9 +64,11 @@ static class GameSettingMenuPatch
BetterGameSettings.DetectCheatClients = new BetterOptionCheckboxItem().Create(700, BetterSettingsTab, "Detect Cheat Clients", true);
BetterGameSettings.DetectInvalidRPCs = new BetterOptionCheckboxItem().Create(800, BetterSettingsTab, "Detect Invalid RPCs", true);
/*
TitleList.Add(new BetterOptionDividerItem().Create(BetterSettingsTab));
TitleList.Add(new BetterOptionTitleItem().Create(BetterSettingsTab, $"<color=#f20>Experimental</color>"));
BetterGameSettings.ExperimentalDetectInvalidSabotage = new BetterOptionCheckboxItem().Create(100000, BetterSettingsTab, "Detect Invalid Sabotages", false);
BetterGameSettings.CancelInvalidSabotage = new BetterOptionCheckboxItem().Create(100000, BetterSettingsTab, "Detect Invalid Sabotages", false);
*/
}
if (IsPreload || GameStates.IsHost)