Vai al contenuto
ShadowMC

Configurazione

ShadowOneBlock

La variante OneBlock del core isole della suite.

Premium v1.0.4

Dove sono i file

plugins/ShadowOneBlock/

Il plugin li crea al primo avvio e li aggiorna da solo alle nuove versioni, senza toccare le tue modifiche.

Applicare le modifiche

/ob admin reload

Rilegge i file senza riavviare il server.

Cosa c’è dentro

16 file · 218 impostazioni

Da dove partire: config.yml

Impostazioni

I file che decidono come si comporta il plugin. Si parte da qui.

config.yml

Impostazioni generali
82 impostazioni
plugins/ShadowOneBlock/config.yml
Note del file

Il modulo oneblock della suite Shadow.

Una nota sulla lingua

Questo file, come tutte le altre config, è scritto in inglese: chiavi, valori e commenti. L'unico testo tradotto è quello che legge un giocatore - messaggi, titoli dei menu, nomi e lore degli item - e sta in un file a parte (vedi "messages.language" più sotto).

Continua a leggere

FUNZIONAMENTO CON IL RESTO DELLA SUITE

Non c'è niente da configurare: ShadowOneBlock trova da solo ShadowEssentials, ShadowPermissions, ShadowRegions e un plugin di economia quando ci sono, e funziona allo stesso modo quando non ci sono. Per vedere a cosa si è agganciato e a cosa no, in gioco: /ob suite

AGGIORNAMENTI

Quando aggiorni, i tuoi file vengono portati alla nuova versione automaticamente: tutto quello che hai cambiato viene mantenuto, le nuove opzioni arrivano con i loro valori predefiniti. I file com'erano prima sono in backup/<date>/, e se qualcosa richiede la tua attenzione troverai PORTING-<version>.txt in questa cartella, che dice cosa sistemare a mano.

Dove vengono salvati isole, membri, upgrade e missioni

Di serie: un database H2 dentro plugins/ShadowOneBlock/data/. Niente da installare, niente da configurare, funziona subito.

Continua a leggere

Passa a MySQL (mysql.enabled: true) se hai un server vero e proprio, se vuoi che i backup stiano insieme a quelli degli altri plugin, o se più server devono condividere le stesse isole. Il database che indichi deve già esistere e l'utente deve poter creare tabelle al suo interno: al resto pensa il plugin.

storage5 chiavi
storage.mysql7 chiavi
enabledfalse
host"127.0.0.1"
port3306
database"shadowoneblock"
username"root"
password""
parameters"useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC&characterEncoding=utf8"

Aggiunto in coda alla stringa di connessione JDBC.

storage.h21 chiave
auto-serverfalse

true = puoi aprire il file con DBeaver mentre il server è acceso.

storage
fallback-to-localtrue

true = se MySQL è configurato ma non risponde, il plugin ripiega sul database locale invece di rifiutarsi di partire. Mettilo a false solo se preferisci un avvio fallito a isole salvate nel posto sbagliato.

table-prefix"sob_"

Prefisso messo davanti a ogni tabella creata dal plugin. Utile quando lo stesso database è condiviso con altri plugin o servizi - compreso un altro modulo isole della suite puntato sullo stesso MySQL.

storage.pool5 chiavi
maximum-pool-size10
minimum-idle2
connection-timeout-ms10000
idle-timeout-ms600000
max-lifetime-ms1800000

Il blocco

Quello che ESCE dal blocco - materiali, mob, casse, fasi, il draft - sta in phases.yml, mutations.yml e infusions.yml, ed è lì che passerai il tuo tempo. Quello che resta qui è la manciata di impostazioni sul blocco come oggetto nel mondo: dove parte una nuova isola e quanto spazio ha.

oneblock5 chiavi
give-starter-itemstrue

true = gli item elencati in starter_chest.yml vanno direttamente nell'inventario di chi crea l'isola. In un oneblock non c'è una CASSA iniziale, perché non c'è dove metterla: l'isola è un singolo blocco sospeso nel vuoto. Mettilo a false per un server in cui i giocatori partono letteralmente con niente.

starting-clearance3

Quanto spazio vuoto viene liberato intorno al blocco quando si crea un'isola, in blocchi. Conta in un solo caso, ma è un caso che capita: uno slot della griglia assegnato a una nuova isola prima che la pulizia della precedente sia finita, che senza questo farebbe finire il nuovo giocatore in mezzo ai resti di qualcun altro. Da 0 a 8.

biome-radius10

Fin dove viene dipinto il bioma della fase intorno al blocco, in blocchi. Un bioma si scrive un blocco alla volta, quindi coprire un'intera isola vorrebbe dire centinaia di migliaia di scritture a ogni cambio di fase - un freeze del server che noterebbero tutti. Intorno al blocco è anche l'unico posto dove serve davvero: è ciò che colora il cielo e l'acqua e decide quali mob farà spawnare il gioco stesso. 0 disattiva del tutto i biomi.

mob-cap-near-block12

Il numero massimo di creature vive ammesse entro 8 blocchi dal blocco prima che smetta di aggiungerne altre. I mob del blocco NON passano per il limite di popolazione di Minecraft - quello riguarda lo spawn naturale, mentre questi li mette lì il plugin - quindi senza un tetto una fase con mob-chance al massimo, triplicata dalla mutazione Swarm, trasforma un'isola in una folla che nessuno è obbligato a ripulire. È una rete di sicurezza, non una manopola di regolazione: alzalo solo se sai che il tuo server lo regge.

starter-schematicfalse

true = quando creano un'isola, i giocatori scelgono prima una struttura di partenza da island_schematics/ (serve WorldEdit o FastAsyncWorldEdit, ed è una funzione Premium). Qualunque cosa costruisca la struttura, il plugin poi libera una sacca d'aria al centro e ci mette il blocco, così la struttura non può mai seppellirlo.

Continua a leggere

È DISATTIVATO di serie perché partire da un blocco nel vuoto È la modalità: una piattaforma di cortesia elimina le prime due ore di gioco, che sono le migliori. Attivalo per un server che preferisce dare un piccolo avamposto a tema attorno a cui costruire.

island27 chiavi
starting-radius20

Raggio iniziale di un'isola, in blocchi dal suo centro.

spacing250

Distanza tra i centri di due isole affiancate sulla griglia del mondo. Deve essere più del doppio del raggio massimo raggiungibile, altrimenti isole vicine potrebbero toccarsi e le loro protezioni sovrapporsi.

height100

L'altezza (Y) a cui vengono generate le isole.

world-name"oneblock_world"

Nome del mondo dedicato al oneblock. Viene creato se non esiste.

island.delete-cooldown3 chiavi

Quanto aspetta un giocatore tra l'eliminazione di un'isola e la successiva, così nessuno può creare ed eliminare a ripetizione (per farmare la cassa iniziale, per esempio). Le prime eliminazioni sono libere: l'attesa parte dalla "after-deletions"-esima in poi.

enabledtrue
after-deletions2

Da quale eliminazione scatta l'attesa (2 = la prima è libera, dalla seconda in poi c'è un'attesa).

seconds600
island.default-rules8 chiavi

Come partono le regole di un'isola. Ogni proprietario può poi cambiarle per la propria isola da /ob settings -> Island Rules; finché non lo fa, l'isola segue quello che c'è scritto qui - quindi cambiare un valore qui lo cambia per ogni isola che nessuno ha toccato.

NOTA: queste non sono gamerule di Minecraft. Una gamerule vale per un intero mondo e tutte le isole condividono lo stesso mondo, quindi il plugin applica queste regole isola per isola osservando gli eventi.

mob-griefingfalse

Mob che rompono o modificano blocchi: creeper, enderman, ghast, pecore che mangiano l'erba, villager che coltivano.

hostile-spawningtrue

Spawn naturale dei mob ostili dentro l'isola. Spawner, uova e riproduzione restano permessi anche con questa opzione disattivata.

animal-spawningtrue

Spawn naturale di animali e altri mob passivi dentro l'isola.

pvpfalse

Se i giocatori possono colpirsi a vicenda sull'isola.

fire-spreadfalse

Il fuoco si propaga e distrugge i blocchi.

tnt-damagefalse

Le esplosioni causate dai giocatori (TNT, letti nel Nether) rompono i blocchi.

leaf-decaytrue

Le foglie staccate da un tronco decadono da sole.

keep-inventoryfalse

Morire sulla TUA isola non ti fa perdere l'inventario. Vedi "allow-keep-inventory-choice" più sotto: se il proprietario può sceglierlo, o se resta bloccato su questo valore per tutti.

island
allow-keep-inventory-choicetrue

Con false, la regola "keep-inventory" qui sopra è bloccata per tutto il server: il pulsante sparisce dal menu Island Rules e conta solo il valore predefinito appena scritto, ignorando quello che i proprietari avevano salvato prima. Con true (il predefinito) ogni isola la attiva e disattiva per conto suo.

allow-sethometrue

Con true, il proprietario - o un membro che ha SET_HOME - può spostare con /ob sethome il punto esatto in cui l'isola lo riporta: il respawn dopo la morte, la caduta nel vuoto sotto l'isola, il ritorno da un portale privato e /ob home puntano tutti lì invece che al centro dell'isola. Con false il comando è disattivato e si usa sempre il centro.

clear-drops-on-home-teleporttrue

Con true, ogni volta che un giocatore viene riportato alla home della sua isola - morte, caduta nel vuoto, ritorno da un portale privato, /ob home - il plugin prima rimuove tutti gli item a terra su quell'isola: niente disordine e niente lag che si accumula nel tempo. ATTENZIONE: tocca solo gli item a terra, mai quello che c'è dentro una cassa o qualsiasi altro contenitore, ma li distrugge per sempre anche quando erano stati lasciati lì apposta (uno scambio tra membri, per esempio). Disattivalo se preferisci fare ordine a mano.

island.portals2 chiavi

Il Nether e l'End CONDIVISI del server - quelli veri, del mondo principale - non sono affare di questo plugin: configurali tu con Multiverse o un altro plugin per i mondi, se li vuoi. Di default un portale costruito su un'isola resta decorativo: si accende ma non porta nessuno da nessuna parte, ed è voluto ora che ogni isola ha il suo Nether e il suo End PRIVATI (vedi sotto). Meglio un portale che non fa nulla che giocatori catapultati nel Nether condiviso di un normale server survival.

allow-netherfalse

Con true, un portale del Nether acceso su un'isola porta davvero al Nether del server (quello legato al mondo "island.world-name").

allow-endfalse

Con true, un portale o un gateway dell'End acceso su un'isola porta davvero all'End del server.

island
private-nether-world-name"oneblock_world_nether"

Quando allow-nether/allow-end sono false (il default), ogni isola riceve invece una piccola piattaforma PRIVATA nel Nether e nell'End, dentro due mondi vuoti condivisi da tutte le isole - non un mondo per ciascuna, sarebbe troppo pesante. Si raggiungono con un vero portale acceso sulla tua isola (12 occhi di Ender per l'End, esattamente come al solito): il plugin costruisce sia la piattaforma sia la via del ritorno, già accesa. /ob end resta una scorciatoia diretta, comoda prima di aver costruito un vero portale dell'End.

private-end-world-name"oneblock_world_the_end"
private-platform-radius-nether2

Raggio delle due piattaforme private (2 = 5x5, 4 = 9x9), ciascuna per conto suo.

private-platform-radius-end4
private-platform-material-nether"NETHERRACK"

Materiali con cui sono costruiti la piattaforma privata e il portale. Ognuno deve essere un nome di Material di Bukkit valido ("NETHERRACK", "END_STONE", "OBSIDIAN"); uno scritto male viene segnalato nel log e si usa quello predefinito.

private-platform-material-end"END_STONE"
private-portal-frame-material"OBSIDIAN"
private-nether-schematic"PrivateNether.schem"

Il nome di un file dentro plugins/WorldEdit/schematics/ (serve WorldEdit o FastAsyncWorldEdit) da incollare al posto della semplice piattaforma piatta, centrato su X/Z sopra il centro della struttura privata, con la base al livello giusto, la PRIMA volta che quell'isola ne ha bisogno. Lascialo vuoto ("") per la classica piattaforma piatta, sempre disponibile anche senza WorldEdit. Nel Nether ogni blocco non-aria incollato viene ricolorato usando "private-nether-block-mix" qui sotto; nell'End la schematic resta esattamente come l'hai fatta, senza portale aggiunto dal plugin.

private-end-schematic"PrivateEnd.schematic"
private-nether-structure-radius15

Un raggio orizzontale usato SOLO per capire se la schematic è già stata incollata una volta, dato che la sua dimensione reale non si conosce finché non viene incollata la prima volta: deve coprire almeno metà della larghezza della tua struttura. Ignorato quando non è configurata nessuna schematic: in quel caso si usa il raggio della piattaforma piatta.

private-end-structure-radius15
island.private-nether-block-mix6 chiavi

Il mix di blocchi tipici del Nether usato per ricolorare la schematic del Nether privato dopo averla incollata. Ogni numero è un peso relativo, non una percentuale esatta: più è alto, più il blocco è comune. Lascia la sezione vuota per tenere i blocchi originali della schematic.

NETHERRACK70
BLACKSTONE10
BASALT8
SOUL_SAND6
SOUL_SOIL4
MAGMA_BLOCK2
island
private-nether-keep-inventorytrue

Morire nel Nether o nell'End privati non fa perdere l'inventario. Questo è un interruttore per tutto il server, non per singola isola come "default-rules.keep-inventory" più sopra, ed è attivo di serie perché la morte in quelle due dimensioni è quasi sempre una caduta, non un rischio che il giocatore ha scelto di correre.

private-end-keep-inventorytrue
void-catch-min-y40

Sotto questa Y - nel mondo oneblock principale, o su una piattaforma privata del Nether/End - un giocatore che cade viene riportato alla home della SUA isola, o allo spawn se non ne ha una, invece di cadere nel vuoto per sempre. Non vale per la zona dell'hub, che ha una sua soglia in spawn.region.min-y.

leaderboard-size10

Quante righe mostra ogni classifica di /ob top.

disable-thunderstormstrue

Con true, niente temporali nel mondo oneblock. In Minecraft il meteo appartiene a un mondo intero e non a una singola zona, quindi vale per tutto "world-name", isole comprese; ma visto che ogni isola ha comunque il suo meteo PERSONALE (vedi island.default-rules più sopra, mostrato solo a quel giocatore), i fulmini veri restano un fastidio che conviene disattivare qui.

spawn10 chiavi

Dove viene mandato un giocatore quando non ha un'isola a cui tornare - subito dopo /ob delete confirm, per esempio. ATTENZIONE: le isole sono disposte lungo l'asse X a partire da x=0.5 (slot 0) e vanno solo in positivo (slot*spacing), quindi tenere "x" qui sotto negativo garantisce che questo punto non cada mai dentro un'isola, presente o futura. Quando sotto non c'è ancora nessun blocco, il plugin costruisce da solo una piccola piattaforma al primo avvio (vedi ShadowOneBlockPlugin#ensureSpawnPlatform). Cambia questi valori per mandare i giocatori al tuo vero hub o alla tua lobby.

world"oneblock_world"
x-499.5

NOTA: per stare al centro del blocco X=-500 il valore giusto è -499.5, non -500.5 (una Location arrotonda per difetto: -500.5 cade nel blocco -501). Controllalo sempre così quando cambi questi numeri: vuoi il blocco N, scrivi N + 0.5, mai N - 0.5.

y133.0

Il vero pavimento della Hub.schematic incollata qui è a Y133 (controllato blocco per blocco): sotto c'è una massa solida decorativa fino a Y105 e poi una sacca d'aria, non un pavimento su cui stare. 101 era sbagliato: un giocatore messo lì fluttua nel vuoto sopra quella sacca, e il gioco lo "corregge" cercando terreno solido, facendolo comparire a Y133 come se fosse stato teletrasportato (un bug segnalato, corretto qui).

z2.5
yaw0.0
pitch0.0
schematic"Hub.schematic"

Il nome di un file dentro plugins/WorldEdit/schematics/ (serve WorldEdit o FastAsyncWorldEdit) incollato qui automaticamente - centrato su X/Z, con la base a "y" - la PRIMA volta che il blocco a queste coordinate è ancora aria. È lo stesso controllo usato per la piattaforma di sicurezza sotto lo spawn, che infatti viene saltata quando qui c'è scritto qualcosa. Lascialo vuoto ("") per la semplice piattaforma di quarzo. Per cambiarlo o reincollarlo in seguito, usa /ob admin pasteschem invece di modificare questo valore, che conta solo al primo avvio.

platform-material"SMOOTH_QUARTZ"

Materiale e raggio della semplice piattaforma di sicurezza costruita sotto lo spawn quando "schematic" qui sopra è vuoto. Ignorati quando è impostato.

platform-radius4
spawn.region4 chiavi

La zona protetta dell'hub: un rettangolo centrato sulle x/z qui sopra, per tutta l'altezza del mondo. Al suo interno i giocatori possono usare quello che è già piazzato - fornaci, tavoli da incantesimo, leve - ma non romperlo né piazzare niente di nuovo, non spawna nessun mob (né ostile né pacifico), e le perle dell'Ender non funzionano. Chiunque scenda sotto "min-y", cadendo dal bordo dell'hub, viene riportato qui allo spawn: sostituisce i vecchi blocchi barriera invisibili, senza più niente da piazzare a mano nel mondo.

enabledtrue
radius-x60
radius-z60
min-y80

IMPORTANTE: deve stare SOTTO la "y" qui sopra, il pavimento su cui camminano i giocatori, altrimenti vengono teletrasportati a ogni passo invece che solo quando cadono davvero fuori dalla struttura. Il plugin comunque non lo lascia mai andare oltre "y - 1", come rete di sicurezza.

messages2 chiavi
language"en"

La lingua in cui il plugin parla ai giocatori. Indica un file dentro plugins/ShadowOneBlock/lang/, quindi "en" legge lang/en.yml e "it" legge lang/it.yml: il plugin include questi due, inglese come predefinito.

Continua a leggere

Si traduce solo quello che legge un giocatore: messaggi in chat, titoli dei menu, nomi degli item e lore. Comandi, chiavi del config e commenti restano in inglese ovunque, così una guida, una macro o una risposta del supporto funziona in qualunque lingua giri un server.

Per aggiungerne una tua: copia lang/en.yml in lang/<code>.yml, traduci i valori - mai le chiavi - e scrivi quel codice qui.

prefix"&b[ShadowOneBlock] &r"

Licenza

ShadowOneBlock è un plugin Premium. Senza una chiave valida non si avvia: la console spiega il motivo all'avvio, e /ob license è l'unico comando che risponde, così puoi attivare la chiave. Poi riavvia il server.

Continua a leggere

La chiave NON va qui. La attivi in gioco con

/ob license claim <purchase code>

e finisce in license.yml, un file separato apposta - così una richiesta di supporto che dice "mandami la tua config" non arriva con dentro la tua licenza. Il campo "key" qui sotto è solo per chi preferisce distribuire la stessa configurazione su più server.

license4 chiavi

LA CHIAVE VIVE IN license.yml (stessa cartella di questo file), oppure nel file centrale plugins/ShadowControl/licenses.yml per tutta la suite. La 'key' qui sotto è solo un ripiego per i sistemi di deploy che generano config.yml: lasciala vuota.

La chiave NON vive qui: vive in license.yml, in questa cartella, che viene scritto al primo avvio (oppure in plugins/ShadowControl/licenses.yml per tutta la suite).

grace-days7

Giorni di tolleranza prima che la licenza smetta di contare quando un abbonamento è appena scaduto o l'indirizzo non corrisponde - molto più spesso un NAT o un proxy che un furto. 0-60.

activation-url""

Indirizzo base del servizio di attivazione. Il plugin aggiunge da solo /claim e /check. Vuoto = attivazione manuale solo con una chiave.

resolve-public-iptrue

Chiede al servizio licenze ShadowMC quale indirizzo pubblico ha questo server: activation-url + /ip, oppure https://shadow-licences.riccardobotins.workers.dev/ip finché activation-url è vuoto. Risponde con l'indirizzo che vede, e del server non viene inviato niente. È l'unico modo affidabile per saperlo da dietro un NAT, ed è ciò che fa funzionare una licenza venduta per "play.example.net" su una macchina i cui indirizzi locali sono tutti 10.x. false = non chiedere mai. Solo con una licenza installata: un server senza chiave non chiede niente a nessuno.

server-ip""

L'indirizzo con cui è conosciuto questo server, quando è diverso da quelli che riesce a vedere da solo. Serve solo quando una licenza sembra legata a un altro indirizzo pur essendo quello giusto.

bStats (statistiche d'uso anonime, https://bstats.org)

Cosa viene inviato, ogni 30 minuti: quanti server usano il plugin, la versione del plugin, la versione di Minecraft/Paper, la versione di Java, il sistema operativo e il numero di core, quanti giocatori sono online (un numero, nient'altro), l'edizione della licenza in uso e quale economia gestisce i soldi dell'isola (ShadowEconomy, Vault o nessuna). Il server è identificato solo da un serverUuid casuale, generato una volta e salvato in plugins/bStats/config.yml.

Continua a leggere

Non esce nessun dato dei giocatori: niente nomi, niente UUID, niente indirizzi, niente coordinate. Senza una licenza valida il plugin non si avvia, e quindi non viene inviato niente.

false qui disattiva solo ShadowOneBlock. enabled: false in plugins/bStats/config.yml - il file condiviso da tutti i plugin che usano bStats - li disattiva tutti in una volta. Letto all'avvio: una modifica ha effetto al riavvio successivo.

metrics1 chiave
enabledtrue

economy.yml

L’economia dell’isola
5 impostazioni
plugins/ShadowOneBlock/economy.yml
Note del file

Tutto ciò che riguarda i soldi in un unico file, tenuto fuori da config.yml così non devi cercarlo tra impostazioni che non c'entrano.

ShadowOneBlock non include un'economia propria. Le funzioni legate ai soldi richiedono un'economia: ShadowEconomy, oppure Vault con un plugin di economia. - ShadowEconomy viene usato direttamente ogni volta che è installato, con o

senza Vault.

- Altrimenti qualsiasi plugin di economia registrato in Vault: EssentialsX, CMI

e simili (vedi il manuale).

Senza nessuno dei due, tutto quello che c'è qui sotto (banca dell'isola, costi e ricompense in soldi di upgrade/missioni/perk/mutazioni) si disattiva da solo nei menu invece di generare errori. /ob suite mostra quale economia è stata agganciata.

currency''

La valuta di ShadowEconomy in cui si contano i soldi dell'isola: banca, costi, ricompense e i placeholder del saldo. Lasciala vuota ('') per la valuta predefinita di ShadowEconomy. Un nome che ShadowEconomy non ha ripiega sulla valuta predefinita, con un avviso in console. Vault ha una sola valuta, quindi con Vault questa impostazione viene ignorata.

bank4 chiavi
starting-balance0

Saldo iniziale della banca condivisa quando viene creata un'isola.

min-transaction0.01

Importo minimo e massimo per un singolo deposito o prelievo, sia da /ob bank deposit|withdraw sia dal menu della banca.

max-transaction1000000
history-size200

Quanti movimenti il menu della banca tiene disponibili nel suo storico (/ob bank -> History). Solo visualizzazione: ogni transazione resta comunque salvata per sempre nel database.

generators.yml

I generatori
5 impostazioni
plugins/ShadowOneBlock/generators.yml
Note del file

Questo file è distribuito in inglese. La versione italiana è esempi/it/generators.yml, accanto a questo nella cartella del plugin, e il plugin non la legge mai: per usare quella italiana, copiala al posto di questo file e usa /ob admin reload. I messaggi e i menu seguono da soli "messages.language" in config.yml; questo file è contenuto che scrivi tu, quindi resta così com'è.

Il generatore di minerali dell'isola.

Quando lava e acqua si incontrano dentro un'isola, il blocco che normalmente sarebbe cobblestone viene sostituito da uno estratto da questa tabella. Ogni isola ha il suo livello di "prestigio": più è alto, più è ricca la tabella dei materiali. Il prestigio si compra dal menu del generatore (/ob generator) e vale per tutti i membri dell'isola.

I numeri sotto "materials" sono PESI e non devono per forza sommare a 100: vengono normalizzati da soli. 50/30/20 e 5/3/2 danno lo stesso risultato. Il menu mostra sempre la percentuale reale che ha calcolato.

Come deve progredire questa tabella: ogni prestigio toglie 4 punti alla cobblestone, ne dà 2 al minerale sbloccato dal prestigio precedente, e fa entrare il nuovo minerale al 2%. Il costo in item di un prestigio chiede sempre il minerale del prestigio PRECEDENTE - mai quello che sta per sbloccare - così non ti viene mai chiesto un minerale che non hai ancora modo di ottenere.

enabledtrue
fallback-materialCOBBLESTONE

Usato solo quando un prestigio non ha nessun materiale valido (un errore di battitura nella config): così il generatore non smette mai del tutto di funzionare.

prestiges9 chiavi
prestiges.02 chiavi
display-name"&7Basic"
prestiges.0.materials2 chiavi

Da dove parte ogni isola: gratis, non c'è niente da comprare.

COBBLESTONE97
COAL_ORE3
Ancora 8 voci con la stessa forma di 0: 1, 2, 3, 4, 5, 6, 7, 8

infusions.yml

Le infusioni
16 impostazioni
plugins/ShadowOneBlock/infusions.yml
Note del file

Questo file è in inglese. La sua versione italiana è esempi/it/infusions.yml, accanto a questo nella cartella del plugin, e il plugin non la legge mai: per usare quella italiana, copiala al posto di questo file e usa /ob admin reload. I messaggi e i menu seguono da soli "messages.language" in config.yml; questo file è contenuto che scrivi tu, quindi resta così com'è.

ShadowOneBlock - infusions.yml

Dire al blocco di cosa hai bisogno.

Il problema che risolve

In un oneblock un giocatore non decide niente di quello che ottiene: rompe, e prende quello che viene. Ti serve ossidiana mentre la fase dà netherrack? Continua a rompere finché i dadi non sono d'accordo. È l'unico momento in cui la modalità smette di essere un gioco e diventa un'attesa - e capita sempre proprio quando il giocatore ha un piano in mente.

Continua a leggere

COS'È UN'INFUSIONE L'isola consegna al blocco item di una AFFINITÀ, e per un certo numero di rotture successive il blocco produce molto più spesso ciò che quell'affinità spinge - COMPRESE cose che la fase attuale non produce affatto, perché un materiale che manca dalla tabella della fase non viene saltato, viene AGGIUNTO. Ferro nel Nether, legno nell'Underground. È il modo in cui un giocatore dice al blocco di cosa ha bisogno in questo momento, e lo paga.

PERCHÉ NON È UNO SCONTO SUL GIOCO Tre freni, e sono il motivo per cui il sistema non ruba la modalità a se stessa. Si paga in ITEM, quindi costa risorse già guadagnate; dura in BLOCCHI ROTTI e non in minuti, quindi vale lo stesso per chi gioca da solo e per un'isola di cinque; e c'è un'ATTESA tra una e l'altra, quindi nessuno vive permanentemente in infusione.

Premium. Senza una chiave il menu si spiega da solo e non fa niente.

enabledtrue

false = l'infusione è disattivata su tutto il server. /ob infuse lo dice e si ferma lì.

blocks-per-item6

Quante rotture di durata vale ogni item consegnato.

max-blocks600

Il tetto della durata, per quanti item vengano consegnati.

min-items8

Il minimo di item per far partire un'infusione. Sotto questa soglia il menu mostra l'affinità in grigio, con quanti ne mancano.

max-items64

Il massimo di item presi in una volta. Tutto quello che va oltre resta nell'inventario: è ciò che impedisce a qualcuno di scaricare una cassa doppia di ferro in una sola infusione.

cooldown-seconds300

L'attesa dopo che un'infusione FINISCE prima che ne possa partire un'altra, in secondi. 0 la toglie. Si conta dalla fine e non dall'inizio, così un'infusione lunga non è anche un'attesa lunga.

bias-per-item0.08

Quanta forza aggiunge ogni item. La forza è ciò che moltiplica il peso di un materiale potenziato: a 1.0 un materiale già presente nella fase esce il doppio delle volte, a 3.0 quattro volte tanto.

max-bias5.0

Il tetto della forza. Oltre, altri item fanno solo durare di più l'infusione - ed è voluto: trasforma "consegna tutto quello che hai" in una scelta sulla durata invece che in un modo per rompere la loot table.

inject-weight-base4.0

Il peso che riceve un materiale che la fase attuale NON ha quando viene aggiunto alla tabella. Questo solo numero è ciò che rende l'infusione interessante invece di una piccola spinta, quindi vale la pena capirlo: il peso iniettato è questo valore per la forza dell'infusione. Con 4.0 e una forza di 2.0 un materiale assente entra nella tabella con peso 8 - una presenza reale accanto alle voci della fase, senza soffocarle.

Le affinità

accepts:  ciò che il giocatore può CONSEGNARE per avviarla
  boosts:   ciò che il blocco avrà poi più probabilità di PRODURRE, ognuno con la
            propria forza relativa (1.0 = la forza piena dell'affinità)
Continua a leggere

Le due liste sono separate apposta, ed è lì che sta il design: permettono a un giocatore di pagare in lingotti per ottenere MINERALE, o di pagare con qualcosa che una fase dà a volontà per ottenere qualcosa che non darebbe mai.

affinities7 chiavi
affinities.iron5 chiavi
display-name"&f&lIron Affinity"
iconIRON_INGOT
lore["&7The block remembers the metal."]
accepts
[IRON_INGOT, IRON_NUGGET, RAW_IRON, IRON_BLOCK]+1
affinities.iron.boosts3 chiavi
IRON_ORE1.0
DEEPSLATE_IRON_ORE1.0
RAW_IRON_BLOCK0.4
Ancora 6 voci con la stessa forma di iron: gold, gems, wood, earth, nether, builder

island_levels.yml

I livelli dell’isola
11 impostazioni
plugins/ShadowOneBlock/island_levels.yml
Note del file

Imposta come viene calcolato il "livello" di un'isola. Il livello è mostrato nella scoreboard (%island_level%) e deriva dai punti che un'isola raccoglie.

Ogni volta che un membro piazza uno dei blocchi elencati qui sotto dentro la propria isola, l'isola guadagna i punti indicati; romperlo li toglie (mai sotto zero). I blocchi non elencati valgono 0 punti, quindi non spostano affatto il livello. Il livello in sé è semplicemente:

level = island_points / points-per-level (arrotondato per difetto)

NOTA: questo è un conteggio incrementale - segue ciò che i giocatori piazzano e rompono dal momento in cui la funzione è attiva - e non una scansione completa dei blocchi già presenti. Un'isola costruita prima che questa venisse attivata parte da zero e cresce da lì.

points-per-level100
blocks10 chiavi
DIRT1
COBBLESTONE1
STONE2
OAK_LOG3
OAK_PLANKS1
IRON_BLOCK25
GOLD_BLOCK50
DIAMOND_BLOCK200
EMERALD_BLOCK150
NETHERITE_BLOCK500

island_scoreboard.yml

La scoreboard dell’isola
5 impostazioni
plugins/ShadowOneBlock/island_scoreboard.yml
Note del file

Il pannello laterale con le statistiche dell'isola.

Questa è disattivata di serie, ed è voluto

Minecraft dà a un giocatore una sola sidebar, e in questa suite la gestisce un solo plugin: ShadowEssentials, ovunque - lobby, survival, minigiochi e isole. Su un'isola non mostra le cose della lobby: disegna una sua board "oneblock", e chiede a noi il livello, i membri, il raggio e la banca. Una sola sidebar, coerente in tutto il server, e nessuno dei due plugin che la contende all'altro a ogni tick.

Questa conviene comunque in due casi:

- ShadowEssentials non è installato (oneblock senza l'hub);
- la vuoi, diversa da quella dell'hub, solo sulle isole.

In entrambi i casi: metti "enabled: true" qui sotto e, se c'è ShadowEssentials, "scoreboard.yield-to-oneblock: true" nel suo modules/tablist.yml. Se il plugin rileva un conflitto che non riesce a risolvere da solo, spegne la propria board e scrive in console cosa cambiare: non li troverai mai accesi entrambi nello stesso momento.

enabledfalse

L'interruttore generale di questa scoreboard.

only-in-oneblock-worldtrue

Letto solo quando "enabled" qui sopra è true. Dice DOVE compare la board quando è accesa, e una board spenta non ha niente da posizionare: con "enabled: false" questa scoreboard non compare da nessuna parte, qualunque cosa ci sia scritta qui.

true  = solo nel mondo delle isole (island.world-name in config.yml)
false = in tutti i mondi. Usalo solo dopo aver spento la board di ShadowEssentials,
        altrimenti le due si sovrappongono fuori dal mondo oneblock.
enabled-by-defaulttrue

Cosa vede, la prima volta che entra, un giocatore che non ha mai scelto da /ob settings (o /ob scoreboard).

update-interval-ticks20
title"&b&lShadowOneBlock"

Le righe, dall'alto in basso (15 al massimo, il limite di Minecraft). Sono testo che legge un giocatore, quindi non sono scritte qui: vengono dal file di lingua, nella lingua del server ("scoreboard.lines" in lang/<language>.yml, quello scelto da "messages.language" in config.yml). Per disegnare la tua scoreboard, scrivi "lines:" in questo file - le tue vincono, in ogni lingua. I nomi dei placeholder restano in inglese. Per esempio:

lines:
  - "&7"
  - "&f%player_name%"
  - "&7Money: &a%player_money%"
  - "&7"
  - "&fIsland: &b%island_name%"
  - "&7Level: &e%island_level%"

Placeholder del giocatore:

%player_name%        il nome di chi sta guardando la scoreboard
%player_money%       i suoi soldi (serve un plugin di economia)
%has_island%         sì/no nella lingua del server (lang: scoreboard.has-island-yes/-no)

Placeholder del rank, letti tramite la suite (ShadowEssentials -> ShadowPermissions, LuckPerms o Vault). Vuoti se non ce n'è nessuno installato:

%rank_prefix%        il prefisso del rank
%rank_suffix%        il suffisso del rank
%rank_group%         il nome del gruppo principale

Placeholder dell'isola:

%island_name%        il nome dell'isola (ricavato dal proprietario)
%island_owner%       il nome del proprietario
%island_role%        il ruolo di chi sta guardando (lang: scoreboard.owner-role se è sua)
%island_level%       il livello dell'isola (vedi island_levels.yml)
%island_members%     i membri in questo momento, proprietario compreso
%island_max_members% il limite di membri
%island_radius%      il raggio protetto dell'isola, in blocchi
%island_bank%        i soldi nella banca condivisa dell'isola

Placeholder di Oneblock:

%island_phase%          il nome della fase in cui si trova l'isola
%island_phase_number%   la sua posizione, contando da 1
%island_phase_total%    quante fasi contiene phases.yml
%island_phase_progress% "37/150", blocchi rotti su blocchi necessari
%island_phase_percent%  lo stesso come numero da 0 a 100
%island_blocks%         i blocchi che l'isola ha rotto da quando esiste
%island_mutation%       la mutazione che accompagna questa fase
%island_infusion%       l'infusione attiva, con le rotture rimaste

Una riga il cui placeholder non si applica - %island_level% per qualcuno senza isola - viene saltata da sola.

missions.yml

Le missioni
8 impostazioni
plugins/ShadowOneBlock/missions.yml
Note del file

Questo file è in inglese. La sua versione italiana è esempi/it/missions.yml, accanto a questo nella cartella del plugin, e il plugin non la legge mai: per usare quella italiana, copiala al posto di questo file e usa /ob admin reload. I messaggi e i menu seguono da soli "messages.language" in config.yml; questo file è contenuto che scrivi tu, quindi resta così com'è.

Missioni mostrate nel menu "Missioni" (raggiungibile dal pannello di controllo, /ob panel). Aggiungine, togline o cambiane quante vuoi: il menu si adatta da solo.

Ogni missione ha:

display:   materiale/nome/lore mostrati nel menu. Nome e lore sono testo
           che un giocatore legge, scritto proprio qui: questo file è in
           inglese (vedi l'inizio del file per quello italiano).
scope:     chi porta avanti i progressi:
             PLAYER - ogni giocatore ha i propri progressi separati
             ISLAND - i progressi sono condivisi da tutti i membri dell'isola
objective: cosa bisogna fare.
  type:    uno dei tanti tipi disponibili (elenco completo qui sotto).
  material: facoltativo - se c'è, filtra per quel blocco/item
            (type: BREAK_BLOCK + material: STONE = solo pietra).
            Se lo ometti, l'evento conta qualunque sia il materiale.
  custom-name: facoltativo, SOLO per type: CUSTOM_ITEM_OBTAIN - chiede un
            item con esattamente questo nome (da qualsiasi plugin di item, Oraxen
            per esempio) invece di un qualsiasi materiale vanilla.
  amount:  quante volte va fatto - o quanto deve accumularsi, per i tipi
            "cumulativi" elencati sotto - per completarla.
rewards:   ricompense date UNA volta al completamento. Ogni ricompensa ha un
           "type":
             MONEY   - { type: MONEY, amount: 500 }        (richiede ShadowEconomy, oppure Vault con un plugin di economia)
             COMMAND - { type: COMMAND, command: "..." }   (eseguito dalla console, con %player% sostituito)
             MESSAGE - { type: MESSAGE, text: "..." }
             ITEM    - { type: ITEM, material: DIAMOND, amount: 3 }

Tipi di obiettivo disponibili (type):

BREAK_BLOCK, PLACE_BLOCK, PLANT_SEED, HARVEST_CROP, FISH_CATCH,
CRAFT_ITEM, SMELT_ITEM, ENCHANT_ITEM, TAME_ANIMAL, BREED_ANIMAL,
SHEAR_SHEEP, FILL_BUCKET, EMPTY_BUCKET, EAT_FOOD, KILL_MOB, KILL_PLAYER,
DIE, JUMP, SHOOT_ARROW, HIT_ARROW_TARGET, OPEN_CONTAINER, RIDE_ENTITY,
SLEEP_IN_BED, PURCHASE_UPGRADE, INVITE_MEMBER, CUSTOM_ITEM_OBTAIN
- "cumulativi" (amount somma il valore reale, non sempre +1):
DEAL_DAMAGE, TAKE_DAMAGE (punti di danno), WALK_DISTANCE, SWIM_DISTANCE,
ELYTRA_DISTANCE (blocchi percorsi), GAIN_EXPERIENCE (punti esperienza),
LEVEL_UP (livelli guadagnati), DEPOSIT_BANK_MONEY (monete depositate)
missions5 chiavi
missions.break_stone_14 chiavi
missions.break_stone_1.display3 chiavi
materialSTONE
name"&fNovice Miner"
lore["&7Break &e100 &7stone blocks"]
missions.break_stone_1
scopeISLAND
missions.break_stone_1.objective3 chiavi
typeBREAK_BLOCK
materialSTONE
amount100
missions.break_stone_1
rewards
[{ type: MONEY, amount: 500 }, { type: MESSAGE, text: "&aMission complete: Novice Miner!" }]+1
Ancora 4 voci con la stessa forma di break_stone_1: place_dirt_1, fisherman_1, walker_1, gladiator_1

mutations.yml

Le mutazioni
5 impostazioni
plugins/ShadowOneBlock/mutations.yml
Note del file

Questo file è distribuito in inglese. La versione italiana è esempi/it/mutations.yml, accanto a questo nella cartella del plugin, e il plugin non la legge mai: per usare quella italiana, copiala al posto di questo file e usa /ob admin reload. I messaggi e i menu seguono da soli "messages.language" in config.yml; questo file è contenuto che scrivi tu, quindi resta così com'è.

ShadowOneBlock - mutations.yml

I modificatori estratti insieme a una fase nel draft delle fasi.

Cos'è una mutazione

Una mutazione accompagna una fase per tutta la durata di quella fase, su UNA sola isola. Viene estratta quando il draft propone una fase (vedi la sezione "draft" di phases.yml): l'isola non vota la fase e poi il modificatore - vota la COPPIA. È questo che rende la scelta vera, perché la fase più ricca può presentarsi con la mutazione peggiore, e sta all'isola decidere cosa conta di più in quel momento.

Continua a leggere

COME INVENTARNE DI TUE

Non c'è una lista di "tipi" di mutazione da cui scegliere, e niente qui richiede di ricompilare il plugin. Una mutazione è una qualsiasi combinazione dei sei numeri qui sotto; mettine due nella stessa voce e hai una mutazione che prima non esisteva. I valori neutri - quelli che non cambiano niente - sono 1.0 per i moltiplicatori e 0 per gli altri, e una mutazione semplicemente omette ciò che non tocca.

drop-multiplier             quante volte un blocco rotto droppa il suo loot.
                            2.0 = il doppio. Le frazioni funzionano: 1.5 significa che un
                            blocco su due droppa doppio, in media. Gli incantesimi
                            vengono rispettati - Fortuna e Tocco di velluto si applicano
                            anche alle copie extra.
rare-bias                   moltiplica il peso delle voci RARE della
                            fase. "Rara" viene calcolato dalla tabella
                            stessa (tutto ciò che sta sotto la metà della sua quota
                            media), quindi significa la stessa cosa sia che
                            tu abbia scritto pesi da 1..5 sia da 100..500.
mob-chance-multiplier       moltiplica quanto spesso una rottura fa spawnare un mob.
                            0 disattiva del tutto i mob per la fase.
money-per-block             monete date a chi rompe il blocco.
                            Serve un plugin di economia; ignorato se manca.
blocks-required-multiplier  moltiplica quanti blocchi servono a chiudere la fase.
                            0.75 = un quarto più corta. Sopra 1 = più lunga.
haste-level                 Rapidità data a chi sta rompendo, da 1 a 4.
                            Rinnovata a ogni rottura, sparisce dieci secondi
                            dopo che smette.

weight è l'estrazione: relativo alle altre voci, non una percentuale. Una mutazione con weight 0 non esce mai - comodo per parcheggiarne una che stai scrivendo senza cancellarla.

mutations9 chiavi
mutations.double-drops5 chiavi
display-name"&e&lDouble Loot"
iconHOPPER
weight20
lore
["&7Every block broken yields twice as much.", "&8Fortune and Silk Touch work on the copies too."]+1
mutations.double-drops.effects1 chiave
drop-multiplier2.0
Ancora 8 voci con la stessa forma di double-drops: rich-vein, swarm, quiet, fragile, golden, frenzy, hoarder, cursed

phases.yml

Le fasi del blocco
40 impostazioni
plugins/ShadowOneBlock/phases.yml
Note del file

Questo file arriva in inglese. La sua versione italiana è esempi/it/phases.yml, accanto a questo nella cartella del plugin, e il plugin non la legge mai: per usare quella italiana, copiala al posto di questo file e usa /ob admin reload. I messaggi e i menu seguono da soli "messages.language" in config.yml; questo file è contenuto che scrivi tu, quindi resta com'è.

ShadowOneBlock - phases.yml

Il blocco. Cosa ne esce, e come si sviluppa il viaggio.

L'unico file che fa di questo plugin un oneblock

Ogni isola possiede esattamente un blocco, al suo centro. Rompilo e ritorna, estratto dalla tabella della fase in cui si trova l'isola. Rompine abbastanza e l'isola passa alla fase successiva, e la tabella cambia. Questa è tutta la modalità; tutto il resto del plugin - protezione, ruoli, upgrade, banca, missioni, classifiche - è il motore delle isole che le sta attorno.

L'ORDINE È L'ORDINE DI QUESTO FILE Le fasi vengono affrontate dall'alto in basso, esattamente come sono scritte qui. Non c'è un campo "order" da tenere allineato. Su disco un'isola salva l'ID della fase, mai la sua posizione, quindi inserire una nuova fase a metà NON fa tornare indietro tutte le isole del server - l'unica cosa che un indice avrebbe fatto, e il motivo per cui non viene usato.

SE MODIFICHI UNA FASE IN CUI SI TROVA GIÀ UN'ISOLA Ha effetto al prossimo blocco rotto. Non viene ricalcolato niente e non si perde nessun progresso. Eliminare una fase in cui si trova un'isola è l'unica modifica distruttiva: quell'isola riparte dalla prima fase (o è così, o resta bloccata su un nome che non esiste più). /ob admin setphase la mette dove vuoi senza toccare niente di quello che ha costruito.

UNA NOTA SUI PESI

Sono relativi, non percentuali: non devono dare per forza un totale preciso. 50 accanto a 5 significa "dieci volte più spesso", che il resto della tabella sommi a 100 o a 3000. Scrivi quello che ti sembra più leggibile.

enabledtrue

false = il blocco non ritorna affatto. Utile solo mentre stai riscrivendo questo file su un server attivo e preferisci che nessuno avanzi nel frattempo.

fallback-materialCOBBLESTONE

Messo al suo posto se in qualche modo una fase si ritrova senza nessun blocco valido. Non dovrebbe mai succedere; esiste perché un errore lasci una tabella rotta invece di un buco nel mondo.

loop-at-endtrue
true  = dopo l'ultima fase l'isola ricomincia dalla prima,
        mantenendo il conteggio totale dei blocchi. Modalità infinita.
false = l'isola resta sull'ultima fase per sempre. Le sue ricompense vengono consegnate
        una volta, nel momento in cui ci arriva, e mai più.
action-bar-progresstrue

La barra di progresso sopra la hotbar, ridisegnata a ogni rottura. Disattivala per un server che preferisce tenere l'action bar per altro.

announce-phasetrue

Annuncia una nuova fase in chat ai membri online dell'isola.

regen-delay-ticks1

Tick da aspettare prima di rimettere il blocco. 1 è il tick subito dopo la rottura: il giocatore che ci sta sopra cade per un ventesimo di secondo, cosa che non si vede. Alzalo solo per rendere la rottura volutamente più lenta; 0 non è consigliato (la rottura viene ancora applicata in quel tick, e il server piazzerebbe un blocco in un punto che sta per liberare).

Il draft delle fasi - una delle due cose che nessun altro oneblock fa

Senza, le fasi sono un binario: tutti vedono lo stesso ordine, per sempre. Con il draft, ogni volta che una fase finisce all'isola vengono proposte alcune delle fasi che potrebbe raggiungere, ognuna con una MUTAZIONE estratta per lei (mutations.yml), e i membri VOTANO quale vivere.

Continua a leggere

Due isole che partono insieme smettono di avere la stessa partita, e un'isola ricominciata non è mai due volte lo stesso gioco. È anche l'unico punto del plugin in cui i membri devono mettersi d'accordo su qualcosa, ed è proprio questo lo scopo.

Premium. Nella versione free le fasi seguono questo file dall'alto in basso, senza mutazioni - che è esattamente come funziona ogni altro oneblock.

draft7 chiavi
enabledtrue
candidates3

Quante fasi vengono messe ai voti. Da 2 a 7 (sono gli slot centrali del menu). Tre è il punto ideale: abbastanza scelta per discuterne, poche abbastanza da leggerle a colpo d'occhio.

seconds-to-vote60

Quanto dura la votazione. Si chiude prima da sola non appena tutti i membri ONLINE hanno votato, quindi questa è l'attesa per chi è assente, non per chi sta giocando.

owner-vote-weight2

Quanti voti vale quello del proprietario. 2 risolve un pareggio in un'isola piccola senza fargli decidere da solo in una piena. 1 = tutti uguali.

look-ahead3

Fin dove può arrivare l'estrazione lungo la lista, partendo dalla fase appena finita. 1 renderebbe il draft inutile (un solo candidato, la successiva); numeri alti permettono a un'isola di saltare molto avanti nel file, il che rende il server più imprevedibile.

allow-repeatfalse

true = le fasi che l'isola ha già attraversato possono uscire di nuovo. Attivalo per un server infinito in cui le fasi sono luoghi da rivisitare invece che gradini da salire.

mutationstrue

false = si vota solo la fase, senza nessuna mutazione associata.

Le fasi

Ognuna prende:

display-name    ciò che leggono i giocatori, codici colore compresi
icon            l'item mostrato in /ob phases
blocks-required quanti blocchi servono a chiudere la fase
biome           il bioma dipinto intorno al blocco (facoltativo)
blocks:         la tabella pesata da cui viene estratto il blocco
mobs:           la tabella pesata di ciò che può comparirci sopra
mob-chance      da 0 a 1, quanto spesso una rottura fa spawnare anche un mob
chest-loot:     cosa riempie una cassa, quando la tabella ne estrae una
rewards:        date a ogni membro online quando la fase si chiude
Continua a leggere

Le ricompense usano lo stesso formato di missions.yml e upgrades.yml:

- type: MONEY / ITEM / COMMAND / MESSAGE
phases8 chiavi
phases.plains9 chiavi
display-name"&a&lPlains"
iconGRASS_BLOCK
blocks-required150
biomePLAINS
phases.plains.blocks15 chiavi
GRASS_BLOCK40
DIRT30
OAK_LOG12
OAK_LEAVES10
COARSE_DIRT8
SAND6
COBBLESTONE6
STONE5
GRAVEL4
CLAY3
PUMPKIN2
HAY_BLOCK2
OAK_PLANKS2
CHEST1
COAL_ORE1
phases.plains.mobs5 chiavi
CHICKEN10
COW8
SHEEP8
PIG6
ZOMBIE3
phases.plains
mob-chance0.05
chest-loot
[{ material: OAK_SAPLING, amount: 2 }, { material: BONE_MEAL, amount: 8 }, { material: APPLE, amount: 3 }]+2
rewards
[{ type: MESSAGE, text: "&aThe plains are over: the block has stopped being kind." }, { type: MONEY, amount: 250 }]+1
Ancora 7 voci con la stessa forma di plains: underground, winter, ocean, jungle, nether, end, deep

player_upgrades.yml

I potenziamenti del giocatore
8 impostazioni
plugins/ShadowOneBlock/player_upgrades.yml
Note del file

Questo file arriva in inglese. La sua versione italiana è esempi/it/player_upgrades.yml, accanto a questo nella cartella del plugin, e il plugin non la legge mai: per usare quella italiana, copiala al posto di questo file e usa /ob admin reload. I messaggi e i menu seguono "messages.language" in config.yml da soli; questo file è contenuto che scrivi tu, quindi resta com'è.

Perk personali (boost temporanei). A differenza dei potenziamenti dell'isola, questi appartengono al singolo giocatore che li ha comprati - o che li ha ricevuti - e gli altri membri della stessa isola NON li ottengono a meno che non comprino o ricevano i propri. Puoi comprarne uno per te (cost-self), per tutti i membri della tua isola in una volta (cost-team, di solito più caro), o regalarne uno a un giocatore preciso (stesso prezzo di cost-self).

Ogni perk ha:

display:           materiale/nome/lore mostrati nel menu. Nome e lore
                   sono testo che legge un giocatore, scritto proprio qui: questo
                   file arriva in inglese (vedi l'inizio del file per
                   quello italiano).
effect:            un PotionEffectType di Minecraft (JUMP_BOOST, SPEED,
                   HASTE, REGENERATION, FIRE_RESISTANCE, WATER_BREATHING,
                   NIGHT_VISION, SATURATION, LUCK, e così via)
amplifier:         il livello dell'effetto (0 = livello I, 1 = livello II, ...)
duration-seconds:  quanto dura (86400 = un giorno)
cost-self / cost-team: stesso formato di upgrades.yml -> cost
perks4 chiavi
perks.jump_boost6 chiavi
perks.jump_boost.display3 chiavi
materialRABBIT_FOOT
name"&dJump Boost II"
lore["&7Jump higher for 2 days"]
perks.jump_boost
effectJUMP_BOOST
amplifier1
duration-seconds172800
perks.jump_boost.cost-self1 chiave
money2000
perks.jump_boost.cost-team1 chiave
money15000
Ancora 3 voci con la stessa forma di jump_boost: speed_boost, haste_boost, regeneration_boost

roles.yml

I ruoli sull’isola
7 impostazioni
plugins/ShadowOneBlock/roles.yml
Note del file

I ruoli che puoi dare ai membri dell'isola. Il proprietario dell'isola ha SEMPRE tutti i permessi, quindi non serve (e non si può) elencarli qui.

Ogni ruolo ha:

display-name: il nome mostrato nei menu e nei messaggi. È testo che un giocatore
               legge, quindi i ruoli qui sotto prendono il loro dal file di
               lingua (roles.<role>.display-name in lang/<language>.yml),
               nella lingua del server. Scrivine uno qui per usare il tuo
               al suo posto: vince, in ogni lingua. Un ruolo che aggiungi
               tu ne ha bisogno, altrimenti mostra il suo id. I codici colore con
               "&" funzionano (&e = giallo).
priority:      solo l'ordine nei menu (più alto = più in alto)
permissions:   cosa può fare questo ruolo, tra:
  BREAK_BLOCKS      - rompere blocchi
  PLACE_BLOCKS      - piazzare blocchi
  USE_BUCKET        - usare secchi (acqua/lava/latte)
  USE_CONTAINERS    - aprire casse/barili/fornaci/altri contenitori
  USE_DOORS         - aprire porte/botole/cancelli
  INTERACT_REDSTONE - usare leve/pulsanti/piastre a pressione
  PVP               - colpire altri giocatori sull'isola
  DAMAGE_ANIMALS    - colpire animali/mob passivi sull'isola
  INTERACT_ENTITIES - interagire con le entità (villager, pannelli...)
  INVITE_MEMBERS    - invitare nuovi membri
  KICK_MEMBERS      - cacciare membri
  MANAGE_ROLES      - cambiare il ruolo di un altro membro
  MANAGE_UPGRADES   - comprare e gestire i potenziamenti dell'isola
  MANAGE_SETTINGS   - cambiare le regole dell'isola (griefing dei mob, spawn,
                       PvP, fuoco, ora, meteo...)
  SET_HOME          - spostare il punto di teletrasporto dell'isola
  DELETE_ISLAND     - eliminare l'isola

Aggiungi o rimuovi ruoli liberamente: il menu dei ruoli si adatta a quello che c'è in questo file.

default-rolemember
roles3 chiavi
roles.co_owner2 chiavi
priority80
permissions
[BREAK_BLOCKS, PLACE_BLOCKS, USE_BUCKET, USE_CONTAINERS, USE_DOORS, INTERACT_REDSTONE, DAMAGE_ANIMALS, INTERACT_ENTITIES, INVITE_MEMBERS, KICK_MEMBERS, MANAGE_UPGRADES, MANAGE_SETTINGS, SET_HOME]+10
roles.member2 chiavi
priority50
permissions
[BREAK_BLOCKS, PLACE_BLOCKS, USE_BUCKET, USE_CONTAINERS, USE_DOORS, DAMAGE_ANIMALS, INTERACT_ENTITIES]+4
roles.visitor2 chiavi
priority0
permissions[ ]

starter_chest.yml

La cassa di partenza
1 impostazione
plugins/ShadowOneBlock/starter_chest.yml
Note del file

Con cosa parte una nuova isola.

In un oneblock non c'è una cassa iniziale, perché non c'è dove metterla: un'isola nasce come UN blocco sospeso nel vuoto, e una cassa avrebbe bisogno di un secondo blocco su cui stare. Quindi questi item vanno direttamente nell'inventario di chi crea l'isola. Quello che non ci sta viene droppato ai suoi piedi invece di andare perso.

Disattiva tutto con "oneblock.give-starter-items: false" in config.yml, per un server che vuole che i giocatori partano senza niente.

Ogni voce è un materiale di Minecraft più una quantità.

items
[{ material: LAVA_BUCKET, amount: 1 }, { material: ICE, amount: 2 }, { material: BREAD, amount: 16 }, { material: WHEAT_SEEDS, amount: 4 }, { material: TORCH, amount: 8 }]+4

upgrades.yml

I potenziamenti dell’isola
24 impostazioni
plugins/ShadowOneBlock/upgrades.yml
Note del file

Questo file arriva in inglese. La sua versione italiana è esempi/it/upgrades.yml, accanto a questo nella cartella del plugin, e il plugin non la legge mai: per usare quella italiana, copiala al posto di questo file e usa /ob admin reload. I messaggi e i menu seguono da soli "messages.language" in config.yml; questo file è contenuto che scrivi tu, quindi resta com'è.

Potenziamenti che un giocatore può comprare dal menu "Upgrades" (ci arrivi dal pannello di controllo, /ob panel). Aggiungi, togli o cambia quanti ne vuoi, e dai a ognuno QUANTI LIVELLI vuoi: il menu si adatta sia al numero di potenziamenti sia al numero di livelli di ciascuno.

Ogni potenziamento ha:

display:  material/name/lore mostrati nel menu. Name e lore sono testo che
          legge un giocatore, scritto proprio qui: questo file arriva in inglese
          (vedi l'inizio del file per quello italiano).
type:     cosa fa quando sale di livello. Valori possibili:
            RADIUS        - allarga il raggio protetto dell'isola di "amount" blocchi
            MEMBER_LIMIT  - alza il limite di membri di "amount"
levels:   una voce per livello (1, 2, 3, ...). Ogni livello ha:
  amount: cosa aggiunge QUEL livello - non un totale progressivo scritto a mano: se
          il livello 1 dà +10 e il livello 2 dà +15, un giocatore che arriva
          al livello 2 ha ricevuto +25 in tutto
  cost:   cosa serve per comprare quel livello. "money" richiede un'economia:
          ShadowEconomy, oppure Vault con un plugin di economia. "items" può
          chiedere anche un item CUSTOM (da qualsiasi plugin, Oraxen per
          esempio) aggiungendo "custom-name" con il nome esatto mostrato
          sull'item.
  rewards: ricompense EXTRA date al raggiungimento di quel livello, oltre
           all'effetto stesso. Stesso formato di missions.yml.
Non esiste un livello "dopo l'ultimo": quando un giocatore ha comprato il
livello più alto definito qui, il potenziamento risulta al massimo.
upgrades2 chiavi
upgrades.radius3 chiavi
upgrades.radius.display3 chiavi
materialGOLDEN_SHOVEL
name"&6Island Expansion"
lore
["&7Raises the protected radius", "&7of your island"]+1
upgrades.radius
typeRADIUS
upgrades.radius.levels3 chiavi
upgrades.radius.levels.13 chiavi
amount10
upgrades.radius.levels.1.cost1 chiave
money5000
upgrades.radius.levels.1
rewards[ ]
upgrades.radius.levels.23 chiavi
amount15
upgrades.radius.levels.2.cost1 chiave
money15000
upgrades.radius.levels.2
rewards[ ]
upgrades.radius.levels.33 chiavi
amount20
upgrades.radius.levels.3.cost2 chiavi
money40000
items[{ material: DIAMOND_BLOCK, amount: 5 }]
upgrades.radius.levels.3
rewards[{ type: MESSAGE, text: "&aIsland expanded to…]
upgrades.member_limit3 chiavi
upgrades.member_limit.display3 chiavi
materialPLAYER_HEAD
name"&bMore Members"
lore
["&7Raises the highest number", "&7of members of your island"]+1
upgrades.member_limit
typeMEMBER_LIMIT
upgrades.member_limit.levels2 chiavi
upgrades.member_limit.levels.13 chiavi
amount2
upgrades.member_limit.levels.1.cost1 chiave
money8000
upgrades.member_limit.levels.1
rewards[{ type: MESSAGE, text: "&aYou can now invite…]
upgrades.member_limit.levels.23 chiavi
amount2
upgrades.member_limit.levels.2.cost1 chiave
money20000
upgrades.member_limit.levels.2
rewards[ ]

Lingue

I testi che il plugin mostra ai giocatori, un file per lingua.

lang/

Testi e messaggi
2 file
plugins/ShadowOneBlock/lang/
Note del file

Ogni messaggio che legge un giocatore, modificabile senza toccare il codice.

La lingua del plugin: l'inglese è il default, e lang/it.yml contiene l'italiano (imposta "messages.language: it" in config.yml per usarlo). Tradurre il plugin significa copiare questo file e riscrivere i valori - mai le chiavi.

Codici colore di Minecraft: & seguito da un carattere (&a = verde, &c = rosso).

Tutti i messaggi che il plugin mostra ai giocatori, un file per lingua. Le chiavi non sono elencate una per una: qui ci sono i file, quanti testi contengono e i segnaposto che usano.

FileLinguaTesti
lang/en.yml riferimento — 560
lang/it.yml — 560

Segnaposto più usati

Il plugin li sostituisce con il valore giusto: vanno lasciati scritti così.

  • %value%
  • %player%
  • %name%
  • %level%
  • %plugin%
  • %phase%
  • %seconds%
  • %count%
  • %max%
  • <player>
  • %material%
  • %percent%
  • %total%
  • %blocks%

Gruppi di messaggi

  • island 22
  • general 8
  • command 22
  • help 2
  • bank 9
  • generator 4
  • upgrades 2
  • perks 6
  • portal 4
  • chat 1
  • suite 30
  • admin 169
  • oneblock 53
  • hub 1
  • license 54
  • locked 5
  • scoreboard 5
  • economy 2
  • menus 90
  • roles 3
  • gui 68

Tutta la documentazione