Custom Gather Rates

Custom Gather Rates 1.0.0

Sign in to download
Change how much players get when gathering resources
This plugin lets you fully customize gather rates for all resource types in Rust, whether it's from hitting nodes, picking up collectibles, using the quarry, or farming crops.
You can define global gather multipliers for everyone, or set up permission-based profiles like VIP or donor groups with their own rates. Admins can adjust everything live using console commands, and players can view their own rates with a simple chat command. Great for servers that want balanced resources, faster progression, or boosted rates for specific player groups.




Permissions

  • customgatherrates.admin - Allows access to the gather.rate console command for changing rates manually.
  • customgatherrates.<suffix> - Automatically generated for every permission profile you create. Replace <suffix> with the value from the profile's Permission Suffix. For example, if the suffix is "vip", the permission will be customgatherrates.vip.

Commands

  • gather - Players can type this in chat to see their current gather rate multipliers. The categories with modified rates (compared to default) will be shown.
  • gather.rate global <category> <itemShortName> <multiplier> - Admin console command to set a global gather multiplier. Example:
gather.rate global Dispenser wood 2.0
This sets the global multiplier for wood (when gathered from Dispensers) to 2x.
  • gather.rate perm <suffix> <category> <itemShortName> <multiplier> - Admin console command to set a gather multiplier for a specific permission profile. Example:
gather.rate perm vip Dispenser wood 2.5
This sets the Dispenser rate for wood to 2.5x for players with the permission customgatherrates.vip.

Configuration

JSON:
{
  "Version": "1.0.0",
  "Show Rates Chat Command": "gather",
  "Global Rates": {
    "Dispenser": {
      "*": 1.0
    },
    "Growable": {
      "*": 1.0
    },
    "Pickup": {
      "*": 1.0
    },
    "Quarry": {
      "*": 1.0
    },
    "Excavator": {
      "*": 1.0
    }
  },
  "Permission Profiles": [
    {
      "Permission Suffix": "vip",
      "Rates": {
        "Dispenser": {
          "*": 1.5,
          "wood": 2.0
        },
        "Pickup": {
          "*": 1.75
        },
        "Growable": {
          "*": 1.25
        },
        "Quarry": {
          "*": 1.0
        },
        "Excavator": {
          "*": 1.0
        }
      }
    }
  ]
}
  • Show Rates Chat Command - The chat command players can use to check their current gather rates.
  • Global Rates - Default gather multipliers that apply to all players unless overridden by a permission profile. This section defines base rates for different gather types (like Dispenser, Pickup, Quarry) and allows specific resource overrides under each one (e.g., setting wood to 2.0 while keeping others at 1.0 using "*").
  • Permission Profiles- A list of custom rate profiles tied to permissions. Each entry defines:
    • Permission Suffix - A short label used to auto-generate a permission like customgatherrates.vip.
    • Rates - Custom multipliers for that permission group, structured the same way as Global Rates. These override global values for players with the matching permission.

Gather Categories

The following gather categories are supported under both Global Rates and Permission Profiles:
  • Dispenser - Covers resources gathered by hitting trees, ore nodes, and animal corpses with tools or weapons. This includes wood, stone, metal ore, sulfur ore, and animal products like cloth, bone, or meat.
  • Growable - Applies specifically to harvestable plants grown in planters or in the wild, such as hemp, pumpkins, and corn. It also affects plant cloning (e.g., cuttings from genes). This is not the same as picking up a wild item, this only affects actual growable entities.
  • Pickup - Refers to loose collectible world items like stumps, stone rocks, and other static resource pickups found around the map. These items don't grow or regenerate, they're static spawnable world loot.
  • Quarry - Applies to items produced automatically by mining quarries when fueled and running. Affects all output from the quarry including stone, sulfur, HQM, and crude oil.
  • Excavator - Applies to items produced by the giant excavator monument when activated by a player. Covers all mining outputs like stone, sulfur, and HQM based on which arm is selected.
Each category can have a "*" fallback (default rate for all resources), and you can override specific items like "wood", "stones", etc.

Permission Profiles

Permission profiles let you define different gather rates for different permission groups. Each profile uses a short suffix (like "vip") and gets converted into a permission like customgatherrates.vip.
  • You can create as many profiles as you want.
  • Each profile overrides the default Global Rates for players with that permission.
  • Example:
    JSON:
    {
      "Permission Suffix": "vip",
      "Rates": {
        "Dispenser": {
          "*": 1.5,
          "wood": 2.0
        }
      }
    }
    This would give VIP players 1.5x for most dispenser resources, and 2x for wood specifically.

Localization

JSON:
{
  "Error.NoPermission": "You do not have permission to use this command.",
  "Error.InvalidArguments": "Invalid arguments supplied.",
  "Error.InvalidFirstArgument": "First argument must be 'global' or 'perm'.",
  "Error.InvalidPermissionName": "Permission name is not valid.",
  "Error.InvalidGatherCategory": "Gather category is not recognised.",
  "Error.InvalidMultiplier": "Multiplier must be a number greater than 0.",
  "Error.EntryDoesNotExist": "There is no existing rate entry to remove.",
  "Info.Header.YourRates": "Your gather multipliers:",
  "Info.Line.Rate": "{0}: x{1}",
  "Info.NoRateOverrides": "All rates are default (x1).",
  "Info.RateSet": "Set {0} / {1} to x{2}."
}
Author
VisEntities
Downloads
3
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