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 #90

Kamikun






  • Si prega di effettuare il log in prima di rispondere
Formule dal danno e suoi molteplici usi

    Ischenderun
  • Animatore

  • Utenti
  • Rens: 31
  • 0
  • StellettaStellettaStellettaStelletta
  • 781 messaggi
  • Sesso:Non Specificato
  • Abilitā:Adepto

#1 Inviato 26 April 2022 - 09:00 AM

Alle volte capitano quesiti a cui può rispondere la formula del danno. Non sempre questa strada può essere una via praticabile però.

Per questo, oltre a mostrarvi solo alcune dei suoi possibili usi, vi inserirò un articolo di Yanfly sul perchè sconsiglia tale pratica.

 

Note sulle condizioni:
Una condizione nella sua forma più comune viene rappresentata con:
If(condizione)
{ *codice da sviluppare nel caso la condizione sia vera
}else{
*codice da sviluppare nel caso la condizione NON sia vera
}

Ma noi abbiamo solo una riga pre inserire il codice quindi abbiamo 2 vie praticabili:
1) scrivere la condizione if tutta su un unica linea
2) usare l'operatore ternario che ci semplifica la scrittura della condizione
Operatore ternario:
b.isStateAffected(10) ? 10000 : 1;

tutto ciò che viene prima del "?" è la nostra condizione (l'if che abbiamo usato prima)
quello che viene dopo il "?" è il codice che si attiva se la condizione è soddisfatta.
i ":" rappresentano l nostro else.
Quindi se la condizione non è soddisfatta si attiva il codice che si trova dopo i ":"

- Obiettivo:
- la a si riferisce sempre a chi compie l'azione
- la b si riferisce al bersaglio dell'azione

- Cambiare HP/MP/TP
gainHp(value) - ristora HP del valore indicato (valori negativi vanno in sottrazione)
gainMp(value) - ristora MP del valore indicato (valori negativi vanno in sottrazione)
gainTp(value) - ristora TP del valore indicato (valori negativi vanno in sottrazione)
es. a.gainHp(32)


setHp(hp) - setta HP al valore indicato
setMp(mp) - setta MP al valore indicato
setTp(tp) - setta TP al valore indicato
E.g. a.setHp(a.mhp)
E.g. a.setHp(a.hp + 100)

clearTp() - setta i  TP a  0


- Stati e controllo

isStateAffected(stateId) - controlla se attaccante o difensore sono affetti dallo stato con un determinato ID
Es. b.isStateAffected(10) ? 10000 : 1;

isDeathStateAffected() - controlla se  attaccante o difensore sono affetti dallo stato morte.
Es b.isDeathStateAffected() ? 10000 : 1;

resetStateCounts(stateId) - resetta i turni per uno stato in corso ad un determinato valore.
if (b.isStateAffected(10)) b.resetStateCounts(10); 100


addState(stateId) - aggiunge lo stato ad attaccante o difensore
if (!b.isStateAffected(10)) b.addState(10); 100


removeState(stateId) - rimuove lo stato ad attaccante o difensore
if (a.isStateAffected(10)) a.removeState(10); 0


- Buff e debuff:
addBuff(paramId, turns) - aggiunge il buff
a.addBuff(0, 3); b.def*10

addDebuff(paramId, turns) -  aggiunge il debuff
b.addDebuff(2, 10); 9999

removeBuff(paramId) - rimuove il buff
removeAllBuffs() - rimuove il debuff

ID Parametri :

0 - Max HP
1 - Max MP
2 - Attack
3 - Defence
4 - Magic Attack
5 - Magic Defence
6 - Agility
7 - Luck

Codice veloce:

die() - uccide il bersaglio
b.die(); 0

revive() - rianima il bersaglio
a.revive(); 1000

paramBase(paramId) - prende il parametro base
a.paramBase(3)*10 - b.def*2


paramMax(paramId) - prende il massimo valore per il parametro
b.paramMax(0)

isStateResist(stateId) - controlla se il bersaglio resiste ad uno stato
es. c=0; b.isStateResist(10) ? c+=2000 : b.addState(10); c

 

Oggetti:

consumeItem(item) - consuma oggetti
a.consumeItem($dataItems[15]); 100



Solo Attori:
currentExp() - EXP correnti
currentLevelExp() - EXP needed for current level
nextLevelExp() - EXP needed for next level
nextRequiredExp() - EXP left until next level
maxLevel() - max level of actor
isMaxlevel() - is actor max level (true/false)
hasWeapon() - is actor wielding a weapon (true/false)
hasArmor() - is actor wearing any armor (true/false)
clearEquipments() - unequip everything actor is wearing
isClass(gameClass) - checks if actor is of a class (gameClass - $dataClasses[ID])
hasNoWeapons() - checks if actor doesn't have any weapons
levelUp() - levels actor up
levelDown() - level actor down
gainExp(exp) - gives actor exp
learnSkill(skillId) - makes actor learn a skill
forgetSkill(skillId) - makes actor forget a skill
isLearnedSkill(skillId) - checks if actor has a skill learned
actorId() - returns Actor's ID


Solo nemici:
enemyId() - returns Enemy's ID

Formule:
Math.random() - ritorna un valore numerico pseudocasuale compreso tra 0 e 1 (0 <= n < 1)
Ma esiste anche
Math.randomInt()- ritorna un valore numerico intero pseudocasuale compreso tra 0 e 1

Per ottenere quindi un valore casuale compreso tra 1 e ad esempio 20 faremo:
Math.randomInt(20)+1

Math.round(number) - Arrotonda un valore numerico all'intero più vicino
Math.ceil(number) - Arrotonda un valore numerico all'intero in eccesso
Math.floor(number) - Arrotonda un valore numerico all'intero in difetto

 

Articolo di Yanfly che ne sconsiglia l'uso per alcune dinemiche:

http://www.yanfly.mo...Damage_Formulas

 

Quindi dosate bene questa possibilità e valutate sempre se una formula più complessa può fare al caso vostro oppure no.

Buon making a tutti!


Modificato da Ischenderun, 26 April 2022 - 13:50 PM.

☆Polvere di Stelle☆ ora anche su itch.io: https://ischenderun....lvere-di-stelle

 

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.

Ad maiora semper

 
HUks2tu.gif

 

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

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

 

 4753.png


    Guardian of Irael
  • Coniglietto Rosso

  • Rpg˛S Admin
  • Rens: 195
  • 19
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 58413 messaggi
  • Sesso:Maschio
  • Provenienza:Bagnaia (Viterbo)
  • Abilitā:Apprendista


#2 Inviato 26 April 2022 - 11:31 AM

Ottimo elenco di formule, tradotto poi, quindi più che comodo averlo qui.

^ ^

 

 

Mi è sfuggito un po' il punto iniziale, però! XD

All'inizio dici che non è sempre una via praticabile, ma fai solo l'esempio dell'if con l'operatore ternario, e poi c'è un elenco di formule utili da utilizzare, in quali casi sarebbe sconsigliata la cosa? Solo se diventa troppo lunga? ^ ^


(\_/)
(^ ^) <----coniglietto rosso, me!     
(> <)

 
Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^
 
KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^
 
FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^  
 
REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

Spoiler


    Ischenderun
  • Animatore

  • Utenti
  • Rens: 31
  • 0
  • StellettaStellettaStellettaStelletta
  • 781 messaggi
  • Sesso:Non Specificato
  • Abilitā:Adepto

#3 Inviato 26 April 2022 - 13:51 PM

No, è in base a quello che Yanfly cita nel suo articolo. Ho modificato il post in modo che sia più intuitivo ;)


☆Polvere di Stelle☆ ora anche su itch.io: https://ischenderun....lvere-di-stelle

 

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.

Ad maiora semper

 
HUks2tu.gif

 

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

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

 

 4753.png


    Lollo Rocket Diver
  • Darkness In Zero

  • Utenti
  • Rens: 211
  • 3
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 3805 messaggi
  • Sesso:Maschio
  • Abilitā:Esperto

#4 Inviato 26 April 2022 - 16:12 PM

Molto utile! Io le formule con if al momento le sto scrivendo per intero ma effettivamente la seconda alternativa è molto più snella!
Grazie per le info Ische, mi torneranno utilissime.

<< In FF8 Irvine conosce tutti ma non lo dice fino al 2° CD >>

 
Segui i miei vari lavoretti in queste pagine:

 

GAME DEV (Attualmente in lavorazione: 5th ERA)

https://missingseven.itch.io/

https://gamejolt.com/@MissingSeven

https://twitter.com/missing_seven

 

DISEGNI

https://www.instagram.com/lollob_art/

https://www.devianta...m/lbillustrator

 

FAI IL BRAVO E GIOCA A THEIA!

http://www.theiarpg.com/
 

-Premi RPG2S Game Contest 2008/2009

Spoiler

 

-Premi RPG2S Game Contest 2012/2013

 

Spoiler

    Ischenderun
  • Animatore

  • Utenti
  • Rens: 31
  • 0
  • StellettaStellettaStellettaStelletta
  • 781 messaggi
  • Sesso:Non Specificato
  • Abilitā:Adepto

#5 Inviato 26 April 2022 - 18:26 PM

Molto utile! Io le formule con if al momento le sto scrivendo per intero ma effettivamente la seconda alternativa è molto più snella!
Grazie per le info Ische, mi torneranno utilissime.


Dai un occhio anche alle dritte di Yanfly, a me è capitata una cosa simile a quella descritta da Yanfly. Comunque per le abilità non troppo complesse va benissimo 😉

☆Polvere di Stelle☆ ora anche su itch.io: https://ischenderun....lvere-di-stelle

 

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.

Ad maiora semper

 
HUks2tu.gif

 

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

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

 

 4753.png


    Lollo Rocket Diver
  • Darkness In Zero

  • Utenti
  • Rens: 211
  • 3
  • StellettaStellettaStellettaStellettaStellettaStelletta
  • 3805 messaggi
  • Sesso:Maschio
  • Abilitā:Esperto

#6 Inviato 27 April 2022 - 07:58 AM

Io principalmente le cambio per le condizioni sugli status. Le cose più complesse le gestisco direttamente dalle Action Sequence/Eventi Comuni XD

<< In FF8 Irvine conosce tutti ma non lo dice fino al 2° CD >>

 
Segui i miei vari lavoretti in queste pagine:

 

GAME DEV (Attualmente in lavorazione: 5th ERA)

https://missingseven.itch.io/

https://gamejolt.com/@MissingSeven

https://twitter.com/missing_seven

 

DISEGNI

https://www.instagram.com/lollob_art/

https://www.devianta...m/lbillustrator

 

FAI IL BRAVO E GIOCA A THEIA!

http://www.theiarpg.com/
 

-Premi RPG2S Game Contest 2008/2009

Spoiler

 

-Premi RPG2S Game Contest 2012/2013

 

Spoiler




  • Feed RSS