Rpg˛S Forum uses cookies. Read the Privacy Policy for more info. To remove this message, please click the button to the right:    I accept the use of cookies

Vai al contenuto

Rpg˛S Forum uses cookies. Read the Privacy Policy for more info. To remove this message, please click the button to the right:    I accept the use of cookies

Screen Contest #89

AliceMisaki







  • Si prega di effettuare il log in prima di rispondere
IL LABORATORIO (tips and tricks di Yanfly da Mv a Mz e trucchi vari)

    Ischenderun
  • Utente avanzato

  • Utenti
  • Rens: 16
  • 0
  • StellettaStellettaStelletta
  • 440 messaggi
  • Sesso:Non Specificato
  • Abilitā:Adepto

#1 Inviato 08 January 2021 - 18:03 PM

Inizio questa nuova rubrica con il passaggio di alcuni tips and tricks di Yanfly da mv ad mz(quelli funzionanti con i core a contributo libero) , visto che i tag di codice sono leggermente cambiati . Ma qui non troverete solo questo , sono infatte tante le personalizzazioni ed esperimenti che ho fatto per creare nuovi effetti per abilità ,oggetti ecc....
Vi inserirò in codice le spiegazioni necessarie per capirne l'uso e padroneggiare questo per i vostri esperimenti futuri , se avete domande , dubbi , perplessità scrivete pure , se sarò in grado di rispondere alla vostra richiesta sarò ben felice di aiutarvi
Attenzione : l' aggiornamento di questa rubrica potrebbe non essere regolare nel tempo .
 
Autore originale : Yanfly
Fonte : Thornmail (MV Plugin Tips & Tricks)
Requisiti : Engine core, state core, battle core di Visustella plugin
Credits : Visustella , Yanfly , Kadokawa , Degica
 
Effetto Armatura : se ricevete del danno derivante da attacchi fisici restituirete all'attaccante un danno pari al 50% del danno causato a voi + un ulteriore danno bonus pari al 25% del valore DIFESA del personaggio.Ovviamente il codice è personalizzabile come volete .
 
1) Database -> Armature : "agganciate" l'armatura con lo stato che ospita il codice dell'effetto scrivendo in nota
<Passive State: nome_dello_stato>
in questo esempio io ho dato lo stesso nome ad armatura e stato per poterlo reperire facilmente . Lo stato che avrà il pg quando indossa quest'armatura è uno stato passivo , questo significa che l'effetto è attivi fintanto che l'oggetto è equipaggiato. Io non ho dato nessun altro valore ,voi potete personalizzarla come vi pare
2hTRIbh.png
 
2) Database -> Stati : andiamo a creare il nostro stato passivo tramite codice javascript . Non toccate le opzioni , agiremo solo sulla casella nota dello stato andando ad inserire il codice che troverete dopo l'immagine di esempio . Tutto ciò che segue // è un commento con spiegazione del codice , io vi consiglio di eliminarlo se fate copia/incolla
gBdY1YK.png
 
Spiegazione del Codice (dopo la spiegazione troverete il codice "pulito" da copiare e incollare) :
<JS Pre-Damage as Target>
  // Controlla se esiste un valore
maggiore di 0 (dunque un danno valido).
// controlla se è un attacco fisico
if (value > 0 && this.isPhysical()) {
   // Imposta un valore percentuale del
50% usato per il danno di ritorno ,
tale valore va espresso con la
virgola.
   // se volessi ad esempio un danno di
ritorno del 70% metterei nella
variabile rate un valore di 0.7
var rate = 0.5;
   // Determina il calcolo della
percentuale del danno impostato nella
riga precedente
   // in relazione al danno fisico
ricevuto
var recoil = value * rate;
   // Imposta un valore che verrà usato
per causare danni bonus(vedi prossima
riga)
var rate = 0.25;
   // Determina i danni bonus pari al 25%
del valore DIFESA
var bonus = target.def * rate;
   // Somma e arrotonda i danni
complessivi.
var dmg = Math.ceil(bonus + recoil);
   // Causa il danno all'attaccante.
user.gainHp(-1 * dmg);
  // Controlla se l'attaccante è morto
// e se è morto (0 pv) lo elimina dalla
battaglia
if (user.isDead()) {
    user.performCollapse(); 
  }
}
</JS Pre-Damage as Target>

<JS Pre-Damage as Target>
if (value > 0 && this.isPhysical()) {
 var rate = 0.5;
 var recoil = value * rate;
 var rate = 0.25;
 var bonus = target.def * rate;
 var dmg = Math.ceil(bonus + recoil);
 user.gainHp(-1 * dmg);
  
 if (user.isDead()) {
    user.performCollapse(); 
 }
}
</JS Pre-Damage as Target>

Varianti :

- Abilità di supporto : se invece che ad un'oggetto preferite attribuire l'effetto ad un'abilità inserite il codice all'interno delle note dell'abilità .

All'interno della finestra effetti inserite : aggiungi stato "nome_dello_stato"

2) Database -> Stati : visto che l'effetto ora è legato ad una abilità occorre selezionare "rimuovi dopo scontro" e impostare la durata in turni .

 

- Restituzione danno contro attacchi magici :  sostituite "this.isPhysical()" con "this.isMagical()"


Modificato da Ischenderun, 12 January 2021 - 00:30 AM.

Non ho particolari talenti, sono soltanto appassionatamente curioso.
Siate affamati, siate folli, perché solo coloro che sono abbastanza folli da pensare di poter cambiare il mondo lo cambiano davvero
 
HUks2tu.gif

 

Contatto Facebook : https://www.facebook.com/Ischenderun/

Pagina Facebook: https://www.facebook...100937052104281


    Ischenderun
  • Utente avanzato

  • Utenti
  • Rens: 16
  • 0
  • StellettaStellettaStelletta
  • 440 messaggi
  • Sesso:Non Specificato
  • Abilitā:Adepto

#2 Inviato 25 January 2021 - 13:15 PM

Legame di cura

 

Autore originale : Yanfly
Fonte : Healing link (MV Plugin Tips & Tricks)
Requisiti : Engine core, state core, battle core di Visustella plugin
Credits : Visustella , Yanfly , Kadokawa , Degica

 

Effetto Abilità di supporto : quando l'alleato sotto l'effetto di legame di cura riceve cure da incantesimi (oggetti esclusi) chi ha lanciato l'incantesimo recupera il 50% della cura ricevuta dall'alleato.

 

link al video dimostrativo di Yanfly:

 

 

procedura:

1) Stato: create uno stato impostando durata e flaggando rimuovi dopo scontro.
sulla finestra note copiate ed incollate il seguente codice:

<JS Post-Damage as Target>
if (value < 0) {
  var heal = Math.floor(value * 0.5);
  origin.gainHp(-heal);
  origin.startDamagePopup();
  origin.clearResult();
}
</JS Post-Damage as Target>

spiegazione:

// se il valore del danno è negativo,cioè che il bersaglio non riceve danno ma cure

if (value < 0) {
// salviamo in una variabile il valore arrotondato di metà delle cure ricevute dall'alleato

var heal = Math.floor(value * 0.5);

// colui che ha dato origine all'effetto riceve lo stesso ammontare di cure dell'alleato - la percentuale impostata nella variabile "heal"

origin.gainHp(-heal);

// effetto visivo su chi ha generato l'incantesimo

origin.startDamagePopup();
origin.clearResult();

 

Potete decidere la percentuale che riceve colui che ha dato origine all'effetto manipolando lo 0.5 che trovate dentro la variabile "heal" . es. 0.25 per ricevere il 25% del valore ecc....

 

2) abilità : in EFFETTI mettete aggiungi stato legame di cura 100% .

 

Fine


Non ho particolari talenti, sono soltanto appassionatamente curioso.
Siate affamati, siate folli, perché solo coloro che sono abbastanza folli da pensare di poter cambiare il mondo lo cambiano davvero
 
HUks2tu.gif

 

Contatto Facebook : https://www.facebook.com/Ischenderun/

Pagina Facebook: https://www.facebook...100937052104281


    Ischenderun
  • Utente avanzato

  • Utenti
  • Rens: 16
  • 0
  • StellettaStellettaStelletta
  • 440 messaggi
  • Sesso:Non Specificato
  • Abilitā:Adepto

#3 Inviato 10 February 2021 - 10:07 AM

Livello di difficoltà : BASSO
 
E rieccomi qua!, stavolta con un TRICK personale tirato fuori sempre dai plugin visustella (dovevo metterlo millenni fa , dimenticato :P) .
 
Sicuramente vi sarà capitato di chiedervi : " come posso fare per mostrare valore corrente e massimo degli HP ed MP su menu e battaglia ?" .
Andiamolo a scoprire!
 
Requisiti : plugin core di Visustella ( noi agiremo sullo SkillsStatesCore).
 
Entrate dentro il plugin dello SkillsStateCore e seguite il percorso mostrato in immagine:
SkillsStatesCore/Skill Cost Types/HP setting
iotHc2h.png
 
Troverete un listone di cose già impostate , non toccate nulla !!!!. Andate sull'ultimo punto trattato qui , quello nominato
// Draw Value (tutta questa parte tratta ed imposta il testo visualizzato per gli hp , dunque è quello che ci interessa ).
Andate sull' ultima riga
bitmap.drawText (currentValue, 0, 0, vw, vh, "right");
ed modificatela come segue (potete copiare ed incollare) :
 
bitmap.drawText(currentValue + '/' + user.mhp, 0, 0, vw, vh, "right");
 
Cosa stiamo facendo?
stiamo (gentilmente) chiedendo alla parte che si occupa di scrivere il testo legato ai numeri per gli hp di aggiungere il valore massimo degli hp .
Quel: user.mhp serve a questo , prende il valore degli hp massimi.
 
CwPX1Hu.png
 
Final result :
 
Prima e dopo :
8dcFSMn.png
 
Per gli Mp la pricedura è la stessa : andate sulla parte che tratta gli mp e sostituite l'ultima riga (come già visto in precedenza) con :
 
bitmap.drawText(currentValue + '/' + user.mmp, 0, 0, vw, vh, "right");
 
Ma vi aggiungo di più .
 
vedete quel "right" messo tutto a destra?, bene, modificandolo in "left" avrete il testo per hp/mp a sinistra . Mentre con "center" avrete le scritte al centro . 
 
Ovviamente potreste cambiare anche altro come altezza , colore ecc. ma lascio a voi questi esperimenti , in tal caso vi consiglio di sperimentare in modalità mirror , ovvero creare un nuovo progetto e pasticciare li' in modo che il vostro progetto originale non venga compromesso da eventuali errori e bug in cui potreste incappare .

 
Buon divertimento
 
TGuvHMm.png


Modificato da Ischenderun, 10 February 2021 - 10:11 AM.

Non ho particolari talenti, sono soltanto appassionatamente curioso.
Siate affamati, siate folli, perché solo coloro che sono abbastanza folli da pensare di poter cambiare il mondo lo cambiano davvero
 
HUks2tu.gif

 

Contatto Facebook : https://www.facebook.com/Ischenderun/

Pagina Facebook: https://www.facebook...100937052104281



  • Feed RSS