Kaboom Guns

Kaboom Guns 1.0.0

Turn any weapon into a rocket launcher

Kaboom Guns transforms your configured weapons into rocket launchers, allowing players to fire one or multiple rockets per shot instead of standard projectiles. The plugin features a sleek UI panel for toggling rocket mode and adjusting rocket count, with full control over rocket types, speeds, cooldowns, and ammo consumption. Perfect for creating unique PvP experiences, special event weapons, or fun admin tools.

Features

  • Transform any weapon into a rocket launcher with customizable settings
  • Fire multiple rockets simultaneously with adjustable spread patterns
  • Configurable rocket types (basic rockets, high-velocity rockets, etc.)
  • Per-weapon customization of rocket speed, count, and cooldown
  • Optional ammo consumption from player inventory
  • Toggle rocket mode on/off via chat command or UI button
  • Adjust rocket count per shot (1-5 rockets) via UI controls
  • Sleek HUD panel showing rocket mode status, ammo count, and controls
  • Optional permission requirement for using rocket mode
  • Suppression of normal bullet projectiles when rocket mode is active
  • Independent cooldown system per weapon configuration

Permissions

  • kaboomguns.use -- Allows players to use rocket mode on configured weapons (if permission requirement is enabled in config).

Commands

  • /rocket -- Toggles rocket mode on or off for your currently held weapon (command name is configurable).

Configuration

JSON:
{
  "Version": "1.0.0",
  "Require Permission To Use": true,
  "Chat Command": "rocket",
  "UI": {
    "Show UI Panel": true,
    "Anchor Min (Unity UI anchor point)": "1 0",
    "Anchor Max (Unity UI anchor point)": "1 0",
    "Offset Min (pixel offset from anchor)": "-340 100",
    "Offset Max (pixel offset from anchor)": "-15 140",
    "Ammo Bar Maximum Display Value": 100
  },
  "Defaults": {
    "Default Rockets Per Shot": 1,
    "Maximum Rockets Per Shot": 5,
    "Rocket Launch Speed": 80.0,
    "Cooldown Between Shots Seconds": 0.0,
    "Consume Rockets From Inventory": true,
    "Suppress Normal Bullet Projectiles": false,
    "Multi-Rocket Spread Angle In Degrees": 4.0
  },
  "Weapons": [
    {
      "Weapon Item Shortname": "rifle.ak",
      "Rocket Ammo Item Shortname": "ammo.rocket.basic",
      "Rocket Entity Prefab Path": "assets/prefabs/ammo/rocket/rocket_basic.prefab",
      "Rockets Per Shot Override (set to 0 to use default)": 1,
      "Rocket Speed Override (set to 0 to use default)": 80.0,
      "Cooldown Override Seconds (set to -1 to use default)": 0.0
    },
    {
      "Weapon Item Shortname": "rifle.lr300",
      "Rocket Ammo Item Shortname": "ammo.rocket.basic",
      "Rocket Entity Prefab Path": "assets/prefabs/ammo/rocket/rocket_basic.prefab",
      "Rockets Per Shot Override (set to 0 to use default)": 0,
      "Rocket Speed Override (set to 0 to use default)": 0.0,
      "Cooldown Override Seconds (set to -1 to use default)": -1.0
    },
    {
      "Weapon Item Shortname": "rifle.bolt",
      "Rocket Ammo Item Shortname": "ammo.rocket.hv",
      "Rocket Entity Prefab Path": "assets/prefabs/ammo/rocket/rocket_hv.prefab",
      "Rockets Per Shot Override (set to 0 to use default)": 1,
      "Rocket Speed Override (set to 0 to use default)": 120.0,
      "Cooldown Override Seconds (set to -1 to use default)": 1.5
    }
  ]
}

General Settings

  • Require Permission To Use -- When enabled, players must have the kaboomguns.use permission to use rocket mode.
  • Chat Command -- The chat command players use to toggle rocket mode (set to empty string to disable).

UI Settings

  • Show UI Panel -- Displays the UI panel showing rocket mode status, ammo count, and controls.
  • Anchor Min (Unity UI anchor point) -- Unity UI anchor point for the panel's base position (format: "x y" where values range 0-1).
  • Anchor Max (Unity UI anchor point) -- Unity UI anchor point for the panel's base position (format: "x y" where values range 0-1).
  • Offset Min (pixel offset from anchor) -- Pixel offset from the anchor point to position the panel (format: "x y" in pixels).
  • Offset Max (pixel offset from anchor) -- Pixel offset from the anchor point to position the panel (format: "x y" in pixels).
  • Ammo Bar Maximum Display Value -- The maximum ammo count used to calculate the ammo bar fill percentage (e.g., 100 means 50 rockets shows 50% full).

Default Settings

These settings apply to all weapons unless overridden in individual weapon configurations.
  • Default Rockets Per Shot -- The default number of rockets fired per shot when a weapon doesn't specify an override (players can adjust this via UI up to the maximum).
  • Maximum Rockets Per Shot -- The maximum number of rockets players can fire simultaneously (caps the UI adjustment controls). Values above 10 may cause server lag.
  • Rocket Launch Speed -- The velocity multiplier for launched rockets when a weapon doesn't specify an override (standard rocket speed is ~15.0, so 80.0 is much faster).
  • Cooldown Between Shots Seconds -- The minimum time in seconds between rocket shots when a weapon doesn't specify an override (0.0 means no cooldown).
  • Consume Rockets From Inventory -- When enabled, each rocket fired consumes one rocket item from the player's inventory based on the weapon's configured rocket ammo type.
  • Suppress Normal Bullet Projectiles -- When enabled, prevents the weapon from firing normal bullet projectiles when rocket mode is active, firing only rockets.
  • Multi-Rocket Spread Angle In Degrees -- The angular spread between rockets when firing multiple rockets simultaneously (lower values 1-5 create tight spreads, higher values 10-30 create wide spreads).

Weapon Settings

Each weapon entry in the Weapons array defines a specific weapon that can fire rockets.
  • Weapon Item Shortname -- The item shortname of the weapon to enable rocket mode for (e.g., rifle.ak, rifle.lr300, rifle.bolt, pistol.python, shotgun.pump).
  • Rocket Ammo Item Shortname -- The item shortname of the rocket ammo consumed from inventory when firing (e.g., ammo.rocket.basic, ammo.rocket.hv, ammo.rocket.fire). Leave empty if not consuming ammo.
  • Rocket Entity Prefab Path -- The full Unity prefab path for the rocket entity to spawn (e.g., assets/prefabs/ammo/rocket/rocket_basic.prefab, assets/prefabs/ammo/rocket/rocket_hv.prefab).
  • Rockets Per Shot Override (set to 0 to use default) -- Overrides the default rockets per shot for this specific weapon (set to 0 to use the "Default Rockets Per Shot" value).
  • Rocket Speed Override (set to 0 to use default) -- Overrides the default rocket launch speed for this specific weapon (set to 0 to use the "Rocket Launch Speed" value).
  • Cooldown Override Seconds (set to -1 to use default) -- Overrides the default cooldown between shots for this specific weapon (set to -1 to use the "Cooldown Between Shots Seconds" value).

Localization

JSON:
{
  "Toggle.Enabled": "Rocket mode <color=#5ABF5A>enabled</color>",
  "Toggle.Disabled": "Rocket mode <color=#D94040>disabled</color>",
  "Error.NoPermission": "You do not have permission to use rocket mode.",
  "Error.NoAmmo": "Not enough rockets!"
}
Author
VisEntities
License duration
Unlimited
Price
9.99 USD
First release
Last update

Ratings

0.00 star(s) 0 reviews

Also by VisEntities

Back
Top
Chat commands start with a /, while console commands can be entered directly in the F1 console or server console. Use find <keyword> in console to search for available commands related to the plugin. Parameters in < > are required, while [ ] are optional.
This plugin uses Oxide's permission system. Grant or revoke permissions using oxide.grant and oxide.revoke. You can assign them to individual players or groups using their Steam id or group name.
Settings are stored in the config file found under the config/ directory. You can edit this file manually, then reload the plugin to apply your changes.
Persistent data is saved in the data/ directory. This includes things like saved settings, usage stats, or player progress depending on the plugin. Deleting a data file will reset stored progress or customizations.
Language files are located in the lang/ folder. To translate messages, copy the en.json file into your target language folder (e.g. fr, de) and edit the values. Reload the plugin after changes to apply new messages.
This section lists public methods exposed by the plugin for use in other plugins. You can call these via the CallHook method. Ensure the plugin is loaded before calling its API to avoid null reference errors.
These are custom hooks that other plugins can listen for. Simply define a method with the same name and expected parameters in your plugin to handle the event. Hooks are triggered at key moments and are useful for extending or reacting to plugin behavior.
These hooks are injected into the game's code using Harmony. They let the plugin run code at key points in the game's internal logic. You can return values to block or modify behavior. Use with caution — these are powerful and can affect core mechanics.
Cart