CivilizationCore
Un vero sistema di civiltà per Minecraft
Un vero sistema di civiltà per Minecraft
Cos'è CivilizationCore?
CivilizationCore permette ai giocatori di fondare vere civiltà sul tuo server: governi, ruoli completamente personalizzati con permessi granulari, leggi che vengono rilevate e punite automaticamente, territorio contiguo (blocchi di claim non sparsi), zone speciali con accesso limitato, permessi individuali, elezioni/votazioni e un registro di cronologia persistente.
Tutto viene configurato in-game tramite comandi — non serve modificare file di configurazione per creare ruoli, leggi o zone. Nulla è hardcoded: i proprietari del server e i giocatori costruiscono la propria struttura di governo da zero.
Requisiti
- Paper 1.21.11 (o fork compatibile di Paper/Spigot per 1.21.x)
- Java 21+
Installazione
- Trascina il file .jar nella cartella plugins del tuo server
- Riavvia il server (o usa un plugin manager che supporta l'hot-loading)
- Al primo avvio, il plugin crea una cartella plugins/CivilizationCore/ contenente:
- config.yml — impostazioni globali
- civilizations/ — un file per ogni civiltà (dati, ruoli, leggi, territorio, zone, permessi)
- history/ — registro degli eventi persistente per ogni civiltà
- crimes/ — registro dei crimini persistente per ogni civiltà
- Fatto — nessuna ulteriore configurazione richiesta. Digita /civ help in-game per iniziare
Avvio Rapido
Un esempio minimale per ottenere una civiltà funzionante con una vera legge applicata in meno di un minuto:
Code (Text):
/civ create Roma DEMOCRACY
/civ law create NoTNTCapital PROHIBITION TNT_PRIME FINE 200
/civ law list
/civ law condition L1 MAX_DISTANCE_FROM_CAPITAL 500
Riferimento Completo dei Comandi
Tutti i comandi iniziano con /civ (alias: /civilization, /civilta). Gli argomenti tra <> sono obbligatori, quelli tra [ ] sono facoltativi.
Generale
Code (Text):
/civ help
/civ create <nome> [tipoGoverno]
/civ info [nomeCiviltà]
/civ join <nomeCiviltà]
/civ leave
/civ history [nomeCiviltà]
- create — fonda una nuova civiltà centrata sulla tua posizione attuale. Se tipoGoverno viene omesso, viene impostato di default su DEMOCRACY. Diventi automaticamente il Governatore. Fallisci se fai già parte di una civiltà o se il nome è già in uso.
- info — mostra governatore, tipo di governo, numero di cittadini, dimensione del territorio, numero di leggi attive, tesoro e data di fondazione. Senza argomenti, mostra la tua civiltà.
- join — ti rende cittadino di una civiltà esistente con il ruolo predefinito. Puoi appartenere a una sola civiltà alla volta.
- leave — lascia la tua civiltà attuale. Il Governatore non può andarsene senza prima aver trasferito il ruolo.
- history — mostra gli ultimi 20 eventi registrati (fondazione, ingresso/uscita di cittadini, cambi di governatore, leggi create/abrogate, crimini, votazioni...).
Ruoli
Code (Text):
/civ role list
/civ role create <id> <nomeVisualizzato> <priorità>
/civ role delete <id>
/civ role grant <id> <permesso>
/civ role revoke <id> <permesso>
/civ role assign <giocatore> <id>
- Ogni civiltà inizia con due ruoli: governor (pieno potere amministrativo) e citizen (ruolo predefinito, può votare).
- create/delete/grant/revoke/assign richiedono il permesso MANAGE_ROLES (il Governatore ce l'ha di default).
- priority è solo un numero per la tua organizzazione (es. per la visualizzazione gerarchica) — non ha alcun effetto automatico sulla forza dei permessi.
- Quando elimini un ruolo, tutti i cittadini che lo detengono tornano automaticamente al ruolo predefinito della civiltà.
- Vedi l'elenco completo dei permessi qui sotto per sapere cosa puoi concedere con grant/revoke.
Leggi
Code (Text):
/civ law list
/civ law create <nome> <PROHIBITION|OBLIGATION> <trigger> <punizione> [importo]
/civ law condition <idLegge> <tipoCondizione> <valore>
/civ law repeal <idLegge>
- Richiede il permesso MANAGE_LAWS (tranne list, visibile a tutti nella civiltà).
- lawId è l'ID breve mostrato da /civ law list (es. L1, L2...) — NON il lungo UUID interno, quindi è facile da digitare e ricordare.
- PROHIBITION vieta un'azione; OBLIGATION richiede che una condizione (come un permesso) sia soddisfatta affinché l'azione sia consentita.
- amount viene usato dalla punizione FINE (importo in denaro) e da ARREST (durata in secondi). Omettilo (0) per le punizioni che non richiedono un numero (WARNING, CONFISCATION, ROLE_REMOVAL, EXPULSION).
- Una legge senza condizioni si applica sempre ovunque nel territorio della civiltà, su ogni trigger per cui è registrata.
- Vedi le tabelle di riferimento di Trigger, Condition e Punishment qui sotto per ogni valore valido.
Territorio
Code (Text):
/civ territory claim
/civ territory unclaim
/civ territory info
/civ territory coords
- Richiede il permesso MANAGE_TERRITORY (tranne info/coords).
- claim/unclaim agiscono sul chunk in cui ti trovi attualmente.
- Il territorio DEVE rimanere contiguo: puoi reclamare solo un chunk che tocca (o confina diagonalmente) un chunk che già possiedi. Non puoi reclamare chunk sparsi/disconnessi.
- coords mostra le coordinate esatte della tua capitale e, per ogni chunk del tuo territorio, le coordinate del chunk più il corrispondente intervallo di blocchi (X/Z) — utile per sapere esattamente dove sono i tuoi confini.
Zone
Code (Text):
/civ zone pos1
/civ zone pos2
/civ zone create <nome> <tipo>
/civ zone delete <idZona>
/civ zone list
- pos1/pos2 segnano i due angoli di un cubo nella tua posizione attuale (funzionano come i punti di selezione di WorldEdit) — disponibili per chiunque, nessun permesso necessario per marcare le posizioni.
- create/delete richiedono il permesso MANAGE_ZONES e usano l'ultimo pos1/pos2 impostato.
- Una zona MILITARY richiede automaticamente il permesso ACCESS_MILITARY_ZONE per entrare; una zona PRISON richiede automaticamente ACCESS_PRISON_ZONE.
- I cittadini senza il permesso richiesto sono fisicamente bloccati dall'entrare in una zona ristretta (il loro movimento viene annullato con un messaggio). Questo si applica solo ai cittadini della stessa civiltà della zona.
- zoneId per l'eliminazione è l'ID completo mostrato da /civ zone list.
Permessi (Permits)
Code (Text):
/civ permit grant <giocatore> <tipoPermesso> [durataSecondi]
/civ permit revoke <giocatore> <tipoPermesso>
- Richiede il permesso MANAGE_PERMITS.
- Ometti durationSeconds per un permesso permanente; altrimenti scadrà automaticamente dopo il numero di secondi specificato.
- I permessi hanno senso solo se menzionati all'interno della condizione REQUIRES_PERMIT di una legge (vedi sotto) — concedere un permesso da solo non fa nulla a meno che una legge non lo verifichi.
Votazioni
Code (Text):
/civ vote list
/civ vote start <tipoVoto> <oggetto>
/civ vote cast <idVoto> <scelta>
/civ vote conclude <idVoto>
- start richiede il permesso START_VOTE. subject è testo libero — tutto ciò che viene digitato dopo voteType viene trattato come l'oggetto.
- cast richiede il permesso VOTE (i cittadini ce l'hanno di default). choice è testo libero, es. "SI"/"NO" o il nome di un candidato — qualunque cosa abbia senso per quella votazione.
- conclude chiude la votazione e calcola il risultato in base alle regole della maggioranza (vedi Tipi di Governo sotto). Chiunque può attivare conclude una volta che sei pronto a chiuderla — conta solo ciò che è stato votato fino a quel punto.
- La durata del voto e la maggioranza richiesta seguono automaticamente il tipo di governo della civiltà, ma ogni voto è comunque indipendente e può essere concluso manualmente in qualsiasi momento.
Riferimento: Tutti i Valori Possibili
Tipi di Governo (usati in /civ create)
- DEMOCRACY — 50% di maggioranza necessaria per far passare una votazione, durata del voto di 300s
- OLIGARCHY — 66% di maggioranza necessaria, durata del voto di 300s
- MONARCHY — 100% (di fatto decide solo il voto del governatore), durata di 60s
- DICTATORSHIP — 100%, durata di 30s
- CUSTOM — stessi valori predefiniti della democrazia, pensato come punto di partenza neutro per una struttura di ruoli/permessi completamente personalizzata
Permessi dei Ruoli (usati in /civ role grant / revoke)
- MANAGE_LAWS — crea, aggiunge condizioni e abroga le leggi
- MANAGE_CITIZENS — riservato alle azioni di gestione dei cittadini
- MANAGE_ROLES — crea/elimina ruoli, concede/revoca permessi, assegna ruoli ai cittadini
- MANAGE_TERRITORY — reclama/rimuove chunk di territorio
- MANAGE_ZONES — crea/elimina zone
- MANAGE_PERMITS — concede/revoca permessi individuali
- ARREST_PUNISH — riservato ad azioni manuali di arresto/punizione
- START_VOTE — avvia una nuova votazione
- VOTE — esprime un voto (i cittadini ce l'hanno di default)
- MANAGE_GOVERNMENT — riservato alla modifica del tipo/struttura di governo
- ACCESS_MILITARY_ZONE — consente l'ingresso nelle zone di tipo MILITARY
- ACCESS_PRISON_ZONE — consente l'ingresso nelle zone di tipo PRISON (carcerieri, guardie)
- BYPASS_LAWS — rende il ruolo completamente esente da ogni legge della civiltà. NON concesso a nessuno per impostazione predefinita (nemmeno al Governatore) — concedilo manualmente e deliberatamente se vuoi che un ruolo sia al di sopra della legge.
Trigger delle Leggi (usati in /civ law create — quale azione monitora la legge)
- BLOCK_BREAK — attivamente applicato. Si attiva quando un cittadino rompe un blocco all'interno del territorio della civiltà.
- BLOCK_PLACE — attivamente applicato. Si attiva quando un cittadino piazza un blocco all'interno del territorio.
- TNT_PRIME — attivamente applicato. Si attiva quando un giocatore accende la TNT (acciarino, freccia infuocata...) all'interno del territorio. La TNT accesa da cause non dovute a giocatori (redstone, propagazione del fuoco) NON è coperta, poiché non c'è alcun giocatore da ritenere responsabile.
- ENTER_ZONE — definito ma attualmente non applicato automaticamente tramite il sistema delle leggi. La restrizione di accesso alle zone funziona già separatamente e automaticamente tramite i permessi dei ruoli (vedi ACCESS_MILITARY_ZONE/ACCESS_PRISON_ZONE sopra) — non serve una legge per questo.
- ITEM_TRADE — riservato a un futuro sistema di scambio, attualmente non attivato da alcuna azione in-game.
Tipi di Condizione delle Leggi (usati in /civ law condition — restringe quando si applica una legge)
- MAX_DISTANCE_FROM_CAPITAL — valore = numero di blocchi. La legge si applica solo entro questo raggio dalla capitale della civiltà. Esempio: 500
- MATERIAL_EQUALS — valore = nome di un materiale di Minecraft. La legge si applica solo a quel blocco specifico. Esempio: DIAMOND_ORE
- ZONE_TYPE_EQUALS — valore = tipo di zona (vedi Tipi di Zona sotto). La legge si applica solo all'interno di una zona di quel tipo. Esempio: MARKET
- REQUIRES_ROLE_PERMISSION — valore = nome di un permesso del ruolo. Chiunque abbia quel permesso nel proprio ruolo è esente da questa legge. Esempio: ARREST_PUNISH
- REQUIRES_PERMIT — valore = tipo di permesso (vedi Tipi di Permesso sotto). Chiunque possieda un permesso valido (non scaduto) di quel tipo è esente. Esempio: MINING_PERMIT
Tipi di Punizione (usati in /civ law create)
- FINE — l'importo viene aggiunto al tesoro della civiltà, il giocatore viene avvisato. (Nessun plugin di economia esterno richiesto — è un tesoro interno tracciato per singola civiltà.)
- ARREST — il giocatore viene confinato per [amount] secondi. Se la civiltà ha una zona PRISON, il giocatore viene fisicamente bloccato all'interno di essa (qualsiasi tentativo di uscita viene bloccato) finché il timer non scade. Senza una zona PRISON, l'arresto viene solo registrato, senza confinamento fisico.
- CONFISCATION — l'intero inventario del giocatore viene svuotato.
- ROLE_REMOVAL — il ruolo del giocatore viene reimpostato al ruolo predefinito della civiltà (perde tutti i permessi basati sui ruoli che aveva).
- EXPULSION — il giocatore viene immediatamente rimosso del tutto dalla civiltà.
- WARNING — solo un messaggio in chat al trasgressore, nessun altro effetto. Utile per testare le leggi o per regole "soft".
Tipi di Permesso (Permit Types) (usati in /civ permit grant/revoke e nelle condizioni REQUIRES_PERMIT)
- MINING_PERMIT
- BUILDING_PERMIT
- WEAPON_PERMIT
- TRADE_PERMIT
- TNT_PERMIT
Tipi di Zona (usati in /civ zone create)
- CAPITAL
- CITY
- MARKET
- MILITARY — richiede automaticamente ACCESS_MILITARY_ZONE per entrare
- PRISON — richiede automaticamente ACCESS_PRISON_ZONE per entrare, ed è il luogo in cui le punizioni ARREST confinano i trasgressori
- PUBLIC
- INDUSTRIAL
- CUSTOM
Tipi di Voto (usati in /civ vote start)
- ELECT_GOVERNOR
- LAW_PROPOSAL
- LAW_AMENDMENT
- POLICY
Esempi Pratici
TNT vietata vicino alla capitale, con multe:
Code (Text):
/civ law create NoTNTCapital PROHIBITION TNT_PRIME FINE 200
/civ law condition L1 MAX_DISTANCE_FROM_CAPITAL 500
Code (Text):
/civ law create MiningPermitRequired OBLIGATION BLOCK_BREAK WARNING
/civ law condition L2 MATERIAL_EQUALS DIAMOND_ORE
/civ law condition L2 REQUIRES_PERMIT MINING_PERMIT
/civ permit grant Steve MINING_PERMIT
Code (Text):
/civ zone pos1
/civ zone pos2
/civ zone create Caserma MILITARY
/civ role create soldier Soldato 10
/civ role grant soldier ACCESS_MILITARY_ZONE
/civ role assign Steve soldier
Code (Text):
/civ law create NoGriefingPublic PROHIBITION BLOCK_BREAK CONFISCATION
/civ law condition L3 ZONE_TYPE_EQUALS PUBLIC
/civ law condition L3 REQUIRES_ROLE_PERMISSION ARREST_PUNISH
Nodi di Permesso Bukkit
- civilizationcore.use — accesso di base a /civ (predefinito: true, ce l'hanno tutti)
- civilizationcore.admin — riservato alle funzionalità di livello amministrativo del server (predefinito: op)
config.yml
Code (Text):
autosave-interval-seconds: 300
max-territory-chunks: 0
- autosave-interval-seconds — ogni quanto tempo (in secondi) tutte le civiltà vengono salvate automaticamente su disco in background. I dati vengono inoltre salvati sempre subito dopo la maggior parte delle azioni (creazione di una civiltà, creazione di una legge, ecc.) e alla chiusura del server.
- max-territory-chunks — riservato a un futuro limite di chunk per civiltà; 0 attualmente significa illimitato.
Domande Frequenti (FAQ)
D: Ho creato una legge ma non si attiva mai, nemmeno per me.
R: Controlla se il tuo ruolo ha BYPASS_LAWS — se tu (o il ruolo con cui hai testato) ce l'hai, sei completamente esente di proposito. Usa /civ role list e controlla i permessi, o testa semplicemente con un ruolo/account a cui è stato revocato BYPASS_LAWS.
D: /civ territory claim fallisce dicendo "must be adjacent" (deve essere adiacente).
R: Il territorio deve rimanere un unico pezzo di terra connesso — puoi espanderti solo in un chunk che tocca (anche diagonalmente) un chunk che già possiedi. Spostati prima verso il tuo confine.
D: Due civiltà possono possedere lo stesso chunk?
R: No, ogni chunk appartiene al massimo a una civiltà alla volta. I claim sono esclusivi.
D: Ho bisogno di Vault o di un plugin di economia per le multe?
R: No — il tesoro (visibile in /civ info) è completamente interno al plugin. Non tocca i saldi dei giocatori né alcun plugin di economia.
D: Che succede se elimino un ruolo che i cittadini hanno attualmente?
R: Vengono automaticamente spostati al ruolo predefinito della civiltà (solitamente "citizen") — nessuno si ritrova con un ruolo non valido.
D: Il Governatore può lasciare la civiltà?
R: Non direttamente — trasferisci/cambia prima l'assegnazione del ruolo di governatore (tramite i comandi dei ruoli) prima che il governatore attuale se ne vada, altrimenti la civiltà rimarrebbe senza un capo di stato definito.
D: Una punizione di ARREST funziona senza una zona PRISON?
R: Viene comunque registrata e il giocatore viene avvisato, ma senza una zona PRISON non c'è nulla che lo confini fisicamente. Crea una zona di tipo PRISON nella tua civiltà per un effetto completo.
Limitazioni Conosciute
- ENTER_ZONE e ITEM_TRADE come trigger di legge sono definiti per usi futuri ma non ancora collegati a un'azione in-game (l'accesso alle zone funziona già separatamente tramite i ruoli, come spiegato sopra).
- I risultati delle elezioni/votazioni non vengono applicati automaticamente (es. vincere un voto ELECT_GOVERNOR non scambia automaticamente il ruolo di governatore) — agisci tu stesso sul risultato con i comandi dei ruoli.
- Nessuna diplomazia integrata, guerre o integrazione con plugin di economia per ora — il tesoro è solo interno.
- L'applicazione delle regole sulla TNT copre solo la TNT accesa dai giocatori (acciarino, frecce infuocate); le reazioni a catena della TNT e la TNT attivata da redstone non sono attribuite a un giocatore specifico e quindi non sono coperte dalle leggi.
Supporto e Feedback
Hai trovato un bug, hai una domanda o vuoi una funzionalità? Lascia una recensione o apri una discussione in questa pagina di risorse — il feedback modella direttamente i futuri aggiornamenti.
CivilizationCore — costruisci una civiltà, non solo una base.
CivilizationCore is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 2 times (via Spigot). Download it and open it directly in the game.