RogueRustGridPower

RogueRust-native GridPower controller for automatic world streetlights, deterministic density, diagnostics and player-facing grid events.

Version: 2.0.2
Author: RogueAssassin
Frameworks: Oxide / Carbon
Required extension: Oxide.Ext.RogueRust

Plugin source · Back to plugin catalogue

Features

Permissions

Commands

All commands require roguerustgridpower.admin and also answer to a gridpower.* alias (for example gridpower.status).

Command Description
rrgrid.help Shows the administration and diagnostic commands.
rrgrid.status Shows streetlight and native grid status.
rrgrid.apply Reapplies configuration: streetlight density and streaming, the current world-time streetlight state and the native grid output policy.
rrgrid.refresh Rebuilds the streetlight references and reapplies the current state.
rrgrid.grid Shows the public-grid state and your grid cell.
rrgrid.native Shows Rust native power-grid access points, wiring and the active output policy.
rrgrid.native.refresh Re-indexes native access points and re-pushes the output policy in frame-budgeted batches.
rrgrid.native.inspect Inspects the nearest native access point: saving flag, wired slots, current energy and maximum output.
rrgrid.native.poles [apply] Shows native pole transformer fitting. apply re-runs it, filling poles that are missing one.
rrgrid.debug Draws temporary admin-only markers for access points and streetlight fixtures within 200 m.
rrgrid.target Inspects the world object under your cursor without modifying it. Alias: rrgrid.cursor.

Configuration

Configuration file: config/RogueRustGridPower.json

General Settings

Enable Plugin: true

Street Lights

Setting Default Validation
Enabled true —
Turn On Hour (0-23) 20 clamped to valid world hour
Turn Off Hour (0-23) 8 clamped to valid world hour
Street Light Density Percent (0-100) 100 0-100
Selection Seed 0 deterministic selection seed

Player Grid Power

Setting Default
Enabled false
Discover Power Poles true
Require Vanilla Power Grid false

Power Poles

Setting Default Validation
Enabled true —
Density Percent 100 0-100
Selection Seed 0 —
Power Output 600 >= 0
Limit Transformer Output true —
Transformer Maximum Output 100 >= 0
Spawn Batch Size 2 1-2
Batch Interval Seconds 0.25 >= 0.25
Allow Wooden Ladders On Grid Power Poles true —
Ladder Pole Detection Radius 4 clamped 1-8 metres
Show Ladder Placement GameTip true —
Ladder Placement GameTip Duration Seconds 2.5 clamped 1-10
Ladder Placement Success Message Ladder attached to RogueRust GridPower pole. configurable text

Player Notifications

Setting Default
Show GameTips true
GameTip Duration Seconds 8 (clamped 1-30)
Night Message grid generators/streetlights night message
Dawn Message daylight/grid shutdown message

Performance Settings

Setting Default Minimum
Street Light Check Interval Seconds 30 5
Refresh Street Light Cache Minutes 10 1

Developer Settings

Log Diagnostics: false. Detailed discovery/per-entity/recovery traces remain silent unless enabled.

Representative default configuration

{
  "General Settings": { "Enable Plugin": true },
  "Street Lights": {
    "Enabled": true,
    "Turn On Hour (0-23)": 20.0,
    "Turn Off Hour (0-23)": 8.0,
    "Street Light Density Percent (0-100)": 100,
    "Selection Seed": 0
  },
  "Player Grid Power": {
    "Enabled": false,
    "Discover Power Poles": true,
    "Power Poles": {
      "Enabled": true,
      "Density Percent (0-100)": 100,
      "Selection Seed": 0,
      "Power Output": 600,
      "Limit Transformer Output": true,
      "Transformer Maximum Output": 100,
      "Spawn Batch Size": 2,
      "Batch Interval Seconds": 0.25,
      "Allow Wooden Ladders On Grid Power Poles": true,
      "Ladder Pole Detection Radius": 4.0,
      "Show Ladder Placement GameTip": true,
      "Ladder Placement GameTip Duration Seconds": 2.5,
      "Ladder Placement Success Message": "Ladder attached to RogueRust GridPower pole."
    },
    "Require Vanilla Power Grid": false
  },
  "Performance Settings": {
    "Street Light Check Interval Seconds": 30.0,
    "Refresh Street Light Cache Minutes": 10.0
  },
  "Developer Settings": { "Log Diagnostics": false },
  "Version (DO NOT CHANGE)": "2.0.2"
}

Ladder placement notes

When player-grid power is enabled and managed power poles are active, players holding a wooden wall ladder can place it directly against recognized RogueRust GridPower poles. The plugin caches eligible pole positions for short periods, verifies the player is actually targeting a power-pole collider, spawns the native ladder entity with ownership/skin preserved, and fires the normal OnEntityBuilt hook for compatibility.

This feature can be disabled independently without affecting streetlights or player-grid power.

Runtime and performance notes

The plugin uses RogueRust's shared GridPower service. Heavy administrative work is queued cooperatively rather than producing large entity/network bursts in a command frame. Streetlight checks and cache refreshes run on configurable conservative intervals, and diagnostics are opt-in.

Installation and updating

Install the latest RogueRust DLL, place RogueRustGridPower.cs in the plugin directory, and grant roguerustgridpower.admin to administrators. Existing config values are preserved while missing sections/defaults are added during version migration.