L L4D2node

_GLOBAL__sub_I_g_Log

0x000a1230 · 1015 bytes · unknown

Decompiled

undefined (0 params)

void _GLOBAL__sub_I_g_Log(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 *)sv_logsdir,"sv_logsdir","logs",0x80,
                 "Folder in the game directory where server logs will be stored.");
  __cxa_atexit(ConVar::~ConVar,sv_logsdir,&__dso_handle);
  ConVar::ConVar((ConVar *)sv_logfile,"sv_logfile","1",0x80,
                 "Log server information in the log file.");
  __cxa_atexit(ConVar::~ConVar,sv_logfile,&__dso_handle);
  ConVar::ConVar((ConVar *)sv_logflush,"sv_logflush","0",0x80,
                 "Flush the log file to disk on each write (slow).");
  __cxa_atexit(ConVar::~ConVar,sv_logflush,&__dso_handle);
  ConVar::ConVar((ConVar *)sv_logecho,"sv_logecho","1",0x80,"Echo log information to the console.");
  __cxa_atexit(ConVar::~ConVar,sv_logecho,&__dso_handle);
  ConVar::ConVar((ConVar *)sv_log_onefile,"sv_log_onefile","0",0x80,
                 "Log server information to only one file.");
  __cxa_atexit(ConVar::~ConVar,sv_log_onefile,&__dso_handle);
  ConVar::ConVar((ConVar *)sv_logbans,"sv_logbans","0",0x80,"Log server bans in the server logs.");
  __cxa_atexit(ConVar::~ConVar,sv_logbans,&__dso_handle);
  CLog::CLog((CLog *)g_Log);
  __cxa_atexit(CLog::~CLog,g_Log,&__dso_handle);
  ConCommand::ConCommand
            ((ConCommand *)log_command,"log",log,
             "Enables logging to file, console, and udp < on | off >.",0,
             (int_____char_const__char *)0x0);
  __cxa_atexit(ConCommand::~ConCommand,log_command,&__dso_handle);
  ConCommand::ConCommand
            ((ConCommand *)logaddress_add_command,"logaddress_add",logaddress_add,
             "Set address and port for remote host <ip:port>.",0,(int_____char_const__char *)0x0);
  __cxa_atexit(ConCommand::~ConCommand,logaddress_add_command,&__dso_handle);
  ConCommand::ConCommand
            ((ConCommand *)logaddress_delall_command,"logaddress_delall",logaddress_delall,
             "Remove all udp addresses being logged to",0,(int_____char_const__char *)0x0);
  __cxa_atexit(ConCommand::~ConCommand,logaddress_delall_command,&__dso_handle);
  ConCommand::ConCommand
            ((ConCommand *)logaddress_del_command,"logaddress_del",logaddress_del,
             "Remove address and port for remote host <ip:port>.",0,(int_____char_const__char *)0x0)
  ;
  __cxa_atexit(ConCommand::~ConCommand,logaddress_del_command,&__dso_handle);
  ConCommand::ConCommand
            ((ConCommand *)logaddress_list_command,"logaddress_list",logaddress_list,
             "List all addresses currently being used by logaddress.",0,
             (int_____char_const__char *)0x0);
  __cxa_atexit(ConCommand::~ConCommand,logaddress_list_command,&__dso_handle);
  return;
}

SourceMod gamedata

paste into addons/sourcemod/gamedata/<your_plugin>.txt
used as the SourceMod key — change to fit your plugin's convention
SourceMod library name (server / engine / matchmaking)

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.



        
        

⚠ 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.

Return-type handling cheatsheet (DHookReturn)