Skip to content

jarettr/EchoRP

EchoRP ⚡ – Modular Roleplay Rating System for Minecraft

License: MIT Java CI Discord Stars

EchoRP is a high‑performance, modular rating engine for Minecraft roleplay servers.
It replaces subjective moderation with mathematical consensus, graph‑based anti‑abuse, and a microkernel architecture – ready for anything from a small community to a large server network.

🔗 Documentation: English | Русский | 中文


✨ Key Features

  • 🧮 Weighted rating – dynamic evaluator weights based on accuracy, tenure & trust.
  • 🔍 Graph anti‑abuse – detects collusion cycles (Tarjan's SCC) and penalizes them.
  • 📜 Event Sourcing – full audit trail; replay or rollback any change.
  • 🧩 Modular – core is a microkernel; all features are optional, isolated modules.
  • 💬 Discord integration – sync roles, send notifications, use slash commands.
  • 🌐 Web panel – built‑in React dashboard with config editor & graph visualizer.
  • 📊 Prometheus metrics – monitor performance with Grafana.
  • 🔐 Secure scripting – JavaScript (GraalVM) in a strict sandbox (100ms CPU / 10MB RAM).
  • Scalable – auto‑detects Redis; runs standalone or in a cluster.

🚀 Quick Start (5 minutes)

  1. Download the latest EchoRP-core.jar from Releases.
  2. Place it in your server's plugins/ folder (Paper 1.20+).
  3. Start the server – the plugin creates its default folders and an H2 database.
  4. (Optional) Drop additional modules into plugins/EchoRP/modules/.
  5. Verify with /rp debug chaos – you should see a successful system test.
  6. Open the web panel at http://localhost:7070 (if web-panel module is enabled).

💡 No Redis? The system automatically falls back to local caching and database sync.


🧩 Core Modules

Module Description
triggers-basic PvP death GUI and /rate command
rewards-basic Console commands at rating thresholds (Vault, ItemsAdder)
antiabuse-feedback Crowdsourced report system & automatic trust adjustment
echorp-diagnostic Stress testing (/rp debug bots 1000) and chaos checks
scripting-js Safe JavaScript scripting (GraalVM)
discord-bridge Redis‑backed Discord bot for notifications & role sync
web-panel React dashboard + Javalin REST API
redis-sync Cache coherence for multi‑server clusters
gui-top In‑game GUI with rating leaderboards
metrics-prometheus Micrometer metrics exposed for Prometheus

📖 Documentation

The documentation covers:

  • Architecture (Microkernel, Event Sourcing, WAL)
  • Mathematical models (MAD, Tarjan's SCC)
  • Full configuration reference
  • Developer guide (creating your own modules)
  • FAQ and troubleshooting

🛠️ Building from Source

git clone https://github.com/jarettr/EchoRP.git
cd EchoRP
./gradlew build

About

EchoRP: modular Minecraft RP rating system. Weighted consensus, graph anti-abuse (Tarjan), JS scripting (GraalVM), web panel, Discord, clusters. Event sourcing for full audit & integrity. Any scale. Open-source (MIT).

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors