Jump to content

2 Screenshots

  • 60
  • 1
  • 75.33 kB

About Better Fish Trap

Overview

Better Fish Trap transforms the survival fish trap into a fully automated fishing station. It automatically attaches an Industrial Storage Adaptor to every fish trap placed on your server, making them compatible with the industrial conveyor system. Fish caught by the trap can be automatically routed through conveyor belts to furnaces, storage boxes, or any other industrial destination -- no manual looting required.

Beyond automation, the plugin includes three independent systems that work together: health protection to prevent traps from breaking, configurable fishing speed tiers based on permissions, and a full upgrade system where players spend currency to permanently improve individual traps. Each system can be enabled or disabled independently.

Features

Industrial Storage Adaptor Integration

  • Automatically spawns a storage adaptor as a child entity of every survival fish trap
  • Works with all industrial entities: conveyor belts, industrial splitters, industrial combiners
  • Adaptor position and rotation are fully configurable to fit your server's aesthetic
  • Existing adaptors are detected on server restart -- no duplicates created
  • Adaptor inherits the fish trap owner's ID for authorization

Health Protection (3 Modes)

Fish traps take decay damage every time they catch a fish. This system prevents traps from breaking:

  • Mode 1 - Prevent Damage: Saves the trap's health before damage is applied and restores it on the next tick. The trap briefly shows reduced health but recovers instantly.
  • Mode 2 - Heal After Catch: Saves health and schedules a heal. Supports instant heal or a configurable delay in seconds.
  • Mode 3 - Block Decay Damage: Completely blocks all decay-type damage to managed fish traps. Best performance -- the damage event is cancelled before any processing. This is the default and recommended mode.

Fishing Speed Control (Permission-Based)

Control how fast fish traps catch fish through a tiered permission system:

  • The vanilla tick rate is 60 seconds per catch attempt
  • Define unlimited custom tiers, each with its own tick rate, priority, and display name
  • Players receive the speed from their highest-priority tier
  • Players without any speed permission use the configurable default tick rate
  • Tiers are fully customizable: add, remove, or rename as needed

Default tiers included:

Tier Permission Tick Rate Priority
VIP betterfishtrap.speed.vip 40s 1
Premium betterfishtrap.speed.premium 30s 2
Elite betterfishtrap.speed.elite 20s 3
Admin betterfishtrap.speed.admin 10s 999

Upgrade System

Players can upgrade individual fish traps through an in-game UI to improve their tick rate. This system is independent from the permission-based speed tiers -- upgrades take priority over permissions when present.

  • 6 upgrade levels by default, fully configurable (add more or fewer)
  • 3 currency options: in-game items (scrap by default, supports custom items with skin ID), Economics, or ServerRewards
  • Keep Attributes: When enabled, picking up an upgraded fish trap preserves its upgrade level. Placing it again restores the upgrade. Upgraded traps cannot stack with non-upgraded traps or traps of different levels.
  • Access control: Restrict upgrades to the owner only, teammates/clanmates only, or allow anyone with the permission
  • Clan integration: When "Only Teammates" is enabled, the plugin checks both native Rust teams AND the Clans plugin for membership and alliances
  • Visual feedback: Configurable upgrade effect plays on each upgrade (default: stone upgrade sound)
  • Full UI: Upgrade button and status indicator appear when looting a managed fish trap. A detailed modal shows all levels, current progress, costs, and the upgrade button.

Default upgrade levels:

Level Cost (Scrap) Tick Rate
Level 1 100 50s
Level 2 250 40s
Level 3 500 30s
Level 4 1,000 20s
Level 5 2,000 15s
Level 6 (MAX) 5,000 10s

Admin Tools

  • Reset command: Removes all existing adaptors and reattaches them cleanly, reapplying all fishing speeds
  • Toggle command: Instantly disable/enable the upgrade system server-wide for testing or performance debugging. When disabled, all traps revert to vanilla 60s tick rate. When re-enabled, all upgrades and permissions are reapplied.

Permissions

Permission Description
betterfishtrap.use Required for fish traps to receive a storage adaptor. Grant to all players or specific groups.
betterfishtrap.admin Access to admin commands (reset, toggle).
betterfishtrap.upgrade Access to the upgrade UI and ability to upgrade traps.
betterfishtrap.speed. Grants the player a specific fishing speed tier. Replace with the tier name defined in config (e.g., vip, premium, elite, admin).

Commands

Chat Commands

Command Permission Description
/fishtrap.reset admin Removes all adaptors and reattaches them to every fish trap on the server. Reapplies fishing speeds.
/fishtrap.toggle admin Toggles the upgrade system on/off server-wide. Useful for testing or debugging performance.

Console Commands

Command Description
fishtrap.reset Same as chat command, usable from server console or RCON.
fishtrap.toggle Same as chat command, usable from server console or RCON.

Configuration

Located at config/BetterFishTrap.json after first load.

{
  "Enabled": true,
  "AdaptorPosition": { "x": 0.0, "y": 0.5, "z": -0.8 },
  "AdaptorRotation": { "x": -90.0, "y": 0.0, "z": 0.0 },
  "Health Protection Settings": {
    "Enable Health Protection": true,
    "Protection Mode (1=Prevent Damage, 2=Restore Health, 3=Block Decay Damage)": 3,
    "Instant Heal (Mode 2 only)": true,
    "Heal Delay Seconds (Mode 2, if not instant)": 0.5
  },
  "Fishing Speed Settings": {
    "Enable Fishing Speed Modification": true,
    "Default Tick Rate (seconds)": 60.0,
    "Speed Tiers": {
      "vip": { "Tick Rate (seconds)": 40.0, "Priority": 1, "Display Name": "VIP" },
      "premium": { "Tick Rate (seconds)": 30.0, "Priority": 2, "Display Name": "Premium" },
      "elite": { "Tick Rate (seconds)": 20.0, "Priority": 3, "Display Name": "Elite" },
      "admin": { "Tick Rate (seconds)": 10.0, "Priority": 999, "Display Name": "Admin" }
    }
  },
  "Upgrade System Settings": {
    "Enable Upgrade System": true,
    "Currency Type (0=Scrap, 1=Economics, 2=ServerRewards)": 0,
    "Keep Attributes When Removing": true,
    "Owner Only Can Upgrade": false,
    "Only Teammates Can Upgrade": true,
    "Upgrade Effect": "assets/bundled/prefabs/fx/build/promote_stone.prefab",
    "Tick Rate Upgrades": [
      { "Cost": 100, "Tick Rate (seconds)": 50.0, "Display Name": "Level 1" },
      { "Cost": 250, "Tick Rate (seconds)": 40.0, "Display Name": "Level 2" },
      { "Cost": 500, "Tick Rate (seconds)": 30.0, "Display Name": "Level 3" },
      { "Cost": 1000, "Tick Rate (seconds)": 20.0, "Display Name": "Level 4" },
      { "Cost": 2000, "Tick Rate (seconds)": 15.0, "Display Name": "Level 5" },
      { "Cost": 5000, "Tick Rate (seconds)": 10.0, "Display Name": "Level 6 (MAX)" }
    ]
  }
}

Configuration Reference

General

Setting Type Default Description
Enabled bool true Master switch. When false, no adaptors are attached and placement hooks are unsubscribed.
AdaptorPosition Vector3 (0, 0.3, 0) Local position offset of the storage adaptor relative to the fish trap.
AdaptorRotation Vector3 (0, 0, 0) Local rotation of the storage adaptor relative to the fish trap.

Health Protection Settings

Setting Type Default Description
Enable Health Protection bool true Enable or disable the health protection system.
Protection Mode int 3 1=Prevent damage, 2=Heal after catch, 3=Block all decay damage (recommended).
Instant Heal bool true Mode 2 only. If true, heals on the next tick.
Heal Delay Seconds float 0.5 Mode 2 only. Seconds to wait before healing.

Fishing Speed Settings

Setting Type Default Description
Enable Fishing Speed Modification bool true Enable or disable the fishing speed system.
Default Tick Rate float 60.0 Tick rate in seconds for players without any speed permission.
Speed Tiers Dictionary 4 tiers Each key is a permission suffix with tick rate, priority, and display name.

Upgrade System Settings

Setting Type Default Description
Enable Upgrade System bool true Enable or disable the upgrade UI and functionality.
Currency Type int 0 0=In-game item, 1=Economics, 2=ServerRewards.
Currency Item object scrap Only used when Currency Type is 0.
Keep Attributes When Removing bool true When true, picking up an upgraded trap preserves the upgrade level.
Owner Only Can Upgrade bool false When true, only the player who placed the trap can upgrade it.
Only Teammates Can Upgrade bool true When true, only owner, team members, or clan members can upgrade.
Upgrade Effect string promote_stone Prefab path for the visual/sound effect on upgrade.
Tick Rate Upgrades array 6 levels Array of upgrade levels with cost, tick rate, and display name.

Upgrade Priority System

The plugin uses a hybrid approach for determining a fish trap's tick rate:

  1. Upgrade level (highest priority) -- If the trap has been upgraded through the UI, that upgrade's tick rate is used.
  2. Permission tier (fallback) -- If the trap has no upgrade, the owner's highest-priority speed permission is used.
  3. Default tick rate (final fallback) -- If the owner has no speed permissions, the configured default tick rate is used.

This means a VIP player who also upgrades their trap will use the upgrade tick rate, not the VIP tier rate. Upgrades are per-trap, permissions are per-player.

Optional Dependencies

Plugin Usage
Economics Alternative currency for the upgrade system (Currency Type = 1)
ServerRewards Alternative currency for the upgrade system (Currency Type = 2)
Clans When "Only Teammates Can Upgrade" is enabled, checks clan membership and alliances in addition to native Rust teams

None of these are required. The plugin works standalone with the default item-based currency and native Rust teams.

Localization

The plugin ships with full language support for:

  • English (en)
  • Brazilian Portuguese (pt-BR)

All messages are registered through the Oxide/Carbon lang system and can be customized or extended by adding new language files.

Quick Start

  1. Install the plugin in your plugins folder.
  2. Grant the base permission to all players: oxide.grant group default betterfishtrap.use
  3. Grant upgrade access: oxide.grant group default betterfishtrap.upgrade
  4. (Optional) Grant speed tiers to VIP groups: oxide.grant group vip betterfishtrap.speed.vip
  5. Reload the plugin. All existing fish traps will receive storage adaptors automatically.
  6. Players open a fish trap to see the upgrade button and status. Clicking the upgrade button opens the full upgrade modal.

User Feedback

2.2m

Downloads

Total number of downloads.

10.4k

Customers

Total customers served.

150.5k

Files Sold

Total number of files sold.

3.2m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.