menu_bookDocumentation

s&box WeaponConVars: Global weapon settings

calendar_today May 12, 2026 schedule ~1 min read person PatrickJr verified 50

WeaponConVars Static Class

WeaponConVars is a static class that defines console variables controlling global weapon behavior in s&box. These ConVars can be set via console or code to modify how weapons function across the entire game.

Console Variables

CSHARP
public static class WeaponConVars
{
    [ConVar("sb.weapon.unlimitedammo", ConVarFlags.Replicated, Help = "When enabled, weapons have unlimited ammo.")]
    public static bool UnlimitedAmmo { get; set; } = false;

    [ConVar("sb.weapon.infinitereserves", ConVarFlags.Replicated, Help = "When enabled, reserve ammo is infinite — clip ammo is still consumed.")]
    public static bool InfiniteReserves { get; set; } = false;
}

ConVar Descriptions

UnlimitedAmmo

  • Console command: sb.weapon.unlimitedammo
  • Default: false
  • When enabled, weapons have unlimited ammo — no ammo is consumed when firing
  • Useful for testing or sandbox modes where ammo management is not desired

InfiniteReserves

  • Console command: sb.weapon.infinitereserves
  • Default: false
  • When enabled, reserve ammo never depletes — clip ammo is still consumed normally, but you can always reload
  • Allows players to reload indefinitely without running out of reserve ammo
  • Clip management still applies (must reload when clip is empty)

Usage

CSHARP
// Enable unlimited ammo via code
WeaponConVars.UnlimitedAmmo = true;

// Enable infinite reserves via console
> sb.weapon.infinitereserves 1

// Check current state
if (WeaponConVars.UnlimitedAmmo)
{
    // Skip ammo UI display
}

Notes

  • Both ConVars are replicated (synced to clients)
  • Changes apply globally to all weapons in the game
  • Used by the weapon system to override default ammo behavior
  • Commonly used in sandbox/gamemode settings
  • Can be toggled at runtime without restarting the game
Was this helpful?