using Robust.Shared.Configuration;
namespace Content.Shared.CCVar;
public sealed partial class CCVars
{
///
/// Allows enabling/disabling player-started votes for ultimate authority
///
public static readonly CVarDef VoteEnabled =
CVarDef.Create("vote.enabled", true, CVar.SERVERONLY);
///
/// See vote.enabled, but specific to restart votes
///
public static readonly CVarDef VoteRestartEnabled =
CVarDef.Create("vote.restart_enabled", true, CVar.SERVERONLY);
///
/// Config for when the restart vote should be allowed to be called regardless with less than this amount of players.
///
public static readonly CVarDef VoteRestartMaxPlayers =
CVarDef.Create("vote.restart_max_players", 20, CVar.SERVERONLY);
///
/// Config for when the restart vote should be allowed to be called based on percentage of ghosts.
///
public static readonly CVarDef VoteRestartGhostPercentage =
CVarDef.Create("vote.restart_ghost_percentage", 55, CVar.SERVERONLY);
///
/// See vote.enabled, but specific to preset votes
///
public static readonly CVarDef VotePresetEnabled =
CVarDef.Create("vote.preset_enabled", true, CVar.SERVERONLY);
///
/// See vote.enabled, but specific to map votes
///
public static readonly CVarDef VoteMapEnabled =
CVarDef.Create("vote.map_enabled", false, CVar.SERVERONLY);
///
/// The required ratio of the server that must agree for a restart round vote to go through.
///
public static readonly CVarDef VoteRestartRequiredRatio =
CVarDef.Create("vote.restart_required_ratio", 0.85f, CVar.SERVERONLY);
///
/// Whether or not to prevent the restart vote from having any effect when there is an online admin
///
public static readonly CVarDef VoteRestartNotAllowedWhenAdminOnline =
CVarDef.Create("vote.restart_not_allowed_when_admin_online", true, CVar.SERVERONLY);
///
/// The delay which two votes of the same type are allowed to be made by separate people, in seconds.
///
public static readonly CVarDef VoteSameTypeTimeout =
CVarDef.Create("vote.same_type_timeout", 240f, CVar.SERVERONLY);
///
/// Sets the duration of the map vote timer.
///
public static readonly CVarDef
VoteTimerMap = CVarDef.Create("vote.timermap", 90, CVar.SERVERONLY);
///
/// Sets the duration of the restart vote timer.
///
public static readonly CVarDef
VoteTimerRestart = CVarDef.Create("vote.timerrestart", 60, CVar.SERVERONLY);
///
/// Sets the duration of the gamemode/preset vote timer.
///
public static readonly CVarDef
VoteTimerPreset = CVarDef.Create("vote.timerpreset", 30, CVar.SERVERONLY);
///
/// Sets the duration of the map vote timer when ALONE.
///
public static readonly CVarDef
VoteTimerAlone = CVarDef.Create("vote.timeralone", 10, CVar.SERVERONLY);
///
/// Allows enabling/disabling player-started votekick for ultimate authority
///
public static readonly CVarDef VotekickEnabled =
CVarDef.Create("votekick.enabled", true, CVar.SERVERONLY);
///
/// Config for when the votekick should be allowed to be called based on number of eligible voters.
///
public static readonly CVarDef VotekickEligibleNumberRequirement =
CVarDef.Create("votekick.eligible_number", 5, CVar.SERVERONLY);
///
/// Whether a votekick initiator must be a ghost or not.
///
public static readonly CVarDef VotekickInitiatorGhostRequirement =
CVarDef.Create("votekick.initiator_ghost_requirement", true, CVar.SERVERONLY);
///
/// Should the initiator be whitelisted to initiate a votekick?
///
public static readonly CVarDef VotekickInitiatorWhitelistedRequirement =
CVarDef.Create("votekick.initiator_whitelist_requirement", true, CVar.SERVERONLY);
///
/// Should the initiator be able to start a votekick if they are bellow the votekick.voter_playtime requirement?
///
public static readonly CVarDef VotekickInitiatorTimeRequirement =
CVarDef.Create("votekick.initiator_time_requirement", false, CVar.SERVERONLY);
///
/// Whether a votekick voter must be a ghost or not.
///
public static readonly CVarDef VotekickVoterGhostRequirement =
CVarDef.Create("votekick.voter_ghost_requirement", true, CVar.SERVERONLY);
///
/// Config for how many hours playtime a player must have to be able to vote on a votekick.
///
public static readonly CVarDef VotekickEligibleVoterPlaytime =
CVarDef.Create("votekick.voter_playtime", 100, CVar.SERVERONLY);
///
/// Config for how many seconds a player must have been dead to initiate a votekick / be able to vote on a votekick.
///
public static readonly CVarDef VotekickEligibleVoterDeathtime =
CVarDef.Create("votekick.voter_deathtime", 30, CVar.REPLICATED | CVar.SERVER);
///
/// The required ratio of eligible voters that must agree for a votekick to go through.
///
public static readonly CVarDef VotekickRequiredRatio =
CVarDef.Create("votekick.required_ratio", 0.6f, CVar.SERVERONLY);
///
/// Whether or not to prevent the votekick from having any effect when there is an online admin.
///
public static readonly CVarDef VotekickNotAllowedWhenAdminOnline =
CVarDef.Create("votekick.not_allowed_when_admin_online", true, CVar.SERVERONLY);
///
/// The delay for which two votekicks are allowed to be made by separate people, in seconds.
///
public static readonly CVarDef VotekickTimeout =
CVarDef.Create("votekick.timeout", 60f, CVar.SERVERONLY);
///
/// Sets the duration of the votekick vote timer.
///
public static readonly CVarDef
VotekickTimer = CVarDef.Create("votekick.timer", 45, CVar.SERVERONLY);
///
/// Config for how many hours playtime a player must have to get protection from the Raider votekick type when playing as an antag.
///
public static readonly CVarDef VotekickAntagRaiderProtection =
CVarDef.Create("votekick.antag_raider_protection", 10, CVar.SERVERONLY);
///
/// Default severity for votekick bans
///
public static readonly CVarDef VotekickBanDefaultSeverity =
CVarDef.Create("votekick.ban_default_severity", "High", CVar.ARCHIVE | CVar.SERVER | CVar.REPLICATED);
///
/// Duration of a ban caused by a votekick (in minutes).
///
public static readonly CVarDef VotekickBanDuration =
CVarDef.Create("votekick.ban_duration", 180, CVar.SERVERONLY);
///
/// Whether the ghost requirement settings for votekicks should be ignored for the lobby.
///
public static readonly CVarDef VotekickIgnoreGhostReqInLobby =
CVarDef.Create("votekick.ignore_ghost_req_in_lobby", true, CVar.SERVERONLY);
}