Configurazione
ShadowCustomizer
Item, incantesimi, mob, blocchi e ricette personalizzati.
Dove sono i file
plugins/ShadowCustomizer/ Il plugin li crea al primo avvio e li aggiorna da solo alle nuove versioni, senza toccare le tue modifiche.
Applicare le modifiche
/scus reload Rilegge i file senza riavviare il server.
Nessuna impostazione trovata
Prova con un’altra parola, oppure cerca in tutti i plugin.
Impostazioni
I file che decidono come si comporta il plugin. Si parte da qui.
config.yml
Impostazioni generali 33 impostazioni
config.ymlplugins/ShadowCustomizer/config.yml Questo file spiega il perché di ogni opzione, non solo il cosa
Un valore sbagliato non ferma mai il plugin: viene sostituito con il default e segnalato in console con il percorso e cosa ci si aspettava, così correggi una riga invece di tirare a indovinare.
Continua a leggere
AGGIORNAMENTI: quando una nuova versione cambia questo file, o uno dei file che include in lang/, menus/, items/, mobs/, enchants/, blocks/ o recipes/, viene portato alla nuova versione per te. Tutto ciò che hai cambiato o aggiunto viene mantenuto; le impostazioni che non hai mai toccato prendono i nuovi default. Il tuo file precedente viene conservato in backup/<date>/, e se qualcosa non si è potuto portare (un'opzione che non esiste più, un valore di tipo diverso) lo trovi in PORTING-<version>.txt, con cosa fare.
OGNI CHIAVE IN OGNI FILE È IN INGLESE. Un file di configurazione è codice: una chiave che si può scrivere in due lingue compare in due forme in ogni guida, ogni esempio copiato e ogni domanda al supporto. Si traduce ciò che legge un GIOCATORE - messaggi, nomi degli item, lore - e quello sta in lang/, dove le lingue sono due apposta.
Dove sta il contenuto:
items/*.yml gli item mobs/*.yml i mob e i boss enchants/*.yml gli incantesimi blocks/*.yml i blocchi recipes/*.yml le ricette menus/*.yml le GUI: righe, slot, materiali e testo lang/*.yml i messaggi
Metti quanti file vuoi in quelle cartelle: vengono caricati da soli, in ordine di nome, senza registrare niente da nessuna parte.
Dopo un aggiornamento ne compaiono altri due:
backup/<date>/ i tuoi file com'erano prima PORTING-<version>.txt solo se qualcosa richiede la tua attenzione
Puoi cancellarli entrambi quando non ti servono più.
config-version1Il numero di formato di questo file. Non toccarlo: un aggiornamento scrive sempre quello della nuova versione.
core
core1 chiaveserver-ip''L'indirizzo con cui questo server è conosciuto dall'esterno.
Serve solo alla licenza: una chiave Premium è legata agli indirizzi del server che l'ha riscattata, e un server dietro un proxy non può vedere nessuno dei propri indirizzi pubblici. Se la licenza dice "server sbagliato" ma il server è quello giusto, quasi sempre è questo che manca.
Vuoto va benissimo per la grande maggioranza dei server.
messages
messages2 chiavidefault-localeen_USLa lingua da usare quando quella del giocatore non è disponibile.
Il plugin include en_US e it_IT. Aggiungi un file in lang/ e viene caricato: questo è l'unico posto in cui ha senso una lingua diversa dall'inglese, perché queste sono le parole che leggono i tuoi giocatori.
follow-client-localetrueSe seguire la lingua impostata nel client di ogni giocatore.
Con true un giocatore italiano e uno inglese leggono ognuno la propria senza che nessuno debba fare niente. Con false tutti leggono quella di default, che è ciò che vuoi se hai riscritto i messaggi a modo tuo e non vuoi che metà dei tuoi giocatori se li perda.
models - come un item dice al client quale modello disegnare
models2 chiaviIl modo in cui Minecraft lega un modello a un item È CAMBIATO, e cambierà ancora. Questa sezione esiste perché cambiarlo non voglia dire riscrivere le tue definizioni.
bindingautoCome legare i modelli. Uno tra:
Continua a leggere
auto decide da solo guardando cosa dichiara ogni
definizione, E soprattutto guardando se qualcosa
su questo server fornisce davvero un resource
pack - l'estensione models, o un resource-pack
impostato in server.properties.Se niente lo fa, i modelli NON vengono legati e gli item appaiono come il materiale di cui sono fatti. Non è pigrizia: un item che dichiara un modello che il client non ha non appare come il suo materiale, appare come il CUBO VIOLA E NERO di un modello mancante. Meglio una spada di diamante chiamata Spada di Rubino che una spada che sembra un errore.
Questa è la scelta giusta e il default.
item-model solo il componente item_model, cioè il meccanismo
moderno: un modello per nome, niente numeri e
nessun conflitto possibile con altri plugin. È ciò
che genera l'estensione dei modelli 3D.custom-model-data il componente custom_model_data nella sua forma
stringa. Per chi ha già un pack costruito così e
non vuole rifarlo.legacy-number il vecchio custom_model_data numerico. Funziona
ancora ed è deprecato: è qui perché un pack di tre
anni fa possa continuare a funzionare mentre lo
rifai con calma.none nessun modello. Gli item restano del materiale di
cui sono fatti, e tutto il resto - attributi,
comportamenti, incantesimi - funziona identico.namespaceshadowIl namespace da mettere davanti a un modello scritto senza.
"model: ruby_sword" diventa "shadow:ruby_sword". Cambialo se il tuo resource pack usa un namespace diverso: deve corrispondere, altrimenti il client non trova il modello e disegna il cubo viola e nero.
Cosa può avere un aspetto personalizzato, e come - la mappa completa
Non c'è un solo meccanismo, ce ne sono quattro, e usare quello sbagliato è il motivo per cui i contenuti custom così spesso sembrano giusti in un posto e vanilla in un altro. Ogni riga qui sotto dice quale chiave lo fa e dove.
1. UN ITEM IN MANO O NELL'INVENTARIO
'model' sull'item. Immagine piatta o modello 3D completo, la stessa chiave in entrambi i casi. Questo lo conoscono tutti.
2. UN BLOCCO NEL MONDO
'model' sul blocco. Sotto c'è un note block che usa uno dei suoi stati, e il pack punta quello stato al tuo modello - che NON DEVE PER FORZA ESSERE UN CUBO. Una cassa, una lampada, una lapide: qui i mobili sono solo questo, e blocks/furniture.yml ne include due. Il limite è la hitbox: resta un blocco intero, e un note block non ha orientamento, quindi niente rotazione libera.
3. L'ARMATURA ADDOSSO, E UN'ELYTRA IN VOLO
'equipment' sull'item, NON 'model'. Una volta indossata l'armatura, il gioco smette di disegnare il modello dell'item e stende strati di texture sul corpo: 'humanoid' per il corpo, 'humanoid_leggings' per le gambe, 'wings' per un'elytra. Questo è in assoluto l'errore più comune nei set custom - un modello da solo ti dà un bellissimo aspetto da spada e scudo nell'inventario e netherite semplice addosso. Gli strati si dichiarano in equipment.yml, estensione models.
4. UNA TESTA - di un giocatore, o di un mob
'model', e nient'altro. Lo slot della testa è l'unico posto in cui il gioco disegna il modello DELL'ITEM invece di uno strato. È così che funzionano i cappelli, ed è così che i boss in mobs/mobs.yml hanno una faccia tutta loro senza un plugin di modelli a parte: indossano un item.
IL CORPO DI UN MOB non è nessuno di questi. Rimodellare il mob stesso richiede un plugin di modelli (ModelEngine e simili), con cui questo plugin non parla e non finge di farlo: ciò che ti dà sono gli slot dell'equipaggiamento, che bastano per un boss che sembri un boss.
TUTTI E QUATTRO HANNO BISOGNO DI QUALCUNO CHE FORNISCA IL PACK. Con 'binding: auto' e niente che ne fornisca uno, né 'model' né 'equipment' vengono applicati, e tutto torna ai materiali semplici - apposta. Applicato a metà è peggio che non applicato: è così che si ottengono cubi viola e armature invisibili.
E SI CHIEDE PER OGNI MODELLO, non una volta per tutto il server. Un pack può essere servito e comunque non contenere un certo modello - l'estensione models senza la sua chiave genera le texture piatte e non quelle 3D. Quegli item restano non legati e appaiono come il loro materiale. Così un item non punta mai a un modello che il pack non ha, che è l'unico modo in cui può comparire il cubo viola.
item
items1 chiavehold-period-ticks10Quanti tick tra un'esecuzione e l'altra del comportamento "hold".
Dieci sono mezzo secondo. Alzarlo risparmia lavoro, abbassarlo rende più preciso un effetto continuo. Questo task non parte proprio se nessuna definizione ha un comportamento "hold", quindi se non usi quella funzione questo numero non ha effetto su niente.
mobs
mobs2 chiaviability-period-ticks10Quanti tick fra un giro e l'altro del servizio dei boss sui mob vivi.
È il ciclo che aggiorna le barre della vita, cambia le fasi e fa scattare le abilità a tempo. Dieci tick - mezzo secondo - è un buon compromesso: le abilità restano precise al mezzo secondo e il costo non si vede.
Anche questo non parte se nessun mob ha abilità, fasi o una barra del boss.
max-live500Quanti mob custom possono essere vivi contemporaneamente in tutto il server.
Continua a leggere
È una rete di sicurezza contro un errore che si scrive in tre righe: un boss con un'abilità che evoca due aiutanti ogni venti secondi, e gli aiutanti che sono la stessa definizione del boss. La crescita è esponenziale e te ne accorgi dal TPS.
Nessun server ha cinquecento mob custom vivi contemporaneamente per scelta. Se il tetto viene raggiunto lo trovi in /scus diag: quasi sempre significa che c'è un'abilità di spawn a cui manca un limite.
abilities - i limiti sulle azioni ad area
abilities1 chiavemax-radius32.0Il raggio massimo di un'azione ad area (pull, push, damage-nearby).
Un raggio grande chiede al server di esaminare centinaia di entità a ogni uso, e su Folia quasi certamente esce dalla regione di proprietà del thread - il che significa che non funziona affatto. Meglio un tetto scritto qui che una funzione che a volte funziona.
blocks
blocks1 chiavetrack-placedtrueSe tenere un registro di dove sono piazzati i blocchi custom.
Continua a leggere
LASCIALO ATTIVO. Non è una funzione in più: è il modo in cui questo plugin distingue uno dei suoi blocchi dal note block di un giocatore, ed è il motivo per cui qui non succede quello che succede altrove.
Il problema, in breve. Un blocco custom è un note block accordato su una certa combinazione di strumento e nota. Ma il note block di un giocatore può avere quella stessa combinazione: ne piazza uno, lo accorda con i clic destri, e prima o poi finisce esattamente su una delle nostre. Un plugin che riconosce i propri blocchi solo dalla nota da quel momento lo scambia per suo, e comincia a "difenderlo": annulla l'aggiornamento della fisica, che è anche il modo in cui un note block riceve un segnale di redstone. Da lì in poi quel blocco non suona più quando lo alimenti, non si accorda più, e rompendolo droppa un item che il giocatore non ha mai craftato. È il motivo per cui su tanti server con blocchi custom i circuiti musicali smettono di funzionare e nessuno capisce perché.
Con questo registro attivo, la domanda non è "ha la nota giusta?" ma "l'abbiamo piazzato noi?", e per il note block di un giocatore la risposta è sempre no: la sua redstone funziona, si accorda, e se lo rompi dà un note block.
Spegnilo e il plugin non sa più quali blocchi sono suoi, quindi SPEGNE LE DIFESE invece di tirare a indovinare: i blocchi custom restano visibili, ma si comportano come note block - cambiano nota con un clic destro e droppano un note block. È il compromesso scelto apposta, perché tra "uno dei nostri blocchi perde le difese" e "il circuito di un giocatore smette di funzionare", il secondo colpisce qualcuno che non ha chiesto niente di tutto questo.
Ti dice anche DOVE sono i blocchi di una definizione che hai appena cancellato, e rende possibile una migrazione il giorno in cui Minecraft cambia le combinazioni disponibili.
Ogni scrittura sul database è asincrona: un giocatore che piazza cento blocchi in un minuto non la aspetta mai. Alla domanda "è nostro?" si risponde invece in memoria, otto byte per blocco piazzato.
recipes
recipes1 chiaveprotect-from-vanillatrueSe impedire che un item custom venga usato in una ricetta vanilla.
Continua a leggere
Lasciarlo attivo è quasi sempre giusto, ed è il buco che i plugin di item custom storicamente hanno lasciato aperto: una "Spada del Drago" costruita su una DIAMOND_SWORD è, per un banco da lavoro, un diamante e un bastone. Si può fondere in un lingotto. Si può usare come ingrediente al posto di un item normale. Chi ha passato un mese a guadagnarsela può distruggerla con uno shift click.
Spegnilo solo se hai davvero bisogno che i tuoi item entrino nelle ricette del gioco, e sapendo cosa significa.
ui
ui1 chiaveconfirm-timeout30sPer quanto tempo un pulsante di conferma resta valido prima di scadere.
In questo plugin - come in tutta la suite - a nessuno viene mai chiesto di riscrivere un comando per confermare: clicchi [ CONFERMA ] o [ ANNULLA ]. Il token dietro il pulsante è monouso e legato a chi ha ricevuto la domanda, quindi un pulsante rimasto nella cronologia della chat non può far ripartire niente.
storage
storage5 chiaviLe tue definizioni NON sono qui dentro. Item, mob, incantesimi, blocchi e ricette sono file YAML e restano file YAML: li leggi, li copi da un server all'altro, li metti in un repository, li apri in un editor di testo.
Il database contiene solo tre cose che il gioco produce mentre gira: dove sono i blocchi piazzati, quali definizioni non esistono più ma sono ancora in circolazione, e qualche contatore.
table-prefix'sc_'Il prefisso delle tabelle. Cambialo solo se condividi un database con qualcos'altro: due server sullo stesso database con lo stesso prefisso scrivono nelle stesse righe.
storage.mysql7 chiavienabledfalsefalse usa un file H2 dentro la cartella del plugin: niente da installare, nessun utente, nessuna password. È ciò che fa funzionare il plugin appena lo copi in plugins/.
MySQL è solo per chi ha più di un server che deve vedere gli stessi dati. È una funzione Premium: nella versione free questa riga viene ignorata e si usa il file locale, dicendolo in console.
host127.0.0.1port3306databaseshadowcustomizerusernamerootpassword''parameters'useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC&characterEncoding=utf8'storagefallback-to-localtrueSe MySQL non risponde, ripiega sul file locale invece di rifiutarsi di partire.
true è quasi sempre giusto: un server che non parte è molto peggio di un server che parte scrivendo da un'altra parte. Metti false solo se i dati DEVONO stare sul MySQL condiviso e preferisci accorgertene subito.
storage.h21 chiaveauto-serverfalsePermette a più di un processo di aprire lo stesso file H2. Serve solo se vuoi guardare il database mentre il server gira; costa un po'.
storage.pool5 chiavimaximum-pool-size10minimum-idle2connection-timeout-ms10000idle-timeout-ms600000max-lifetime-ms1800000license
license3 chiaviLA 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 sta qui: sta in license.yml, in questa cartella, creato al primo avvio (oppure in plugins/ShadowControl/licenses.yml per tutta la suite). La chiave. Meglio NON metterla qui.
Il comando /scus license activate <key> la scrive in license.yml, che è un file separato apposta: una richiesta di supporto che dice "mandami la tua config" non dovrebbe arrivare con dentro la tua licenza.
Questa riga esiste per chi distribuisce configurazioni da un template e preferisce tenere tutto in un file solo.
grace-days7Quanti giorni di tolleranza prima di tornare alla free.
Due situazioni non spengono niente subito: un abbonamento appena scaduto (il rinnovo è quasi sempre già andato a buon fine) e un indirizzo che non corrisponde (molto più spesso un NAT o un proxy che un ladro).
activation-url'https://shadow-licences.riccardobotins.workers.dev'L'indirizzo del servizio di attivazione.
È ciò che usa /scus license claim <code>, cioè ciò che trasforma il codice che hai ricevuto all'acquisto in una licenza firmata legata al TUO server, senza che nessuno debba mandarsi indirizzi IP per email.
Vuoto disattiva claim e il ricontrollo periodico: una chiave che hai già continua a funzionare, anche senza rete.
resolve-public-iptrueChiedi al servizio licenze qui sopra come si vede questo server da fuori (activation-url + /ip: risponde con l'indirizzo che vede, e del server non viene inviato niente).
Continua a leggere
È l'unico modo affidabile per conoscere il proprio indirizzo pubblico da dietro un NAT, ed è ciò che fa funzionare una licenza venduta per "play.example.com" su una macchina i cui indirizzi sono tutti 10.x. Un fallimento è silenzioso e non cambia niente. Solo con una licenza installata: un server senza chiave non chiede niente a nessuno. false = non chiedere mai.
debug
debug1 chiavelog-sqlfalseScrive ogni istruzione SQL in console. Utile a chi sta dando la caccia a un guasto e a nessun altro: su un server in produzione inonda il log.
bStats (statistiche d'uso anonime, https://bStats.org)
Cosa viene inviato, ogni 30 minuti: un id casuale del server (serverUuid, non derivato da niente), la versione del plugin, le versioni di Minecraft/Paper e di Java, il sistema operativo e il numero di core, l'online mode, quanti giocatori sono online (solo un numero) e il livello della licenza (free/premium/creator). NESSUN dato dei giocatori: niente nomi, niente UUID, niente indirizzi. Non viene inviato niente mentre il plugin aspetta una licenza.
Continua a leggere
false spegne solo questo plugin. enabled: false in plugins/bStats/config.yml spegne in una volta ogni plugin bStats del server.
metrics1 chiaveenabledtrue enchants/enchants.yml
Gli incantesimi personalizzati 152 impostazioni
enchants/enchants.ymlplugins/ShadowCustomizer/enchants/enchants.yml Note del file
Questi sono incantesimi VERI: entrano nel registro degli incantesimi del server, lo stesso in cui sta Sharpness. L'incudine li combina, il tavolo li offre, i libri li contengono, /enchant li conosce.
IL PREZZO: il registro viene scritto una volta sola, all'avvio. Aggiungere o cambiare uno di questi richiede un RIAVVIO. /scus reload fa tutto il resto - item, mob, blocchi, ricette - e lo dice quando un incantesimo è in attesa.
NOMI E DESCRIZIONI. Quelli qui sotto non hanno 'name:' né 'description:': vengono da lang/<language>.yml, sezione 'enchantments', così ogni giocatore li legge nella propria lingua nelle finestre e in chat. Il nome scritto sull'item è quello della lingua di default del server (messages.default-locale in config.yml), perché il registro ne contiene uno solo. Scrivi 'name:' o 'description:' qui e vince il tuo, per tutti. I tuoi incantesimi hanno bisogno di un nome: qui, o nei file lang.
SU COSA VA. 'supported-items' è la verità: le finestre, i libri e /scus enchant info lo mostrano a parole ("Spade, Lance, Asce"), ricavato da ciò che il server ha registrato.
Nella versione free vengono registrati i primi tre e il loro peso viene forzato al minimo: esistono e funzionano esattamente allo stesso modo, sono solo rari quanto può esserlo un incantesimo.
LIVELLI. Ogni numero in un effetto può dipendere dal livello del libro: "0.5*<level>", "2+<level>", "60*<level>". Durate e amplificatori delle pozioni scalano allo stesso modo ("SPEED 60 <level>"). Un trigger può anche dire QUANTO SPESSO scatta, e su QUALI BLOCCHI, nella sua forma
lunga:
break-block:
chance: '0.1*<level>' # 0..1, può crescere con il livello; omesso = sempre
blocks: [ '#minecraft:logs' ] # tag o blocchi; omesso = ogni blocco
actions:
- 'xp: 1*<level>'"max-level" è il tetto: 1 per un incantesimo tipo Mending che non ha niente da scalare, da 3 a 5 per gli altri. Due libri uguali si combinano sull'incudine nel livello successivo, e la GUI (/scus enchant list) dà un libro a qualsiasi livello fino al tetto.
AZIONI AGGIUNTE PER GLI INCANTESIMI (le altre sono dei comportamenti degli item):
smelt: solo break-block: i drop del blocco escono
fusi, con l'esperienza della fornace.
Fortune è già nei drop.
multiply-drops: 2 solo break-block: i drop per 2.
Mai con Silk Touch, mai su un blocco
che droppa se stesso. Dagli SEMPRE un
filtro 'blocks:' (minerali): su qualsiasi
blocco è una macchina per duplicare.
pull: 0.4 on=target tira il bersaglio verso di te
push: 0.6 on=target spinge il bersaglio lontano da te
damage: 4 on=target below=0.34 solo se il bersaglio ha il 34% di vita o meno
damage-nearby: 2 radius=3 skip-target=true non di nuovo il bersaglio
potion: GLOWING 60 1 radius=8 su chi sta intorno, non su di teAGGIORNAMENTI: quando una nuova versione cambia questo file, viene portato alla nuova versione all'avvio, prima che gli incantesimi vengano registrati. Tutto ciò che hai cambiato o aggiunto (un peso, un effetto, un incantesimo tuo) viene mantenuto; ciò che non hai mai toccato prende le correzioni della nuova versione. Il tuo file precedente viene conservato in backup/<date>/, e se qualcosa non si è potuto portare lo trovi in PORTING-<version>.txt, con cosa fare.
config-version3Spade
Rubavita / Life Steal - ogni colpo ti restituisce un po' di vita
bloodthirst10 chiavimax-level5weight4anvil-cost4minimum-cost'10 11'maximum-cost'60 11'supported-items["#minecraft:swords"]primary-items["#minecraft:swords"]slot[mainhand]exclusive-with["minecraft:fire_aspect"]bloodthirst.effects1 chiavehit-entity["heal: 0.5*<level>", "particle: DAMAGE_INDICATOR 6 0.3"]+1
Punti vita, non cuori: 0.5 è un quarto di cuore per livello, un cuore e un quarto al quinto.
Colpo di grazia / Finishing Blow - finisce chi è quasi a terra
execution8 chiavimax-level3weight2anvil-cost6minimum-cost'20 14'maximum-cost'70 14'supported-items["#minecraft:swords"]slot[mainhand]execution.effects1 chiavehit-entity["damage: 2*<level> on=target below=0.34", "sound: entity.player.attack_crit 1 0.7"]+1
below=0.34: solo quando il bersaglio è sceso a un terzo della sua vita. Senza, questo era solo Sharpness con un altro nome.
Fulmine / Lightning Strike - un fulmine ogni tanto
chain_lightning8 chiavimax-level3weight2anvil-cost6minimum-cost'22 15'maximum-cost'75 15'supported-items["#minecraft:enchantable/sharp_weapon"]Spade, lance e asce: il tag del gioco stesso per loro. La lista scritta a mano che questo sostituisce aveva dimenticato la spada e l'ascia di rame e tutte le lance.
slot[mainhand]chain_lightning.effects1 chiavechain_lightning.effects.hit-entity2 chiavichance'0.15*<level>'"Ogni tanto": la probabilità cresce con il livello, 15% al primo e 45% al terzo. Senza "chance" un effetto scatta a ogni colpo.
actions["lightning:", "damage: 1.5*<level> on=target"]Il fulmine è solo un effetto: non fa danni di suo. Il danno lo decide la riga qui sotto. Aggiungerlo due volte è l'errore che trasforma un incantesimo da spettacolare a insopportabile.
config-version:
wildfire, tempest, undertow, swiftstep, midas_touch, soulreaperAsce
Colpo ampio / Cleave - colpisce anche chi sta intorno
cleave9 chiavimax-level4weight3anvil-cost5minimum-cost'15 13'maximum-cost'65 13'supported-items["#minecraft:axes"]primary-items["#minecraft:axes"]slot[mainhand]cleave.effects1 chiavehit-entity["damage-nearby: 1.5*<level> radius=3 skip-target=true", "sound: entity.player.attack_sweep 1 0.8"]+1
skip-target: quello che hai colpito ha già preso il colpo.
lumberjack8 chiaviEsperienza del boscaiolo / Lumberjack's Experience - ogni tronco vale un po' di esperienza
max-level3weight5anvil-cost3minimum-cost'8 9'maximum-cost'58 9'supported-items["#minecraft:axes"]slot[mainhand]lumberjack.effects1 chiavelumberjack.effects.break-block2 chiaviblocks["#minecraft:logs"]Solo tronchi. Su ogni blocco, piazzare e rompere lo stesso blocco di terra era una farm di esperienza.
actions["xp: 1*<level>"]Picconi
Minerale doppio / Double Ore - ogni tanto un minerale droppa doppio
vein_miner9 chiavimax-level3weight3anvil-cost4minimum-cost'15 10'maximum-cost'65 10'supported-items["#minecraft:pickaxes"]primary-items["#minecraft:pickaxes"]slot[mainhand]vein_miner.effects1 chiavevein_miner.effects.break-block3 chiavichance'0.1*<level>'10% per livello. Solo minerali, come Fortune: su qualsiasi blocco, un blocco di diamante piazzato e rotto sarebbe una duplicazione.
blocks["#minecraft:coal_ores", "#minecraft:iron_ores", "#minecraft:copper_ores", "#minecraft:gold_ores", "#minecraft:redstone_ores", "#minecraft:lapis_ores", "#minecraft:diamond_ores", "#minecraft:emerald_ores", nether_quartz …+7
actions["multiply-drops: 2", "particle: HAPPY_VILLAGER 5 0.3"]+1
Visione notturna / Night Vision - vedi al buio mentre lo tieni in mano
prospector8 chiavimax-level1weight2anvil-cost4minimum-cost'20 0'maximum-cost'60 0'supported-items["#minecraft:enchantable/mining"]slot[mainhand]prospector.effects1 chiavehold["potion: NIGHT_VISION 300 1"]A ogni giro del task globale, mezzo secondo. 300 tick e non meno: il gioco fa SFARFALLARE la visione notturna negli ultimi 200 tick, e con 100 lo schermo sfarfallava tutto il tempo.
Fusione automatica / Auto Smelt - ciò che scavi esce già fuso
smelting_touch9 chiavimax-level1weight2anvil-cost8minimum-cost'25 0'maximum-cost'75 0'supported-items["#minecraft:pickaxes"]slot[mainhand]exclusive-with["minecraft:silk_touch"]smelting_touch.effects1 chiavebreak-block["smelt:", "particle: FLAME 6 0.2", "sound: block.furnace.fire_crackle 0.6 1.4"]+1
'smelt:' è ciò che lo fa: i drop (Fortune compreso) escono come li fanno le ricette della fornace del server - ferro grezzo in lingotti, cobblestone in pietra - più l'esperienza della fornace. Prima di questa riga l'incantesimo faceva solo scintille.
Archi e balestre
volley9 chiaviEsperienza del tiratore / Marksman's Experience - esperienza per ogni bersaglio colpito
max-level3weight4anvil-cost4minimum-cost'12 11'maximum-cost'62 11'supported-items["#minecraft:enchantable/bow"]primary-items["#minecraft:enchantable/bow"]slot[mainhand]volley.effects1 chiavehit-entity["xp: 2*<level>", "particle: CRIT 8 0.3"]Arpione / Harpoon - la freccia trascina il bersaglio verso di te
homing8 chiavimax-level3weight2anvil-cost6minimum-cost'22 13'maximum-cost'72 13'supported-items["#minecraft:enchantable/bow"]slot[mainhand]homing.effects1 chiavehit-entity["pull: 0.4*<level> on=target", "sound: entity.arrow.hit_player 1 1.6"]+1
on=target: il bersaglio, verso di te. La vecchia forma 'radius=6' tirava ciò che stava intorno al bersaglio verso il bersaglio - e il bersaglio stesso, a distanza zero, per niente.
Dardo esplosivo / Explosive Bolt - il dardo esplode
siege9 chiavimax-level3weight2anvil-cost7minimum-cost'25 14'maximum-cost'75 14'supported-items["#minecraft:enchantable/crossbow"]primary-items["#minecraft:enchantable/crossbow"]slot[mainhand]siege.effects1 chiavehit-entity["explode: 1*<level> blocks=false", "damage-nearby: 2*<level> radius=3"]+1
blocks=false: l'esplosione fa spettacolo e danni, non buchi nel mondo. È la riga che decide se questo incantesimo può restare attivo su un server con delle costruzioni.
Tridenti
Scudi
Repulsione / Repulsion - chi ti colpisce viene respinto
bulwark9 chiavimax-level3weight3anvil-cost5minimum-cost'15 12'maximum-cost'65 12'supported-items[shield]Non esiste un tag vanilla per gli scudi - accettano solo Unbreaking e Mending - quindi l'item si scrive a mano.
primary-items[shield]slot[mainhand, offhand]Uno scudo sta nella mano secondaria: contano entrambe le mani.
bulwark.effects1 chiavetake-damage["push: 0.6*<level> on=target", "sound: item.shield.block 1 0.8"]+1
on=target: chi ti ha colpito, lontano da te.
Armature
Spine d'ombra / Shadow Thorns - chi ti colpisce se ne pente
shadow_thorns10 chiavimax-level4weight3anvil-cost5minimum-cost'12 12'maximum-cost'62 12'supported-items["#minecraft:enchantable/armor"]primary-items["#minecraft:enchantable/armor"]slot[armor]exclusive-with["minecraft:thorns"]shadow_thorns.effects1 chiavetake-damage["damage: 1*<level> on=target", "particle: SOUL 12 0.4"]+1
Una volta per colpo al livello più alto che indossi, non una volta per pezzo. Contro un arciere, il danno va all'arciere.
Secondo fiato / Second Wind - un po' di vita quando vieni colpito
second_wind8 chiavimax-level3weight2anvil-cost6minimum-cost'20 13'maximum-cost'70 13'supported-items["#minecraft:enchantable/chest_armor"]slot[chest]second_wind.effects1 chiavesecond_wind.effects.take-damage2 chiavichance'0.1*<level>'"Ogni tanto", come dice la descrizione: 10% per livello. A ogni colpo curava un po' ogni volta, il che contro i mob piccoli è quasi l'immortalità.
actions["heal: 2*<level>", "particle: HEART 5 0.3"]Caduta lenta / Slow Falling - cadi piano
featherfall8 chiavimax-level2weight4anvil-cost3minimum-cost'10 10'maximum-cost'60 10'supported-items["#minecraft:enchantable/foot_armor"]slot[feet]featherfall.effects1 chiavehold["potion: SLOW_FALLING 60*<level> 1"]Mentre gli stivali sono indossati (non tenuti in mano). Dura di più a ogni livello dopo averli tolti.
Tutto ciò che si consuma
Rivelazione / Reveal - chi ti sta intorno si illumina
beacon8 chiavimax-level1weight2anvil-cost4minimum-cost'18 0'maximum-cost'68 0'supported-items["#minecraft:enchantable/equippable"]slot[any]beacon.effects1 chiavehold["potion: GLOWING 60 1 radius=8"]radius=8: su chi ti sta intorno. Senza, l'effetto finiva su chi lo indossa, l'opposto di ciò che dice l'incantesimo.
Sazietà / Satiety - non ti viene fame
temper8 chiaviIl peso va da 1 a 1024 e dice quanto è probabile che esca un incantesimo rispetto agli altri: i valori vanilla vanno da 1 (Luck of the Sea) a 10 (Protection). UNO è il minimo che il gioco accetta - zero non è un valore valido e fa fallire la registrazione.
Con uno, questo è il più raro di tutti: un incantesimo premio, di solito applicato a mano con /scus enchant o con un libro.
max-level1Un livello: l'effetto saturazione riempie la barra della fame a qualsiasi potenza, quindi i livelli da due a cinque non facevano niente di più.
weight1anvil-cost10minimum-cost'30 15'maximum-cost'80 15'supported-items["#minecraft:enchantable/durability"]slot[any]temper.effects1 chiavehold["potion: SATURATION 40 1"] mobs/mobs.yml
I mob personalizzati 114 impostazioni
mobs/mobs.ymlplugins/ShadowCustomizer/mobs/mobs.yml Note del file
Un mob custom è un mob vanilla travestito: statistiche, equipaggiamento, nome, comportamento e drop. Non puoi aggiungere tipi di entità a Minecraft da un plugin - nessuno può - e non ti serve: un Pumpkin King con seicento di vita, una testa intagliata, tre abilità e una barra è un boss, e a nessuno importa che sotto sia un wither skeleton.
QUELLO CHE LI FA SEMBRARE CUSTOM è quello che indossano. Lo slot della testa cambia la sagoma, e le teste sono item con un modello 3D - vedi items/heads.yml. Senza resource pack i mob funzionano lo stesso, sembrano solo quello di cui sono fatti.
BOSS: la barra della vita, le fasi e le abilità a tempo sono Premium. Su un server free un boss spawna comunque con le sue statistiche, il suo equipaggiamento e i suoi drop.
Spawnane uno con: /scus mob spawn <id>
IN ITALIANO: la versione italiana di questo file è in esempi/it_IT/mobs/mobs.yml, nella cartella del plugin. Non viene caricata: per usarla, copiala al posto di questo file, o copia le voci che vuoi.
config-version1Mob normali
Lost Miner - scava dove non dovrebbe, e ti trova
lost_miner9 chiavitypeZOMBIEname'<gray>Lost Miner'health40damage6armor6lost_miner.equipment3 chiaviheadIRON_HELMETchestIRON_CHESTPLATEhandIRON_PICKAXElost_minerdrops["antracite_raw 1 3 0.7", "arcadium_raw 1 1 0.10", "IRON_INGOT 1 2 0.4"]+2
Ogni riga è: id, minimo, massimo, probabilità, poi i dettagli. L'id può essere uno dei nostri item o un materiale vanilla.
experience25lost_miner.on1 chiavedeath["particle: LARGE_SMOKE 12 0.4"]Arciere di cenere - non brucia all'alba, e si muove veloce
ash_archer8 chiavitypeSKELETONname'<dark_gray>Ash Archer'ash_archer.stats3 chiavihealth30speed0.32follow-range40ash_archerburns-in-daylightfalseSenza questa riga lo scheletro brucia all'alba, e un mob da evento che si incenerisce da solo è l'errore che scopri il giorno dopo averlo messo.
ash_archer.equipment2 chiavihandBOWash_archer.equipment.head2 chiavimaterialdarkflame_helmetdrop-chance0.05ash_archerpotions["SPEED 1"]drops["ARROW 4 12 1.0", "antracite_dust 1 2 0.5", "BONE 1 3 0.8"]+1
experience35Boss
Pumpkin King - il boss con la testa 3D
pumpkin_king14 chiavitypeWITHER_SKELETONname'<gold>Pumpkin King'name-visibletruebosstruepumpkin_king.stats7 chiavihealth600damage14speed0.28armor14knockback-resistance0.8follow-range44scale1.5Uno è normale. Uno e mezzo è grande e visibile da lontano.
pumpkin_kingburns-in-daylightfalsepersistenttrueUn boss che non è persistente sparisce quando l'ultimo giocatore si allontana un po', cioè proprio quando qualcuno scappa a curarsi. Per i boss è true di default, ma è scritto qui perché si veda.
pumpkin_king.equipment3 chiavipumpkin_king.equipment.head2 chiavimaterialpumpkin_king_headdrop-chance0.20pumpkin_king.equipmentchestNETHERITE_CHESTPLATEpumpkin_king.equipment.hand2 chiavimaterialdarkflame_axedrop-chance0.10pumpkin_king.boss-bar4 chiavititle'<gold>Pumpkin King'colorYELLOWstyleNOTCHED_10range48pumpkin_king.on2 chiavispawn["broadcast: <gray>The <gold>Pumpkin King <gray>has woken up.", "sound: entity.wither.spawn 1 0.6"]+1
death["broadcast: <gray>The <gold>Pumpkin King <gray>has fallen.", "sound: ui.toast.challenge_complete 1 1"]+1
pumpkin_king.abilities2 chiaviLe abilità della fase iniziale.
pumpkin_king.abilities.fangs4 chiavievery8schance0.7radius12actions["damage: 6 on=target", "particle: FLAME 25 0.5", "sound: entity.evoker.fangs_attack 1 0.8"]+2
pumpkin_king.abilities.call3 chiavievery22sneeds-targetfalseactions["spawn: ash_archer 2", "sound: entity.wither.ambient 1 0.7"]+1
pumpkin_king.phases2 chiaviLe fasi. L'ordine in cui le scrivi non conta: vengono ordinate per soglia decrescente. Si attraversano una volta sola e verso il basso - curare il boss non lo riporta indietro.
Continua a leggere
Due placeholder in più rispetto a <player>, <target>, <x> <y> <z> e <world>:
<phase> in on-enter, il nome della fase in cui si è appena entrati <ability> nelle azioni di un'abilità, il suo id (fangs, call...)
Funzionano anche i nomi italiani <fase> e <abilita>. Per esempio:
- 'broadcast: <gray>The <gold>Pumpkin King <gray>enters <red><phase><gray>.'
pumpkin_king.phases.burning5 chiavibelow0.5name'Burning'bar-colorREDon-enter["broadcast: <gray>The <gold>Pumpkin King <red>catches fire<gray>.", "potion: SPEED 999999 2", "sound: entity.ender_dragon.growl 1 0.8"]+2
pumpkin_king.phases.burning.abilities2 chiavipumpkin_king.phases.burning.abilities.fangs4 chiavievery4schance1.0radius14actions["damage: 8 on=target", "fire: 80 on=target", "particle: FLAME 40 0.6"]+1
pumpkin_king.phases.burning.abilities.shockwave3 chiavievery12sneeds-targetfalseactions["push: 1.4 radius=6", "damage-nearby: 5 radius=6", "explode: 2 blocks=false"]+2
pumpkin_king.phases.last_stand5 chiavibelow0.2name'Last Flame'bar-colorWHITEon-enter["broadcast: <gray>The <gold>Pumpkin King <gray>has nothing left to lose.", "lightning:"]+1
pumpkin_king.phases.last_stand.abilities1 chiavepumpkin_king.phases.last_stand.abilities.volley3 chiavievery3sradius16actions["damage: 7 on=target", "pull: 1.0 radius=10"]pumpkin_kingdrops["pumpkin_king_head 1 1 1.0 player-only=true", "darkflame_sword 1 1 0.35 player-only=true", "oricalco_rod 2 5 1.0", "NETHER_STAR 1 1 0.30 player-only=true"]+3
experience800Steel Warden - il boss lento che colpisce forte
steel_warden13 chiavitypeIRON_GOLEMname'<gray>Steel Warden'name-visibletruebosstruesteel_warden.model4 chiaviUn vero corpo 3D: un item model di ShadowCustomizerModels indossato da un display che cavalca il golem (invisibile). Statico, non animato. "scale" dimensiona il modello, "y-offset" lo solleva dai piedi, "hide-base" nasconde il golem.
item'shadow:steel_warden_model'scale2.02.0 e non 1.3: il corpo è disegnato a 0.65 della sua dimensione, perché a dimensione piena usciva dal riquadro di 32 pixel che Minecraft accetta e il client rifiutava l'intero modello. 0.65 x 2.0 = 1.3, la dimensione che aveva prima.
y-offset0.5hide-basetruesteel_warden.stats7 chiavihealth500damage18speed0.22armor18knockback-resistance1.0follow-range36scale1.3steel_wardenpersistenttruesteel_warden.boss-bar4 chiavititle'<gray>Steel Warden'colorWHITEstyleNOTCHED_6range44steel_warden.on2 chiavispawn["broadcast: <gray>The <white>Steel Warden <gray>has risen.", "sound: entity.iron_golem.repair 1 0.6"]+1
death["broadcast: <gray>The <white>Steel Warden <gray>has stopped.", "sound: block.anvil_land 1 0.6"]+1
steel_warden.abilities1 chiavesteel_warden.abilities.slam4 chiavievery7schance0.8radius10actions["damage: 8 on=target", "push: 1.2 radius=4", "sound: entity.iron_golem.attack 1 0.7"]+1
steel_warden.phases1 chiavesteel_warden.phases.overheated5 chiavibelow0.4name'Overheated'bar-colorREDon-enter["broadcast: <gray>The <white>Warden <red>overheats<gray>.", "potion: SPEED 999999 1"]+1
steel_warden.phases.overheated.abilities2 chiavisteel_warden.phases.overheated.abilities.slam4 chiavievery4schance1.0radius12actions["damage: 11 on=target", "push: 1.6 radius=5", "particle: ELECTRIC_SPARK 30 0.6"]+1
steel_warden.phases.overheated.abilities.magnet3 chiavievery14sneeds-targetfalseactions["pull: 1.2 radius=10", "sound: block.beacon.activate 1 0.7"]+1
steel_wardendrops["shadowsteel_shield 1 1 0.40 player-only=true", "elektron_ingot 2 4 1.0", "arcadium_ingot 2 4 1.0", "IRON_BLOCK 2 5 1.0"]+3
experience700 recipes/recipes.yml
Le ricette 63 impostazioni
recipes/recipes.ymlplugins/ShadowCustomizer/recipes/recipes.yml Note del file
Ogni ingrediente e risultato può essere uno dei nostri id o un materiale vanilla. I nostri vengono cercati per primi.
config.yml ha recipes.protect-from-vanilla attivo di default: impedisce che un item custom venga usato in una delle ricette del gioco. È il buco che i plugin di item custom storicamente hanno lasciato aperto - una spada leggendaria costruita su una spada di netherite è, per un banco da lavoro, un lingotto di netherite e un bastone.
config-version1La fornace: da grezzo a raffinato
antracite_smelt6 chiavitypefurnaceinputantracite_rawresultantracite_dustamount1cook-time200In tick. Duecento sono dieci secondi, come una fornace normale.
experience0.7arcadium_smelt5 chiavitypefurnaceinputarcadium_rawresultarcadium_ingotcook-time220experience1.0elektron_smelt5 chiavitypefurnaceinputelektron_rawresultelektron_ingotcook-time220experience1.0oricalco_smelt5 chiavitypeblastinginputoricalco_rawresultoricalco_rodcook-time160experience1.5Shadowsteel - il banco da lavoro
shadowsteel_sword_craft5 chiavitypeshapedshape[" A ", " A ", " O "]shadowsteel_sword_craft.ingredients2 chiaviAarcadium_ingotOoricalco_rodshadowsteel_sword_craftresultshadowsteel_swordgroup'shadowsteel'Il gruppo raccoglie insieme le varianti nel ricettario.
shadowsteel_axe_craft5 chiavitypeshapedshape["AA ", "AO ", " O "]shadowsteel_axe_craft.ingredients2 chiaviAarcadium_ingotOoricalco_rodshadowsteel_axe_craftresultshadowsteel_axegroup'shadowsteel'shadowsteel_pickaxe_craft5 chiavitypeshapedshape[AAA, " O ", " O "]shadowsteel_pickaxe_craft.ingredients2 chiaviAarcadium_ingotOoricalco_rodshadowsteel_pickaxe_craftresultshadowsteel_pickaxegroup'shadowsteel'shadowsteel_shield_craft5 chiavitypeshapedshape[AEA, AAA, " A "]shadowsteel_shield_craft.ingredients2 chiaviAarcadium_ingotEelektron_ingotshadowsteel_shield_craftresultshadowsteel_shieldgroup'shadowsteel'Darkflame - il tavolo da forgiatura
darkflame_sword_forge3 chiaviIl primo ingrediente è la base, il secondo l'aggiunta, il terzo (facoltativo) il modello di forgiatura. Senza il terzo si applica quello di netherite.
typesmithinginputs[shadowsteel_sword, oricalco_rod, NETHERITE_UPGRADE_SMITHING_TEMPLATE]+1
resultdarkflame_sworddarkflame_axe_forge3 chiavitypesmithinginputs[shadowsteel_axe, oricalco_rod, NETHERITE_UPGRADE_SMITHING_TEMPLATE]+1
resultdarkflame_axedarkflame_pickaxe_forge3 chiavitypesmithinginputs[shadowsteel_pickaxe, oricalco_rod, NETHERITE_UPGRADE_SMITHING_TEMPLATE]+1
resultdarkflame_pickaxeL'incudine
elektron_crossbow_anvil4 chiaviL'incudine non è una ricetta di Minecraft: sa combinare, riparare e rinominare, e basta. Una "ricetta dell'incudine" è quindi il plugin che guarda i due slot e decide cosa mettere nel terzo. Per te che scrivi il file è la stessa cosa; per il server no, ed è per questo che non compare nel ricettario.
typeanvilinputs[CROSSBOW, elektron_ingot]resultshadowsteel_crossbowlevel-cost12oricalco_bow_anvil4 chiavitypeanvilinputs[BOW, oricalco_rod]resultdarkflame_bowlevel-cost14Lingue
I testi che il plugin mostra ai giocatori, un file per lingua.
lang/
Testi e messaggi 2 file
lang/plugins/ShadowCustomizer/lang/ Note del file
ShadowCustomizer - inglese
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.
| File | Lingua | Testi |
|---|---|---|
lang/en_US.yml riferimento | English | 366 |
lang/it_IT.yml | Italiano | 366 |
Segnaposto più usati
Il plugin li sostituisce con il valore giusto: vanno lasciati scritti così.
<prefix><id><label><count><value><name><list><n><level><targets><max><state><mobs><amount>
Gruppi di messaggi
prefix1common6command6confirm6help11item34mob22enchant22block8recipe17diag7status8reload3license39prompt2menu100enchantments46enchant-target28
Altro
Contenuti pronti, esempi, importazioni: i file che si copiano e si modificano come modello.
blocks/
I blocchi personalizzati 2 file
blocks/plugins/ShadowCustomizer/blocks/ 2 file con la stessa forma. Qui sotto 2 esempi per intero, uno per ogni forma diversa; gli altri sono elencati per nome.
furniture.ymlores.yml
Esempio blocks/furniture.yml
Mobili - blocchi decorativi con una forma tutta loro
Note del file
Questi usano lo stesso meccanismo dei minerali qui accanto - un note block sotto, uno stato ciascuno - con una differenza che cambia cosa puoi costruire: il loro modello è un file Blockbench, non un cubo.
QUINDI UN BLOCCO CUSTOM NON È COSTRETTO A ESSERE UN CUBO. Una cassa, una lapide, una lampada, una sedia: tutto ciò che puoi disegnare sta in un modello di blocco, e il pack lo disegna nel mondo esattamente com'è disegnato. Ecco cosa sono i mobili qui, e non serve niente oltre a quello che c'è già nella scatola.
L'UNICO LIMITE ONESTO: il blocco contro cui cammini resta un note block intero. Una lapide larga mezzo blocco sembra larga mezzo blocco e ha la collisione di uno intero, e non si può ruotare piazzandola da un altro lato - un note block non ha orientamento. I mobili che hanno bisogno di una hitbox vera o di rotazione libera sono un altro meccanismo (display entity), e oggi questo plugin non lo fa.
Metti 'placeable: false' su un item e non potrà mai essere piazzato; questi sono l'opposto - esistono per essere piazzati.
IN ITALIANO: la versione italiana di questo file è in esempi/it_IT/blocks/furniture.yml, nella cartella del plugin. Non viene caricata: per usarla, copiala al posto di questo file, o copia le voci che ti servono.
config-version1runic_chest9 chiaviname'<light_purple>Runic Chest'lore["<gray>Decorative. Nothing fits inside.", <dark_gray>Furniture]+1
item-materialCHESTIl materiale dell'item in mano quando non c'è il pack.
model'shadow:runic_chest'required-toolaxeUna chest si rompe con un'ascia, non con un piccone.
drops["runic_chest 1 1 1.0"]break-sound'block.wood.break'place-sound'block.wood.place'runic_chest.on1 chiaveinteract["sound: block.chest.locked 1 1.4", "particle: ENCHANT 8 0.4"]+1
crypt_tombstone9 chiaviname'<gray>Crypt Tombstone'lore["<gray>Someone wrote something on it, once.", <dark_gray>Furniture]+1
item-materialSTONE_BRICKSmodel'shadow:crypt_tombstone'required-toolpickaxedrops["crypt_tombstone 1 1 1.0"]break-sound'block.deepslate_bricks.break'place-sound'block.deepslate_bricks.place'crypt_tombstone.on1 chiaveinteract["sound: particle.soul_escape 0.7 0.6", "particle: SOUL 10 0.3"]+1
Esempio blocks/ores.yml
I quattro blocchi di minerale
Come funziona, in breve. Un plugin non può aggiungere blocchi a Minecraft
Ciò che può fare - e ciò che fa ogni plugin con blocchi custom - è prendere un blocco vanilla con molti stati visivamente identici e usarne uno per ogni blocco custom. Qui è il note block: 27 strumenti per 25 note, di cui 648 vengono assegnati.
Continua a leggere
QUALE STATO APPARTIENE A QUALE BLOCCO è registrato in blocks-state.yml. Non modificarlo e non cancellarlo: cambiarlo trasforma in silenzio i blocchi già piazzati nei tuoi mondi in blocchi diversi.
I NOTE BLOCK DEI TUOI GIOCATORI CONTINUANO A FUNZIONARE. Un blocco è nostro perché l'abbiamo piazzato noi, non perché ha la nota giusta - blocks.track-placed in config.yml. È il motivo per cui su questo server i note block della redstone non smettono misteriosamente di suonare.
Ogni minerale richiede un piccone: il vero blocco sotto è un note block, e un note block si rompe con qualsiasi cosa.
IN ITALIANO: la versione italiana di questo file è in esempi/it_IT/blocks/ores.yml, nella cartella del plugin. Non viene caricata: per usarla, copiala al posto di questo file, o copia le voci che vuoi.
config-version1antracite_ore8 chiaviname'<gray>Anthracite Ore'lore["<gray>Black, and heavier than it looks."]item-materialCOAL_OREIl materiale dell'item in mano. Il blocco nel mondo è comunque un note block: questo è solo l'aspetto dell'item quando non c'è un resource pack.
model'shadow:antracite_ore'required-toolpickaxedrops["antracite_raw 1 3 1.0", "antracite_raw 1 1 0.15"]+1
break-sound'block.deepslate.break'place-sound'block.deepslate.place'config-version:
arcadium_ore, elektron_ore, oricalco_ore items/
Gli oggetti personalizzati 4 file
items/plugins/ShadowCustomizer/items/ 4 file con la stessa forma. Qui sotto 4 esempi per intero, uno per ogni forma diversa; gli altri sono elencati per nome.
armor.ymlheads.ymlores.ymlweapons.yml
Esempio items/armor.yml
Shadowsteel - il set di armatura
Quattro pezzi
Elmo e corazza hanno un modello 3D; gambali e stivali sono immagini piatte, perché il set da cui vengono non ha un modello per quei due.
Continua a leggere
QUELLO CHE VEDI E QUELLO CHE INDOSSI SONO DUE COSE DIVERSE, e qui ci sono tutte e due. 'model' è il modello dell'item: quello che vedi nell'inventario e in mano. 'equipment' è l'aspetto indossato: il gioco smette di disegnare il modello quando l'armatura è INDOSSATA e stende invece strati di texture sul corpo, e quella riga dice quali. Toglila e il pezzo torna ad avere, addosso a te, l'aspetto del netherite.
L'elmo è l'eccezione: nello slot della testa il gioco disegna il MODELLO DELL'ITEM, quindi l'elmo 3D si indossa esattamente come appare in mano. È così che funzionano i cappelli nei resource pack.
Ogni pezzo richiede un permesso: sono pensati come ricompensa, non come qualcosa che chiunque può craftare. Togli la riga e tutti possono usarli.
IN ITALIANO: la versione italiana di questo file è in esempi/it_IT/items/armor.yml, nella cartella del plugin. Non viene caricata: per usarla, copiala al posto di questo file, oppure copia le voci che vuoi.
config-version1shadowsteel_helmet11 chiavimaterialNETHERITE_HELMETname'<gray>Shadowsteel Helmet'lore["<dark_gray>Legendary armour", "<gray>Whoever hits you regrets it."]+1
model'shadow:shadowsteel_helmet'equipment'shadow:shadowsteel'L'aspetto indossato. Vedi equipment.yml nell'estensione dei modelli.
tags[armor, shadowsteel]unbreakabletrueflags[UNBREAKABLE, ATTRIBUTES]permissionshadowcustomizer.kit.shadowsteelshadowsteel_helmet.attributes2 chiaviarmor4shadowsteel_helmet.attributes.armor_toughness2 chiavivalue3slotheadshadowsteel_helmet.enchantments5 chiaviprotection6respiration4unbreaking5shadow_thorns3beacon1shadowsteel_chestplate12 chiavimaterialNETHERITE_CHESTPLATEname'<gray>Shadowsteel Chestplate'lore["<dark_gray>Legendary armour", "<gray>It puts you back on your feet when you are hit."]+1
model'shadow:shadowsteel_chestplate'equipment'shadow:shadowsteel'L'aspetto indossato. Vedi equipment.yml nell'estensione dei modelli.
tags[armor, shadowsteel]unbreakabletrueflags[UNBREAKABLE, ATTRIBUTES]permissionshadowcustomizer.kit.shadowsteelshadowsteel_chestplate.attributes2 chiaviarmor9shadowsteel_chestplate.attributes.armor_toughness2 chiavivalue4slotchestshadowsteel_chestplate.enchantments4 chiaviprotection6unbreaking5shadow_thorns4second_wind2shadowsteel_chestplate.behaviours1 chiaveshadowsteel_chestplate.behaviours.take-damage4 chiavichance0.2cooldown4scancelfalseactions["damage: 3 on=target", "particle: SOUL 16 0.4", "sound: particle.soul_escape 0.8 0.8"]+1
shadowsteel_leggings11 chiavimaterialNETHERITE_LEGGINGSname'<gray>Shadowsteel Leggings'lore["<dark_gray>Legendary armour", "<gray>You always move a little faster."]+1
model'shadow:shadowsteel_leggings'equipment'shadow:shadowsteel'L'aspetto indossato. Vedi equipment.yml nell'estensione dei modelli.
tags[armor, shadowsteel]unbreakabletrueflags[UNBREAKABLE, ATTRIBUTES]permissionshadowcustomizer.kit.shadowsteelshadowsteel_leggings.attributes2 chiaviarmor7shadowsteel_leggings.attributes.armor_toughness2 chiavivalue3slotlegsshadowsteel_leggings.enchantments3 chiaviprotection6unbreaking5swiftstep2shadowsteel_boots11 chiavimaterialNETHERITE_BOOTSname'<gray>Shadowsteel Boots'lore["<dark_gray>Legendary armour", "<gray>You fall slower than you should."]+1
model'shadow:shadowsteel_boots'equipment'shadow:shadowsteel'L'aspetto indossato. Vedi equipment.yml nell'estensione dei modelli.
tags[armor, shadowsteel]unbreakabletrueflags[UNBREAKABLE, ATTRIBUTES]permissionshadowcustomizer.kit.shadowsteelshadowsteel_boots.attributes2 chiaviarmor4shadowsteel_boots.attributes.armor_toughness2 chiavivalue3slotfeetshadowsteel_boots.enchantments5 chiaviprotection6feather_falling4depth_strider3unbreaking5featherfall2L'elytra
shadowsteel_elytra10 chiaviUn'elytra si indossa sul petto come una corazza, quindi prende le stesse due righe - e significano comunque due cose diverse.
Continua a leggere
'model' è l'item: ciò che vedi in mano e nell'inventario, qui un vero modello 3D.
'equipment' sono le ali sulla schiena una volta indossata. Sono uno strato a sé - 'wings' - perché la geometria delle ali non è quella del corpo, ed è il motivo per cui un'elytra con solo un modello sembra custom nell'inventario e vanilla in volo. Vedi equipment.yml nell'estensione models.
materialELYTRAname'<light_purple>Shadowsteel Wings'lore["<dark_gray>Legendary armour", "<gray>The void under your feet stops being a problem."]+1
model'shadow:shadowsteel_elytra'equipment'shadow:shadowsteel_wings'L'aspetto in volo: lo strato 'wings', vedi equipment.yml.
tags[armor, shadowsteel]unbreakabletrueflags[UNBREAKABLE, ATTRIBUTES]permissionshadowcustomizer.kit.shadowsteelshadowsteel_elytra.enchantments3 chiaviunbreaking5mending1featherfall3 Esempio items/weapons.yml
Due set di armi, pronti all'uso
Note del file
SHADOWSTEEL è il set bilanciato: forte, sobrio, nessun trucco oltre a un buon numero. DARKFLAME è quello rumoroso: brucia, esplode, e costa durabilità ogni volta che lo fa.
Ogni pezzo qui ha un modello 3D. Senza l'estensione dei modelli - o su un server senza resource pack - funzionano comunque esattamente allo stesso modo e hanno l'aspetto del materiale di cui sono fatti.
UNA COSA CHE VALE LA PENA LEGGERE, perché è l'errore più comune con gli item custom: nel momento in cui un item dichiara un attributo, i modificatori del materiale stesso SPARISCONO. Una spada di netherite che dice solo "+2 velocità d'attacco" fa un danno. keep-default-attributes: true - il default - rimette quelli del materiale prima dei tuoi, ed è quello che vuoi qui.
Ogni chiave è in inglese, e lo sono anche i nomi e la lore.
IN ITALIANO: la versione italiana di questo file è in esempi/it_IT/items/weapons.yml, nella cartella del plugin. Non viene caricata: per usarla, copiala al posto di questo file, o copia le voci che ti servono.
config-version1Shadowsteel
shadowsteel_sword10 chiavimaterialNETHERITE_SWORDname'<gray>Shadowsteel Sword'lore["<dark_gray>Legendary weapon", "", "<gray>Right click: <white>a leap forward"]+1
model'shadow:shadowsteel_sword'tags[weapon, shadowsteel]keep-default-attributestrueshadowsteel_sword.attributes2 chiaviattack_damage4shadowsteel_sword.attributes.attack_speed3 chiavivalue-0.2operationadd_numberslotmainhandshadowsteel_sword.enchantments5 chiaviIncantesimi oltre il massimo vanilla: Affilatezza 10, dove il gioco si ferma a 5. Basta scriverli, e l'incudine li rispetta.
sharpness10looting4unbreaking5bloodthirst3execution2shadowsteel_swordflags[ATTRIBUTES]shadowsteel_sword.behaviours1 chiaveshadowsteel_sword.behaviours.right-click3 chiavicooldown6sdurability-cost2actions["velocity: 1.5 0.5", "sound: entity.ender_dragon.flap 0.7 1.4", "particle: CLOUD 24 0.4"]+2
config-version:
shadowsteel_axe, shadowsteel_pickaxe, shadowsteel_bow, shadowsteel_crossbow, shadowsteel_trident, shadowsteel_shield, darkflame_axe, darkflame_pickaxe, darkflame_bow, ranger_crossbow, darkflame_spearDarkflame
darkflame_sword9 chiavimaterialNETHERITE_SWORDname'<dark_red>Darkflame Sword'lore["<dark_gray>Legendary weapon", "", "<gray>Every hit: <white>flames", "<gray>Right click: <white>a wave of fire"]+2
model'shadow:darkflame_sword'tags[weapon, darkflame]darkflame_sword.attributes1 chiaveattack_damage5darkflame_sword.enchantments5 chiavisharpness10fire_aspect3unbreaking5wildfire3soulreaper2darkflame_swordflags[ATTRIBUTES]darkflame_sword.behaviours2 chiavidarkflame_sword.behaviours.hit-entity2 chiavichance0.4actions["fire: 80 on=target", "particle: FLAME 12 0.3"]darkflame_sword.behaviours.right-click3 chiavicooldown12sdurability-cost15L'usura è quello che rende giusta un'abilità forte: puoi usarla, ma costa. Senza, un clic destro gratuito diventa l'unica cosa che fa chiunque impugni quest'arma.
actions["damage-nearby: 6 radius=5", "particle: FLAME 60 1.0", "sound: entity.blaze.shoot 1 0.7"]+2
darkflame_shield7 chiavimaterialSHIELDname'<dark_red>Darkflame Shield'lore["<dark_gray>Legendary defence", "<gray>Whoever hits you gets burnt."]+1
model'shadow:darkflame_shield'tags[shield, darkflame]darkflame_shield.enchantments3 chiaviunbreaking6mending1bulwark2darkflame_shield.behaviours1 chiavedarkflame_shield.behaviours.take-damage4 chiavichance0.3cooldown2scancelfalseSu questo trigger non c'è niente da annullare - il gioco decide il danno e noi rispondiamo - e false è già il default.
actions["fire: 60 on=target", "particle: FLAME 14 0.4"] Esempio items/ores.yml
I quattro minerali - grezzi e raffinati
Note del file
Quattro minerali, ognuno con tre forme: il blocco di minerale (in blocks/), il drop grezzo, e ciò che esce dalla fornace. Le ricette che trasformano l'uno nell'altro sono in recipes/.
Nomi e lore sono scritti qui e ogni giocatore li legge così come sono scritti. Ogni chiave di questa pagina è in inglese.
Nessuno di questi si può piazzare: sono fatti di REDSTONE, QUARTZ e altri materiali piazzabili, e un click destro sul terreno li trasformerebbe in quel materiale e toglierebbe l'item. Vedi 'placeable'.
IN ITALIANO: la versione italiana di questo file è in esempi/it_IT/items/ores.yml, nella cartella del plugin. Non viene caricata: per usarla, copiala al posto di questo file, o copia le voci che ti servono.
config-version1config-version:
antracite_raw, antracite_dust, arcadium_raw, arcadium_ingot, elektron_raw, elektron_ingot, oricalco_raw, oricalco_rod Esempio items/heads.yml
Le teste che indossano i boss
Note del file
Un mob in questo plugin è un mob vanilla travestito: non puoi aggiungere tipi di entità a Minecraft, e nessuno può. Quello che fa sembrare un boss un boss invece di un wither skeleton con più vita è quello che INDOSSA - e lo slot della testa è il pezzo che cambia la sagoma.
Quindi questi sono item, con un modello 3D, che mobs/mobs.yml mette sulla testa di un mob. Puoi anche darne uno a un giocatore: sono item normali e funzionano come tutti gli altri.
Senza resource pack sembrano il materiale di cui sono fatti, e il mob si comporta comunque esattamente allo stesso modo.
IN ITALIANO: la versione italiana di questo file è in esempi/it_IT/items/heads.yml, nella cartella del plugin. Non viene caricata: per usarla, copiala al posto di questo file, o copia le voci che vuoi.
config-version1pumpkin_king_head7 chiavimaterialCARVED_PUMPKINname'<gold>Pumpkin King''s Head'lore[<dark_gray>Trophy, "<gray>It still watches, and it does not", "<gray>like what it sees."]+2
model'shadow:pumpkin_king_head'tags[head, trophy]placeablefalseUna zucca intagliata si può piazzare, e piazzarla farebbe sparire l'item con tutto quello che è. Vedi 'placeable' in ores.yml.
max-stack1darkflame_helmet9 chiavimaterialNETHERITE_HELMETname'<dark_red>Darkflame Helmet'lore[<dark_gray>Trophy, "<gray>Still warm."]model'shadow:darkflame_helmet'tags[head, trophy, darkflame]unbreakabletrueflags[UNBREAKABLE, ATTRIBUTES]darkflame_helmet.attributes1 chiavearmor3darkflame_helmet.enchantments3 chiaviprotection4fire_protection4unbreaking5