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