Jump to content

Karma 1.6.2

$14.99
   (0 reviews)
Message added by dFxPhoeniX,

This plugin is actively used on multiple live Rust servers in real gameplay conditions:

- Rust EvoPixel

- xOpsys

Ensuring stability, performance, and real-world balance.

5 Screenshots

  • 253
  • 4
  • 185.14 kB

About Karma

Karma is a configurable reputation/karma system for that rewards positive behavior (revive, heal, build/repair help, donation, passive peace, redemption) and punishes negative behavior (unprovoked kills, repeated kills, naked kills, raiding others).

It also includes anti-abuse protections for teams/clans (maturity + recent-group grace) and optional integrations (BetterChat, SimpleStatus, Clans, NTeleportation, Economics, ImageLibrary).

Key Features:

  • Fully configurable positive and negative karma actions
  • Anti-abuse protections for team/clan farming (maturity + grace windows)
  • Optional teleport restrictions and safe-zone hostility based on rank
  • Rank system with colors and metabolism effects (hunger/thirst)
  • Optional chat/UI integrations (BetterChat, SimpleStatus)
  • Built-in Top/Bottom lists
  • Optional API for other plugins

Permissions:

  • karma.use - Allows player/group to use the /karma command.
  • karma.others - Allows player/group to check other players (/karma check <name|steamid>).

Chat Commands:

  • /karma - Shows help and what actions are currently enabled (requires karma.use).
  • /karma check - Shows your karma + rank (requires karma.use).
  • /karma check <name|steamid> - Shows karma + rank for another player (requires karma.others).
  • /karma top - Shows top karma players (requires karma.use).
  • /karma bottom - Shows lowest karma players (requires karma.use).

Sever Commands:

  • karma.add <steamId64|name> <amount>
  • karma.remove <steamId64|name> <amount>
  • karma.set <steamId64|name> <amount>

Debug/maintenance:

  • karma.dump <steamid|name>
  • karma.redeem <steamid|name>
  • karma.caches
  • karma.resetstate <steamid|name>
  • karma.cleartc
  • karma.debug.set <steamid|name> <karma>

Configuration:
 

{
  "General": {
    "Save interval seconds (min 10)": 120,
    "Save on server save": true,
    "Debug": false,
    "Reset on wipe": false,
    "Reset karma on wipe to": 0,
    "Announce rank changes in chat": true,
    "Notify player when karma changes": true,
    "Karma notify includes reason": false,
    "Use team": true,
    "Use clan": false,
    "Team maturity seconds for combat/raid grouping (0 = instant)": 60,
    "Team stamp keep minutes (prevents false positives for offline teammates)": 360,
    "Clan maturity seconds for combat/raid grouping (0 = instant)": 120,
    "Clan stamp keep minutes (prevents false positives for offline clanmates)": 360,
    "Positive actions: block if recently same team/clan (seconds)": 600,
    "Safe zone hostile warning cooldown seconds (min 5)": 60,
    "Karma hostile refresh seconds (max 15)": 5.0,
    "Karma hostile seconds (max 3600)": 600.0,
    "Drain metabolism tick seconds (min 1, max 30)": 5.0
  },
  "Combat logic": {
    "Combat window seconds": 60,
    "Min damage to count as aggression": 5.0,
    "Ignore trap damage as first hit": true,
    "Ignore bleed damage as first hit": true,
    "Ignore radiation as first hit": true,
    "Ignored first-hit initiator prefabs (paths)": [
      "assets/prefabs/deployable/bear trap/beartrap.prefab",
      "assets/prefabs/deployable/landmine/landmine.prefab",
      "assets/prefabs/deployable/single shot trap/guntrap.deployed.prefab",
      "assets/prefabs/deployable/floor spikes/spikes.floor.prefab",
      "assets/prefabs/deployable/playerioents/teslacoil/teslacoil.deployed.prefab"
    ],
    "Count projectile only": false,
    "Consider victim team/clan aggression as self defense": true,
    "Victim group aggression requires victim engaged": true,
    "Victim engaged window seconds (min 1)": 12,
    "Consider raid window as provocation": true
  },
  "Negative actions": {
    "Unprovoked kill": {
      "Enabled": true,
      "Karma to remove": 8
    },
    "Self defense kill": {
      "Enabled": false,
      "Karma to remove": 0
    },
    "On same player repeated kills": {
      "Enabled": true,
      "Karma to remove": 10,
      "Window minutes": 30,
      "Free kills per pair": 1
    },
    "Naked kill penalty": {
      "Enabled": true,
      "Karma to remove": 4,
      "Detect": {
        "Max clothing slots used": 1,
        "Max weapons in belt": 0,
        "Ignore if holding weapon": true,
        "Ignore if has ranged weapon in belt": true,
        "Max minutes since spawn (0=disabled)": 60
      }
    },
    "On raid others": {
      "Enabled": true,
      "Karma to remove": 2,
      "Max distance from tc": 160.0,
      "Raid window seconds": 900,
      "Cooldown seconds per tc": 180
    }
  },
  "Positive actions": {
    "Self defense kill": {
      "Enabled": false,
      "Karma to add": 1
    },
    "Revive player": {
      "Enabled": true,
      "Karma to add": 6,
      "Per target cooldown seconds": 900
    },
    "Heal other": {
      "Enabled": true,
      "Karma to add": 2,
      "Min healed amount": 20.0,
      "Per target cooldown seconds": 300,
      "Accumulate heal window seconds (0 = per-scan delta)": 5,
      "Recent medical use seconds (healer detection)": 2,
      "Scan radius meters": 3.0,
      "Scan every seconds": 1.0,
      "Require recent damage seconds": 20
    },
    "Kill negative player": {
      "Enabled": true,
      "Karma to add": 2,
      "Cooldown seconds per target": 600
    },
    "On kill while raid defending": {
      "Enabled": false,
      "Karma to add": 2,
      "Max distance from own tc": 160.0,
      "Raid window seconds": 900
    },
    "Help build for others": {
      "Enabled": true,
      "Karma to add": 1,
      "Per target cooldown seconds": 1800
    },
    "Repair others builds": {
      "Enabled": true,
      "Karma to add": 1,
      "Per target cooldown seconds": 1800
    },
    "On rescue monument": {
      "Enabled": true,
      "Karma to add": 3,
      "Per target cooldown seconds": 900
    },
    "Passive peace bonus": {
      "Enabled": true,
      "Karma to add": 1,
      "Award every minutes": 60
    },
    "Donation to naked": {
      "Enabled": true,
      "Karma to add": 2,
      "Per target cooldown seconds": 1800
    },
    "Redemption bonus": {
      "Enabled": true,
      "Karma to add": 3,
      "Cooldown seconds": 43200,
      "Require no player kills minutes": 180,
      "Require no pvp damage minutes": 120,
      "Require no raid damage minutes": 180,
      "Require no combat minutes": 30
    }
  },
  "Ranks": {
    "Negative": [
      {
        "Name": "Troublemaker",
        "Negative threshold": 25,
        "Color": "#ffb300",
        "Metabolism": {
          "Hunger per tick": 1.0,
          "Thirst per tick": 1.0
        },
        "Block teleport to home": false,
        "Block teleport to tpr": true,
        "Block teleport to town": false,
        "Block teleport to outpost": false,
        "Block teleport to bandit": false,
        "Block teleport to island": false,
        "Hostile in safe zone": false
      },
      {
        "Name": "Dishonorable",
        "Negative threshold": 100,
        "Color": "#ff7043",
        "Metabolism": {
          "Hunger per tick": 2.0,
          "Thirst per tick": 2.0
        },
        "Block teleport to home": true,
        "Block teleport to tpr": true,
        "Block teleport to town": false,
        "Block teleport to outpost": false,
        "Block teleport to bandit": false,
        "Block teleport to island": false,
        "Hostile in safe zone": false
      },
      {
        "Name": "Bandit",
        "Negative threshold": 200,
        "Color": "#ff3d00",
        "Metabolism": {
          "Hunger per tick": 2.0,
          "Thirst per tick": 2.0
        },
        "Block teleport to home": true,
        "Block teleport to tpr": true,
        "Block teleport to town": true,
        "Block teleport to outpost": true,
        "Block teleport to bandit": true,
        "Block teleport to island": true,
        "Hostile in safe zone": true
      },
      {
        "Name": "Nemesis",
        "Negative threshold": 400,
        "Color": "#b71c1c",
        "Metabolism": {
          "Hunger per tick": 3.0,
          "Thirst per tick": 3.0
        },
        "Block teleport to home": true,
        "Block teleport to tpr": true,
        "Block teleport to town": true,
        "Block teleport to outpost": true,
        "Block teleport to bandit": true,
        "Block teleport to island": true,
        "Hostile in safe zone": true
      }
    ],
    "Positive": [
      {
        "Name": "Friendly",
        "Positive threshold": 25,
        "Color": "#7cb342",
        "Metabolism": {
          "Hunger reduction percent": 20.0,
          "Thirst reduction percent": 20.0
        }
      },
      {
        "Name": "Honorable",
        "Positive threshold": 100,
        "Color": "#43a047",
        "Metabolism": {
          "Hunger reduction percent": 30.0,
          "Thirst reduction percent": 30.0
        }
      },
      {
        "Name": "Guardian",
        "Positive threshold": 200,
        "Color": "#1e88e5",
        "Metabolism": {
          "Hunger reduction percent": 40.0,
          "Thirst reduction percent": 40.0
        }
      },
      {
        "Name": "Protector",
        "Positive threshold": 400,
        "Color": "#1565c0",
        "Metabolism": {
          "Hunger reduction percent": 60.0,
          "Thirst reduction percent": 60.0
        }
      }
    ]
  },
  "BetterChat": {
    "Enabled": true,
    "Format": "[{KarmaRank}]",
    "Font size": 15
  },
  "SimpleStatus": {
    "Enabled": true,
    "Left side mode (karma|rank)": "karma",
    "Hide when neutral": true,
    "Use karma ranks color": false,
    "Use vanilla tint": false,
    "Status id": "karma.rank",
    "Positive background": "#738D45",
    "Negative background": "#C74A37",
    "Neutral background": "#6B6B6B",
    "Positive icon color": "#A3FE03",
    "Negative icon color": "#782600",
    "Neutral icon color": "#E0E0E0",
    "Positive label color": "#FFFFFF",
    "Negative label color": "#DEDEDE",
    "Neutral label color": "#FFFFFF",
    "Positive value color": "#FFFFFF",
    "Negative value color": "#DEDEDE",
    "Neutral value color": "#FFFFFF",
    "Icon (/oxide/data/Karma/images/<name>.png for local)": "https://i.ibb.co/7tspt4MD/karma.png"
  },
  "Integrations": {
    "Ignore players in Godmode (Vanilla God/Godmode)": true,
    "Ignore vanished players (Vanilla Vanish/Vanish/BetterVanish)": true
  }
}

Languages:
Karma includes two languages by default (English and Romanian), but you can add more in Oxide lang folder.

API Hooks:
 

int API_GetKarmaPoints(ulong userId)
object API_GetRankInfo(ulong userId)
string API_GetRankName(ulong userId)
int API_GetRankType(ulong userId)
void API_SetKarmaPoints(ulong userId, int value, string reason = null)
void API_AddKarmaPoints(ulong userId, int amount, string reason = null)
void API_RemoveKarmaPoints(ulong userId, int amount, string reason = null)

 


User Feedback

2.2m

Downloads

Total number of downloads.

10.4k

Customers

Total customers served.

150.7k

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.