SP Gamelog

This commit is contained in:
Federico Cecchetto
2022-07-10 20:25:21 +02:00
parent 6165f07275
commit 6298a627ce
5 changed files with 167 additions and 1 deletions

View File

@@ -22,6 +22,16 @@ namespace game
}
}
void SV_GetServerinfo(char* buffer, int bufferSize)
{
if (bufferSize < 1)
{
Com_Error(ERR_DROP, "\x15SV_GetServerinfo: bufferSize == %i", bufferSize);
}
I_strncpyz(buffer, Dvar_InfoString(0, 4), bufferSize);
}
void AddRefToValue(scriptInstance_t inst, const VariableValue* value)
{
AddRefToValue_(inst, value->type, value->u);

View File

@@ -56,6 +56,8 @@ namespace game
T* mp_object_;
};
void SV_GetServerinfo(char* buffer, int bufferSize);
void AddRefToValue(scriptInstance_t inst, const VariableValue* value);
void RemoveRefToValue(scriptInstance_t inst, const int type, VariableUnion value);

View File

@@ -210,6 +210,66 @@ namespace game
unsigned int index;
};
enum fsMode_t
{
FS_READ = 0x0,
FS_WRITE = 0x1,
FS_APPEND = 0x2,
FS_APPEND_SYNC = 0x3,
};
enum errorParm_t
{
ERR_FATAL = 0x0,
ERR_DROP = 0x1,
ERR_SERVERDISCONNECT = 0x2,
ERR_DISCONNECT = 0x3,
ERR_SCRIPT = 0x4,
ERR_SCRIPT_DROP = 0x5,
ERR_LOCALIZATION = 0x6,
};
enum conChannel_t
{
CON_CHANNEL_DONT_FILTER = 0x0,
CON_CHANNEL_ERROR = 0x1,
CON_CHANNEL_GAMENOTIFY = 0x2,
CON_CHANNEL_BOLDGAME = 0x3,
CON_CHANNEL_SUBTITLE = 0x4,
CON_CHANNEL_OBITUARY = 0x5,
CON_CHANNEL_LOGFILEONLY = 0x6,
CON_CHANNEL_CONSOLEONLY = 0x7,
CON_CHANNEL_GFX = 0x8,
CON_CHANNEL_SOUND = 0x9,
CON_CHANNEL_FILES = 0xA,
CON_CHANNEL_DEVGUI = 0xB,
CON_CHANNEL_PROFILE = 0xC,
CON_CHANNEL_UI = 0xD,
CON_CHANNEL_CLIENT = 0xE,
CON_CHANNEL_SERVER = 0xF,
CON_CHANNEL_SYSTEM = 0x10,
CON_CHANNEL_PLAYERWEAP = 0x11,
CON_CHANNEL_AI = 0x12,
CON_CHANNEL_ANIM = 0x13,
CON_CHANNEL_PHYS = 0x14,
CON_CHANNEL_FX = 0x15,
CON_CHANNEL_LEADERBOARDS = 0x16,
CON_CHANNEL_LIVE = 0x17,
CON_CHANNEL_PARSERSCRIPT = 0x18,
CON_CHANNEL_SCRIPT = 0x19,
CON_CHANNEL_SPAWNSYSTEM = 0x1A,
CON_CHANNEL_COOPINFO = 0x1B,
CON_CHANNEL_SERVERDEMO = 0x1C,
CON_CHANNEL_DDL = 0x1D,
CON_CHANNEL_NETWORK = 0x1E,
CON_CHANNEL_SCHEDULER = 0x1F,
CON_FIRST_DEBUG_CHANNEL = 0x1F,
CON_CHANNEL_TASK = 0x20,
CON_CHANNEL_SPU = 0x21,
CON_BUILTIN_CHANNEL_COUNT = 0x22,
};
namespace sp
{
struct ObjectInfo

View File

@@ -8,6 +8,8 @@ namespace game
WEAK symbol<int(const char* str)> BG_StringHashValue{0x0, 0x0};
WEAK symbol<void(const char* fmt, ...)> G_LogPrintf{0x69EA30, 0x5CD250};
WEAK symbol<void(int localClientNum, const char* text)> Cbuf_InsertText{0x0, 0x0};
WEAK symbol<void(int localClientNum, const char* text)> Cbuf_AddText{0x49B930, 0x56EF70};
WEAK symbol<void(int localClientNum, int controllerIndex, const char* text)> Cmd_ExecuteSingleCommand{0x619D00, 0x50B470};
@@ -17,16 +19,21 @@ namespace game
WEAK symbol<void(int clientNum)> ClientUserInfoChanged{0x0, 0x0};
WEAK symbol<int(const char* fmt, ...)> Com_Printf{0x566BC0, 0x64C260};
WEAK symbol<void(errorParm_t code, const char* fmt, ...)> Com_Error{0x651D90, 0x627380};
WEAK symbol<void(int channel, const char* fmt, ...)> Com_Printf{0x43BF30, 0x4126C0};
WEAK symbol<void(const char* fmt, ...)> Com_Printf_NoFilter{0x566BC0, 0x64C260};
WEAK symbol<void(int channel, const char* fmt, ...)> Com_PrintWarning{0x51CE50, 0x54B6A0};
WEAK symbol<const dvar_t*(const char*)> Dvar_FindVar{0x5AE810, 0x512F70};
WEAK symbol<int(const dvar_t*)> Dvar_GetInt{0x0, 0x0};
WEAK symbol<dvar_t*(const char* dvarName, int value, int min, int max,
unsigned int flags, const char* description)> Dvar_RegisterInt{0x0, 0x0};
WEAK symbol<char*(int localClientNum, int bit)> Dvar_InfoString{0x613060, 0x54A8B0};
WEAK symbol<XAssetHeader(XAssetType type, const char* name, bool errorIfMissing, int waitTime)> DB_FindXAssetHeader{0x0, 0x0};
WEAK symbol<char*(const char*)> I_CleanStr{0x0, 0x0};
WEAK symbol<void(char* dest, const char* src, int destsize)> I_strncpyz{0x5D4D60, 0x5A7140};
WEAK symbol<void*(const char** pName, int* min_args, int* max_args)> Player_GetMethod{0x0, 0x0};
WEAK symbol<void*(const char** pName, int* type, int* min_args, int* max_args)> Scr_GetCommonFunction{0x0, 0x0};
@@ -107,6 +114,9 @@ namespace game
WEAK symbol<void*(int valueIndex)> Sys_GetValue{0x67D4F0, 0x529EB0};
WEAK symbol<int()> Sys_Milliseconds{0x0, 0x0};
WEAK symbol<int(const char* qpath, int* f, fsMode_t mode)> FS_FOpenFileByMode{0x4DD530, 0x40C790};
WEAK symbol<void(int h)> FS_FCloseFile{0x46CAA0, 0x533020};
WEAK symbol<void*(jmp_buf* Buf, int Value)> longjmp{0x96B980, 0x9D05C4};
WEAK symbol<int(jmp_buf* Buf, int a2)> _setjmp{0x969EAC, 0x9CED5C};
@@ -131,4 +141,6 @@ namespace game
WEAK symbol<client_s> svs_clients{0x0, 0x0};
WEAK symbol<CmdArgs> sv_cmd_args{0x243D208, 0x355BD88};
WEAK symbol<int> logFile{0x1C0417C, 0x3443838};
}