_GLOBAL__sub_I_cl_clock_correction
0x000940a0 · 719 bytes · unknown
Decompiled
undefined (0 params)
void _GLOBAL__sub_I_cl_clock_correction(void)
{
vec2_origin._0_4_ = 0;
vec2_origin._4_4_ = 0;
vec2_invalid._0_4_ = 0x7f7fffff;
vec2_invalid._4_4_ = 0x7f7fffff;
vec4_origin._0_4_ = 0;
vec4_origin._4_4_ = 0;
vec4_origin._8_4_ = 0;
vec4_origin._12_4_ = 0;
vec4_invalid._0_4_ = 0x7f7fffff;
vec4_invalid._4_4_ = 0x7f7fffff;
vec4_invalid._8_4_ = 0x7f7fffff;
vec4_invalid._12_4_ = 0x7f7fffff;
UNSPECIFIED_LOGGING_COLOR._0_1_ = 0;
UNSPECIFIED_LOGGING_COLOR._1_1_ = 0;
UNSPECIFIED_LOGGING_COLOR._2_1_ = 0;
UNSPECIFIED_LOGGING_COLOR._3_1_ = 0;
ConVar::ConVar((ConVar *)cl_clock_correction,"cl_clock_correction","1",0x4000,
"Enable/disable clock correction on the client.");
__cxa_atexit(ConVar::~ConVar,cl_clock_correction,&__dso_handle);
ConVar::ConVar((ConVar *)cl_clockdrift_max_ms,"cl_clockdrift_max_ms","150",0x4000,
"Maximum number of milliseconds the clock is allowed to drift before the client snaps its clock to the server\'s."
);
__cxa_atexit(ConVar::~ConVar,cl_clockdrift_max_ms,&__dso_handle);
ConVar::ConVar((ConVar *)cl_clockdrift_max_ms_threadmode,"cl_clockdrift_max_ms_threadmode","0",
0x4000,
"Maximum number of milliseconds the clock is allowed to drift before the client snaps its clock to the server\'s."
);
__cxa_atexit(ConVar::~ConVar,cl_clockdrift_max_ms_threadmode,&__dso_handle);
ConVar::ConVar((ConVar *)cl_clock_showdebuginfo,"cl_clock_showdebuginfo","0",0x4000,
"Show debugging info about the clock drift. ");
__cxa_atexit(ConVar::~ConVar,cl_clock_showdebuginfo,&__dso_handle);
ConVar::ConVar((ConVar *)cl_clock_correction_force_server_tick,
"cl_clock_correction_force_server_tick","999",0x4000,
"Force clock correction to match the server tick + this offset (-999 disables it)."
);
__cxa_atexit(ConVar::~ConVar,cl_clock_correction_force_server_tick,&__dso_handle);
ConVar::ConVar((ConVar *)cl_clock_correction_adjustment_max_amount,
"cl_clock_correction_adjustment_max_amount","200",0x4000,
"Sets the maximum number of milliseconds per second it is allowed to correct the client clock. It will only correct this amount if the difference between the client and server clock is equal to or larger than cl_clock_correction_adjustment_max_offset."
);
__cxa_atexit(ConVar::~ConVar,cl_clock_correction_adjustment_max_amount,&__dso_handle);
ConVar::ConVar((ConVar *)cl_clock_correction_adjustment_min_offset,
"cl_clock_correction_adjustment_min_offset","10",0x4000,
"If the clock offset is less than this amount (in milliseconds), then no clock correction is applied."
);
__cxa_atexit(ConVar::~ConVar,cl_clock_correction_adjustment_min_offset,&__dso_handle);
ConVar::ConVar((ConVar *)cl_clock_correction_adjustment_max_offset,
"cl_clock_correction_adjustment_max_offset","90",0x4000,
"As the clock offset goes from cl_clock_correction_adjustment_min_offset to this value (in milliseconds), it moves towards applying cl_clock_correction_adjustment_max_amount of adjustment. That way, the response is small when the offset is small."
);
__cxa_atexit(ConVar::~ConVar,cl_clock_correction_adjustment_max_offset,&__dso_handle);
return;
}
SourceMod gamedata
paste intoaddons/sourcemod/gamedata/<your_plugin>.txt
Just a Signatures{} block, ready to drop into a gamedata
file. Wire it up in your plugin however you like - SDKCall, DHooks,
raw memory ops, or anything else.
Signatures + Functions block. The plugin uses
DHookCreateFromConf - DHooks reads return type, this-type,
calling convention, and argument types straight from the gamedata. Less
boilerplate in the plugin, types travel with the gamedata.
⚠ This function has no mangled symbol — it may be internal/static. The
Linux gamedata field uses @-prefix symbol resolution which
requires an exported mangled name. You'll need a Linux byte signature
for this one (extract via extract_signature.java).
Type inference is best-effort from the C signature - sanity-check the DHooks types before shipping.