Salta ai contenuti

Mosse speciali delle armi

Le mosse speciali delle armi dell’era AOS: ogni arma porta una prima e una seconda mossa, il giocatore ne sceglie una con l’icona del client, e il prossimo colpo che va a segno la esegue. Sono spente di serie, perché le regole classiche non le hanno: si accendono con special_moves = true in [ultima.combat].

  1. Il client mostra da solo le icone dell’arma in mano; premerne una invia il numero della mossa (pacchetto 0xD7, sottocomando 0x19). Premere di nuovo l’icona accesa, o cambiare arma, invia 0 per annullare.
  2. Il server controlla la scelta: l’arma porta la mossa, l’abilità con l’arma arriva a 70 punti per la prima mossa e a 90 per la seconda (altrimenti “You need 70 weapon skill to perform that attack”), e il mana copre il costo (altrimenti “You need 30 mana to perform that attack”). Una mossa che nessuno script fa ancora viene rifiutata con “That special move is not available.” Un rifiuto rimette a posto l’icona del client. I controlli si rifanno a ogni colpo.
  3. Nulla si spende quando si sceglie una mossa. Il prossimo colpo che va a segno spende il mana, esegue la mossa e annulla la scelta (e l’icona del client, 0xBF 0x21). Un colpo che manca mantiene la mossa e non costa nulla.
  4. Un’altra mossa entro 3 secondi dall’ultima costa il doppio.
  5. La scelta non ha un timer. La annullano la mossa stessa, un controllo fallito (anche, al colpo seguente, un cambio di arma che non la porta), la morte e il logout.

Gli NPC non usano mai le mosse.

Mossa Numero Mana Effetto
Armor Ignore 1 30 il 90 per cento del danno, e l’armatura non lo riduce (uno scudo può ancora pararlo)
Bleed Attack 2 30 il colpo, e chi è colpito sanguina per dieci secondi: cinque battiti di due secondi, una pozza di sangue ciascuno, e una benda lo ferma
Concussion Blow 3 25 il colpo, e 10 danni in più più un quarto della differenza tra i punti ferita (prima del colpo) e il mana di chi è colpito, in percentuale, al massimo altri 20, qualunque sia la sua armatura
Crushing Blow 4 25 il 150 per cento del danno
Disarm 5 20 l’arma nelle mani di chi è colpito va nel suo zaino, e per 5 secondi non può prenderne un’altra (uno scudo o un libro di magia non è un’arma); si disarma solo un giocatore, un NPC combatte con i dadi del suo template; non su chi ha le mani vuote
Dismount 6 20 un bersaglio in sella viene sbalzato dalla cavalcatura e ferito di 15-25; lui e chi colpisce non possono cavalcare per 10 secondi; non su chi è a piedi, e non da chi è in sella
Double Strike 7 30 il 90 per cento del danno, e subito un secondo colpo, anch’esso al 90 per cento, con la sua probabilità di colpire (solo in mischia, a portata di braccio e in vista)
Mortal Strike 9 30 chi è colpito non può essere curato per 6 secondi, 12 per un NPC: una benda, una pozione di cura e gli incantesimi di cura lo rifiutano
Paralyzing Blow 11 30 chi è colpito è paralizzato per 3 secondi, 6 per un NPC, e resiste alla mossa per altri 8; non su chi è già bloccato

Una mossa che non si può fare sul bersaglio (Disarm su chi ha le mani vuote, Dismount su chi è a piedi o da un combattente in sella, Paralyzing Blow su chi è già bloccato) dice la riga del client, mantiene la scelta e non costa nulla.

Le altre mosse (Infectious Strike, Moving Shot, Shadow Strike, Whirlwind Attack) sono nella tabella di weapon_abilities.toml ma non sono ancora fatte: vengono rifiutate con una riga.

  • Quale mossa porta un’arma, e il costo, il moltiplicatore e le righe di ogni mossa, stanno in data/weapon_abilities.toml. Le icone sono quelle del client: la tabella segue quella di ModernUO, che segue quella del client.
  • Ciò che una mossa fa oltre ai suoi numeri è lo script scripts/abilities/<key>.lua, con on_hit(attacker, defender, damage, info) quando il colpo è andato a segno, e facoltativamente can_hit(attacker, defender, damage, info) che rifiuta la mossa su questo bersaglio senza spenderla. Una mossa senza script è eseguita solo dai suoi dati.
  • Lua può dare un secondo colpo con combat.swing_again(attacker, target, scalar).

Le mosse qui sopra che non sono fatte; i colpi a mani nude (Disarm e Paralyzing Blow dei pugni); le mosse di Bushido, Ninjitsu e Spellweaving; lo sconto di mana di ModernUO per un totale alto di abilità e il tetto di 35 danni di Armor Ignore contro i giocatori; i suoni e le particelle di Paralyzing Blow, Mortal Strike e Dismount, la barra della vita gialla di una ferita mortale, l’immunità delle forme del lich e dello spettro a Bleed Attack, la lancia che permette a chi è in sella di sbalzare un altro, e l’icona di Disarm. Una mossa rifiutata resta armata e ridice la sua riga a ogni colpo, mentre ModernUO la annulla.

Creato con ❤️ da Tom

Offrimi un caffè