Custom Hack Duration

Custom Hack Duration 1.0.0

Customize hack duration with permission-based tiers, team bonuses, and progress notifications
Works With
This plugin lets you control how long it takes to hack lockable crates on your server. You can set different hack times for different players based on their permissions. VIP players can hack faster than regular players. When teammates are standing nearby, the hack time goes down automatically to reward teamwork. Players also get notifications showing their progress while hacking.

Features

  • Create permission-based hack duration tiers with different difficulty levels for various player groups.
  • Apply automatic bonuses when teammates are nearby, encouraging team-based gameplay.
  • Display progress notifications during hacking with customizable percentage milestones.
  • Use either native Rust teams or the Clans plugin for teammate detection.
  • Randomize hack durations within configurable ranges to add unpredictability.
  • Notify players of estimated hack time when starting and remaining time during progress.

Permissions

Permissions are dynamically defined in the configuration under Permission Based Hack Durations. The plugin registers any permission string you add to your config. By default, the following permissions are available:
  • customhackduration.vip - Grants VIP-tier hack durations (reduced hack time)
  • customhackduration.elite - Grants elite-tier hack durations (significantly reduced hack time)

Configuration

JSON:
{
  "Version": "1.0.0",
  "Default Hack Duration For Players Without Permissions": {
    "Minimum Hack Duration In Seconds": 900,
    "Maximum Hack Duration In Seconds": 900
  },
  "Teammate Proximity Bonus": {
    "Enabled": true,
    "Use Clans Plugin For Teammate Detection": false,
    "Teammate Detection Radius": 10,
    "Seconds Reduced Per Nearby Teammate": 30,
    "Maximum Total Seconds That Can Be Reduced": 120
  },
  "Hack Progress Notifications": {
    "Enabled": true,
    "Display As Game Tip Toast Instead Of Chat Message": true,
    "Notify At These Percent Remaining Intervals": [75, 50, 25, 10]
  },
  "Permission Based Hack Durations": [
    {
      "Permission": "customhackduration.vip",
      "Priority (Lower Number = Higher Priority)": 1,
      "Minimum Hack Duration In Seconds": 300,
      "Maximum Hack Duration In Seconds": 450
    },
    {
      "Permission": "customhackduration.elite",
      "Priority (Lower Number = Higher Priority)": 2,
      "Minimum Hack Duration In Seconds": 60,
      "Maximum Hack Duration In Seconds": 120
    }
  ]
}
Default Hack Duration For Players Without Permissions
  • Minimum Hack Duration In Seconds (0+) - The shortest hack time allowed for players without special permissions.
    • Example: 600 for 10 minutes minimum
    • Note: Set minimum and maximum to the same value for a fixed duration.
  • Maximum Hack Duration In Seconds (0+) - The longest hack time allowed for players without special permissions.
    • Example: 1200 for a 20-minute maximum
    • Note: Durations are randomly selected between min and max values.
Teammate Proximity Bonus
  • Enabled (true | false) - Enable or disable the teammate bonus system.
    • Note: When enabled, players with nearby teammates receive reduced hack durations.
  • Use Clans Plugin For Teammate Detection (true | false) - Determine how teammates are detected.
    • Note: When true, uses the Clans plugin. When false, uses native Rust teams only.
    • Important: The Clans plugin must be installed for this to work when enabled.
  • Teammate Detection Radius (0+meters) - How far away teammates must be to count toward the bonus.
    • Note: Teammates outside this radius do not contribute to the bonus.
  • Seconds Reduced Per Nearby Teammate (0+seconds) - Hack time reduction for each nearby teammate.
    • Note: Combined with maximum reduction limit to prevent excessive bonuses.
  • Maximum Total Seconds That Can Be Reduced (0+seconds) - Cap on total reduction from all nearby teammates.
    • Example: 180 to allow up to 3 minutes of reduction
    • Note: Prevents teams from getting unrealistically fast hack times with many members.
Hack Progress Notifications
  • Enabled (true | false) - Enable or disable progress notifications during hacking.
    • Note: Notifications only appear for the player performing the hack.
  • Display As Game Tip Toast Instead Of Chat Message (true | false) - Choose notification display style.
  • Notify At These Percent Remaining Intervals- Progress milestones for notifications.
    • Example: [50, 25] for fewer notifications
    • Note: Values should represent percent completion (100 - remaining percent).
Permission Based Hack Durations
Configure custom hack durations for different permission tiers. Each entry supports:
  • Permission - The permission string required to use this tier.
  • Priority- Determines which tier applies when a player has multiple permissions.
    • Important: Lower numbers have higher priority. If a player has both VIP (priority 1) and Elite (priority 2), they receive VIP benefits.
  • Minimum Hack Duration In Seconds - Shortest possible hack time for this tier.
  • Maximum Hack Duration In Seconds - Longest possible hack time for this tier.

Localization

JSON:
{
  "Hack.Started": "Hacking started! Estimated time: {0}",
  "Hack.Progress": "Hacking... {0}/100 complete - {1} left",
  "Hack.Complete": "Hack complete!",
  "Hack.TeamBonus": "Team bonus: -{0}s ({1} teammates nearby)"
}
Author
VisEntities
License duration
Unlimited
Price
7.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