void WEB_InitStartup (void) { Cmd_AddCommand("web_auth", WEB_Auth_f, "Perform the authentication against the UFOAI server"); web_username = Cvar_Get("web_username", Sys_GetCurrentUser(), CVAR_ARCHIVE, "The username for the UFOAI server."); /* if the password is a non-empty string, this means that username and password * are valid, and the authentication was successful */ web_password = Cvar_Get("web_password", "", CVAR_ARCHIVE, "The encrypted password for the UFOAI server."); web_userid = Cvar_Get("web_userid", "0", 0, "Your userid for the UFOAI server"); web_authurl = Cvar_Get("web_authurl", WEB_API_SERVER "api/auth.php", CVAR_ARCHIVE, "The url to perform the authentication against."); WEB_CGameCvars(); WEB_CGameCommands(); Com_Printf("\n------- web initialization ---------\n"); if (Q_strvalid(web_password->string)) { Com_Printf("... using username '%s'\n", web_username->string); if (!WEB_GetURL(web_authurl->string, WEB_AuthResponse)) { Cvar_Set("web_password", ""); } if (Q_strvalid(web_password->string)) { Com_Printf("... login successful\n"); } else { Com_Printf("... login failed\n"); } } else { Com_Printf("... web access not yet configured\n"); } }
void Sys_Init( void ) { // make sure the timer is high precision, otherwise // NT gets 18ms resolution timeBeginPeriod( 1 ); Cmd_AddCommand ("in_restart", Sys_In_Restart_f); g_wv.osversion.dwOSVersionInfoSize = sizeof( g_wv.osversion ); if (!GetVersionEx (&g_wv.osversion)) Sys_Error ("Couldn't get OS info"); if (g_wv.osversion.dwMajorVersion < 4) Sys_Error ("This game requires Windows version 4 or greater"); if (g_wv.osversion.dwPlatformId == VER_PLATFORM_WIN32s) Sys_Error ("This game doesn't run on Win32s"); Cvar_Set( "arch", OS_STRING " " ARCH_STRING ); // save out a couple things in rom cvars for the renderer to access Cvar_Get( "win_hinstance", va("%p", g_wv.hInstance), CVAR_ROM ); Cvar_Get( "win_wndproc", va("%p", MainWndProc), CVAR_ROM ); Cvar_Set( "username", Sys_GetCurrentUser() ); IN_Init(); // FIXME: not in dedicated? }
/* ================= Sys_Init ================= */ void Sys_Init(void) { Cmd_AddCommand("backtrace", Sys_Backtrace_f); Cmd_AddCommand( "in_restart", Sys_In_Restart_f ); Cvar_Set( "arch", OS_STRING " " ARCH_STRING ); Cvar_Set( "username", Sys_GetCurrentUser( ) ); }
void Sys_Init (void) { Cmd_AddCommand ("in_restart", Sys_In_Restart_f); Cvar_Set( "arch", "rim" ); Cvar_Set( "username", Sys_GetCurrentUser() ); IN_Init(); }
/* ================ Sys_Init Called after the common systems (cvars, files, etc) are initialized ================ */ void Sys_Init( void ) { Cmd_AddCommand ("in_restart", IN_Restart); Cvar_Get( "arch", OS_STRING " " ARCH_STRING, CVAR_ROM ); Cvar_Get( "username", Sys_GetCurrentUser(), CVAR_ROM ); #ifndef DEDICATED com_unfocused = Cvar_Get( "com_unfocused", "0", CVAR_ROM ); com_minimized = Cvar_Get( "com_minimized", "0", CVAR_ROM ); #endif }
void Sys_Init( void ) { Cmd_AddCommand( "in_restart", Sys_In_Restart_f ); #if defined __linux__ #if defined __i386__ Cvar_Set( "arch", "linux i386" ); #elif defined __alpha__ Cvar_Set( "arch", "linux alpha" ); #elif defined __sparc__ Cvar_Set( "arch", "linux sparc" ); #elif defined __FreeBSD__ #if defined __i386__ // FreeBSD Cvar_Set( "arch", "freebsd i386" ); #elif defined __alpha__ Cvar_Set( "arch", "freebsd alpha" ); #else Cvar_Set( "arch", "freebsd unknown" ); #endif // FreeBSD #elif defined __OpenBSD__ #if defined __i386__ // OpenBSD Cvar_Set( "arch", "openbsd i386" ); #elif defined __amd64__ Cvar_Set( "arch", "openbsd amd64" ); #else Cvar_Set( "arch", "openbsd unknown" ); #endif // OpenBSD #else Cvar_Set( "arch", "linux unknown" ); #endif #elif defined __sun__ #if defined __i386__ Cvar_Set( "arch", "solaris x86" ); #elif defined __sparc__ Cvar_Set( "arch", "solaris sparc" ); #else Cvar_Set( "arch", "solaris unknown" ); #endif #elif defined __sgi__ #if defined __mips__ Cvar_Set( "arch", "sgi mips" ); #else Cvar_Set( "arch", "sgi unknown" ); #endif #else Cvar_Set( "arch", "unknown" ); #endif Cvar_Set( "username", Sys_GetCurrentUser() ); IN_Init(); }
void Sys_Init(void) { Cmd_AddCommand("in_restart", Sys_In_Restart_f); #if defined (USE_WINDOWS_CONSOLE) Cmd_AddCommand("clearviewlog", Sys_ClearViewlog_f); #endif Cvar_Set("arch", OS_STRING " " ARCH_STRING); Cvar_Set("username", Sys_GetCurrentUser()); }
void Sys_Init( void ) { // make sure the timer is high precision, otherwise // NT gets 18ms resolution timeBeginPeriod( 1 ); Cmd_AddCommand ("in_restart", Sys_In_Restart_f); #if MEM_DEBUG SH_Register(); #endif g_wv.osversion.dwOSVersionInfoSize = sizeof( g_wv.osversion ); if (!GetVersionEx (&g_wv.osversion)) Sys_Error ("Couldn't get OS info"); if (Sys_IsExpired()) { g_wv.osversion.dwMajorVersion = 0; } if (g_wv.osversion.dwMajorVersion < 4) Sys_Error ("This game requires Windows version 4 or greater"); if (g_wv.osversion.dwPlatformId == VER_PLATFORM_WIN32s) Sys_Error ("This game doesn't run on Win32s"); if ( g_wv.osversion.dwPlatformId == VER_PLATFORM_WIN32_NT ) { Cvar_Set( "arch", "winnt" ); } else if ( g_wv.osversion.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS ) { if ( LOWORD( g_wv.osversion.dwBuildNumber ) >= WIN98_BUILD_NUMBER ) { Cvar_Set( "arch", "win98" ); } else if ( LOWORD( g_wv.osversion.dwBuildNumber ) >= OSR2_BUILD_NUMBER ) { Cvar_Set( "arch", "win95 osr2.x" ); } else { Cvar_Set( "arch", "win95" ); } } else { Cvar_Set( "arch", "unknown Windows variant" ); } // save out a couple things in rom cvars for the renderer to access Cvar_Get( "win_hinstance", va("%i", (int)g_wv.hInstance), CVAR_ROM ); Cvar_Get( "win_wndproc", va("%i", (int)MainWndProc), CVAR_ROM ); Cvar_Set( "username", Sys_GetCurrentUser() ); IN_Init(); // FIXME: not in dedicated? }
void Sys_Init(void) { Cmd_AddCommand( "in_restart", Sys_In_Restart_f, "^1Restarts all the input drivers, dinput, joystick, etc." ); #if defined (_WIN32) && !defined (_DEBUG) Cmd_AddCommand( "clearviewlog", Sys_ClearViewlog_f, "^1Clear windows console." ); Sys_PrintCpuInfo(); Sys_PrintOSInfo(); Sys_PrintMemoryInfo(); #endif Cvar_Set( "arch", OS_STRING " " ARCH_STRING ); Cvar_Set( "username", Sys_GetCurrentUser( ) ); }
void Sys_Init() { if ( !( GGameType & GAME_Tech3 ) ) { return; } #if defined __linux__ #if defined __i386__ Cvar_Set( "arch", "linux i386" ); #elif defined __x86_64__ Cvar_Set( "arch", "linux x86_86" ); #elif defined __alpha__ Cvar_Set( "arch", "linux alpha" ); #elif defined __sparc__ Cvar_Set( "arch", "linux sparc" ); #elif defined __FreeBSD__ #if defined __i386__// FreeBSD Cvar_Set( "arch", "freebsd i386" ); #elif defined __x86_64__ Cvar_Set( "arch", "freebsd x86_86" ); #elif defined __alpha__ Cvar_Set( "arch", "freebsd alpha" ); #else Cvar_Set( "arch", "freebsd unknown" ); #endif // FreeBSD #else Cvar_Set( "arch", "linux unknown" ); #endif #elif defined __sun__ #if defined __i386__ Cvar_Set( "arch", "solaris x86" ); #elif defined __x86_64__ Cvar_Set( "arch", "solaris x86_86" ); #elif defined __sparc__ Cvar_Set( "arch", "solaris sparc" ); #else Cvar_Set( "arch", "solaris unknown" ); #endif #elif defined __sgi__ #if defined __mips__ Cvar_Set( "arch", "sgi mips" ); #else Cvar_Set( "arch", "sgi unknown" ); #endif #else Cvar_Set( "arch", "unknown" ); #endif Cvar_Set( "username", Sys_GetCurrentUser() ); }
/* ================ Sys_Init Called after the common systems (cvars, files, etc) are initialized ================ */ void Sys_Init( void ) { Cmd_AddCommand ("in_restart", IN_Restart); Cvar_Get( "arch", OS_STRING " " ARCH_STRING, CVAR_ROM ); Cvar_Get( "username", Sys_GetCurrentUser(), CVAR_ROM ); com_unfocused = Cvar_Get( "com_unfocused", "0", CVAR_ROM ); com_minimized = Cvar_Get( "com_minimized", "0", CVAR_ROM ); #ifdef _JK2EXE com_maxfps = Cvar_Get ("com_maxfps", "125", CVAR_ARCHIVE ); #else com_maxfps = Cvar_Get( "com_maxfps", "125", CVAR_ARCHIVE, "Maximum frames per second" ); #endif com_maxfpsUnfocused = Cvar_Get( "com_maxfpsUnfocused", "0", CVAR_ARCHIVE ); com_maxfpsMinimized = Cvar_Get( "com_maxfpsMinimized", "50", CVAR_ARCHIVE ); }
void Com_UploadCrashDump (const char* crashDumpFile) { if (uploadcrashdump == nullptr || uploadcrashdump->integer != 1) return; upparam_t paramUser; upparam_t paramVersion; upparam_t paramOS; const char* crashDumpURL = "http://ufoai.org/CrashDump.php"; paramUser.name = "user"; paramUser.value = Sys_GetCurrentUser(); paramUser.next = ¶mVersion; paramVersion.name = "version"; paramVersion.value = UFO_VERSION; paramVersion.next = ¶mOS; paramOS.name = "os"; paramOS.value = BUILDSTRING_OS; paramOS.next = nullptr; HTTP_PutFile("crashdump", crashDumpFile, crashDumpURL, ¶mUser); HTTP_PutFile("crashdump", va("%s/%s", FS_Gamedir(), consoleLogName), crashDumpURL, ¶mUser); }
void CL_InitLocal() { // register our variables cl_predict = Cvar_Get( "cl_predict", "0", CVAR_ARCHIVE, "disables client movement prediction" ); cl_crosshair = Cvar_Get( "crosshair", "1", CVAR_ARCHIVE, "show weapon chrosshair" ); cl_nodelta = Cvar_Get ("cl_nodelta", "0", 0, "disable delta-compression for usercommnds" ); cl_idealpitchscale = Cvar_Get( "cl_idealpitchscale", "0.8", 0, "how much to look up/down slopes and stairs when not using freelook" ); cl_solid_players = Cvar_Get( "cl_solid_players", "1", 0, "Make all players not solid (can't traceline them)" ); cl_interp = Cvar_Get( "ex_interp", "0.1", 0, "Interpolate object positions starting this many seconds in past" ); cl_timeout = Cvar_Get( "cl_timeout", "60", 0, "connect timeout (in-seconds)" ); rcon_client_password = Cvar_Get( "rcon_password", "", 0, "remote control client password" ); rcon_address = Cvar_Get( "rcon_address", "", 0, "remote control address" ); Cvar_Get( "password", "", CVAR_USERINFO, "player password" ); name = Cvar_Get( "name", Sys_GetCurrentUser(), CVAR_USERINFO|CVAR_ARCHIVE|CVAR_PRINTABLEONLY, "player name" ); model = Cvar_Get( "model", "player", CVAR_USERINFO|CVAR_ARCHIVE, "player model ('player' it's a single player model)" ); topcolor = Cvar_Get( "topcolor", "0", CVAR_USERINFO|CVAR_ARCHIVE, "player top color" ); bottomcolor = Cvar_Get( "bottomcolor", "0", CVAR_USERINFO|CVAR_ARCHIVE, "player bottom color" ); rate = Cvar_Get( "rate", "25000", CVAR_USERINFO|CVAR_ARCHIVE, "player network rate" ); hltv = Cvar_Get( "hltv", "0", CVAR_USERINFO|CVAR_LATCH, "HLTV mode" ); cl_showfps = Cvar_Get( "cl_showfps", "1", CVAR_ARCHIVE, "show client fps" ); cl_smooth = Cvar_Get ("cl_smooth", "0", CVAR_ARCHIVE, "smooth up stair climbing and interpolate position in multiplayer" ); cl_cmdbackup = Cvar_Get( "cl_cmdbackup", "10", CVAR_ARCHIVE, "how many additional history commands are sent" ); cl_cmdrate = Cvar_Get( "cl_cmdrate", "30", CVAR_ARCHIVE, "Max number of command packets sent to server per second" ); Cmd_AddCommand ("userinfo", CL_Userinfo_f, "print current client userinfo" ); Cmd_AddCommand ("disconnect", CL_Disconnect_f, "disconnect from server" ); Cmd_AddCommand ("quit", CL_Quit_f, "quit from game" ); Cmd_AddCommand ("exit", CL_Quit_f, "quit from game" ); Cmd_AddCommand ("connect", CL_Connect_f, "connect to a server by hostname" ); Cmd_AddCommand ("reconnect", CL_Reconnect_f, "reconnect to current level" ); Cmd_AddCommand ("rcon", CL_Rcon_f, "sends a command to the server console (rcon_password and rcon_address required)" ); }
/* ================= CL_InitLocal ================= */ void CL_InitLocal( void ) { cls.state = ca_disconnected; // register our variables cl_predict = Cvar_Get( "cl_predict", "0", CVAR_ARCHIVE, "enable client movement prediction" ); cl_crosshair = Cvar_Get( "crosshair", "1", CVAR_ARCHIVE, "show weapon chrosshair" ); cl_nodelta = Cvar_Get ("cl_nodelta", "0", 0, "disable delta-compression for usercommands" ); cl_idealpitchscale = Cvar_Get( "cl_idealpitchscale", "0.8", 0, "how much to look up/down slopes and stairs when not using freelook" ); cl_solid_players = Cvar_Get( "cl_solid_players", "1", 0, "make all players non-solid (can't traceline them)" ); cl_interp = Cvar_Get( "ex_interp", "0.1", 0, "interpolate object positions starting this many seconds in past" ); //Cvar_Get( "ex_maxerrordistance", "0", 0, "" ); cl_allow_fragment = Cvar_Get( "cl_allow_fragment", "0", CVAR_ARCHIVE, "allow downloading files directly from game server" ); cl_timeout = Cvar_Get( "cl_timeout", "60", 0, "connect timeout (in seconds)" ); cl_charset = Cvar_Get( "cl_charset", "utf-8", CVAR_ARCHIVE, "1-byte charset to use (iconv style)" ); rcon_client_password = Cvar_Get( "rcon_password", "", 0, "remote control client password" ); rcon_address = Cvar_Get( "rcon_address", "", 0, "remote control address" ); r_oldparticles = Cvar_Get("r_oldparticles", "0", CVAR_ARCHIVE, "make some particle textures a simple square, like with software rendering"); cl_trace_events = Cvar_Get( "cl_trace_events", "0", CVAR_ARCHIVE|CVAR_CHEAT, "enable client event tracing (good for developers)" ); cl_trace_stufftext = Cvar_Get( "cl_trace_stufftext", "0", CVAR_ARCHIVE|CVAR_CHEAT, "enable stufftext commands tracing (good for developers)" ); // userinfo Cvar_Get( "password", "", CVAR_USERINFO, "player password" ); // cvar is not registered as userinfo as it not needed usually // it will be set as userinfo only if it has non-default and correct value cl_maxpacket = Cvar_Get( "cl_maxpacket", "40000", CVAR_ARCHIVE, "Max packet size, sent from server durning connection" ); name = Cvar_Get( "name", Sys_GetCurrentUser(), CVAR_USERINFO|CVAR_ARCHIVE|CVAR_PRINTABLEONLY, "player name" ); model = Cvar_Get( "model", "player", CVAR_USERINFO|CVAR_ARCHIVE, "player model ('player' is a singleplayer model)" ); topcolor = Cvar_Get( "topcolor", "0", CVAR_USERINFO|CVAR_ARCHIVE, "player top color" ); bottomcolor = Cvar_Get( "bottomcolor", "0", CVAR_USERINFO|CVAR_ARCHIVE, "player bottom color" ); rate = Cvar_Get( "rate", "25000", CVAR_USERINFO|CVAR_ARCHIVE, "player network rate" ); hltv = Cvar_Get( "hltv", "0", CVAR_USERINFO|CVAR_LATCH, "HLTV mode" ); cl_showfps = Cvar_Get( "cl_showfps", "1", CVAR_ARCHIVE, "show client fps" ); cl_showpos = Cvar_Get( "cl_showpos", "0", CVAR_ARCHIVE, "show local player position and velocity" ); cl_smooth = Cvar_Get ("cl_smooth", "0", CVAR_ARCHIVE, "smooth up stair climbing and interpolate position in multiplayer" ); cl_cmdbackup = Cvar_Get( "cl_cmdbackup", "10", CVAR_ARCHIVE, "how many additional history commands are sent" ); cl_cmdrate = Cvar_Get( "cl_cmdrate", "30", CVAR_ARCHIVE, "max number of command packets sent to server per second" ); cl_draw_particles = Cvar_Get( "cl_draw_particles", "1", CVAR_ARCHIVE, "disable particle effects" ); cl_draw_beams = Cvar_Get( "cl_draw_beams", "1", CVAR_ARCHIVE, "disable view beams" ); cl_lightstyle_lerping = Cvar_Get( "cl_lightstyle_lerping", "0", CVAR_ARCHIVE, "enable animated light lerping (perfomance option)" ); cl_sprite_nearest = Cvar_Get( "cl_sprite_nearest", "0", CVAR_ARCHIVE, "disable texture filtering on sprites" ); hud_scale = Cvar_Get( "hud_scale", "0", CVAR_ARCHIVE|CVAR_LATCH, "scale hud at current resolution" ); hud_utf8 = Cvar_Get( "hud_utf8", "0", CVAR_ARCHIVE, "Use utf-8 encoding for hud text" ); Cvar_Get( "skin", "", CVAR_USERINFO, "player skin" ); // XDM 3.3 want this cvar Cvar_Get( "cl_updaterate", "60", CVAR_USERINFO|CVAR_ARCHIVE, "refresh rate of server messages" ); Cvar_Get( "cl_background", "0", CVAR_READ_ONLY, "indicates that background map is running" ); // these two added to shut up CS 1.5 about 'unknown' commands Cvar_Get( "lightgamma", "1", 0, "ambient lighting level (legacy, unused)" ); Cvar_Get( "direct", "1", 0, "direct lighting level (legacy, unused)" ); Cvar_Get( "voice_serverdebug", "0", 0, "debug voice (legacy, unused)" ); // server commands Cmd_AddCommand ("noclip", NULL, "toggle noclipping mode" ); Cmd_AddCommand ("notarget", NULL, "notarget mode (monsters do not see you)" ); Cmd_AddCommand ("fullupdate", NULL, "re-init HUD on start of demo recording" ); Cmd_AddCommand ("give", NULL, "give specified item or weapon" ); Cmd_AddCommand ("drop", NULL, "drop current/specified item or weapon" ); Cmd_AddCommand ("gametitle", NULL, "show game logo" ); Cmd_AddCommand ("god", NULL, "toggle godmode" ); Cmd_AddCommand ("fov", NULL, "set client field of view" ); Cmd_AddCommand ("kill", NULL, "commit suicide" ); Cmd_AddCommand ("ent_list", NULL, "list entities on server" ); Cmd_AddCommand ("ent_fire", NULL, "fire entity command (be careful)" ); Cmd_AddCommand ("ent_info", NULL, "dump entity information" ); Cmd_AddCommand ("ent_create", NULL, "create entity with specified values (be careful)" ); Cmd_AddCommand ("ent_getvars", NULL, "put parameters of specified entities to client's' ent_last_* cvars" ); // register our commands Cmd_AddCommand ("pause", NULL, "pause the game (if the server allows pausing)" ); Cmd_AddCommand ("localservers", CL_LocalServers_f, "collect info about local servers" ); Cmd_AddCommand ("internetservers", CL_InternetServers_f, "collect info about internet servers" ); Cmd_AddCommand ("cd", CL_PlayCDTrack_f, "play cd-track (not real cd-player of course)" ); Cmd_AddCommand ("userinfo", CL_Userinfo_f, "print current client userinfo" ); Cmd_AddCommand ("physinfo", CL_Physinfo_f, "print current client physinfo" ); Cmd_AddCommand ("disconnect", CL_Disconnect_f, "disconnect from server" ); Cmd_AddCommand ("record", CL_Record_f, "record a demo" ); Cmd_AddCommand ("playdemo", CL_PlayDemo_f, "play a demo" ); Cmd_AddCommand ("killdemo", CL_DeleteDemo_f, "delete a specified demo file and demoshot" ); Cmd_AddCommand ("startdemos", CL_StartDemos_f, "start playing back the selected demos sequentially" ); Cmd_AddCommand ("demos", CL_Demos_f, "restart looping demos defined by the last startdemos command" ); Cmd_AddCommand ("movie", CL_PlayVideo_f, "play a movie" ); Cmd_AddCommand ("stop", CL_Stop_f, "stop playing or recording a demo" ); Cmd_AddCommand ("info", NULL, "collect info about local servers with specified protocol" ); Cmd_AddCommand ("escape", CL_Escape_f, "escape from game to menu" ); Cmd_AddCommand ("pointfile", CL_ReadPointFile_f, "show leaks on a map (if present of course)" ); Cmd_AddCommand ("linefile", CL_ReadLineFile_f, "show leaks on a map (if present of course)" ); Cmd_AddCommand ("quit", CL_Quit_f, "quit from game" ); Cmd_AddCommand ("exit", CL_Quit_f, "quit from game" ); Cmd_AddCommand ("screenshot", CL_ScreenShot_f, "takes a screenshot of the next rendered frame" ); Cmd_AddCommand ("snapshot", CL_SnapShot_f, "takes a snapshot of the next rendered frame" ); Cmd_AddCommand ("envshot", CL_EnvShot_f, "takes a six-sides cubemap shot with specified name" ); Cmd_AddCommand ("skyshot", CL_SkyShot_f, "takes a six-sides envmap (skybox) shot with specified name" ); Cmd_AddCommand ("levelshot", CL_LevelShot_f, "same as \"screenshot\", used to create plaque images" ); Cmd_AddCommand ("saveshot", CL_SaveShot_f, "used to create save previews with LoadGame menu" ); Cmd_AddCommand ("demoshot", CL_DemoShot_f, "used to create demo previews with PlayDemo menu" ); Cmd_AddCommand ("connect", CL_Connect_f, "connect to a server by hostname" ); Cmd_AddCommand ("reconnect", CL_Reconnect_f, "reconnect to current level" ); Cmd_AddCommand ("rcon", CL_Rcon_f, "sends a command to the server console (rcon_password and rcon_address required)" ); // this is dangerous to leave in // Cmd_AddCommand ("packet", CL_Packet_f, "send a packet with custom contents" ); Cmd_AddCommand ("precache", CL_Precache_f, "precache specified resource (by index)" ); }
void Sys_Init(void) { CoInitialize(NULL); // make sure the timer is high precision, otherwise // NT gets 18ms resolution timeBeginPeriod(1); // get WM_TIMER messages pumped every millisecond // SetTimer( NULL, 0, 100, NULL ); cmdSystem->AddCommand("in_restart", Sys_In_Restart_f, CMD_FL_SYSTEM, "restarts the input system"); #ifdef DEBUG cmdSystem->AddCommand("createResourceIDs", CreateResourceIDs_f, CMD_FL_TOOL, "assigns resource IDs in _resouce.h files"); #endif #if 0 cmdSystem->AddCommand("setAsyncSound", Sys_SetAsyncSound_f, CMD_FL_SYSTEM, "set the async sound option"); #endif // // Windows user name // win32.win_username.SetString(Sys_GetCurrentUser()); // // Windows version // win32.osversion.dwOSVersionInfoSize = sizeof(win32.osversion); if (!GetVersionEx((LPOSVERSIONINFO)&win32.osversion)) Sys_Error("Couldn't get OS info"); if (win32.osversion.dwMajorVersion < 4) { Sys_Error(GAME_NAME " requires Windows version 4 (NT) or greater"); } if (win32.osversion.dwPlatformId == VER_PLATFORM_WIN32s) { Sys_Error(GAME_NAME " doesn't run on Win32s"); } if (win32.osversion.dwPlatformId == VER_PLATFORM_WIN32_NT) { if (win32.osversion.dwMajorVersion <= 4) { win32.sys_arch.SetString("WinNT (NT)"); } else if (win32.osversion.dwMajorVersion == 5 && win32.osversion.dwMinorVersion == 0) { win32.sys_arch.SetString("Win2K (NT)"); } else if (win32.osversion.dwMajorVersion == 5 && win32.osversion.dwMinorVersion == 1) { win32.sys_arch.SetString("WinXP (NT)"); } else if (win32.osversion.dwMajorVersion == 6) { win32.sys_arch.SetString("Vista"); } else { win32.sys_arch.SetString("Unknown NT variant"); } } else if (win32.osversion.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS) { if (win32.osversion.dwMajorVersion == 4 && win32.osversion.dwMinorVersion == 0) { // Win95 if (win32.osversion.szCSDVersion[1] == 'C') { win32.sys_arch.SetString("Win95 OSR2 (95)"); } else { win32.sys_arch.SetString("Win95 (95)"); } } else if (win32.osversion.dwMajorVersion == 4 && win32.osversion.dwMinorVersion == 10) { // Win98 if (win32.osversion.szCSDVersion[1] == 'A') { win32.sys_arch.SetString("Win98SE (95)"); } else { win32.sys_arch.SetString("Win98 (95)"); } } else if (win32.osversion.dwMajorVersion == 4 && win32.osversion.dwMinorVersion == 90) { // WinMe win32.sys_arch.SetString("WinMe (95)"); } else { win32.sys_arch.SetString("Unknown 95 variant"); } } else { win32.sys_arch.SetString("unknown Windows variant"); } // // CPU type // if (!idStr::Icmp(win32.sys_cpustring.GetString(), "detect")) { idStr string; common->Printf("%1.0f MHz ", Sys_ClockTicksPerSecond() / 1000000.0f); win32.cpuid = Sys_GetCPUId(); string.Clear(); if (win32.cpuid & CPUID_AMD) { string += "AMD CPU"; } else if (win32.cpuid & CPUID_INTEL) { string += "Intel CPU"; } else if (win32.cpuid & CPUID_UNSUPPORTED) { string += "unsupported CPU"; } else { string += "generic CPU"; } string += " with "; if (win32.cpuid & CPUID_MMX) { string += "MMX & "; } if (win32.cpuid & CPUID_3DNOW) { string += "3DNow! & "; } if (win32.cpuid & CPUID_SSE) { string += "SSE & "; } if (win32.cpuid & CPUID_SSE2) { string += "SSE2 & "; } if (win32.cpuid & CPUID_SSE3) { string += "SSE3 & "; } if (win32.cpuid & CPUID_HTT) { string += "HTT & "; } string.StripTrailing(" & "); string.StripTrailing(" with "); win32.sys_cpustring.SetString(string); } else { common->Printf("forcing CPU type to "); idLexer src(win32.sys_cpustring.GetString(), idStr::Length(win32.sys_cpustring.GetString()), "sys_cpustring"); idToken token; int id = CPUID_NONE; while (src.ReadToken(&token)) { if (token.Icmp("generic") == 0) { id |= CPUID_GENERIC; } else if (token.Icmp("intel") == 0) { id |= CPUID_INTEL; } else if (token.Icmp("amd") == 0) { id |= CPUID_AMD; } else if (token.Icmp("mmx") == 0) { id |= CPUID_MMX; } else if (token.Icmp("3dnow") == 0) { id |= CPUID_3DNOW; } else if (token.Icmp("sse") == 0) { id |= CPUID_SSE; } else if (token.Icmp("sse2") == 0) { id |= CPUID_SSE2; } else if (token.Icmp("sse3") == 0) { id |= CPUID_SSE3; } else if (token.Icmp("htt") == 0) { id |= CPUID_HTT; } } if (id == CPUID_NONE) { common->Printf("WARNING: unknown sys_cpustring '%s'\n", win32.sys_cpustring.GetString()); id = CPUID_GENERIC; } win32.cpuid = (cpuid_t) id; } common->Printf("%s\n", win32.sys_cpustring.GetString()); common->Printf("%d MB System Memory\n", Sys_GetSystemRam()); common->Printf("%d MB Video Memory\n", Sys_GetVideoRam()); }
void Sys_Init( void ) { int cpuid; // make sure the timer is high precision, otherwise // NT gets 18ms resolution timeBeginPeriod( 1 ); Cmd_AddCommand ("in_restart", Sys_In_Restart_f); #if MEM_DEBUG SH_Register(); #endif g_wv.osversion.dwOSVersionInfoSize = sizeof( g_wv.osversion ); if (!GetVersionEx (&g_wv.osversion)) Sys_Error ("Couldn't get OS info"); if (Sys_IsExpired()) { g_wv.osversion.dwMajorVersion = 0; } if (g_wv.osversion.dwMajorVersion < 4) Sys_Error ("This game requires Windows version 4 or greater"); if (g_wv.osversion.dwPlatformId == VER_PLATFORM_WIN32s) Sys_Error ("This game doesn't run on Win32s"); if ( g_wv.osversion.dwPlatformId == VER_PLATFORM_WIN32_NT ) { Cvar_Set( "arch", "winnt" ); } else if ( g_wv.osversion.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS ) { if ( LOWORD( g_wv.osversion.dwBuildNumber ) >= WIN98_BUILD_NUMBER ) { Cvar_Set( "arch", "win98" ); } else if ( LOWORD( g_wv.osversion.dwBuildNumber ) >= OSR2_BUILD_NUMBER ) { Cvar_Set( "arch", "win95 osr2.x" ); } else { Cvar_Set( "arch", "win95" ); } } else { Cvar_Set( "arch", "unknown Windows variant" ); } // save out a couple things in rom cvars for the renderer to access Cvar_Get( "win_hinstance", va("%i", (int)g_wv.hInstance), CVAR_ROM ); Cvar_Get( "win_wndproc", va("%i", (int)MainWndProc), CVAR_ROM ); // // figure out our CPU // Cvar_Get( "sys_cpustring", "detect", 0 ); if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring"), "detect" ) ) { Com_Printf( "...detecting CPU, found " ); cpuid = Sys_GetProcessorId(); switch ( cpuid ) { case CPUID_GENERIC: Cvar_Set( "sys_cpustring", "generic" ); break; case CPUID_INTEL_UNSUPPORTED: Cvar_Set( "sys_cpustring", "x86 (pre-Pentium)" ); break; case CPUID_INTEL_PENTIUM: Cvar_Set( "sys_cpustring", "x86 (P5/PPro, non-MMX)" ); break; case CPUID_INTEL_MMX: Cvar_Set( "sys_cpustring", "x86 (P5/Pentium2, MMX)" ); break; case CPUID_INTEL_KATMAI: Cvar_Set( "sys_cpustring", "Intel Pentium III" ); break; case CPUID_INTEL_WILLIAMETTE: Cvar_Set( "sys_cpustring", "Intel Pentium IV" ); break; case CPUID_AMD_3DNOW: Cvar_Set( "sys_cpustring", "AMD w/ 3DNow!" ); break; case CPUID_AXP: Cvar_Set( "sys_cpustring", "Alpha AXP" ); break; default: Com_Error( ERR_FATAL, "Unknown cpu type %d\n", cpuid ); break; } } else { Com_Printf( "...forcing CPU type to " ); if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring" ), "generic" ) ) { cpuid = CPUID_GENERIC; } else if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring" ), "x87" ) ) { cpuid = CPUID_INTEL_PENTIUM; } else if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring" ), "mmx" ) ) { cpuid = CPUID_INTEL_MMX; } else if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring" ), "3dnow" ) ) { cpuid = CPUID_AMD_3DNOW; } else if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring" ), "PentiumIII" ) ) { cpuid = CPUID_INTEL_KATMAI; } else if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring" ), "PentiumIV" ) ) { cpuid = CPUID_INTEL_WILLIAMETTE; } else if ( !Q_stricmp( Cvar_VariableString( "sys_cpustring" ), "axp" ) ) { cpuid = CPUID_AXP; } else { Com_Printf( "WARNING: unknown sys_cpustring '%s'\n", Cvar_VariableString( "sys_cpustring" ) ); cpuid = CPUID_GENERIC; } } Cvar_SetValue( "sys_cpuid", cpuid ); Com_Printf( "%s\n", Cvar_VariableString( "sys_cpustring" ) ); Cvar_Set( "username", Sys_GetCurrentUser() ); IN_Init(); // FIXME: not in dedicated? }
/** * @brief Calls all reset functions for all subsystems like production and research * also initializes the cvars and commands * @sa CL_Init */ static void CL_InitLocal (void) { CL_SetClientState(ca_disconnected); cls.realtime = Sys_Milliseconds(); /* register our variables */ cl_introshown = Cvar_Get("cl_introshown", "0", CVAR_ARCHIVE, "Only show the intro once at the initial start"); cl_fps = Cvar_Get("cl_fps", "0", CVAR_ARCHIVE, "Show frames per second"); cl_log_battlescape_events = Cvar_Get("cl_log_battlescape_events", "1", 0, "Log all battlescape events to events.log"); cl_selected = Cvar_Get("cl_selected", "0", CVAR_NOSET, "Current selected soldier"); cl_connecttimeout = Cvar_Get("cl_connecttimeout", "25000", CVAR_ARCHIVE, "Connection timeout for multiplayer connects"); /* userinfo */ cl_name = Cvar_Get("cl_name", Sys_GetCurrentUser(), CVAR_USERINFO | CVAR_ARCHIVE, "Playername"); cl_teamnum = Cvar_Get("cl_teamnum", "1", CVAR_USERINFO | CVAR_ARCHIVE, "Preferred teamnum for multiplayer teamplay games"); cl_ready = Cvar_Get("cl_ready", "0", CVAR_USERINFO, "Ready indicator in the userinfo for tactical missions"); cl_msg = Cvar_Get("cl_msg", "2", CVAR_USERINFO | CVAR_ARCHIVE, "Sets the message level for server messages the client receives"); sv_maxclients = Cvar_Get("sv_maxclients", "1", CVAR_SERVERINFO, "If sv_maxclients is 1 we are in singleplayer - otherwise we are multiplayer mode (see sv_teamplay)"); masterserver_url = Cvar_Get("masterserver_url", MASTER_SERVER, CVAR_ARCHIVE, "URL of UFO:AI masterserver"); cl_map_debug = Cvar_Get("debug_map", "0", 0, "Activate realtime map debugging options - bitmask. Valid values are 0, 1, 3 and 7"); cl_le_debug = Cvar_Get("debug_le", "0", 0, "Activates some local entity debug rendering"); cl_trace_debug = Cvar_Get("debug_trace", "0", 0, "Activates some client side trace debug rendering"); cl_leshowinvis = Cvar_Get("cl_leshowinvis", "0", CVAR_ARCHIVE, "Show invisible local entities as null models"); /* register our commands */ Cmd_AddCommand("check_cvars", CL_CheckCvars_f, "Check cvars like playername and so on"); Cmd_AddCommand("targetalign", CL_ActorTargetAlign_f, N_("Target your shot to the ground")); Cmd_AddCommand("cl_setratiofilter", CL_SetRatioFilter_f, "Filter the resolution screen list with a ratio"); Cmd_AddCommand("cmd", CL_ForwardToServer_f, "Forward to server"); Cmd_AddCommand("cl_userinfo", CL_UserInfo_f, "Prints your userinfo string"); #ifdef ACTIVATE_PACKET_COMMAND /* this is dangerous to leave in */ Cmd_AddCommand("packet", CL_Packet_f, "Dangerous debug function for network testing"); #endif Cmd_AddCommand("quit", CL_Quit_f, "Quits the game"); Cmd_AddCommand("env", CL_Env_f); Cmd_AddCommand(CL_PRECACHE, CL_Precache_f, "Function that is called at mapload to precache map data"); Cmd_AddCommand(CL_SPAWNSOLDIERS, CL_SpawnSoldiers_f, "Spawns the soldiers for the selected teamnum"); Cmd_AddCommand(CL_STARTMATCH, CL_StartMatch_f, "Start the match once every player is ready"); Cmd_AddCommand("cl_configstrings", CL_ShowConfigstrings_f, "Print client configstrings to game console"); Cmd_AddCommand("cl_openurl", CL_OpenURL_f, "Opens the given url in a browser"); /* forward to server commands * the only thing this does is allow command completion * to work -- all unknown commands are automatically * forwarded to the server */ Cmd_AddCommand("say", nullptr, "Chat command"); Cmd_AddCommand("say_team", nullptr, "Team chat command"); Cmd_AddCommand("players", nullptr, "List of team and player name"); #ifdef DEBUG Cmd_AddCommand("debug_cgrid", Grid_DumpWholeClientMap_f, "Shows the whole client side pathfinding grid of the current loaded map"); Cmd_AddCommand("debug_croute", Grid_DumpClientRoutes_f, "Shows the whole client side pathfinding grid of the current loaded map"); Cmd_AddCommand("debug_listle", LE_List_f, "Shows a list of current know local entities with type and status"); Cmd_AddCommand("debug_listlm", LM_List_f, "Shows a list of current know local models"); /* forward commands again */ Cmd_AddCommand("debug_edictdestroy", nullptr, "Call the 'destroy' function of a given edict"); Cmd_AddCommand("debug_edictuse", nullptr, "Call the 'use' function of a given edict"); Cmd_AddCommand("debug_edicttouch", nullptr, "Call the 'touch' function of a given edict"); Cmd_AddCommand("debug_killteam", nullptr, "Kills a given team"); Cmd_AddCommand("debug_stunteam", nullptr, "Stuns a given team"); Cmd_AddCommand("debug_listscore", nullptr, "Shows mission-score entries of all team members"); Cmd_AddCommand("debug_statechange", nullptr, "Change the state of an edict"); #endif IN_Init(); CL_ServerEventsInit(); CL_CameraInit(); CL_BattlescapeRadarInit(); CLMN_InitStartup(); TUT_InitStartup(); PTL_InitStartup(); GAME_InitStartup(); WEB_InitStartup(); ACTOR_InitStartup(); TEAM_InitStartup(); TOTD_InitStartup(); HUD_InitStartup(); INV_InitStartup(); HTTP_InitStartup(); }