#nullable enable using Robust.Shared; using Robust.Shared.Configuration; namespace Content.Shared { // ReSharper disable once InconsistentNaming [CVarDefs] public sealed class CCVars : CVars { /* * Status */ public static readonly CVarDef StatusMoMMIUrl = CVarDef.Create("status.mommiurl", "", CVar.SERVERONLY); public static readonly CVarDef StatusMoMMIPassword = CVarDef.Create("status.mommipassword", "", CVar.SERVERONLY); /* * Game */ public static readonly CVarDef EventsEnabled = CVarDef.Create("events.enabled", false, CVar.ARCHIVE | CVar.SERVERONLY); public static readonly CVarDef GameLobbyEnabled = CVarDef.Create("game.lobbyenabled", false, CVar.ARCHIVE); public static readonly CVarDef GameLobbyDuration = CVarDef.Create("game.lobbyduration", 60, CVar.ARCHIVE); public static readonly CVarDef GameLobbyDefaultPreset = CVarDef.Create("game.defaultpreset", "Suspicion", CVar.ARCHIVE); public static readonly CVarDef GameLobbyFallbackEnabled = CVarDef.Create("game.fallbackenabled", true, CVar.ARCHIVE); public static readonly CVarDef GameLobbyFallbackPreset = CVarDef.Create("game.fallbackpreset", "Sandbox", CVar.ARCHIVE); public static readonly CVarDef GameLobbyEnableWin = CVarDef.Create("game.enablewin", true, CVar.ARCHIVE); public static readonly CVarDef GameMaxCharacterSlots = CVarDef.Create("game.maxcharacterslots", 10, CVar.ARCHIVE | CVar.SERVERONLY); public static readonly CVarDef GameMap = CVarDef.Create("game.map", "Maps/saltern.yml", CVar.SERVERONLY); /// /// When enabled, guests will be assigned permanent UIDs and will have their preferences stored. /// public static readonly CVarDef GamePersistGuests = CVarDef.Create("game.persistguests", true, CVar.ARCHIVE | CVar.SERVERONLY); public static readonly CVarDef GameDiagonalMovement = CVarDef.Create("game.diagonalmovement", true, CVar.ARCHIVE); /* * Suspicion */ public static readonly CVarDef SuspicionMinPlayers = CVarDef.Create("suspicion.min_players", 5); public static readonly CVarDef SuspicionMinTraitors = CVarDef.Create("suspicion.min_traitors", 2); public static readonly CVarDef SuspicionPlayersPerTraitor = CVarDef.Create("suspicion.players_per_traitor", 5); public static readonly CVarDef SuspicionStartingBalance = CVarDef.Create("suspicion.starting_balance", 20); public static readonly CVarDef SuspicionMaxTimeSeconds = CVarDef.Create("suspicion.max_time_seconds", 300); /* * Traitor */ public static readonly CVarDef TraitorMinPlayers = CVarDef.Create("traitor.min_players", 5); public static readonly CVarDef TraitorMaxTraitors = CVarDef.Create("traitor.max_traitors", 4); public static readonly CVarDef TraitorPlayersPerTraitor = CVarDef.Create("traitor.players_per_traitor", 5); public static readonly CVarDef TraitorCodewordCount = CVarDef.Create("traitor.codeword_count", 4); public static readonly CVarDef TraitorStartingBalance = CVarDef.Create("traitor.starting_balance", 20); public static readonly CVarDef TraitorMaxDifficulty = CVarDef.Create("traitor.max_difficulty", 4); public static readonly CVarDef TraitorMaxPicks = CVarDef.Create("traitor.max_picks", 20); /* * TraitorDeathMatch */ public static readonly CVarDef TraitorDeathMatchStartingBalance = CVarDef.Create("traitordm.starting_balance", 20); /* * Console */ public static readonly CVarDef ConsoleLoginLocal = CVarDef.Create("console.loginlocal", true, CVar.ARCHIVE | CVar.SERVERONLY); /* * Database stuff */ public static readonly CVarDef DatabaseEngine = CVarDef.Create("database.engine", "sqlite", CVar.SERVERONLY); public static readonly CVarDef DatabaseSqliteDbPath = CVarDef.Create("database.sqlite_dbpath", "preferences.db", CVar.SERVERONLY); public static readonly CVarDef DatabasePgHost = CVarDef.Create("database.pg_host", "localhost", CVar.SERVERONLY); public static readonly CVarDef DatabasePgPort = CVarDef.Create("database.pg_port", 5432, CVar.SERVERONLY); public static readonly CVarDef DatabasePgDatabase = CVarDef.Create("database.pg_database", "ss14", CVar.SERVERONLY); public static readonly CVarDef DatabasePgUsername = CVarDef.Create("database.pg_username", "", CVar.SERVERONLY); public static readonly CVarDef DatabasePgPassword = CVarDef.Create("database.pg_password", "", CVar.SERVERONLY); // Basically only exists for integration tests to avoid race conditions. public static readonly CVarDef DatabaseSynchronous = CVarDef.Create("database.sync", false, CVar.SERVERONLY); /* * Outline */ public static readonly CVarDef OutlineEnabled = CVarDef.Create("outline.enabled", true, CVar.CLIENTONLY); /* * Parallax */ public static readonly CVarDef ParallaxEnabled = CVarDef.Create("parallax.enabled", true, CVar.CLIENTONLY); public static readonly CVarDef ParallaxDebug = CVarDef.Create("parallax.debug", false, CVar.CLIENTONLY); /* * Physics */ public static readonly CVarDef TileFrictionModifier = CVarDef.Create("physics.tilefriction", 15.0f); public static readonly CVarDef StopSpeed = CVarDef.Create("physics.stopspeed", 0.1f); /* * Ambience */ public static readonly CVarDef AmbienceBasicEnabled = CVarDef.Create("ambience.basicenabled", true, CVar.ARCHIVE | CVar.CLIENTONLY); /* * Lobby music */ public static readonly CVarDef LobbyMusicEnabled = CVarDef.Create("ambience.lobbymusicenabled", true, CVar.ARCHIVE | CVar.CLIENTONLY); /* * HUD */ public static readonly CVarDef HudTheme = CVarDef.Create("hud.theme", 0, CVar.ARCHIVE | CVar.CLIENTONLY); /* * AI */ public static readonly CVarDef AIMaxUpdates = CVarDef.Create("ai.maxupdates", 64); /* * Net */ public static readonly CVarDef NetAtmosDebugOverlayTickRate = CVarDef.Create("net.atmosdbgoverlaytickrate", 3.0f); public static readonly CVarDef NetGasOverlayTickRate = CVarDef.Create("net.gasoverlaytickrate", 3.0f); /* * Admin stuff */ public static readonly CVarDef AdminAnnounceLogin = CVarDef.Create("admin.announce_login", true, CVar.SERVERONLY); public static readonly CVarDef AdminAnnounceLogout = CVarDef.Create("admin.announce_logout", true, CVar.SERVERONLY); /* * Atmos */ /// /// Whether gas differences will move entities. /// public static readonly CVarDef SpaceWind = CVarDef.Create("atmos.space_wind", true, CVar.SERVERONLY); /// /// Whether monstermos tile equalization is enabled. /// public static readonly CVarDef MonstermosEqualization = CVarDef.Create("atmos.monstermos_equalization", true, CVar.SERVERONLY); /// /// Whether atmos superconduction is enabled. /// /// Disabled by default, superconduction is awful. public static readonly CVarDef Superconduction = CVarDef.Create("atmos.superconduction", false, CVar.SERVERONLY); /// /// Maximum time in milliseconds that atmos can take processing. /// public static readonly CVarDef AtmosMaxProcessTime = CVarDef.Create("atmos.max_process_time", 5f, CVar.SERVERONLY); /// /// Atmos tickrate in TPS. Atmos processing will happen every 1/TPS seconds. /// public static readonly CVarDef AtmosTickRate = CVarDef.Create("atmos.tickrate", 26f, CVar.SERVERONLY); public static readonly CVarDef ExcitedGroupsSpaceIsAllConsuming = CVarDef.Create("atmos.excited_groups_space_is_all_consuming", false, CVar.SERVERONLY); /* * MIDI instruments */ public static readonly CVarDef MaxMidiEventsPerSecond = CVarDef.Create("midi.max_events_per_second", 1000, CVar.REPLICATED | CVar.SERVER); public static readonly CVarDef MaxMidiEventsPerBatch = CVarDef.Create("midi.max_events_per_batch", 60, CVar.REPLICATED | CVar.SERVER); public static readonly CVarDef MaxMidiBatchesDropped = CVarDef.Create("midi.max_batches_dropped", 1, CVar.SERVERONLY); public static readonly CVarDef MaxMidiLaggedBatches = CVarDef.Create("midi.max_lagged_batches", 8, CVar.SERVERONLY); /* * Holidays */ public static readonly CVarDef HolidaysEnabled = CVarDef.Create("holidays.enabled", true, CVar.SERVERONLY); /* * Branding stuff */ public static readonly CVarDef BrandingSteam = CVarDef.Create("branding.steam", false, CVar.CLIENTONLY); /* * OOC */ public static readonly CVarDef OocEnabled = CVarDef.Create("ooc.enabled", true, CVar.NOTIFY); public static readonly CVarDef AdminOocEnabled = CVarDef.Create("ooc.enabled_admin", true, CVar.NOTIFY); /* * Context Menu Grouping Types */ public static readonly CVarDef ContextMenuGroupingType = CVarDef.Create("context_menu", 0, CVar.CLIENTONLY); /* * VOTE */ public static readonly CVarDef VoteRestartRequiredRatio = CVarDef.Create("vote.restart_required_ratio", 0.8f, CVar.SERVERONLY); /* * BAN */ public static readonly CVarDef BanHardwareIds = CVarDef.Create("ban.hardware_ids", false, CVar.SERVERONLY); /* * VIEWPORT */ public static readonly CVarDef ViewportStretch = CVarDef.Create("viewport.stretch", true, CVar.CLIENTONLY | CVar.ARCHIVE); public static readonly CVarDef ViewportFixedScaleFactor = CVarDef.Create("viewport.fixed_scale_factor", 2, CVar.CLIENTONLY | CVar.ARCHIVE); // This default is basically specifically chosen so fullscreen/maximized 1080p hits a 2x snap and does NN. public static readonly CVarDef ViewportSnapToleranceMargin = CVarDef.Create("viewport.snap_tolerance_margin", 64, CVar.CLIENTONLY); public static readonly CVarDef ViewportSnapToleranceClip = CVarDef.Create("viewport.snap_tolerance_clip", 32, CVar.CLIENTONLY); public static readonly CVarDef ViewportScaleRender = CVarDef.Create("viewport.scale_render", true, CVar.CLIENTONLY | CVar.ARCHIVE); } }