protected override void SetDefaults() { TraceMode = Setting.Hidden <bool>(this, "Trace mode") .SetDescription("Whether to run with unchained exceptions.") .SetDefault(false); DebugMode = Setting.Bool(this, "Debug mode") .SetDescription("Whether to run the game in a debugging mode. The equivalent of #if DEBUG.") #if DEBUG .SetDefault(true);
protected override void SetDefaults() { ModSearchPaths = Setting.Hidden <string[]>(this, "Mod search paths") .SetDescription("The paths in which to search for packed *.mod files.") .SetDefault(new[] { Path.Combine(Directory.GetCurrentDirectory(), "mods"), Path.Combine(ConfigDir, "mods") }); ClientLogLocation = Setting.Path(this, "Client log directory") .SetDescription("The directory where the client (menus and watchdog) logs are stored.") .SetDefault(Path.Combine(ConfigDir, "clientlogs", "client.log")); SandboxGames = Setting.Bool(this, "Sandbox servers and game instances") .SetDescription("WARNING! SIGNIFICANT USABILITY IMPLICATIONS! Disabling this will crash the game when you leave a server. ") .SetDefault(true); StoredServerAddress = Setting.Hidden <string>(this, "\"Join server\" stored user address").SetDefault(""); WindowRectangle = Setting.Hidden <Rectangle>(this, "Window Rectangle") .SetDefault(new Rectangle(100, 100, 800, 480)); }
protected override void SetDefaults() { GameLogLocation = Setting.Path(this, "Log storage location") .SetDescription("Where to store runtime logs for the game.") .SetDefault(Path.Combine(ConfigDir, "gamelogs", "game.log")); ForceFullGCEveryFrame = Setting.Bool(this, "Force Full GC every frame") .SetDescription("Whether to force a full GC every frame. Useful for detecting memory leaks, terrible for performance." + " (If you don't know what this is: DON'T USE IT)") .SetDefault(false); ModUnpackPath = Setting.Hidden <string>(this, "Mod temp directory") .SetDescription("The place to store mods that are used at runtime. In other words, this is the directory" + " that *.mod files are unpacked into.") .SetDefault(Path.Combine(ConfigDir, "tempmodunpack")); ModAssetPath = Setting.Hidden <string>(this, "Mod temp directory for assets") .SetDescription("The place to store mods assets that are used at runtime. In other words, this is the directory" + " that *.mod files are unpacked into (but not the code).") .SetDefault(Path.Combine(ConfigDir, "tempmodunpack", "assets")); ModMapPath = Setting.Hidden <string>(this, "Mod temp directory for maps") .SetDescription("The place where maps from *.mod files are unpacked to.") .SetDefault(Path.Combine(ConfigDir, "tempmodunpack", "maps")); ModDownloadPath = Setting.Path(this, "Mod download directory") .SetDescription("The directory to store mods downloaded from servers in.") .SetDefault(Path.Combine(ConfigDir, "mods")); CoreMods = Setting.Hidden <string[]>(this, "Core Mods") .SetDescription("The core mods that will be autoinjected into every game without verification.") .SetDefault(DefaultTrustedMods); AssetSearchPaths = Setting.Hidden <string[]>(this, "Asset search paths") .SetDescription("The paths in which to look for assets assets.") .SetDefault(new[] { Directory.GetCurrentDirectory(), //current directory Path.Combine(Directory.GetCurrentDirectory(), "assets"), Path.Combine(Directory.GetCurrentDirectory(), "assets", "animations"), Path.Combine(Directory.GetCurrentDirectory(), "assets", "mapobjects"), Path.Combine(Directory.GetCurrentDirectory(), "assets", "other"), Path.Combine(Directory.GetCurrentDirectory(), "assets", "tanks"), Path.Combine(ModUnpackPath, "assets"), Path.Combine(ConfigDir, "assets"), ConfigDir }); PhysicsCompensationForRendering = Setting.Hidden <float>(this, "Physics Skin Compensation") .SetDescription("The amount in blocks to compensate for Farseer Physics's skin on bodies.") .SetDefault(0.085f); Fullscreen = Setting.Bool(this, "Fullscreen mode") .SetDescription("Whether to render the game in fullscreen mode") .SetDefault(false); VSync = Setting.Bool(this, "Enable vertical blank sync") .SetDescription("Whether v-blank-sync should be enabled.") .SetDefault(true); Zoom = Setting.Hidden <float>(this, "Game world zoom") .SetDescription("The zoom level of the game world, relative to default.") .SetDefault(1f); SSAARate = Setting.Number(this, "SSAA Rate") .SetDescription("The amount of supersampling to do for the game images; " + "higher values are (slightly) better, lower values are (much) faster.") .SetDefault(1.25f) .SetAllowedValues(1, 1.25f, 1.5f, 1.75f, 2f, 2.25f, 2.5f, 2.75f, 3f, 3.5f, 4f, 4.5f, 5f, 5.5f, 6f); UserTankImageDownloadCache = Setting.Path(this, "Custom Tank Image Download Path") .SetDescription("The path in which to download custom images that users make for their tanks") .SetDefault(Path.Combine( ConfigDir, "tankimages")); InputDriverName = Setting.String(this, "Input driver name") .SetDescription("The name of the driver to use for in game input.") .SetDefault(KeyboardMouseInputDriver.Name) .SetAllowedValues(() => InputDriverBase.Drivers.Keys); InputKeyBindings = Setting.Hidden <string>(this, "Input Key Bindings") .SetDescription("The stored key bindings for the current input driver"); }