Vai al contenuto
ShadowMC

Configurazione

ShadowCrazyChest

Un solo jar al posto di quattro: sell chest, bauli giganti e crate con le animazioni.

Gratuito con Premium v1.0.4

Dove sono i file

plugins/ShadowCrazyChest/

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

Applicare le modifiche

/scc reload

Rilegge i file senza riavviare il server.

Cosa c’è dentro

6 file · 462 impostazioni

Da dove partire: config.yml

Impostazioni

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

config.yml

Impostazioni generali
59 impostazioni
plugins/ShadowCrazyChest/config.yml
Note del file

Qui vive solo il comportamento del plugin. I testi sono in lang/, i tipi di chest in chesttypes.yml, i prezzi in prices.yml e le casse in crates.yml: ogni file ha un solo compito.

Quasi tutto si applica con /scc reload. Le eccezioni si leggono una volta sola all'avvio: tutta la sezione storage tranne flush-interval e log-retention-days (database, prefisso, debug.log-sql) e integrations.placeholderapi.

config-version4

La versione di questo file.

Continua a leggere

Lasciala com'è: la imposta il plugin. Con un aggiornamento i tuoi file (questo, prices.yml, chesttypes.yml, crates.yml e lang/) vengono portati alla nuova versione in automatico: ogni valore che hai cambiato o aggiunto resta, le nuove opzioni arrivano con i loro commenti, e ciò che hai cancellato resta cancellato. Le vecchie copie sono in backup/<date>/, e se qualcosa richiede la tua attenzione troverai PORTING-<version>.txt nella cartella del plugin.

prefix'&8[&5&lShadow&d&lChest&8] &7'

Il prefisso di riserva, usato solo quando un file di lingua non ne ha uno suo. Quello vero è la chiave "prefix" dentro lang/<language>.yml.

Lingue

language2 chiavi
defaulten

La lingua del server. Deve esistere un file lang/<default>.yml. Due arrivano con il plugin: en e it. Metti "it" qui per un server italiano.

per-playertrue
true  -> ogni giocatore vede i messaggi nella lingua del suo
         client, se esiste un file per quella lingua.
false -> tutti vedono la lingua qui sopra.

In entrambi i casi la scelta esplicita di un giocatore (/scc lang) vince sempre, e viene ricordata nel database.

Database

Appena lo copi, il plugin crea un database H2 tutto suo dentro plugins/ShadowCrazyChest/data/: non c'è niente da installare e niente da configurare.

Continua a leggere

Per passare a MySQL, imposta enabled: true e le credenziali: il plugin crea le tabelle da solo, con lo stesso schema. Se il server MySQL non risponde all'avvio, con fallback-to-local il server parte comunque sul file locale invece di rifiutarsi di partire.

storage9 chiavi
storage.mysql7 chiavi
enabledfalse
host127.0.0.1
port3306
databaseshadowcrazychest
usernameroot
password""
parameters"useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC&characterEncoding=utf8"
storage
table-prefix"scc_"

Il prefisso delle tabelle. Se lo cambi, il plugin crea nuove tabelle e riparte da zero: comodo per due server sullo stesso database.

fallback-to-localtrue

MySQL configurato ma irraggiungibile: con true il plugin lo segnala in console e ripiega sul file locale, così il server parte comunque.

flush-interval"30s"

Ogni quanto le chest modificate vengono scritte nel database. Vengono scritte anche allo spegnimento e con /scc save, quindi questo decide solo quanto ti potrebbe costare un crash improvviso.

log-salestrue

Registra ogni vendita nella tabella dello storico (serve alle statistiche "guadagnato oggi"). Su un server con centinaia di SellChest la tabella cresce in fretta: la pulizia qui sotto la tiene sotto controllo.

log-retention-days30
import-legacy-yamltrue

Importa una sola volta i dati della vecchia versione YAML (le cartelle instances/ e enderchests/). I file non vengono cancellati, solo rinominati.

storage.h21 chiave
auto-serverfalse

Permette a più di un processo di aprire lo stesso file H2. Serve solo se vuoi ispezionare il database con uno strumento esterno mentre il server è acceso.

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

Economia

economy4 chiavi
enabledtrue

false disattiva tutto ciò che riguarda i soldi: le chest continuano a raccogliere e ad accumulare, ma non pagano e non addebitano nulla.

providerAUTO
AUTO   -> ShadowEconomy se presente, altrimenti Vault, altrimenti niente
SHADOW -> solo ShadowEconomy
VAULT  -> solo Vault
NONE   -> nessuna economia
extra-currencies[ ]

Le valute con nome che il server usa, oltre a quella predefinita. Sono qui perché l'editor possa proporle e perché tu possa scriverle come "currency:<id>" nelle ricompense delle crate o in sell.payout di un tipo di chest. Chi le crea davvero è ShadowEconomy: qui ci sono solo i nomi. Esempio: [tokens, gems]

price-sourceAUTO

Da dove arriva il prezzo di vendita di un item.

AUTO   -> prima i prezzi del singolo tipo di chest, poi lo shop del
          server tramite ShadowEconomy, poi prices.yml. È quasi sempre
          la scelta giusta: i prezzi del server restano un unico set, e
          non devi tenere allineate due liste.
SHADOW -> solo i prezzi dello shop di ShadowEconomy
LOCAL  -> solo chesttypes.yml e prices.yml, ignorando lo shop

Integrazioni

Tutti opzionali: se il plugin non c'è, la funzione corrispondente semplicemente non si attiva. Metti false per ignorarne uno anche quando il plugin è installato.

integrations6 chiavi
shadow-economytrue

money and shop prices

shadow-regionstrue

build permission for placing chests

shadow-skyblocktrue

islands: limits and collector for members

shadow-essentialstrue

announcement to the suite hub

worldguardtrue

region protection, if ShadowRegions is absent

placeholderapitrue

%shadowchest_...% placeholders

Item custom e token vengono riconosciuti da soli, senza niente da attivare qui: basta che il plugin sia installato.

Item:   Oraxen, Nexo, ItemsAdder, MMOItems, Slimefun,
        ExecutableItems, EcoItems, MythicMobs, HeadDatabase
Token:  TokenManager, BeastTokens, TokenEnchant, PlayerPoints

Ovunque si possa scrivere un item, va bene il suo id:

custom-item: 'oraxen:ruby'      custom-item: 'itemsadder:iron_dust'
custom-item: 'mmoitems:SWORD:CUTLASS'   custom-item: 'head:<base64>'

/scc status mostra cosa si è agganciato davvero.

Limiti e protezioni

limits5 chiavi
max-placed-per-player-1

Chest totali che un giocatore può piazzare, sommando tutti i tipi. -1 = nessun limite globale (contano solo quelli per tipo). Si può alzare per rank con shadowcrazychest.limit.total.<number>.

blacklisted-worlds[world_the_end]

Mondi in cui non si possono piazzare chest.

require-build-permissiontrue

true = una chest si piazza solo dove il giocatore può costruire secondo ShadowRegions / WorldGuard / ShadowSkyBlock.

collect-only-from-memberstrue

true = una SellChest raccoglie solo ciò che rompono il proprietario e i suoi compagni di isola. Con false raccoglie tutto ciò che succede nel suo raggio, chiunque lo faccia: su un server con isole o claim è il modo più rapido per farti rubare il lavoro dal vicino.

protect-custom-itemstrue

true = una SellChest non vende né distrugge mai un item di Oraxen, ItemsAdder o simili, a meno che quell'id esatto non abbia un prezzo scritto in prices.yml. Senza questo, la modalità void farebbe sparire la spada custom di qualcuno finita lì dentro per sbaglio.

Ologrammi

Il testo delle righe sta nei file di lingua, sotto "hologram". Un ologramma è un'unica entità vista da tutti, quindi parla la lingua predefinita del server.

hologram5 chiavi
enabledtrue
providerAUTO

Chi li disegna.

AUTO                 -> ShadowEssentials, poi DecentHolograms, poi
                        HolographicDisplays, poi quello interno
SHADOW_ESSENTIALS    -> forza il modulo ologrammi della suite
DECENT_HOLOGRAMS     -> forza DecentHolograms
HOLOGRAPHIC_DISPLAYS -> forza HolographicDisplays
INTERNAL             -> sempre quello interno (TextDisplay, nessuna
                        dipendenza)
Continua a leggere

AUTO è quasi sempre la scelta giusta: se il server ha già qualcosa che disegna ologrammi, le righe delle chest ne prendono le impostazioni invece di sembrare disegnate da un altro plugin.

Con ShadowEssentials gli ologrammi delle chest restano comunque nostri: non finiscono in modules/hologram.yml, non risultano modificabili con /hologram, e vengono rimossi da soli se questo plugin viene disattivato.

update-interval"2s"

Ogni quanto si aggiornano i numeri (guadagni, riempimento, timer).

height1.15

Altezza sopra il blocco.

view-range1.0

Distanza di visualizzazione, come moltiplicatore. Vale per quello interno.

Licenza

license3 chiavi

Il plugin funziona anche senza chiave: è la versione FREE, con i limiti che vedi con /scc license. Con una chiave valida diventa la versione completa nello stesso istante, senza riavvio.

Continua a leggere

La chiave NON va qui, va in license.yml: una config che gira in un canale di supporto non deve portarsi dietro la licenza di qualcuno. Il campo qui sotto esiste solo per chi genera le config da un template e vuole tutto in un unico file.

LA CHIAVE STA 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).

activation-url'https://shadow-licences.riccardobotins.workers.dev'

L'indirizzo BASE del servizio di attivazione: il plugin aggiunge da solo /claim e /check. È ciò che permette di scrivere

Continua a leggere
/scc license claim <purchase-code>

e ottenere la licenza in un secondo, senza mandare email a nessuno.

Vuoto significa verifica completamente offline: la chiave si incolla a mano e il plugin non parla con nessuno. È il valore di fabbrica perché un indirizzo scritto qui prima che il servizio esista sarebbe una chiamata che fallisce a ogni avvio, su ogni server in cui è installato.

grace-days7

Quanti giorni di tolleranza prima di tornare alla versione free quando qualcosa non torna: un abbonamento appena scaduto (il rinnovo è quasi sempre già passato) o un indirizzo che non corrisponde (molto più spesso un NAT o un proxy che un ladro).

resolve-public-iptrue

Chiede al servizio licenze (activation-url + /ip) quale indirizzo pubblico ha questo server: risponde con l'indirizzo che vede, e del server non viene inviato niente. Serve dietro NAT, dove il server non vede nessuno dei suoi indirizzi pubblici e una licenza legata al dominio non verrebbe riconosciuta. Se lo spegni, il plugin usa solo gli indirizzi che vede dall'interno. Solo con una licenza installata: un server senza chiave non chiede niente a nessuno. false = non chiedere mai.

Suoni

Metti "none" per togliere un suono. I nomi sono quelli di Bukkit.

sounds7 chiavi
gui-clickUI_BUTTON_CLICK
crate-open-startBLOCK_CHEST_OPEN
crate-open-winENTITY_PLAYER_LEVELUP
crate-open-win-rareENTITY_ENDER_DRAGON_GROWL
chest-upgradeENTITY_PLAYER_LEVELUP
chest-sellENTITY_EXPERIENCE_ORB_PICKUP
errorENTITY_VILLAGER_NO

Diagnostica

debug1 chiave
log-sqlfalse

Stampa ogni query in console. Utile per capire un problema, molto rumoroso in produzione.

Booster

boosters1 chiave
enabledtrue

false = gli item booster non fanno nulla, il pulsante booster sparisce da ogni pannello e /scc booster e /scc givebooster rifiutano. Non cambia nient'altro. Anche un singolo tipo può tirarsi fuori con "boosters: false" in chesttypes.yml.

Chiavi delle crate

keys2 chiavi
force-materialTRIPWIRE_HOOK

Ogni chiave delle crate è fatta di questo item, qualunque cosa dica crates.yml per quella crate (nome, lore e modello restano i suoi): un solo aspetto, un solo significato. Vuoto = ogni crate usa il materiale scritto in crates.yml.

auto-closetrue

Chiude da sola la schermata di apertura una volta consegnata la ricompensa.

Shadowhopper

hopper1 chiave

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

Cosa viene inviato, ogni 30 minuti: un id casuale del server (serverUuid, non derivato da nulla), la versione del plugin, le versioni di Minecraft/Paper e di Java, il sistema operativo e il numero di core, la modalità online, quanti giocatori sono online (solo un numero) e quale edizione gira qui (free/premium/creator). NESSUN dato dei giocatori: niente nomi, niente UUID, niente indirizzi, niente coordinate.

Continua a leggere

false disattiva solo questo plugin. enabled: false in plugins/bStats/config.yml disattiva in un colpo tutti i plugin bStats su questo server.

metrics1 chiave
enabledtrue

chesttypes.yml

I tipi di cassa
206 impostazioni
plugins/ShadowCrazyChest/chesttypes.yml
Note del file

I cinque tipi di chest che il plugin porta con sé. Sono già regolati per un server pubblico: lasciali come sono, cambiali, rinominali o cancellali tutti. Un /scc reload applica qualunque cosa tu faccia.

Nessuno vive nel codice: aggiungerne uno nuovo è copiare un blocco e cambiarne l'id.

ORDINE DEI TIPI

La versione gratuita del plugin usa i primi due tipi di questo file. Questo le dà SellChest e UnitChest, i due che servono davvero a un server piccolo. Ne preferisci altri due? Spostali in cima: conta l'ordine, non il nome.

CINQUE MODI DI CONSERVARE

SELL       Il pezzo forte. Raccoglie da sola quello che viene scavato
           o lasciato cadere nel suo raggio e lo vende a intervalli
           fissi, anche con il proprietario offline. Filtri, modalità
           "void" per la roba inutile, vendita istantanea.
INVENTORY  Una chest davvero grande, divisa in pagine da 54 slot.
           Accetta qualsiasi oggetto, NBT compresi.
UNIT       Un solo materiale, con un contatore invece degli slot:
           capacità enorme senza costo in memoria, ma niente NBT (un
           oggetto incantato o con un nome non ci entra).

ENDERCHEST Deposito condiviso per proprietario: due blocchi dello

stesso tipo, in due basi diverse, mostrano lo stesso inventario.
HOPPER     La ShadowHopper: aspira, filtra e spedisce a un contenitore
           collegato (vedi l'ultimo tipo di questo file).

IL BLOCCO

block-material è il blocco che viene piazzato davvero. Un contenitore (consigliato BARREL) lascia che le tramogge spingano oggetti nella chest; una BARRIER no, ma permette di usare un modello 3D personalizzato accendendo la sezione "display".

Il barile è consigliato al posto della chest perché due barili uno accanto all'altro restano due blocchi separati, mentre due chest si uniscono in una chest doppia e condividerebbero un solo inventario.

REGOLE PER MATERIALE

Oltre ai filtri, ogni chest che vende ha una regola per materiale: SELL, KEEP o VOID. Non si scrivono qui: si impostano in gioco, dal pannello della chest, perché sono una scelta del proprietario e non del server. Senza regola scritta vale l'automatico: quello che ha un prezzo si vende, quello che non ce l'ha si tiene, e niente viene distrutto finché qualcuno non lo chiede.

LIVELLI

Ogni riga di "levels" è un livello, e i moltiplicatori sono assoluti rispetto al livello 0, non cumulativi: leggendo la riga sai subito quanto vale quel livello. Cosa ha effetto dipende dal modo:

sell-multiplier      ogni modo che vende
interval-multiplier  SELL e HOPPER (lavora a secondi interi: un
                     intervallo di 1s non può accorciarsi)
bonus-radius         SELL: anelli di chunk; HOPPER: blocchi
bonus-filters        solo HOPPER (più colonne di filtri)

Le chest a pagine (INVENTORY, ENDERCHEST) sbloccano una pagina in più per livello: lì un livello fa solo questo.

TEXTURE E MODELLI 3D

Con display.enabled: true sopra il blocco compare un modello, e lo puoi definire in tre modi, in ordine di priorità:

custom-item: 'oraxen:sell_chest'    un oggetto di un altro plugin,
                                    preso così com'è (Oraxen, Nexo,
                                    ItemsAdder, MMOItems, Slimefun,
                                    MythicMobs, HeadDatabase...)
item-model: 'myserver:sellchest'    il componente item_model del
                                    tuo resource pack (1.21.4+)
custom-model-data: 100001           il vecchio CustomModelData

Lo trovi scritto in ogni tipo ma spento, perché richiede un resource pack che qui non c'è: accendilo quando il tuo pack è pronto e i numeri sono già al loro posto.

Tutto questo si imposta anche dal gioco con /scc editor, tenendo l'oggetto in mano e cliccando.

CHEST VERE

block-material è CHEST per le chest: il blocco sembra quello che è. Due chest vere affiancate si unirebbero in una chest doppia, quindi il plugin tiene la sua singola e rifiuta una chest normale piazzata contro una di queste.

PER CHUNK, BOOSTER, LIVELLI

max-per-chunk: quante di questo tipo possono stare in un chunk (0 = nessun limite). Si alza per grado con shadowcrazychest.limit.chunk.<tipo>.<n>, e il permesso vince sempre sul numero scritto qui.

boosters: false = gli oggetti booster non fanno niente su questo tipo e il pulsante del booster sparisce dal suo pannello (boosters.enabled di config.yml li spegne ovunque in un colpo).

levels: [] = nessun potenziamento: il pulsante del livello sparisce e ologramma, oggetto e pannello smettono di parlare di livelli. Per le chest a pagine (INVENTORY, ENDERCHEST) ogni livello apre una pagina in più: partono con una e sbloccano le altre una alla volta.

LA SHADOWHOPPER

La tramoggia tira gli oggetti da un raggio in BLOCCHI (sell.collect-radius, cresciuto di bonus-radius per livello, mai sopra sell.max-collect-radius) e da sell.collect-height blocchi sopra di sé. Il suo pannello ha colonne di filtri - un oggetto, una chest, whitelist o blacklist, accesa o spenta - di cui le prime filters.base aperte, bonus-filters in più per livello, mai più di filters.max. I "perks" si comprano una volta per tramoggia: autosmelt cuoce quello che prende, compact impacchetta gli oggetti nel blocco che una colonna chiede. Ognuno si può spegnere o prezzare in soldi o in xp.

types5 chiavi

Sellchest

La chest che paga. Raccoglie i drop del proprio chunk, li tiene in un vero stoccaggio e ogni venti secondi vende tutto ciò che è vendibile, pagando il proprietario anche mentre è offline.

Tre a testa di base: abbastanza per coprire una farm, una miniera e la base, non abbastanza per riempire il mondo di barili.

types.sellchest17 chiavi
display-name'&5&lSellChest'
block-materialCHEST
storage-modeSELL
permission''

Permesso necessario per piazzarla. Vuoto = tutti.

max-placed-per-player3
max-per-chunk1
boosterstrue
rows6

Lo stoccaggio: 6 righe da 9 slot, una sola pagina.

container-pages1
types.sellchest.display8 chiavi
enabledfalse
materialBARREL
custom-model-data100001

custom-item: 'oraxen:sell_chest' item-model: 'myserver:sellchest'

scale1.0
offset-y0.0

raises or lowers the model against the block

rotation-y0.0

degrees of rotation around the vertical axis

billboardFIXED

FIXED, VERTICAL, HORIZONTAL, CENTER

glowtrue
types.sellchest.sell16 chiavi
interval20s

Ogni quanto si svuota e vende ciò che c'è dentro. Venti secondi sono il giusto compromesso: vedi arrivare i soldi mentre mini, e non è abbastanza frequente da far scorrere la chat di notifiche.

auto-selltrue
void-unsellablefalse

Distrugge quello che nessuno compra invece di lasciarlo dentro. Spento apposta: è comunque una cancellazione, e su questa chest il giocatore si aspetta di poter riprendere quello che ha scavato. Ogni proprietario può comunque accenderlo per una singola chest dal suo pannello.

chunk-collectortrue

Il collettore: i drop dentro il raggio finiscono nella chest invece di cadere a terra.

collect-block-dropstrue
collect-mob-dropstrue
collect-ground-itemstrue

Anche ciò che è già a terra: la roba buttata a mano, ciò che esce da una fornace, ciò che un altro plugin fa comparire. Chi la butta viene comunque controllato come chi mina, quindi la chest prende ciò che butti TU e non ciò che qualcun altro lancia al volo a un amico.

collect-radius-chunks0

0 = solo il chunk della chest. Ogni unità aggiunge un anello di chunk intorno (massimo 4).

instant-sellfalse

true = il drop diventa soldi senza mai entrare nello stoccaggio.

sell-offlinetrue

Continua a vendere mentre il proprietario è offline, ma al 75%. Chi gioca guadagna più di chi lascia semplicemente girare il server, che è esattamente l'incentivo che vuoi.

offline-multiplier0.75
notify-ownertrue

Avvisa il proprietario nella action bar a ogni vendita automatica.

give-experiencetrue
payoutmoney

In cosa paga questa chest:

money            la valuta predefinita
currency:gems    una valuta con nome di ShadowEconomy
xp / xp-levels   esperienza (solo mentre il proprietario è online)
tokens           il plugin dei token del server
max-items-per-cycle2000

Quanti item gestisce al massimo in un ciclo. 0 = nessun tetto. È la valvola che tiene in piedi il server sotto una farm industriale: ciò che avanza non va perso, resta dentro e passa al ciclo successivo.

daily-earnings-cap0.0

Quanto può guadagnare questa chest in un giorno. 0 = nessun tetto. Disattivato di base perché è una scelta di bilanciamento del singolo server. Raggiunto il tetto, la chest SMETTE DI VENDERE invece di vendere senza pagare: la merce resta dentro e domani viene venduta davvero. Il conteggio sopravvive a un riavvio.

types.sellchest
levels
[{ cost: 7500, sell-multiplier: 1.1, interval-multiplier: 0.9 }, { cost: 25000, sell-multiplier: 1.25, interval-multiplier: 0.8 }, { cost: 75000, sell-multiplier: 1.45, interval-multiplier: 0.7 }, { cost: 200000, sell-m …+4

Cinque livelli: vende di più e vende più spesso. Al massimo una SellChest vale il doppio e lavora al doppio della velocità, il che ne fa un vero obiettivo senza rompere l'economia.

Prezzi che valgono solo per questo tipo. Un materiale non elencato qui segue economy.price-source (shop del server o prices.yml).

Particelle e animazione

Se sul server c'è ShadowEssentials con il suo modulo particelle, un nome scritto qui viene chiesto prima a lui: così le particelle di questo plugin sono le stesse di tutto il resto del server. Se non conosce il nome, o se ShadowEssentials non c'è, si usa la particella vanilla con quel nome.

Continua a leggere

Il ciclo in esecuzione costa qualcosa a ogni tick e lo paga solo chi lo attiva: con enabled: false su ogni tipo, il task non guarda nemmeno la lista delle chest. E anche quando è attivo, disegna solo intorno alle chest che qualcuno ha davvero davanti.

types.sellchest.effects7 chiavi
enabledtrue
types.sellchest.effects.idle4 chiavi

L'anello che gira intorno al blocco: l'unica cosa visibile da lontano, e ciò che ti dice che quel barile non è un barile.

particlehappy_villager
count4
spread0.0
speed0.0
types.sellchest.effects
idle-radius0.7
types.sellchest.effects.sell7 chiavi

Il lampo di quando vende: il momento in cui il proprietario guadagna.

particletotem_of_undying
count10
spread0.35
speed0.08
soundentity_experience_orb_pickup
volume0.4
pitch1.6
types.sellchest.effects.collect4 chiavi

Il colpo di quando il collettore si mangia un drop: spiega perché ciò che hai minato non è caduto a terra.

particlecrit
count5
spread0.25
speed0.1
types.sellchest.effects
spinfalse

Il modello 3D gira su se stesso. Conta solo con display.enabled.

spin-degrees-per-second30.0
types.sellchest
material-prices{ }
custom-item-prices{ }

Prezzi per id di item custom, sempre solo per questo tipo. Gli id vanno tra virgolette perché contengono i due punti.

'oraxen:ruby': 300.0
whitelist[ ]

I filtri iniziali di ogni nuova chest di questo tipo. Poi ogni chest ha i suoi, modificabili dal pannello: due SellChest dello stesso giocatore servono quasi sempre due farm diverse.

blacklist[SPAWNER, BEDROCK]

Uno spawner preso con silk touch vale più di qualsiasi vendita automatica: meglio che non finisca in una chest per sbaglio.

Unitchest

Un solo item, in quantità illimitata. Dentro non ci sono slot ma un contatore, ed è per questo che un milione di blocchi di cobblestone sta in un blocco invece che in duecento chest.

Continua a leggere

Adotta il primo materiale che riceve e da lì in poi tiene solo quello. Svuotata del tutto torna libera e ne accetta un altro: non c'è nessun pulsante da cercare.

Si apre con il click destro e ha una sola finestra, con l'item al centro: click sinistro ne prende uno, shift uno stack, click destro riempie l'inventario.

Quando la rompi, ciò che c'era dentro torna nell'inventario. Se non ci sta tutto la chest NON si rompe: meglio due viaggi che un milione di item a terra.

types.unitchest14 chiavi
display-name'&6&lUnitChest'
block-materialCHEST
storage-modeUNIT
permission''
max-placed-per-player5
max-per-chunk0
boostersfalse
types.unitchest.display8 chiavi
enabledfalse
materialBARREL
custom-model-data100002

item-model: 'myserver:unitchest'

scale1.0
offset-y0.0
rotation-y0.0
billboardFIXED
glowfalse
types.unitchest
levels[ ]

Niente livelli: non c'è niente da far crescere. La capacità è già illimitata e questa chest non vende.

types.unitchest.effects6 chiavi
enabledtrue
types.unitchest.effects.idle4 chiavi
particleenchant
count3
spread0.0
speed0.0
types.unitchest.effects
idle-radius0.7
types.unitchest.effects.collect4 chiavi
particlecrit
count3
spread0.2
speed0.08
types.unitchest.effects
spinfalse
spin-degrees-per-second30.0
types.unitchest
material-prices{ }
custom-item-prices{ }
whitelist[ ]
blacklist[SPAWNER, BEDROCK]

Ciò che un hopper non deve poterci spingere dentro. Un item con incantesimi o un nome non entra comunque: in un contatore perderebbe tutto ciò che lo rende diverso.

Megachest

Sei pagine da cinquantaquattro slot: trecentoventiquattro slot in un solo blocco, e accetta qualsiasi cosa - item incantati, teste, pozioni, roba di altri plugin.

Non ha livelli perché non avrebbero niente da far crescere: la dimensione di un inventario è quella che è. Essere grande fin dall'inizio è esattamente il suo valore.

types.megachest16 chiavi
display-name'&b&lMegaChest'
block-materialCHEST
storage-modeINVENTORY
permission''
max-placed-per-player2
max-per-chunk1
boostersfalse
rows6
container-pages6
types.megachest.display8 chiavi
enabledfalse
materialCHEST
custom-model-data100003

item-model: 'myserver:megachest'

scale1.0
offset-y0.0
rotation-y0.0
billboardFIXED
glowfalse
types.megachest
levels
[{ cost: 15000 }, { cost: 40000 }, { cost: 90000 }, { cost: 180000 }, { cost: 350000 }]+3

Una pagina aperta all'inizio, una in più per livello: cinque livelli per sei pagine.

types.megachest.effects3 chiavi

Disattivato: una MegaChest è un magazzino, e venti magazzini in una base che brillano tutti insieme sono solo rumore. Attivalo se vuoi un pezzo da esposizione.

enabledfalse
types.megachest.effects.idle2 chiavi
particleend_rod
count3
types.megachest.effects
idle-radius0.7
types.megachest
material-prices{ }
custom-item-prices{ }
whitelist[ ]
blacklist[ ]

Big enderchest

Uno stoccaggio legato al proprietario e non al blocco: tre pagine da cinquantaquattro slot, le stesse da qualsiasi chest di questo tipo che possiede, in qualsiasi base, in qualsiasi mondo.

Questa è la chest da vendere con i rank: un blocco allo spawn e uno alla base fanno risparmiare mezz'ora di viaggi.

types.enderchest16 chiavi
display-name'&d&lBig EnderChest'
block-materialENDER_CHEST
storage-modeENDERCHEST
permission''
max-placed-per-player3
max-per-chunk0
boostersfalse
rows6
container-pages3
types.enderchest.display8 chiavi
enabledfalse
materialENDER_CHEST
custom-model-data100004

item-model: 'myserver:bigenderchest'

scale1.15
offset-y0.0
rotation-y0.0
billboardFIXED
glowtrue
types.enderchest
levels[{ cost: 50000 }, { cost: 150000 }]

Una pagina aperta all'inizio, una in più per livello: due livelli per tre pagine.

types.enderchest.effects5 chiavi
enabledtrue
types.enderchest.effects.idle4 chiavi
particleportal
count6
spread0.0
speed0.0
types.enderchest.effects
idle-radius0.8
spinfalse
spin-degrees-per-second20.0
types.enderchest
material-prices{ }
custom-item-prices{ }
whitelist[ ]
blacklist[ ]

Shadowhopper

L'hopper che si compra. È un hopper vero - il blocco esiste, gli hopper vanilla ci spingono dentro, quello sotto continua a tirare - con tre cose in più:

Continua a leggere
ASPIRA     gli item caduti a terra nel suo raggio, invece di
           aspettare che cadano esattamente nel buco.
FILTRA     con la whitelist e la blacklist della chest: ciò che
           non passa resta fuori e cade come sempre.
SPEDISCE   a un contenitore collegato, che può essere a mille
           blocchi di distanza e può essere a sua volta una
           chest del plugin - una UnitChest, per esempio.

Il collegamento si sceglie indicando: click destro sull'hopper, pulsante "contenitore collegato", poi click destro sul contenitore. Niente coordinate da scrivere.

I livelli fanno due cose che si sentono subito: fanno spedire di più a ogni giro e allargano il raggio di aspirazione.

types.hopper19 chiavi
display-name'&e&lShadowHopper'
block-materialHOPPER
storage-modeHOPPER
permission''
max-placed-per-player8
max-per-chunk0
boostersfalse
types.hopper.filters2 chiavi

Colonne di filtro del pannello: le prime "base" sono aperte, le altre arrivano con i livelli.

base7
max35
types.hopper.perks2 chiavi

Si compra una volta per hopper, dal suo pannello. currency: money | xp (livelli di esperienza).

types.hopper.perks.autosmelt3 chiavi
enabledtrue
cost25000
currencymoney
types.hopper.perks.compact3 chiavi
enabledtrue
cost25000
currencymoney
types.hopper
rows1

Lo stoccaggio di passaggio: una sola riga, perché ciò che entra deve uscire di nuovo, non accumularsi.

container-pages1
types.hopper.display8 chiavi
enabledfalse
materialHOPPER
custom-model-data100005

item-model: 'myserver:shadowhopper'

scale1.0
offset-y0.0
rotation-y0.0
billboardFIXED
glowfalse
types.hopper.sell19 chiavi
interval1s

Ogni quanto aspira e spedisce. Un secondo è il ritmo di un hopper: più lento si noterebbe, più veloce sarebbe inutile.

auto-sellfalse

Di base non vende: è un hopper, non una chest. Se lo attivi, ciò che raccoglie diventa soldi invece di uscire.

void-unsellablefalse
chunk-collectortrue
collect-block-dropstrue
collect-mob-dropstrue
collect-ground-itemstrue

Questa è l'aspirazione, ed è il motivo per cui esiste.

collect-radius-chunks0

0 = un blocco intorno. Ogni anello aggiunge sedici blocchi di raggio, ed è questo che alzano i livelli.

collect-radius3

L'aspirazione propria dell'hopper, in BLOCCHI: questo al livello 0, +bonus-radius per livello, mai oltre max-collect-radius. E quanto in alto guarda sopra di sé.

max-collect-radius7
collect-height3
instant-sellfalse
sell-offlinetrue
offline-multiplier1.0
notify-ownerfalse
give-experiencefalse
payoutmoney
max-items-per-cycle2000
daily-earnings-cap0.0
types.hopper
levels
[{ cost: 10000, interval-multiplier: 0.8, bonus-radius: 1, bonus-filters: 7 }, { cost: 35000, interval-multiplier: 0.6, bonus-radius: 1, bonus-filters: 7 }, { cost: 90000, interval-multiplier: 0.4, bonus-radius: 1, bonu …+3

Quattro livelli: spedisce di più e aspira da più lontano. bonus-radius in blocchi, bonus-filters in colonne: 3 -> 7 blocchi e 7 -> 35 colonne nell'arco di quattro livelli.

types.hopper.effects6 chiavi
enabledtrue
types.hopper.effects.idle4 chiavi
particleelectric_spark
count2
spread0.0
speed0.0
types.hopper.effects
idle-radius0.6
types.hopper.effects.collect4 chiavi
particlecrit
count3
spread0.2
speed0.08
types.hopper.effects
spinfalse
spin-degrees-per-second20.0
types.hopper
material-prices{ }
custom-item-prices{ }
whitelist[ ]

Vuoto = passa tutto. Se ci scrivi dei materiali, l'hopper aspira SOLO quelli: è così che metti un hopper sotto una farm mista e porti via una cosa sola.

blacklist[SPAWNER, BEDROCK]

Ciò che non deve mai toccare.

crates.yml

Le casse
101 impostazioni
plugins/ShadowCrazyChest/crates.yml
Note del file

Cinque crate già pronte, bilanciate tra loro: Basic, Vote, Daily, Magic ed Epic. Usale così come sono, cambiane le ricompense, oppure buttale via e scrivi le tue.

IN ITALIANO: le stesse cinque crate, con nomi e descrizioni in italiano, sono in esempi/it_IT/crates.yml dentro la cartella di questo plugin. Copia quel file al posto di questo per usarlo: il plugin non lo legge mai da solo.

PER METTERNE UNA NEL MONDO, tre comandi:

/crate setblock basic     guarda un blocco e registralo
/key give <name> basic 3  dai tre chiavi
/crate list               controlla che ci siano tutte

Da quel momento un click destro sulla postazione la apre, e un click sinistro (o shift) mostra l'anteprima con le percentuali reali.

ORDINE DELLE CRATE

La versione gratuita del plugin usa le prime due crate di questo file, e sono in quest'ordine apposta: Basic e Vote sono quelle che servono a un server piccolo. Ne vuoi altre due? Spostale in cima: conta l'ordine, non il nome.

Le CHIAVI hanno due forme, e il plugin le tratta come una cosa sola: l'item fisico (/key givephysical) che si può scambiare e regalare, e la chiave virtuale (/key give) che sopravvive alla morte e si può dare ai giocatori offline. Aprendo si consuma prima quella in mano.

Le PROBABILITÀ si scrivono come "weight", cioè quanto pesa una ricompensa rispetto alle altre. Non devono per forza sommare a 100: il plugin calcola da solo la percentuale e la mostra nell'anteprima, quindi non c'è niente da tenere aggiornato a mano. In ogni crate qui sotto sommano comunque a 100, così mentre le modifichi un peso si legge direttamente come percentuale.

UNA SOLA RICOMPENSA può dare item, soldi e comandi insieme: "una spada, mille monete e il rank VIP" è un unico premio.

ANIMAZIONI: CSGO (una striscia che rallenta), ROULETTE (una griglia che lampeggia), CYCLE (un solo slot), INSTANT (il premio subito).

L'EDITOR IN GIOCO

Tutto ciò che c'è in questo file si può fare invece con /crate editor, senza scrivere niente: crea crate, aggiungi ricompense tenendo in mano l'item, regola i pesi con uno slider e guarda le percentuali aggiornarsi. Qualsiasi cosa cambi finisce comunque qui dentro.

Gli item aggiunti dall'editor vengono scritti come ItemStack serializzati (righe con "==:"), perché è l'unico formato che conserva NBT e incantesimi. Le ricompense scritte a mano qui sotto continuano a funzionare proprio accanto a loro.

ITEM CUSTOM

Ovunque si possa scrivere un item - chiave, anteprima, icona, ricompensa - va bene un id di un altro plugin:

custom-item: 'oraxen:ruby'
custom-item: 'itemsadder:iron_dust'
custom-item: 'mmoitems:SWORD:CUTLASS'
head: '<base64 value>'             testa con una texture
item-model: 'myserver:key'         componente item_model

COSA PUÒ DARE UNA RICOMPENSA

items:      gli oggetti veri e propri
commands:   comandi eseguiti dalla console
money:      soldi nella valuta predefinita
xp:         punti esperienza
xp-levels:  livelli di esperienza
tokens:     token (TokenManager, BeastTokens, ... o una valuta
            di ShadowEconomy chiamata "tokens")
payouts:    la forma estesa per le valute con nome, per esempio
              payouts:
                'currency:gems': 5

Una ricompensa può darle tutte insieme.

Ogni comando scritto qui sotto appartiene a ShadowCrazyChest, quindi funzionano su qualsiasi server senza nient'altro installato. Per regalare un rank, aggiungi il comando del tuo plugin dei permessi, per esempio

commands:
  - 'lp user %player% parent addtemp vip 7d'
crates5 chiavi

Crate basic

Quella che si apre spesso: premi piccoli, niente di raro, sta lì per dare un motivo per continuare a giocare. Questa è la crate per lo spawn, e quella da dare al primo ingresso.

crates.basic10 chiavi
display-name'&a&lBasic Crate'
permission''
open-styleMENU

Dove avviene l'apertura:

MENU   quella classica: si apre una finestra e la striscia ci scorre dentro.
       Precisa, leggibile, va bene con venti persone intorno.
WORLD  alla Hypixel: non si apre niente, il coperchio si alza e il premio
       compare a mezz'aria sopra il blocco tra le particelle. Lo vedono
       anche tutti gli altri, ed è proprio per questo che esiste.
Continua a leggere

WORLD ha bisogno di una postazione: se la apri con /crate open, senza un blocco davanti, anche una crate WORLD ripiega sulla finestra.

animationCSGO
duration4s
broadcast-raretrue
rewards-per-open1

Le righe mostrate sopra la postazione. Vuoto o assente = quelle del file di lingua (hologram.crate). %crate% diventa il nome della cassa.

Esempio:
  hologram:
    - '&a&l%crate%'
    - '&7Click destro per aprire'
crates.basic.key4 chiavi
materialTRIPWIRE_HOOK
name'&a&lBasic Key'
lore
["&7Opens the &a&lBasic Crate&7.", "", "&8▸ &7Right click the station", "&8▸ &7Left click for the preview"]+2
glowtrue
crates.basic.preview-item3 chiavi
materialCHEST
name'&a&lBasic Crate'
lore
["&7The everyday crate.", "&7Materials, coins and now and then", "&7something you did not see coming."]+2
crates.basic
rewards
[{ id: iron, weight: 25, display: {…} }, { id: gold, weight: 20, display: {…} }, { id: coins, weight: 18, money: 3000, xp: 150, display: {…} }, { id: supplies, weight: 12, display: {…} }, { id: diamonds, weight: 10, dis …+7

Crate vote

La ricompensa per aver votato: veloce da aprire, sempre utile, ogni tanto una chiave migliore. Falla consegnare dal tuo plugin di voto con

/key give %player% vote 1
crates.vote10 chiavi
display-name'&e&lVote Crate'
permission''
open-styleMENU

Dove avviene l'apertura:

MENU   quella classica: si apre una finestra e la striscia ci scorre dentro.
       Precisa, leggibile, va bene con venti persone intorno.
WORLD  alla Hypixel: non si apre niente, il coperchio si alza e il premio
       compare a mezz'aria sopra il blocco tra le particelle. Lo vedono
       anche tutti gli altri, ed è proprio per questo che esiste.
Continua a leggere

WORLD ha bisogno di una postazione: se la apri con /crate open, senza un blocco davanti, anche una crate WORLD ripiega sulla finestra.

animationCYCLE
duration3s
broadcast-rarefalse
rewards-per-open1

Le righe mostrate sopra la postazione. Vuoto o assente = quelle del file di lingua (hologram.crate). %crate% diventa il nome della cassa.

Esempio:
  hologram:
    - '&a&l%crate%'
    - '&7Click destro per aprire'
crates.vote.key4 chiavi
materialTRIPWIRE_HOOK
name'&e&lVote Key'
lore
["&7Earned by voting for the server.", "&7Thank you: it matters more than it looks.", "", "&8▸ &7Right click the station"]+3
glowtrue
crates.vote.preview-item3 chiavi
materialPAPER
name'&e&lVote Crate'
lore
["&7One vote, one key.", "&7Vote every day to get more."]+1
crates.vote
rewards
[{ id: vote_coins, weight: 30, money: 5000, display: {…} }, { id: vote_iron, weight: 22, display: {…} }, { id: experience, weight: 15, xp-levels: 10, display: {…} }, { id: basic_key, weight: 12, commands: […], display: …+7

Crate daily

La ricompensa giornaliera. Più generosa della Basic perché si apre una volta al giorno: consegnala da un comando programmato o dal tuo plugin di ricompense con

/key give %player% daily 1
crates.daily10 chiavi
display-name'&b&lDaily Crate'
permission''
open-styleMENU

Dove avviene l'apertura:

MENU   quella classica: si apre una finestra e la striscia ci scorre dentro.
       Precisa, leggibile, va bene con venti persone intorno.
WORLD  alla Hypixel: non si apre niente, il coperchio si alza e il premio
       compare a mezz'aria sopra il blocco tra le particelle. Lo vedono
       anche tutti gli altri, ed è proprio per questo che esiste.
Continua a leggere

WORLD ha bisogno di una postazione: se la apri con /crate open, senza un blocco davanti, anche una crate WORLD ripiega sulla finestra.

animationCSGO
duration4s
broadcast-raretrue
rewards-per-open1

Le righe mostrate sopra la postazione. Vuoto o assente = quelle del file di lingua (hologram.crate). %crate% diventa il nome della cassa.

Esempio:
  hologram:
    - '&a&l%crate%'
    - '&7Click destro per aprire'
crates.daily.key4 chiavi
materialTRIPWIRE_HOOK
name'&b&lDaily Key'
lore
["&7Today's reward.", "&7Come back tomorrow for the next one.", "", "&8▸ &7Right click the station"]+3
glowtrue
crates.daily.preview-item3 chiavi
materialBARREL
name'&b&lDaily Crate'
lore
["&7One a day, every day.", "&7More generous than the Basic."]+1
crates.daily
rewards
[{ id: daily_coins, weight: 25, money: 8000, display: {…} }, { id: daily_food, weight: 20, items: […], display: {…} }, { id: daily_experience, weight: 15, xp: 750, display: {…} }, { id: daily_gold, weight: 12, display: …+8

Crate magic

Il gradino alto: equipaggiamento vero, upgrade e le prime chest del plugin. Questa è quella da vendere nello shop del server.

crates.magic11 chiavi
display-name'&d&lMagic Crate'
permission''
open-styleWORLD

Dove avviene l'apertura:

MENU   quella classica: si apre una finestra e la striscia ci scorre dentro.
       Precisa, leggibile, va bene con venti persone intorno.
WORLD  alla Hypixel: non si apre niente, il coperchio si alza e il premio
       compare a mezz'aria sopra il blocco tra le particelle. Lo vedono
       anche tutti gli altri, ed è proprio per questo che esiste.
Continua a leggere

WORLD ha bisogno di una postazione: se la apri con /crate open, senza un blocco davanti, anche una crate WORLD ripiega sulla finestra.

crates.magic.world4 chiavi

Come appare l'apertura nel mondo. Usato solo con open-style: WORLD.

height1.4

Quanto sopra il blocco compare l'item che gira, e quanto è grande.

scale0.85
crates.magic.world.particle4 chiavi

Le particelle che salgono mentre gira.

particleend_rod
count6
spread0.02
speed0.01
crates.magic.world.finish-particle7 chiavi

Il lampo di quando si ferma sul premio.

particletotem_of_undying
count60
spread0.5
speed0.35
soundentity_player_levelup
volume0.9
pitch1.2
crates.magic
animationROULETTE
duration5s
broadcast-raretrue
rewards-per-open1

Le righe mostrate sopra la postazione. Vuoto o assente = quelle del file di lingua (hologram.crate). %crate% diventa il nome della cassa.

Esempio:
  hologram:
    - '&a&l%crate%'
    - '&7Click destro per aprire'
crates.magic.key4 chiavi
materialTRIPWIRE_HOOK
name'&d&lMagic Key'
lore
["&7Opens the &d&lMagic Crate&7.", "&7No consolation prizes in here.", "", "&8▸ &7Right click the station", "&8▸ &7Left click for the preview"]+4
glowtrue
crates.magic.preview-item3 chiavi
materialENDER_CHEST
name'&d&lMagic Crate'
lore
["&7Gear, upgrades", "&7and the plugin's chests."]+1
crates.magic
rewards
[{ id: magic_coins, weight: 25, money: 30000, display: {…} }, { id: magic_diamonds, weight: 20, display: {…} }, { id: magic_netherite_scrap, weight: 15, display: {…} }, { id: magic_booster, weight: 12, commands: […], di …+8

Crate epic

L'ultima. Ogni premio qui dentro è qualcosa di cui vale la pena parlare in chat, ed è per questo che broadcast-rare è attivo: quando ne esce uno, tutto il server lo viene a sapere.

crates.epic11 chiavi
display-name'&6&lEpic Crate'
permission''
open-styleWORLD

Dove avviene l'apertura:

MENU   quella classica: si apre una finestra e la striscia ci scorre dentro.
       Precisa, leggibile, va bene con venti persone intorno.
WORLD  alla Hypixel: non si apre niente, il coperchio si alza e il premio
       compare a mezz'aria sopra il blocco tra le particelle. Lo vedono
       anche tutti gli altri, ed è proprio per questo che esiste.
Continua a leggere

WORLD ha bisogno di una postazione: se la apri con /crate open, senza un blocco davanti, anche una crate WORLD ripiega sulla finestra.

crates.epic.world4 chiavi

Come appare l'apertura nel mondo. Usato solo con open-style: WORLD.

height1.4

Quanto sopra il blocco compare l'item che gira, e quanto è grande.

scale0.85
crates.epic.world.particle4 chiavi

Le particelle che salgono mentre gira.

particlefirework
count6
spread0.02
speed0.01
crates.epic.world.finish-particle7 chiavi

Il lampo di quando si ferma sul premio.

particletotem_of_undying
count60
spread0.5
speed0.35
soundui_toast_challenge_complete
volume0.9
pitch1.2
crates.epic
animationROULETTE
duration6s
broadcast-raretrue
rewards-per-open1

Le righe mostrate sopra la postazione. Vuoto o assente = quelle del file di lingua (hologram.crate). %crate% diventa il nome della cassa.

Esempio:
  hologram:
    - '&a&l%crate%'
    - '&7Click destro per aprire'
crates.epic.key4 chiavi
materialTRIPWIRE_HOOK
name'&6&lEpic Key'
lore
["&7Opens the &6&lEpic Crate&7.", "&7Nothing comes out of here that is not worth it.", "", "&8▸ &7Right click the station", "&8▸ &7Left click for the preview"]+4
glowtrue
crates.epic.preview-item3 chiavi
materialBEACON
name'&6&lEpic Crate'
lore
["&7Netherite, big chests", "&7and front-page stuff."]+1
crates.epic
rewards
[{ id: epic_coins, weight: 25, money: 150000, display: {…} }, { id: epic_netherite, weight: 20, display: {…} }, { id: epic_megachest, weight: 15, rare: true, commands: […], display: {…} }, { id: epic_booster, weight: 12 …+8

prices.yml

I prezzi
96 impostazioni
plugins/ShadowCrazyChest/prices.yml
Note del file

I prezzi di riserva e i moltiplicatori per permesso.

Se sul server c'è ShadowEconomy con uno shop configurato, questi prezzi coprono solo i materiali che lo shop non compra: con economy.price-source: AUTO il plugin chiede prima allo shop, così i prezzi del server restano un unico set e non ci sono due liste da tenere allineate a mano.

Un materiale che non compare da nessuna parte non è vendibile: le chest lo raccolgono ma non lo trasformano in soldi.

Moltiplicatori per permesso

Valutati nell'ordine in cui sono scritti: vince il primo permesso che il giocatore possiede, quindi i rank più alti vanno in cima.

Continua a leggere

I moltiplicatori di generazione valgono solo mentre il proprietario è online (un permesso non si può controllare offline). Per ciò che una chest guadagna vendendo con il proprietario offline vale invece sell.offline-multiplier del tipo, in chesttypes.yml.

generation-multipliers
[{ permission: shadowcrazychest.multiplier.mvp, multiplier: 3 }, { permission: shadowcrazychest.multiplier.vip_plus, multiplier: 2 }, { permission: shadowcrazychest.multiplier.vip, multiplier: 1.5 }]+2
sell-multipliers
[{ permission: shadowcrazychest.multiplier.mvp, multiplier: 1.5 }, { permission: shadowcrazychest.multiplier.vip_plus, multiplier: 1.25 }, { permission: shadowcrazychest.multiplier.vip, multiplier: 1.1 }]+2

Prezzi degli item custom

Gli item di Oraxen, ItemsAdder, Nexo, MMOItems e simili hanno un prezzo per id, non per materiale: dieci item custom possono condividere tutti lo stesso materiale base e valere cifre completamente diverse.

Continua a leggere

Un item custom che non compare qui non viene venduto e, con limits.protect-custom-items attivo, non viene distrutto nemmeno dalla modalità void.

Le chiavi vanno tra virgolette perché contengono i due punti.

custom-item-prices{ }

'oraxen:ruby': 250.0 'itemsadder:iron_dust': 12.0 'mmoitems:MATERIAL:MITHRIL': 500.0

Prezzi di vendita (per singolo item)

material-prices93 chiavi

minerali e lingotti

material-prices
COAL1.5
CHARCOAL1.0
RAW_COPPER1.0
COPPER_INGOT1.5
RAW_IRON3.0
IRON_INGOT4.0
RAW_GOLD5.0
GOLD_INGOT6.5
REDSTONE0.5
LAPIS_LAZULI0.5
QUARTZ1.5
AMETHYST_SHARD2.0
DIAMOND40.0
EMERALD20.0
NETHERITE_SCRAP150.0
ANCIENT_DEBRIS200.0

blocchi compressi: valgono i nove item che contengono

material-prices
COAL_BLOCK13.5
COPPER_BLOCK13.5
IRON_BLOCK36.0
GOLD_BLOCK58.5
REDSTONE_BLOCK4.5
LAPIS_BLOCK4.5
DIAMOND_BLOCK360.0
EMERALD_BLOCK180.0

la pietra e ciò che ne deriva

material-prices
COBBLESTONE0.1
STONE0.15
DEEPSLATE0.15
COBBLED_DEEPSLATE0.1
ANDESITE0.1
DIORITE0.1
GRANITE0.1
TUFF0.1
CALCITE0.3
NETHERRACK0.05
BASALT0.2
BLACKSTONE0.3
OBSIDIAN5.0
END_STONE0.5

terra, sabbia, legno

material-prices
DIRT0.05
GRAVEL0.1
SAND0.1
RED_SAND0.15
CLAY_BALL0.3
OAK_LOG0.6
SPRUCE_LOG0.6
BIRCH_LOG0.6
JUNGLE_LOG0.6
ACACIA_LOG0.6
DARK_OAK_LOG0.6
CHERRY_LOG0.8
MANGROVE_LOG0.6
PALE_OAK_LOG0.8

agricoltura

material-prices
WHEAT0.4
CARROT0.4
POTATO0.4
BEETROOT0.4
SUGAR_CANE0.3
BAMBOO0.1
MELON_SLICE0.2
PUMPKIN0.6
NETHER_WART1.0
COCOA_BEANS0.5
KELP0.1
CACTUS0.3

drop dei mob

material-prices
ROTTEN_FLESH0.2
BONE0.8
STRING0.6
SPIDER_EYE0.8
GUNPOWDER1.5
ENDER_PEARL8.0
BLAZE_ROD10.0
GHAST_TEAR15.0
SLIME_BALL1.5
MAGMA_CREAM3.0
PHANTOM_MEMBRANE6.0
SHULKER_SHELL40.0
NETHER_STAR500.0
LEATHER1.0
FEATHER0.4
PORKCHOP0.8
BEEF0.8
CHICKEN0.6
MUTTON0.6
RABBIT_HIDE0.8
INK_SAC0.5
GLOW_INK_SAC2.0
PRISMARINE_SHARD1.5
PRISMARINE_CRYSTALS2.5
NAUTILUS_SHELL25.0
HEART_OF_THE_SEA200.0
TRIDENT250.0
ECHO_SHARD60.0
SCULK0.5

Lingue

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

lang/

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

La versione di questo file di lingua. Le chiavi mancanti vengono lette dalla copia dentro il jar, quindi un file vecchio non rompe niente: questo numero serve solo a farti sapere che ce ne sono di nuove da tradurre.

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 — 637
lang/it.yml — 637

Segnaposto più usati

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

  • %crate%
  • %value%
  • %type%
  • %amount%
  • %level%
  • %player%
  • <crate>
  • %material%
  • <player>
  • %count%
  • %total%
  • %items%
  • %multiplier%
  • %id%

Gruppi di messaggi

  • prefix 1
  • general 9
  • usage 15
  • help 5
  • chest 50
  • sell 4
  • crate 22
  • key 12
  • booster 3
  • top 3
  • stats 4
  • lang 5
  • status 17
  • types 8
  • admin 3
  • editor 18
  • item 11
  • disposition 4
  • hologram 12
  • gui 363
  • license 68

Tutta la documentazione