#pragma once namespace game { // Functions WEAK symbol Com_Printf{ 0x0, 0x59A2C0 }; WEAK symbolCom_PrintMessage{ 0x0, 0x59A170 }; WEAK symbolCom_PrintWarning{ 0x0, 0x59A440 }; WEAK symbolCom_PrintError{ 0x0, 0x59A380 }; WEAK symbolCom_Error{ 0x0, 0x59AC50 }; WEAK symbolSys_Error{ 0x0, 0x5FE8C0 }; WEAK symbolHunk_UserDestroy{ 0x0, 0x5E4940 }; WEAK symbol Hunk_UserAlloc{ 0x0, 0x5E47B0 }; WEAK symbol Hunk_ClearTempMemoryHigh{ 0x0, 0x5E4300 }; WEAK symbolFS_FOpenFileRead{ 0x0, 0x5DBD20 }; WEAK symbolFS_Read{ 0x0, 0x5DBDF0 }; WEAK symbolFS_FOpenFileByMode{ 0x0, 0x5DB630 }; WEAK symbolva{ 0x0, 0x5F6D80 }; WEAK symbolDvar_FindVar{ 0x0, 0x5EDE30 }; WEAK symbolCom_BeginParseSession{ 0x0, 0x5F5830 }; WEAK symbol Com_EndParseSession{ 0x0, 0x5F5910 }; WEAK symbol Sys_Milliseconds{ 0x0, 0x603D40 }; WEAK symbolI_strncpyz{ 0x0, 0x7AA9C0 }; WEAK symbol<_iobuf* ()>__iob_func{ 0x0, 0x7AE0DE }; WEAK symbol_fwrite{ 0x0, 0x7ACBDA }; WEAK symbol_sscanf{ 0x0, 0x7AB559 }; WEAK symbol_fprintf{ 0x0, 0x7AE406 }; WEAK symbol_exit{ 0x0, 0x7AC431 }; WEAK symbol_realloc{ 0x0, 0x7AECAC }; WEAK symbolZ_TryMalloc{ 0x0, 0x7AAD36 }; WEAK symbolSentient_GetFunction{ 0x0, 0x5676F0 }; WEAK symbolBuiltIn_GetFunction{ 0x0, 0x52F0B0 }; WEAK symbolCScr_GetFunction{ 0x0, 0x66EA30 }; WEAK symbolCScr_GetMethod{ 0x0, 0x671110 }; inline void* I_strncmp_ADDR() { return CALL_ADDR(0x0, 0x5F6A40); } int I_strncmp(const char* str1, const char* str2, int len, void* call_addr = I_strncmp_ADDR()); inline void* Hunk_UserCreate_ADDR() { return CALL_ADDR(0x0, 0x5E46E0); } HunkUser* Hunk_UserCreate(signed int maxSize, const char* name, int fixed, int tempMem, int debugMem, int type, void* call_addr = Hunk_UserCreate_ADDR()); inline void* Hunk_AllocateTempMemoryHigh_ADDR() { return CALL_ADDR(0x0, 0x5E4220); } unsigned int Hunk_AllocateTempMemoryHigh(int size_, void* call_addr = Hunk_AllocateTempMemoryHigh_ADDR()); inline void* FS_FCloseFile_ADDR() { return CALL_ADDR(0x0, 0x5DB060); } void FS_FCloseFile(int h, void* call_addr = FS_FCloseFile_ADDR()); inline void* FS_ListFilteredFiles_ADDR() { return CALL_ADDR(0x0, 0x5DC720); } const char** FS_ListFilteredFiles(searchpath_s* searchPath, const char* path, const char* extension, const char* filter, FsListBehavior_e behavior, int* numFiles, void* call_addr = FS_ListFilteredFiles_ADDR()); inline void* Z_TryVirtualAlloc_ADDR() { return CALL_ADDR(0x0, 0x5E39D0); } void* Z_TryVirtualAlloc(signed int size_, void* call_addr = Z_TryVirtualAlloc_ADDR()); inline void* I_stricmp_ADDR() { return CALL_ADDR(0x0, 0x5F69E0); } int I_stricmp(int len, const char* s0, const char* s1, void* call_addr = I_stricmp_ADDR()); inline void* Com_Parse_ADDR() { return CALL_ADDR(0x0, 0x5F61B0); } parseInfo_t* Com_Parse(const char** buffer, void* call_addr = Com_Parse_ADDR()); inline void* Dvar_RegisterBool_ADDR() { return CALL_ADDR(0x0, 0x5EEE20); } dvar_s * Dvar_RegisterBool(unsigned __int8 val, const char * name, int flags, const char * desc, void* call_addr = Dvar_RegisterBool_ADDR()); inline void* XAnimGetAnimDebugName_ADDR() { return CALL_ADDR(0x0, 0x60F850); } const char * XAnimGetAnimDebugName(unsigned int animIndex, XAnim_s * anims, void* call_addr = XAnimGetAnimDebugName_ADDR()); inline void* Cmd_FindCommand_ADDR() { return CALL_ADDR(0x0, 0x594DB0); } cmd_function_s* Cmd_FindCommand(const char* cmdName, void* call_addr = Cmd_FindCommand_ADDR()); void Cmd_AddCommand(const char* name, void(__cdecl* function)()); inline void* Scr_GetMethod_ADDR() { return CALL_ADDR(0x0, 0x530630); } BuiltinMethod Scr_GetMethod(int* type_, const char** pName, void* call_addr = Scr_GetMethod_ADDR()); void Sys_EnterCriticalSection(CriticalSection critSect); void Sys_LeaveCriticalSection(CriticalSection critSect); // Variables WEAK symbol s_criticalSection{ 0x0, 0x2298D08 }; WEAK symbol g_DebugHunkUser{ 0x0, 0x212B2EC }; WEAK symbol useFastFile{ 0x0, 0x1F552FC }; WEAK symbol fsh{ 0x0, 0x2126E20 }; WEAK symbol fs_game{ 0x0, 0x2122B00 }; WEAK symbol com_developer{ 0x0, 0x1F55288 }; WEAK symbol statmon_related_bool{ 0x0, 0x2122B04 }; WEAK symbol g_allocNodeUser{ 0x0, 0x3882B20 }; WEAK symbol g_user{ 0x0, 0x3882B48 }; WEAK symbol fs_searchpaths{ 0x0, 0x46E5044 }; WEAK symbol cmd_functions{ 0x0, 0x1F416F4 }; namespace plutonium { WEAK symbol printf{0x0, 0x0}; WEAK symbol load_custom_script_func{0x0, 0x0}; WEAK symbol script_preprocess{0x0, 0x0}; WEAK symbol vm_execute_update_codepos{0x0, 0x0}; WEAK symbol scr_execthread_update_codepos_func{0x0, 0x0}; WEAK symbol scr_execentthread_update_codepos_func{ 0x0, 0x0 }; WEAK symbol scr_addexecthread_update_codepos_func{ 0x0, 0x0 }; WEAK symbol at_codepose_va{ 0x0, 0x0 }; WEAK symbol scr_get_method_stub{ 0x0, 0x0 }; WEAK symbol scr_get_function_stub{ 0x0, 0x0 }; WEAK symbol scr_get_method_hook{ 0x0, 0x0 }; WEAK symbol scr_get_function_hook{ 0x0, 0x0 }; WEAK symbol cscr_get_method_hook{ 0x0, 0x0 }; WEAK symbol cscr_get_function_hook{ 0x0, 0x0 }; WEAK symbol store_func_codepos{ 0x0, 0x0 }; } }