In "Eclisse dei sentimenti", lo stato del personaggio, per quanto riguarda vita ed energia, determina allungo, potenza, forza d´urto, ecc. ecc. di tutte o alcune mosse, in pratica non si passa da una situazione 0-999 ad una situazione 1000 o piú, ma ogni valore delle due barre puó determinare variazioni nella mossa.
Questo aiuta a determinare un profilo psicologico del personaggio dallo stile di gioco, un personaggio puó anche diventare piú debole quando si "infuria", o meno efficace.
Perché questa cosa abbia senso c´é un contrappasso negli attacchi, facciamo un esempio nel mondo reale, in un corpo umano ci sono diversi bersagli che provocano differenti effetti. Un pugno sullo zigomo ha un effetto frenante e procura un danno inferiore ad un pugno sulle costole, ma puó demoralizzare meglio il bersaglio.
Quindi in eclisse dei sentimenti i colpi possono anche togliere energia all´avversario, mentre nei sistemi di gioco tradizionali la danno sempre. (a parte le prese in giro.)
In Eclisse dei sentimenti, la sensibilitá emotiva di un personaggio é affar suo, quindi ogni alterazione della barra d´energia deriva da una mossa effettuata, mancata o connessa, oppure un contatto diretto con l´avversario o con una sua emanazione.
Non esiste che da un punto sicuro possa levare energia all´avversario senza un colpo o una bolla.
Anche se nella programmazione continua a chiamarsi "POWER" in Eclisse dei sentimenti la barra dell´energia prende il nome di "barra del furore."
I personaggi di Eclisse dei sentimenti possono decidere di usare tecniche che levano furore piuttosto che vitalitá, per assicurarsi un vantaggio dall´avere l´avversario... relativamente sano ma demoralizzato.
Per quanto riguarda le tecniche che variano al variare di furore o vita, ogni personaggio puó avere un potere costante che si applica ad ogni tecnica, oppure un potere specifico sui singoli colpi.
Dunque, questi poteri li metto in un nuovo file CNS, che contiene lo statedef -2
Un esempio di potere costante potrebbe essere: "piú l´avversario é infuriato piú i colpi del player sono efficaci."
Quote
[Statedef -2, 1]
;Piú l´avversario é infuriato piú i colpi sono pesanti.
[State -2, AttackMulSet]
type = AttackMulSet
trigger1 = 1
value = 0.25 * (4 + (enemynear, power/2000)); il range va da 1 a 1,5
;Piú l´avversario é infuriato piú i colpi sono pesanti.
[State -2, AttackMulSet]
type = AttackMulSet
trigger1 = 1
value = 0.25 * (4 + (enemynear, power/2000)); il range va da 1 a 1,5
Per quanto riguarda i singoli colpi, la gamma delle possibilitá rasenta il virtualmente infinito.
Ad esempio possiamo agire sulla velocitá di una carica, rendendola sempre piú veloce man mano che aumenta il furore.
Prendiamo il "kung fu palm" di "kung fu man", é lo [statedef 1000] nel file CNS, lo trovate nella vostra distro nella cartella "CHARS" -> "KFM" -> kfm.cns
Quote
[Statedef 1000]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 55
velset = 0,0
anim = 1000
ctrl = 0
sprpriority = 2
type = S
movetype= A
physics = S
juggle = 4
poweradd= 55
velset = 0,0
anim = 1000
ctrl = 0
sprpriority = 2
Cambiamo la stringa che ho evidenziato nel modo che segue:
Quote
[Statedef 1000]
type = S
movetype= A
physics = S
juggle = 4
poweradd= 55
velset = power / 300 ,0
anim = 1000
ctrl = 0
sprpriority = 2
type = S
movetype= A
physics = S
juggle = 4
poweradd= 55
velset = power / 300 ,0
anim = 1000
ctrl = 0
sprpriority = 2
Come potete constatare sulla vostra distro, quando il livello di power é al massimo, KFM copre una distanza molto piú lunga con la sua carica, e ad ogni valore di furore corrisponderá una velocitá.
Se una mossa migliora col furore, allora per renderla equa bisogna invertire il valore "Poweradd"
Quote
[Statedef 1000]
type = S
movetype= A
physics = S
juggle = 4
poweradd= - 100
velset = power / 300 ,0
anim = 1000
ctrl = 0
sprpriority = 2
type = S
movetype= A
physics = S
juggle = 4
poweradd= - 100
velset = power / 300 ,0
anim = 1000
ctrl = 0
sprpriority = 2
In questo modo la mossa verrá tassata, se viene eseguita consecutivamente, ogni volta verrá piú lenta.
Lo stesso si puó fare al valore di juggle, anche se in teoria accetta solo numeri interi.
In questo modo:
Quote
[Statedef 1000]
type = S
movetype= A
physics = S
juggle = floor(4000 - (power / 1000))
poweradd= - 100
velset = power / 300 ,0
anim = 1000
ctrl = 0
sprpriority = 2
type = S
movetype= A
physics = S
juggle = floor(4000 - (power / 1000))
poweradd= - 100
velset = power / 300 ,0
anim = 1000
ctrl = 0
sprpriority = 2
La mossa avrá un valore di juggle pari a 4 fino a che il furore sta sotto al 1000, e arriverá a 1 quando il furore é a 3000
Sulla documentazione nella vostra distro di MUGEN é specificato il range e il tipo di dato di ogni stringa.
Questo sistema di fatto dá una definizione piuttosto nebulosa di mosse speciali e super, in quanto una mossa normale puó diventare equivalente ad una super quando il furore é al massimo, non é che sostituisce la mossa precedente, é la stessa in tutto e per tutto.
Si puó fare il giochino anche con i proiettili...
Ad esempio avendo 3 animazioni di proiettili (hadouken, super hadouken, mega hadouken)
immaginando che sul file AIR siano le animazioni 3001, 3002, 3003
Avremo nel lancio del proiettile:
projanim = anim_no (int)
projanim = 3001 + floor(power/1001)
Ovviamente si puó aggiustare la funzione per decidere quando far partire il secondo piuttosto che il primo e il terzo piuttosto che il secondo, i valori che indicano gli effetti del proiettile si aggiustano come visto sopra.
Ad esempio:
projhits = num_hits (int)
lo facciamo diventare:
projhits = 1 + floor(power/300)
Il 300 si ottiene dividendo il massimo del furore per il massimo degli hits.
Come ho detto sopra, le possibilitá rasentano l´infinito.
P.S.
L´attack mulset puó anche essere gestito da AiLevel negli stati negativi, ad esempio questa.
Quote
[Statedef -2, 1]
;Piú il computer é intelligente maggiore sará il danno che procura.
[State -2, AttackMulSet]
type = AttackMulSet
trigger1 = Ailevel >0
value = 1 + ((Ailevel/8)-0.5)
;Piú il computer é intelligente maggiore sará il danno che procura.
[State -2, AttackMulSet]
type = AttackMulSet
trigger1 = Ailevel >0
value = 1 + ((Ailevel/8)-0.5)
Il valore di danno del computer cosí va da 5/8 del danno fatto dal giocatore a livello di difficoltá 1 fino a 3/2 a livello 8

Aiuto










