Open Weapons
Armi da fuoco e melee, munizioni, accessori, armature e tutto il gameplay RP collegato al combat: rapine, perquisizioni, arresti, wanted e radio delle forze dell'ordine.
Open Roleplay è una raccolta di moduli Paper indipendenti — armi, accessi, cosmetici, distributori e un core condiviso. Usali insieme o uno alla volta. Leggibili, modificabili e tuoi.
// È gratuito, e lo sarà per sempre.
// Recupera un modulo dal services manager
OpenWeaponsApi api = getServer()
.getServicesManager()
.load(OpenWeaponsApi.class);
// Sostituisci un adapter a runtime
api.adapters().setNotification(myDiscordRelay);
// Osserva o veta il combat
@EventHandler
public void onHit(WeaponHitEvent e) {
if (safezone(e)) e.setCancelled(true);
}
Open Roleplay nasce da un'idea semplice: il software che fa girare il tuo server dovrebbe essere leggibile, modificabile e tuo. Niente scatole nere, niente lock-in.
È gratuito, e lo sarà per sempre.
Trovi un bug? Prendi il codice e sistemalo.
Non ti piace qualcosa? Modificalo.
Vuoi adattarlo o ampliarlo per il tuo server? Sei libero di farlo.
Ogni modulo è un plugin Paper autonomo con default funzionanti. Quando si trovano sullo stesso server, si riconoscono e collaborano — senza dipendenze obbligatorie.
Armi da fuoco e melee, munizioni, accessori, armature e tutto il gameplay RP collegato al combat: rapine, perquisizioni, arresti, wanted e radio delle forze dell'ordine.
Controllo accessi a regioni WorldGuard e blocchi sensibili: casse, porte, container e macchine. Profili, trust, ruoli e preset, con storage SQLite o MySQL.
Cosmetici arma senza duplicare la logica del combat: LED, colori custom, skin con suoni dedicati, gettoni consumabili, editor, banco e stazioni nel mondo.
Distributori automatici roleplay realistici, rifornibili e assegnabili ad aziende. Adapter-first: porti la tua economy, il tuo inventario e le tue aziende senza fork.
Il plugin di base. Nessun gameplay: espone un servizio Bukkit, un lifecycle ordinato dei moduli, database opzionale SQLite/MySQL, HUD e invio del resource pack.
I contratti pubblici minimi condivisi dai moduli: lifecycle, accesso opzionale al database, messaggi, permessi, stato HUD e utility item. Tipi stabili, zero gameplay.
Il core non importa mai direttamente la tua economy, il tuo plugin inventario o il tuo sistema aziende. Ogni sistema esterno passa da una piccola interfaccia — un adapter — con un default già funzionante e sostituibile a runtime dal tuo plugin.
@EventHandler.Codice sotto Apache 2.0: leggilo, modificalo, adattalo. Niente offuscamento, niente componenti chiusi.
Sei plugin separati. Installa solo ciò che ti serve: ognuno è leggibile e compilabile da solo.
API pubbliche via Bukkit Services, eventi cancellabili e adapter sostituibili: collega i tuoi sistemi senza fork.
Logica critica server-side, transazioni atomiche e lock per-risorsa: il client non viene mai fidato.
Messaggi in italiano e inglese, selezionati in automatico dalla lingua del client. Tutto personalizzabile.
Asset in formato aperto con pack.mcmeta e assets/: esplorali, modificali e ricomprimili senza strumenti proprietari.
Requisiti: Java 21, Maven 3.9+, Paper 1.21.x e Git. WorldGuard/WorldEdit servono per Open Access.
Tutti i moduli vivono in un parent Maven multi-modulo.
Una build completa produce i jar e gli zip dei resource pack.
Metti il jar del modulo desiderato nella cartella plugins/ del server.
Al primo avvio vengono generati i file di config; modificali e ricarica con il comando del modulo.
git clone https://github.com/giovyx90/open-roleplay.git
cd open-roleplay
mvn -B -ntp clean package
mvn -B -ntp package -pl open-vending-machines -am
# il jar finisce in: open-vending-machines/target/
I JAR pronti all'uso sono pubblicati nelle Release di GitHub. Preferisci compilare? Trovi il sorgente di ogni modulo nel monorepo.