Added more TSE crash protections and fixed some TSE notifications (#302)
This commit is contained in:
parent
dba617ae9f
commit
38519a169e
@ -1,183 +1,196 @@
|
||||
#pragma once
|
||||
|
||||
namespace big
|
||||
{
|
||||
enum class CustomWeapon
|
||||
{
|
||||
NONE,
|
||||
CAGE_GUN,
|
||||
DELETE_GUN,
|
||||
GRAVITY_GUN,
|
||||
STEAL_VEHICLE_GUN,
|
||||
REPAIR_GUN,
|
||||
VEHICLE_GUN
|
||||
};
|
||||
|
||||
enum class ContextEntityType : uint8_t
|
||||
{
|
||||
NONE = 0,
|
||||
PED = 1 << 0,
|
||||
PLAYER = 1 << 1,
|
||||
VEHICLE = 1 << 2,
|
||||
OBJECT = 1 << 3,
|
||||
SHARED = 1 << 4
|
||||
};
|
||||
|
||||
enum class eEntityType
|
||||
{
|
||||
UNK_0,
|
||||
UNK_1,
|
||||
UNK_2,
|
||||
UNK_3,
|
||||
UNK_4,
|
||||
VEHICLE,
|
||||
PED,
|
||||
};
|
||||
|
||||
enum class eTransitionState
|
||||
{
|
||||
TRANSITION_STATE_EMPTY,
|
||||
TRANSITION_STATE_SP_SWOOP_UP,
|
||||
TRANSITION_STATE_MP_SWOOP_UP,
|
||||
TRANSITION_STATE_CREATOR_SWOOP_UP,
|
||||
TRANSITION_STATE_PRE_HUD_CHECKS,
|
||||
TRANSITION_STATE_WAIT_HUD_EXIT,
|
||||
TRANSITION_STATE_WAIT_FOR_SUMMON,
|
||||
TRANSITION_STATE_SP_SWOOP_DOWN,
|
||||
TRANSITION_STATE_MP_SWOOP_DOWN,
|
||||
TRANSITION_STATE_CANCEL_JOINING,
|
||||
TRANSITION_STATE_RETRY_LOADING,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_1,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_2,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_3,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_4,
|
||||
TRANSITION_STATE_WAIT_ON_INVITE,
|
||||
TRANSITION_STATE_PREJOINING_FM_SESSION_CHECKS,
|
||||
TRANSITION_STATE_LOOK_FOR_FRESH_JOIN_FM,
|
||||
TRANSITION_STATE_LOOK_TO_JOIN_ANOTHER_SESSION_FM,
|
||||
TRANSITION_STATE_CONFIRM_FM_SESSION_JOINING,
|
||||
TRANSITION_STATE_WAIT_JOIN_FM_SESSION,
|
||||
TRANSITION_STATE_CREATION_ENTER_SESSION,
|
||||
TRANSITION_STATE_PRE_FM_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_FM_TEAMFULL_CHECK,
|
||||
TRANSITION_STATE_START_FM_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_FM_TRANSITION_CREATE_PLAYER,
|
||||
TRANSITION_STATE_IS_FM_AND_TRANSITION_READY,
|
||||
TRANSITION_STATE_FM_SWOOP_DOWN,
|
||||
TRANSITION_STATE_POST_BINK_VIDEO_WARP,
|
||||
TRANSITION_STATE_FM_FINAL_SETUP_PLAYER,
|
||||
TRANSITION_STATE_MOVE_FM_TO_RUNNING_STATE,
|
||||
TRANSITION_STATE_FM_HOW_TO_TERMINATE,
|
||||
TRANSITION_STATE_START_CREATOR_PRE_LAUNCH_SCRIPT_CHECK,
|
||||
TRANSITION_STATE_START_CREATOR_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_CREATOR_TRANSITION_CREATE_PLAYER,
|
||||
TRANSITION_STATE_IS_CREATOR_AND_TRANSITION_READY,
|
||||
TRANSITION_STATE_CREATOR_SWOOP_DOWN,
|
||||
TRANSITION_STATE_CREATOR_FINAL_SETUP_PLAYER,
|
||||
TRANSITION_STATE_MOVE_CREATOR_TO_RUNNING_STATE,
|
||||
TRANSITION_STATE_PREJOINING_TESTBED_SESSION_CHECKS,
|
||||
TRANSITION_STATE_LOOK_FOR_FRESH_JOIN_TESTBED,
|
||||
TRANSITION_STATE_LOOK_FOR_FRESH_HOST_TESTBED,
|
||||
TRANSITION_STATE_LOOK_TO_JOIN_ANOTHER_SESSION_TESTBED,
|
||||
TRANSITION_STATE_LOOK_TO_HOST_SESSION_TESTBED,
|
||||
TRANSITION_STATE_CONFIRM_TESTBED_SESSION_JOINING,
|
||||
TRANSITION_STATE_WAIT_JOIN_TESTBED_SESSION,
|
||||
TRANSITION_STATE_START_TESTBED_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_TESTBED_TRANSITION_CREATE_PLAYER,
|
||||
TRANSITION_STATE_IS_TESTBED_AND_TRANSITION_READY,
|
||||
TRANSITION_STATE_TESTBED_SWOOP_DOWN,
|
||||
TRANSITION_STATE_TESTBED_FINAL_SETUP_PLAYER,
|
||||
TRANSITION_STATE_MOVE_TESTBED_TO_RUNNING_STATE,
|
||||
TRANSITION_STATE_TESTBED_HOW_TO_TERMINATE,
|
||||
TRANSITION_STATE_QUIT_CURRENT_SESSION_PROMPT,
|
||||
TRANSITION_STATE_WAIT_FOR_TRANSITION_SESSION_TO_SETUP,
|
||||
TRANSITION_STATE_TERMINATE_SP,
|
||||
TRANSITION_STATE_WAIT_TERMINATE_SP,
|
||||
TRANSITION_STATE_KICK_TERMINATE_SESSION,
|
||||
TRANSITION_STATE_TERMINATE_SESSION,
|
||||
TRANSITION_STATE_WAIT_TERMINATE_SESSION,
|
||||
TRANSITION_STATE_TERMINATE_SESSION_AND_HOLD,
|
||||
TRANSITION_STATE_TERMINATE_SESSION_AND_MOVE_INTO_HOLDING_STATE,
|
||||
TRANSITION_STATE_TEAM_SWAPPING_CHECKS,
|
||||
TRANSITION_STATE_RETURN_TO_SINGLEPLAYER,
|
||||
TRANSITION_STATE_WAIT_FOR_SINGLEPLAYER_TO_START,
|
||||
TRANSITION_STATE_WAITING_FOR_EXTERNAL_TERMINATION_CALL,
|
||||
TRANSITION_STATE_TERMINATE_MAINTRANSITION,
|
||||
TRANSITION_STATE_WAIT_FOR_DIRTY_LOAD_CONFIRM,
|
||||
TRANSITION_STATE_DLC_INTRO_BINK,
|
||||
TRANSITION_STATE_MAX = INT_MAX
|
||||
};
|
||||
|
||||
enum eVehicleFlags
|
||||
{
|
||||
TRIGGER_SPAWN_TOGGLE = 1 << 0,
|
||||
DESTROYED = 1 << 1,
|
||||
HAS_INSURANCE = 1 << 2,
|
||||
UNK0 = 1 << 3,
|
||||
IMPOUNDED = 1 << 6,
|
||||
UNK1 = 1 << 10,
|
||||
SPAWN_AT_MORS_MUTUAL = 1 << 11,
|
||||
UNK2 = 1 << 16
|
||||
};
|
||||
|
||||
enum class ePedTask
|
||||
{
|
||||
TASK_NONE,
|
||||
TASK_FOOT = 1 << 4,
|
||||
TASK_UNK = 1 << 5,
|
||||
TASK_DRIVING = 1 << 6
|
||||
};
|
||||
|
||||
enum class eRemoteEvent
|
||||
{
|
||||
Bounty = 1294995624,
|
||||
CeoBan = -764524031,
|
||||
CeoKick = 248967238,
|
||||
CeoMoney = 1890277845,
|
||||
ClearWantedLevel = -91354030,
|
||||
Crash = -1386010354,
|
||||
FakeDeposit = 677240627,
|
||||
ForceMission = 2020588206,
|
||||
GtaBanner = 1572255940,
|
||||
MCTeleport = 962740265,
|
||||
NetworkBail = 1228916411,
|
||||
PersonalVehicleDestroyed = 802133775,
|
||||
RemoteOffradar = -391633760,
|
||||
RotateCam = 801199324,
|
||||
SendToCutscene = 1068259786,
|
||||
SendToIsland = -621279188,
|
||||
SendToCayo = 1463943751,
|
||||
SoundSpam = 1132878564,
|
||||
Spectate = -1113591308,
|
||||
Teleport = 603406648,
|
||||
TransactionError = -1704141512,
|
||||
VehicleKick = 578856274,
|
||||
Unknown1 = -145306724,
|
||||
Unknown2 = -581037897,
|
||||
Unknown3 = 1757755807,
|
||||
Unknown4 = 436475575,
|
||||
Unknown5 = 990606644,
|
||||
Unknown6 = 69874647
|
||||
};
|
||||
|
||||
enum class eSessionType
|
||||
{
|
||||
JOIN_PUBLIC,
|
||||
NEW_PUBLIC,
|
||||
CLOSED_CREW,
|
||||
CREW,
|
||||
CLOSED_FRIENDS = 6,
|
||||
FIND_FRIEND = 9,
|
||||
SOLO,
|
||||
INVITE_ONLY,
|
||||
JOIN_CREW,
|
||||
LEAVE_ONLINE = -1
|
||||
};
|
||||
|
||||
enum class SpeedoMeter
|
||||
{
|
||||
DISABLED,
|
||||
KMH,
|
||||
MPH
|
||||
};
|
||||
}
|
||||
#pragma once
|
||||
|
||||
namespace big
|
||||
{
|
||||
enum class CustomWeapon
|
||||
{
|
||||
NONE,
|
||||
CAGE_GUN,
|
||||
DELETE_GUN,
|
||||
GRAVITY_GUN,
|
||||
STEAL_VEHICLE_GUN,
|
||||
REPAIR_GUN,
|
||||
VEHICLE_GUN
|
||||
};
|
||||
|
||||
enum class ContextEntityType : uint8_t
|
||||
{
|
||||
NONE = 0,
|
||||
PED = 1 << 0,
|
||||
PLAYER = 1 << 1,
|
||||
VEHICLE = 1 << 2,
|
||||
OBJECT = 1 << 3,
|
||||
SHARED = 1 << 4
|
||||
};
|
||||
|
||||
enum class eEntityType
|
||||
{
|
||||
UNK_0,
|
||||
UNK_1,
|
||||
UNK_2,
|
||||
UNK_3,
|
||||
UNK_4,
|
||||
VEHICLE,
|
||||
PED,
|
||||
};
|
||||
|
||||
enum class eTransitionState
|
||||
{
|
||||
TRANSITION_STATE_EMPTY,
|
||||
TRANSITION_STATE_SP_SWOOP_UP,
|
||||
TRANSITION_STATE_MP_SWOOP_UP,
|
||||
TRANSITION_STATE_CREATOR_SWOOP_UP,
|
||||
TRANSITION_STATE_PRE_HUD_CHECKS,
|
||||
TRANSITION_STATE_WAIT_HUD_EXIT,
|
||||
TRANSITION_STATE_WAIT_FOR_SUMMON,
|
||||
TRANSITION_STATE_SP_SWOOP_DOWN,
|
||||
TRANSITION_STATE_MP_SWOOP_DOWN,
|
||||
TRANSITION_STATE_CANCEL_JOINING,
|
||||
TRANSITION_STATE_RETRY_LOADING,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_1,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_2,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_3,
|
||||
TRANSITION_STATE_RETRY_LOADING_SLOT_4,
|
||||
TRANSITION_STATE_WAIT_ON_INVITE,
|
||||
TRANSITION_STATE_PREJOINING_FM_SESSION_CHECKS,
|
||||
TRANSITION_STATE_LOOK_FOR_FRESH_JOIN_FM,
|
||||
TRANSITION_STATE_LOOK_TO_JOIN_ANOTHER_SESSION_FM,
|
||||
TRANSITION_STATE_CONFIRM_FM_SESSION_JOINING,
|
||||
TRANSITION_STATE_WAIT_JOIN_FM_SESSION,
|
||||
TRANSITION_STATE_CREATION_ENTER_SESSION,
|
||||
TRANSITION_STATE_PRE_FM_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_FM_TEAMFULL_CHECK,
|
||||
TRANSITION_STATE_START_FM_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_FM_TRANSITION_CREATE_PLAYER,
|
||||
TRANSITION_STATE_IS_FM_AND_TRANSITION_READY,
|
||||
TRANSITION_STATE_FM_SWOOP_DOWN,
|
||||
TRANSITION_STATE_POST_BINK_VIDEO_WARP,
|
||||
TRANSITION_STATE_FM_FINAL_SETUP_PLAYER,
|
||||
TRANSITION_STATE_MOVE_FM_TO_RUNNING_STATE,
|
||||
TRANSITION_STATE_FM_HOW_TO_TERMINATE,
|
||||
TRANSITION_STATE_START_CREATOR_PRE_LAUNCH_SCRIPT_CHECK,
|
||||
TRANSITION_STATE_START_CREATOR_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_CREATOR_TRANSITION_CREATE_PLAYER,
|
||||
TRANSITION_STATE_IS_CREATOR_AND_TRANSITION_READY,
|
||||
TRANSITION_STATE_CREATOR_SWOOP_DOWN,
|
||||
TRANSITION_STATE_CREATOR_FINAL_SETUP_PLAYER,
|
||||
TRANSITION_STATE_MOVE_CREATOR_TO_RUNNING_STATE,
|
||||
TRANSITION_STATE_PREJOINING_TESTBED_SESSION_CHECKS,
|
||||
TRANSITION_STATE_LOOK_FOR_FRESH_JOIN_TESTBED,
|
||||
TRANSITION_STATE_LOOK_FOR_FRESH_HOST_TESTBED,
|
||||
TRANSITION_STATE_LOOK_TO_JOIN_ANOTHER_SESSION_TESTBED,
|
||||
TRANSITION_STATE_LOOK_TO_HOST_SESSION_TESTBED,
|
||||
TRANSITION_STATE_CONFIRM_TESTBED_SESSION_JOINING,
|
||||
TRANSITION_STATE_WAIT_JOIN_TESTBED_SESSION,
|
||||
TRANSITION_STATE_START_TESTBED_LAUNCH_SCRIPT,
|
||||
TRANSITION_STATE_TESTBED_TRANSITION_CREATE_PLAYER,
|
||||
TRANSITION_STATE_IS_TESTBED_AND_TRANSITION_READY,
|
||||
TRANSITION_STATE_TESTBED_SWOOP_DOWN,
|
||||
TRANSITION_STATE_TESTBED_FINAL_SETUP_PLAYER,
|
||||
TRANSITION_STATE_MOVE_TESTBED_TO_RUNNING_STATE,
|
||||
TRANSITION_STATE_TESTBED_HOW_TO_TERMINATE,
|
||||
TRANSITION_STATE_QUIT_CURRENT_SESSION_PROMPT,
|
||||
TRANSITION_STATE_WAIT_FOR_TRANSITION_SESSION_TO_SETUP,
|
||||
TRANSITION_STATE_TERMINATE_SP,
|
||||
TRANSITION_STATE_WAIT_TERMINATE_SP,
|
||||
TRANSITION_STATE_KICK_TERMINATE_SESSION,
|
||||
TRANSITION_STATE_TERMINATE_SESSION,
|
||||
TRANSITION_STATE_WAIT_TERMINATE_SESSION,
|
||||
TRANSITION_STATE_TERMINATE_SESSION_AND_HOLD,
|
||||
TRANSITION_STATE_TERMINATE_SESSION_AND_MOVE_INTO_HOLDING_STATE,
|
||||
TRANSITION_STATE_TEAM_SWAPPING_CHECKS,
|
||||
TRANSITION_STATE_RETURN_TO_SINGLEPLAYER,
|
||||
TRANSITION_STATE_WAIT_FOR_SINGLEPLAYER_TO_START,
|
||||
TRANSITION_STATE_WAITING_FOR_EXTERNAL_TERMINATION_CALL,
|
||||
TRANSITION_STATE_TERMINATE_MAINTRANSITION,
|
||||
TRANSITION_STATE_WAIT_FOR_DIRTY_LOAD_CONFIRM,
|
||||
TRANSITION_STATE_DLC_INTRO_BINK,
|
||||
TRANSITION_STATE_MAX = INT_MAX
|
||||
};
|
||||
|
||||
enum eVehicleFlags
|
||||
{
|
||||
TRIGGER_SPAWN_TOGGLE = 1 << 0,
|
||||
DESTROYED = 1 << 1,
|
||||
HAS_INSURANCE = 1 << 2,
|
||||
UNK0 = 1 << 3,
|
||||
IMPOUNDED = 1 << 6,
|
||||
UNK1 = 1 << 10,
|
||||
SPAWN_AT_MORS_MUTUAL = 1 << 11,
|
||||
UNK2 = 1 << 16
|
||||
};
|
||||
|
||||
enum class ePedTask
|
||||
{
|
||||
TASK_NONE,
|
||||
TASK_FOOT = 1 << 4,
|
||||
TASK_UNK = 1 << 5,
|
||||
TASK_DRIVING = 1 << 6
|
||||
};
|
||||
|
||||
enum class eRemoteEvent
|
||||
{
|
||||
Bounty = 1294995624,
|
||||
CeoBan = -764524031,
|
||||
CeoKick = 248967238,
|
||||
CeoMoney = 1890277845,
|
||||
ClearWantedLevel = -91354030,
|
||||
Crash = -1386010354,
|
||||
FakeDeposit = 677240627,
|
||||
ForceMission = 2020588206,
|
||||
GtaBanner = 1572255940,
|
||||
MCTeleport = 962740265,
|
||||
NetworkBail = 1228916411,
|
||||
PersonalVehicleDestroyed = 802133775,
|
||||
RemoteOffradar = -391633760,
|
||||
RotateCam = 801199324,
|
||||
SendToCutscene = 1068259786,
|
||||
SendToIsland = -621279188,
|
||||
SendToCayo = 1463943751,
|
||||
SoundSpam = 1132878564,
|
||||
Spectate = -1113591308,
|
||||
Teleport = 603406648,
|
||||
TransactionError = -1704141512,
|
||||
VehicleKick = 578856274,
|
||||
Unknown1 = -145306724,
|
||||
Unknown2 = -581037897,
|
||||
Unknown3 = 1757755807,
|
||||
Unknown4 = 436475575,
|
||||
Unknown5 = 990606644,
|
||||
Unknown6 = 69874647,
|
||||
|
||||
SEC3 = -2113023004,
|
||||
SEC6 = 704979198,
|
||||
SEC7 = -1715193475,
|
||||
SEC8 = 1258808115,
|
||||
SEC9 = 2112408256,
|
||||
SEC10 = 998716537,
|
||||
SEC11 = 163598572,
|
||||
SEC12 = -1970125962,
|
||||
SEC13 = -1056683619,
|
||||
Spaghettios = -393294520,
|
||||
ForceMission2 = -1525161016,
|
||||
SHKick = -786546101
|
||||
};
|
||||
|
||||
enum class eSessionType
|
||||
{
|
||||
JOIN_PUBLIC,
|
||||
NEW_PUBLIC,
|
||||
CLOSED_CREW,
|
||||
CREW,
|
||||
CLOSED_FRIENDS = 6,
|
||||
FIND_FRIEND = 9,
|
||||
SOLO,
|
||||
INVITE_ONLY,
|
||||
JOIN_CREW,
|
||||
LEAVE_ONLINE = -1
|
||||
};
|
||||
|
||||
enum class SpeedoMeter
|
||||
{
|
||||
DISABLED,
|
||||
KMH,
|
||||
MPH
|
||||
};
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ namespace big
|
||||
void format_string(std::string_view player_name, std::string_view protection_type, bool should_log, bool should_notify)
|
||||
{
|
||||
if (should_log)
|
||||
LOG(WARNING) << "BLOCKED_SCRIPT_EVENT";
|
||||
LOG(WARNING) << "BLOCKED_SCRIPT_EVENT From: " << player_name << " Event Type: " << protection_type;
|
||||
|
||||
if (should_notify)
|
||||
g_notification_service->push_warning("Script Event Protection",
|
||||
@ -153,12 +153,14 @@ namespace big
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
format_string(player_name, "TSE Freeze", notify.tse_freeze.log, notify.tse_freeze.notify);
|
||||
|
||||
format_string(player_name, "TSE Freeze", notify.tse_freeze.log, notify.tse_freeze.notify);
|
||||
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SendToCutscene:
|
||||
if (g->protections.script_events.send_to_cutscene)
|
||||
{
|
||||
@ -217,36 +219,168 @@ namespace big
|
||||
break;
|
||||
case eRemoteEvent::Unknown1:
|
||||
if (g->protections.script_events.crash && args[2] >= 32) {
|
||||
format_string(player_name, "Crash - #" + args[0], notify.crash.log, notify.crash.notify);
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::Unknown2:
|
||||
if (g->protections.script_events.crash && (args[2] >= 62 || args[3] >= 32)) {
|
||||
format_string(player_name, "Crash - #" + args[0], notify.crash.log, notify.crash.notify);
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::Unknown3:
|
||||
if (g->protections.script_events.crash && args[2] >= 62) {
|
||||
format_string(player_name, "Crash - #" + args[0], notify.crash.log, notify.crash.notify);
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::Unknown4:
|
||||
case eRemoteEvent::Unknown5:
|
||||
if (g->protections.script_events.crash && args[2] >= 20) {
|
||||
format_string(player_name, "Crash - #" + args[0], notify.crash.log, notify.crash.notify);
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::Unknown6:
|
||||
if (g->protections.script_events.crash) {
|
||||
format_string(player_name, "Crash - #" + args[0], notify.crash.log, notify.crash.notify);
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC3:
|
||||
if (
|
||||
g->protections.script_events.crash &&
|
||||
(
|
||||
(args[2] <= 115831 || args[2] >= 9999449) ||
|
||||
(args[3] <= -1 || args[3] >= 1) ||
|
||||
(args[4] <= -1 || args[4] >= 3) ||
|
||||
(args[5] <= -1 || args[5] >= 101) ||
|
||||
(args[6] <= -1 || args[6] >= 3) ||
|
||||
(args[7] <= -1 || args[7] >= 1)
|
||||
)
|
||||
) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC6:
|
||||
if (
|
||||
g->protections.script_events.crash &&
|
||||
(
|
||||
(args[2] <= -1 || args[2] >= 1) ||
|
||||
(args[3] <= -2 || args[3] >= 0) ||
|
||||
(args[4] <= 3 || args[4] >= 5) ||
|
||||
(args[5] <= 172 || args[5] >= 174) ||
|
||||
(args[6] <= 20 || args[6] >= 510) ||
|
||||
(args[7] <= 62 || args[7] >= 64) ||
|
||||
(args[11] <= -1 || args[11] >= 1) ||
|
||||
(args[12] <= -1 || args[12] >= 1) ||
|
||||
(args[13] <= -1 || args[13] >= 1)
|
||||
)
|
||||
) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC7:
|
||||
if (g->protections.script_events.crash) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC8:
|
||||
if (g->protections.script_events.crash) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC9:
|
||||
if (
|
||||
g->protections.script_events.crash &&
|
||||
(
|
||||
(args[2] <= -1986324736 || args[2] >= 1747413822) ||
|
||||
(args[2] > -9999999 || args[2] < 77777777) ||
|
||||
(args[3] <= -1986324736 || args[3] >= 1777712108) ||
|
||||
(args[3] > -9999999 || args[3] < 77777777) ||
|
||||
(args[4] <= -1673857408 || args[4] >= 1780088064) ||
|
||||
(args[4] > -9999999 || args[4] < 77777777) ||
|
||||
(args[6] <= (0LL - 2588888790LL) || args[6] >= 2100146067)
|
||||
)
|
||||
) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC10:
|
||||
if (g->protections.script_events.crash) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC11:
|
||||
if (g->protections.script_events.crash) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC12:
|
||||
if (
|
||||
g->protections.script_events.crash &&
|
||||
(
|
||||
(args[2] <= -1 || args[2] >= 50) ||
|
||||
(args[3] <= -1 || args[3] >= 50)
|
||||
)
|
||||
) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SEC13:
|
||||
if (g->protections.script_events.crash) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::Spaghettios:
|
||||
if (g->protections.script_events.crash) {
|
||||
format_string(player_name, "Crash - #" + std::to_string(args[0]), notify.crash.log, notify.crash.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::ForceMission2:
|
||||
if (g->protections.script_events.force_mission)
|
||||
{
|
||||
format_string(player_name, "Force Mission", notify.force_mission.log, notify.force_mission.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
case eRemoteEvent::SHKick:
|
||||
if (g->protections.script_events.network_bail)
|
||||
{
|
||||
format_string(player_name, "Network Bail", notify.network_bail.log, notify.network_bail.notify);
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (g->debug.script_event_logging)
|
||||
{
|
||||
LOG(INFO) << "== Begin of Script Event ==";
|
||||
|
Reference in New Issue
Block a user