Cos'è una Macro? Una Macro è una sequenza di comandi prestabiliti che si attiva con la pressione di una icona posizionata sulla nostra Hotbar, e permette di effettuare più azioni concatenate o contemporanee, qualora sia possibile (es. Pet, chat, targeting, aprire un menu mentre si combatte). Gli oggetti che si usano per la costruzione di una Macro sono tutti i comandi presenti in game e sfruttabili tramite la Chat, che funge da terminal.
Alcuni esempi che possono farvi capire concretamente a cosa serve una Macro possono essere: la necessità di snellire la Hotbar per renderla ordinata ed efficiente; oppure la sicurzza di usare rapidamente una Skill su un NPC (personaggio non giocante) o su un PG (personaggio giocante) usando uno script che permetta di selezionare l'obiettivo con varie metodologie (target ordinario, focus, target di target, obiettivo del mouse, PG nella posizione X del party, NPC più vicino alla vista), eccetera.
Le Macro divengono quindi utili per automatizzare certe azioni noiose, o per essere certi di avere nel minor tempo possibile una sequenza di Skill, o ancora per inviare velocemente messaggi al party e informarli di eventi particolari. Bisogna però ricordare che non sono assolutamente necessarie, e che è bene non creare Macro per combo flessibili.
Nel caso in cui una Macro dovesse essere interrotta, l'azione saltata non potrà essere effettuata se non facendo ripartire lo script dall'inizio.

Nella guida che segue verranno utilizzati alcuni termini "tecnici", se ne riporta qui il significato:
- Aoe (= Area of Effect, colpo con effetto ad area)
- Hotbar/Crossbar (userò solo Hotbar, ma considero entrambe le barre)
- Casting (tempo di lancio di una Spell o Skill).


HUD delle Macro
Per raggiungere velocemente la pagina delle Macro potere scrivere in chat il comando "/macros". Dando Invio si aprirà la schermata per creare gli script. In alternativa, si può arrivare velocemente alla pagina cliccando sul menu "System" e scegliendo l'opzione "User Macros" (o assegnando User Macros ad un tasto con il keybind). Fatto questo apparirà una schermata contenente 100 slots numerati sulla sinistra, e sulla destra il layout apposito per modificare in toto la vostra Macro.



Selezionando uno slot a scelta nella zona di sinistra potremo iniziare a modificare il vero e proprio corpo della Macro, il cui numero è segnalato nell'angolo in basso a sinistra (nel nostro caso Macro *9).
Se si clicca con il tasto destro su una Macro già creata avremmo la possibilità di eliminarla (Delete), copiarla (Copy), tagliarla (Cut), incollarla (Paste) o annullare l'ultima modifica fatta (Undo).

Il layout di destra si divide in 3 zone:
A - Icona della Macro: è l'icona che apparirà nello slot sulla sinistra, coprendo il numero. Può essere selezionata mediante la pressione sull'icona vuota o con una stringa nello Script. Cliccando sull'icona vuota apparirà un menu per la scelta dell'immagine. Apparirà una spunta verde sull'icona da noi selezionata.
B - Nome: rappresenta il nome che apparirà quando passeremo il puntatore sull'icona della Macro.
C - Script della Macro: sono disponibili 15 righe per l'immissione dei comandi; il numero di righe usate e disponibili è visualizzato nell'angolo in basso a destra di questa zona (nel nostro caso 1 riga usata di 15).

Quando avremo creato la nostra Macro potremo prenderla dell'elenco e trascinarla sulla nostra Hotbar oppure, nel caso stiamo usando un joystick, selezionarla e premere "Set to Hotbar". In questo ultimo caso il gioco ci chiederà di posizionarla sulla Crossbar come farebbe per qualunque altra azione. Le Macro create possono essere copiate e incollate, per velocizzare la scrittura, premendo il tasto destro sull'icona nella zona dell'elenco e scegliendo Copy o Cut e Paste su una casella vuota.
Terminato il posizionamento sull'Hotbar apparirà nell'angolo in altro a destra del pulsante un piccolo ingranaggio utile a distinguere una Macro da una icona azione qualunque.

Anche la scelta dell'icona può essere importante: se scegliamo un'immagine prestabilita fra quelle proposte dal menu avremo un tasto statico che non mostra nessuna informazione sul costo o sul Recast della Skill.
Se, invece, l'icona della Macro è scelta tramite stringa nella zona dello Script, sarà mostrato sul bottone il costo e vi sarà l'animazione di Recast.



Tips: Qualora non siate sicuri di alcuni comandi, potete fruttare una comoda lista di azioni cliccando su "Text Commands", posto nella pagina della Macro, che spiegherà il significato dei singoli comandi e il modo di usarli. Ricordate che se spostate una Macro da un numero ad un altro mediante la funzione di Cut, sparirà dalla vostra Hotbar.


Struttura dei Comandi in Final Fantasy XIV ARR
Nel gioco è possibile compiere molte azioni tramite l'uso di comandi e senza usare il mouse: la chat infatti funge da terminale in cui si possono inviare azioni per modificare parametri, selezionare nemici, o semplicemente scrivere un messaggio.
Il comando si può sempre suddividere in 4 parti fondamentali:

/# Oggetto <>

- "/" deve sempre aprire un comando;
- "#" azione del comando seguito da uno spazio;
- "Oggetto" oggetto dell'azione;
- "<>" oggetti di complemento normalmente tra <>;

Un tipico esempio può essere il messaggio che compare in Party Chat quando si usa una Macro per il "Ress" (Raise) veloce di qualcuno, in modo da avvisare il Party di chi si sta resuscitando, allo stesso tempo inviando un segnale acustico per attirare l'attenzione.



Come mostrato nell'immagine qui in alto, nella chat del party appare un messaggio che indica che stiamo usando Resurrection su Ryuk Jager. Nell'ultima parte del messaggio appare poi "<se.5>", un complemento che corrisponde ad un segnale sonoro. Il comando per scrivere automaticamente quella frase è del tipo:

/p Casting Resurrection on <t> <se.5>

Come detto, il comando si apre con / seguito da "p" (azione che indica "scrivi in party chat"), uno spazio, e l'oggetto da scrivere, ovvero "Casting Resurrection on <t> <se.5>".
I complementi diventano estremamente importanti perché ci permettono, in questo caso, di scrivere in Party Chat automaticamente il nome del target tramite <t>, e far partire un trillo con il complemento <se.5>.

In linea di massima si ha quindi che:
- l'oggetto è ciò su cui si svolge la nostra azione,
- i complementi permettono di individuare bersagli o di aggiungere informazioni secondarie.

La struttura è simile a quella di Verbo - Complemento Oggetto - Complementi nella lingua italiana.

Lista e descrizione delle Azioni

Azione - Descrizione

/s - Scrittura in Say
/t - Scrittura in Tell
/p - Scrittura in Party Chat
/fc - Scrittura in Free Company
/sh - Scrittura in Shout
/a - Scrittura in Alliance
/e - Scrittura in Echo (solo voi potete vederla)
/l1 ... /l6 - Scrittura in Linkshell 1 ... 6
/ac - Azione per attivare una Skill
/pac - Azione per attivare una Skill per pet
/item - Usa un Item
/micon - Scelta dell'icona per la Macro
/mlock - Previene l'uso di altre Macro fino a quando tutti i comandi che seguono /mlock non sono stati eseguiti
/rcheck - Fa partire un "Ready Check"
/tenemy - Target sul nemico più vicino
/tle - Target sull'ultimo nemico selezionato
/tlt - Target sull'ultimo target selezionato
/wait - Attendi
/lsync - Per avere Level Sync, è seguito da on o off
/hotbar - Permette di modificare la Hotbar
/gs - Permette di modificare il Gear Set
/psort - Riordina la lista del Party
/mk - Mette un mark sul bersaglio
/autofacetarget - Lo sguardo del personaggio punta il bersaglio

Di questa lista sono estremamente importanti:

/micon "Skill"
questa è la stringa per avere come icona l'immagine di una Skill, normalmente viene posizionata all'inizio dello script. L'oggetto deve essere posto fra virgolette. Nel caso si usi una icona di un pet, di una mount, di un mark o di un Gearset si deve aggiungere al comando:

Oggetto - Aggiunta

Mount - mount
Azione di un Pet - pet Nomepet
Mark - marking
Emote - emote
Gear Set - gearset


/s Testomessaggio
comando che serve a scrivere in Say, ma la struttura è uguale per ogni comando di Scrittura in una Chat. Apparirà il testo "Testo-messaggio" con i complementi sostituiti dai relativi target qualora vi siano nel comando.

/ac "Skill" <target> oppure /pac "Skill" <target>
comando fondamentale per usare una Skill dalla Macro. L'oggetto deve essere tra virgolette e a parte rari casi bisogna specificare il target tramite complemento.

/item "Oggetto"<>
comando per usare un particolare oggetto sul target. Segue le regole di comando precedente.

/wait #
comando di attesa seguito da un numero multiplo di 0.5, compreso fra 1 e 60 secondi. Viene usato normalmente fra varie Skill a causa del GCD e del Recast. Esiste un complemento con la sua stessa funzione.

/gs Change #
comando che cambia il Gear Set con quello designato dal numero scelto nel comando.

/Hotbar Change #
comando che cambia la Hotbar con quella designata dal numero scelto nel comando.

/Hotbar # "Oggetto" N1 N2
comando per posizionare un'azione, un oggetto oppure una Pet Skill di nome "Oggetto" nello slot di numero N2 della Hotbar di numero N1. L'Oggetto deve essere posto fra virgolette. Inoltre # deve essere scelto in base all'oggetto:

Oggetto - #
Skill o spell - action
Oggetto - item
Azione di un companion - companion
Azione generale - general

/Hotbar Pet "Petaction" "Petname" N1 N2
comando come quello precedente, solo per azioni dei Pet. Petaction e Petname devono essere fra virgolette.

/mk # < >
comando per porre un Mark sul bersaglio. # può essere sostituito da attack1...5, ignore1...2, bind1...3, cross, square, triangle, X.

/autofacetarget #
comando che permette al personaggio di direzionare lo sguardo verso il target selezionato e fissarlo. # deve essere sostituito con "on" o "off" per l'attivazione. Si può sfruttare un Keybind analogo.


Lista Complementi

Complemento - Descrizione

<t> - Target selezionato
<tt> - Target del target selezionato
<f> - Focus target
<me> - Target sul proprio personaggio
<mo> - Elemento su cui è posizionato il puntatore
<0>...<7> - Pg del party numero 1...8 (1 siamo noi)
<p> - Target Pet
<le> - Ultimo target selezionato
<la> - Ultimo target attaccato
<se.1>...<se.16> - Attiva un effetto sonoro
<wait.1>...<wait.60> - Come /wait solo che può essere messo in una stringa di comando
<pos> - Mostra la vostra posizione
<mp> - Mostra i vostri MP
<mpp> - Mostra i vostri MP in percentuale
<tp> - Mostra i vostri TP
<tpp> - Mostra i vostri TP in percentuale
<hp> -Mostra i vostri HP
<hpp> - Mostra i vostri HP in percentuale


Comandi nella Macro
Grazie alla conoscenza dei comandi e alla loro struttura possiamo costruire una Macro funzionante in modo intuitivo e veloce. Ricordiamo che il gioco è come un Computer: stupido. Se gli assegniamo una lista di cose da fare in sequenza lui proverà a farle, senza porsi il problema di controllare se l'ordine delle lista è realizzabile. Se qualcuno vi chiede di passargli il sale a tavola e in successione piroettare all'indietro, capirete che è impossibile e lo guarderete molto male. Il gioco invece vi passerà il sale e proverà subito dopo a piroettare: vi dirà, poi, che è impossibile portare a termine l'ultima azione in modo dignitoso. La Macro è quindi un susseguirsi di comandi di qualunque tipo, eseguiti dal terminal nell'ordine in cui li avete elencati nello script, senza che il gioco attui un controllo sulla possibilità effettiva di attivare i comandi che sta leggendo.

Ogni riga permette l'uso di un singolo comando per un totale di 15 comandi in una Macro. E' bene quindi ricordare 5 semplici regole per la costruzione della Macro:

- Ogni riga ospita un solo comando;
- Le azioni che si compiono seguono l'ordine preciso in cui le abbiamo disposte, dall'alto verso il basso;
- Le azioni vengono eseguite sequenzialmente e non tengono conto del Casting, Recasting, GCD o delay;
- L'uso di Macro e di azioni non in Macro sovrascrive in parte o totalmente la Macro attivata;
- Bisogna considerare il Casting, il GCD (Global CountDown) ed il Recast, in quanto il gioco non effettua un controllo sulla possibilità di realizzare in sequenza le azioni;

Quando creiamo una Macro nuova o la copiamo da internet è sempre bene testarla e adattarla al proprio stile di gioco.
Controlliamo che la Chat in cui siamo posizionati mostri gli errori della Macro, e proviamola sul campo. Se non siamo sicuri che l'opzione sia attiva andiamo in System - Character Configuration - Log Window Settings, e sotto "Log filters" clicchiamo sul tasto relativo alla Chat che intendiamo usare per controllare la Macro. Scegliamo "Announcements" e controlliamo che "Error Messages" sia selezionato. Se un comando è errato a livello di sintassi, o per errori di scrittura dell'oggetto, o ancora per la mancanza di target, il gioco ci informerà con una scritta in Chat o a schermo.
Combinando i vari comandi si possono eseguire in modo efficiente svariate azioni. Quando si crea una Macro con cui realizzare delle catene di potenziamento o depotenziamenti, bisogna considerare sia il GCD sia il delay in cui il Buff o il deBuff entrano in pieno vigore dopo che la relativa Skill è stata attivata. Per notare il delay basta usare Sprint durante la corsa e contare quanto impiega ad attivarsi il Buff. Evitando di parlare di come creare una rotazione ottimale delle Skill, è bene ricordare che l'uso del Wait fra due Skill deve tener conto del tempo di GCD e di Recast (vedi oltre) in modo che l'azione successiva venga attivata quando la Macro avrà compiuto il comando (o il complemento) wait.

Vediamo ora degli esempi di Macro e alcune problematiche. Fra parentesi quadre si riporta la spiegazione del comando.

Uso di multi-targeting

/micon "Psysick" [Visualizza l'icona, il costo e il Recast di Psysick come icona della Macro]
/ac "Psysick" <t> [Usa Psysick sul target da noi selezionato]
/pac "Embrace" mo> [Il Pet usa Embrace sul target che è sotto al nostro puntatore]
/pac "Embrace" <t> [Il Pet usa Embrace sul target da noi selezionato]

Usando questa Macro visualizzeremo sull'icona solo il costo e i parametri relativi a Psysick e non ad Embrace. A parte il comando di Psysick, la Macro è interessante per l'uso di Embrace: qualora il nostro puntatore sia su un target possibile (non deve essere selezionato, ma basta che il puntatore vi sia sopra) Embrace verrà usato su di esso; nel caso in cui il puntatore non sia su nulla di rilevante, apparirà un segnale di errore e la Macro salterà questa azione passando a quella successiva, ovvero usando Embrace sul nostro target (se Eos può farlo). E' bene ricordare che il cast di Embrace e Psysick non è mai contemporaneo, a causa delle animazioni dei personaggi e della lettura della Macro da parte del sistema.

Uso di /autofacetarget on-off

Normalmente è necessario fissare un target non solo tramite selezione, ma fisicamente. Per usare le Skill/Spell bisogna guardare in direzione del nemico. Il comando permette il lock dello sguardo sul nemico quando compiamo l'azione e quindi limita il martellamento dell'icona qualora non fossimo in una posizione ideale per vedere il target.

/micon "Bio"
/autofacetarget on [Il personaggio si ruota in modo da guardare il bersaglio selezionato]
/ac "Bio" <t> [Uso Bio sul target selezionato]
/autofacetarget off [Il personaggio non è più obbligato a fissare il bersaglio selezionato]

In questo caso è bene sapere che se il target passa alle nostre spalle mentre siamo in Casting, uscirà dalla nostra visuale portandoci all'interruzione dell'azione. Per questa tipologia di azioni si consiglia l'azione manuale con Keybind, o comunque un posizionamento adeguato.

Uso di Wait

/micon "Raise" [Icona porta le informazioni di Raise]
/ac "Swiftcast" <me> [Uso Swiftcast su di me, attendo un secondo]
/ac "Raise" <t> [Uso Raise sul Target]
/p Casting Raise on <t> <se.5> [Scrivo in Party Chat su chi uso la Skill e invio un trillo]

In questo caso, avendo una Skill con Casting istantaneo come Swiftcast, dobbiamo usare un wait minimo per dare tempo all'animazione di avvenire e al buff di applicarsi, in modo tale che Raise sia usato istantaneamente.
Tips: mettiamo in barra anche Swiftcast, in modo da vedere chiaramente il suo Recast.

Wait con Recast <- Casting

Quando abbiamo una Spell o una Skill che ha un Recast minore o uguale al tempo di casting è importante fissare il wait pari al tempo di casting, in modo da poter immettere direttamente l'azione successiva in Macro e attivarla appena abbiamo finito il cast in quanto il GCD sarà già terminato.

/micon "Cure"
/ac "Cure" <me> <wait.3>
/ac "Cure" <me> <wait.3>

Uso del Wait per evitare spam in Chat

/micon "Protect"
/ac "Protect" <me> <wait.2>
/p Protect up <se.5>


Per evitare di spammare in Chat sia frasi che suoni è sempre bene mettere un <wait.1> o <wait.2> prima del comando di scrittura in modo tale da poter evitare lo stamp dei caratteri laddove ci muovessimo durante il casting, ad esempio per evitare un'AoE. Questo avviene in quanto quegli 1 o 2 secondi di pausa possono essere usati per riusare la Macro ed evitare quindi che si stampi due volte lo stesso messaggio visto che l'azione /p che sta per attivarsi sarà sovrascritta dall'uso della Macro o di un'altra Skill.

Uso di /micon con Pet Skill

/micon "Embrace" pet Eos [Icona porta le informazioni di Embrace]
/pac "Embrace" <mo> [Eos usa Embrace sul target sotto al puntatore]
/pac "Embrace" <t> [Eos usa Embrace sul target da noi selezionato]

Uso di Complementi e stringhe di testo

/sh Rank A <t> <pos> [Shout che mostra nome del mostro e la vostra posizione sulla mappa]
oppure
/sh LFG Hunt, add me [Shout di una stringa molto usata in game]

Tips: possiamo scrivere in Chat (dopo aver selezionato il canale) direttamente il complemento, ma questo non è pertinente con le Macros.

Uso dell'ordine nei comandi

/micon "Bio"
/ac "Bio" <t>
[Uso Bio su target selezionato]
/ac "Bio" <tt> [Uso Bio sul target del target selezionato]
/ac "Bio" <f> [Uso Bio sul Focus target]

In questo caso avremo almeno 2 messaggi di errore dalla Macro, in base a quale target stiamo colpendo e in che modo viene selezionato. Risulta utile da guaritore se si vuole colpire il target del target che stiamo curando. Se invece abbiamo nel Focus target il Boss e siamo sicuri di voler colpire sempre e solo lui durante tutta la durata dello scontro, possiamo mettere /ac "Bio" <f> subito dopo /micon. In questo caso, però, se selezioneremo un nuovo target <t> diverso dal Focus e useremo la Macro, il primo e unico bersaglio colpito sarà il Focus stesso. Questo perché il comando avviene prima degli altri, e dopo essere eseguito partirà il GCD o il Recast, per cui non potremo usare Bio su <t> e <tt> a meno di modificare radicalmente la Macro o di eliminare/cambiare il Focus Target mentre combattiamo.
Nel caso in cui il nostro target sia una Tiny Mandragora selezionata, avremo questi messaggi:

Azione Macro - Messaggio in Chat - Messaggio a Schermo
/ac "Bio" <t>
/ac "Bio" <tt> - "<tt>" is not a valid target name - Not yet ready
/az "Bio" <f> - "<f>" is not a valid target name - Not yet ready


Il gioco ci comunica quindi, dopo aver usato Bio sul target selezionato, che <tt> non è un target valido, e neppure il Focus target; contemporaneamente ci informerà che, a causa del GCD, non possiamo usare Bio su <tt> e successivamente su <f> ("Not yet ready").



Uso di /hotbar display

Posizionando la Hotbar dedicata a Macro e azioni di Selene (Hotbar 5) su quella di Eos (Hotbar 6) è possibile passare rapidamente da una all'altra senza il bisogno di usare /hotbar copy. Nelle due Macros che verranno proposte, l'evocazione di un Pet è accompagnata ad un comando per mostrare una barra e nascondere l'altra.

/micon "Summon"
/ac "Swiftcast" <me> <wait.1>
/ac "Summon" <wait.2>
/pac "Obey" <wait.1>
/pac "Heel" <me>
/hotbar display 6 on
/hotbar display 5 off
/micon "Summon II"
/ac "Swiftcast" <me> <wait.1>
/ac "Summon II" <wait.2>
/pac "Obey" <wait.1>
/pac "Heel" <me>
/hotbar display 6 off
/hotbar display 5 on


Uso di /hotbar copy

Il comando è utile qualora facciamo un cambio rapido di un Pet o di una classe, o se dobbiamo rapidamente modificare la Hotbar. Può essere ottimo al posto del "gioco con /hotbar display" ma necessita di una precisazione. La copia avviene solo se la barra su cui andiamo a copiare non è compresa nella lista Shared Hotbars che si trova in System - Characters Costumization -Hotbar Setting - Sharing. Ricordiamo quindi di deselezionare la casella relativa alla Hotbar su cui vogliamo applicare la copia. Il comando è facilmente reperibile con la sua sintassi in "Text Commands".



Rinforzo di una Macro

/micon "Raise"
/ac "Swiftcast" <me>
/ac "Raise" <t> <wait.1>
/p Casting Raise on <t> <se.1>
/ac "Raise" <t>


L'uso di alcune Macro impone che l'azione si concluda positivamente anche se avvengono degli spostamenti. Se stiamo per usare un'abilità chiave è possibile rinforzare la Macro imponendo che l'azione principale sia eseguita due volte, in modo tale da essere certi che venga effettuata. In questo caso, a parte l'uso di un wait anti-spam nel caso in cui ci sia un moto, o l'uso di una Spell subito dopo Swiftcast (es. sfruttiamo lo swiftcast per Succor o Medica II se vediamo che tutto precipita), possiamo rendere ridondante la Macro col secondo Raise, in modo tale da imporre di usarlo anche se dovessimo avere compiuto un movimento e/o se il primo non è stato letto correttamente.


Timing
Nel gioco la gestione dei tempi è estremamente importante per riuscire a massimizzare il danno (DPS), avere una giusta gestione dei countdown di Buff e deBuff, ma anche per essere flessibili ed efficienti in ogni aspetto della battaglia e per creare delle Macros che funzionino. In molti casi 0.5 secondi possono segnare il wipe del nostro Party o la riuscita di una strategia, ma ancora di più sono importanti quando, messi alle strette, ci viene chiesto d'improvvisare. Il timing o la gestione del tempo può essere relativo a vari fattori:

- ordine di lettura delle stringhe di comando da parte del sistema;
- queue dei comandi letti;
- registrazione degli effetti;
- GCD e Recast;
- Delay;
- posizionamento, rottura di una rotazione di Skill per schivare o riposizionarsi;

Alcuni aspetti del timing appaiono evidenti: se la mia Skill è in recast aspetto ,e appena sta per finire, premo per usarla in modo da non sprecare neanche un millisecondo. Questo è solo il primo problema del timing delle abilità e l'uso sapiente di "Tic" e Skill/Macros. A livello di struttura temporale, il gioco legge ogni tot secondi vari dati relativi al personaggio: posizione, azioni in corso, etc. Dalla lettura dei dati derivano due problematiche principali: il "Position Update Delay" tramite il quale in Server ottiene la nostra posizione ogni 0.3 secondi (negli High-Level Contents dovrebbe essere di 0.1 secondi dalla patch 2.1) e lo "Animation-Ability Lock", che porta ad una lettura della posizione del nostro personaggio o l'attuazione dell'azione successiva solo dopo che l'animazione della Skill è finita. L'Animation Lock soprattutto porta a dover tener conto del timing non solo delle Skill mentre ci muoviamo, ma anche dei loro effetti (vedi oltre).
A parte le problematiche di delay relativo all'acquisizione delle informazioni da parte del gioco, bisogna considerare altri problema di timing relativi al trasferimenti di questi dati. Le informazioni, infatti, vengono inviate tramite internet al server di gioco, elaborate e rispedite indietro all'utente ed applicate. Tutto questo comporta del tempo che deve essere considerato e che viene espresso tramite il "ping", misurato in millisecondi (ms). Valori ottimali di ping con i server sono 20-50 ms; valori superiori ai 150 ms possono dare problemi di latenza fra ciò che vediamo e ciò che sta accadendo. Se abbiamo quindi valori elevati di ping, vedremo le azioni in ritardo e la lettura della nostra posizione potrebbe portarci a non schivare una particolare AoE, anche se sullo schermo apparirà di avere evaso l'azione prima che questa si concludesse. Un tipico esempio sono le punitive AoE di Titan in "The Navel".
Altro importante dato di timing sono i "Tic", unità di misura per gli effetti nel tempo. Un "Tic" corrisponde, senza possibilità di riduzione, a 3 secondi e rappresenta un tempo indipendente su cui contemporaneamente tutti i DoT/HoT applicano l'effetto. Azioni che infliggono DoT (Damage over Time) o HoT (Heal over Time), sia per HP che MP, applicano il calcolo dei danni/cure ad ogni Tic. Il timing giusto non deriva solo dall'efficienza con cui si usano in catena le azioni disponibili, ma anche dalla conoscenza delle tempistiche del calcolo del tempo nel gioco.


Accenni di GCD e Recast
Durante i combattimenti si nota come non sia possibile utilizzare un'abilità senza aspettare un timer di recast. Il timer che scatta subito dopo l'uso dell'azione può essere di due tipi: di GCD o di non-GCD.
Il GCD (Global CountDown) è il timer che scatta qualora attuiamo la maggior parte delle azioni durante i combattimenti, ha un tempo pari a 2.5 secondi e diminuisce all'aumentare della nostra Spell Speed o Skill Speed. Qualora si attiva il GCD, tutte le abilità influenzate da esso verranno poste in GCD e saranno quindi inutilizzabili.



Esistono però azioni che sono di tipo non-GCD, ovvero che, se attivate, fanno partire un proprio Recast e non subiscono l'effetto di attesa del GCD.
Si parlerà di GCD quindi se la Skill attiva il GCD, e questo sarà pari al recast della Skill riportato nelle sue informazioni (vedi figura sottostante: in rosso sono evidenziate le Skill non-GCD durante il GCD).



Il tempo di Recast di tutte quelle Skill/Spell che sono di tipo non-GCD sarà pari al recast riportato nelle sue informazioni (vedi figura sottostante: in rosso è segnata la Skill non-GCD in Recast).



Sfruttando GCD e non-GCD Spells/Skills si possono creare rotazioni che riempiono i momenti di attesa con azioni che hanno timer propri. Questo porta ad un aumento del DPS o dell'efficienza delle vostre azioni. Un esempio può essere l'uso di Ruin, Ruin II e Energy Drain: le prime due Spell attivano il GCD, mentre l'ultima attiva solo il suo Recast. I dati di Recast e GCD sono relativi al mio equipaggiamento.


Spell Cast Time Recast Time
Ruin 2.38 sec 2.38 sec
Ruin II Instant 2.38 sec
Energy Draing Instant 3 sec

Esistono due sequenze che mostrano la differenza sfruttando GCD e non-GCD Spells.

- Ruin - Energy Drain - Ruin: attivando Ruin con un Cast di 2.38 secondi si attiverà un GCD di 2.38 secondi, riassorbito completamente mentre siamo in fase di casting. Appena è avvenuto il casting di Ruin possiamo usare istantaneamente Energy Drain: così facendo si attiverà il suo Recast, ma non il GCD. Sfruttiamo quindi il Recast di Energy Drain per il casting di Ruin.
- Ruin II - Energy Drain - Ruin: usando Ruin II avremmo il lancio istantaneo della Spell e contemporaneamente l'attivazione del GCD. Mentre questo scorre possiamo usare istantaneamente Energy Drain e, alla fine della sua animazione, sarà passato tutto il GCD generato da Ruin II e sarà quindi possibile iniziare il casting di Ruin quasi istantaneamente.

Si può quindi constatare un delay nelle due serie di Spells a favore della seconda, più costosa dal punto di vista dei MP, ma più veloce e efficiente come DPS.


Sovrascrittura
Usare una Macro non è sempre la scelta migliore: bisogna creare azioni flessibili che permettano di operare veloci cambiamenti in base a quello che accade attorno (soprattutto per gli Healer, che non possiedono rotazioni standard). Quando attiviamo una Macro, il gioco legge ogni singola riga come un comando immesso nel terminale della Chat: il gioco può dimenticare un certo comando se ne viene immesso un altro. Questo effetto verrà chiamato sovrascrittura.
La sovrascrittura di una Macro in atto può avvenire tramite l'esecuzione di una singola Skill/Spell o tramite una Macro. Se abbiamo una serie lunga di azioni che la Macro sta operando e decidiamo di attivare una Skill singola, avremmo una sovrascrittura parziale delle azioni: la Macro continuerà a scorrere, ma l'output finale sarà la Skill da noi selezionata. Quando gli effetti di Cast, animazione e Recast si saranno risolti, la Macro ripartirà ad avere effetto. Tutte le azioni che la Macro avrebbe compiuto mentre abbiamo usato la Skill saranno negate e sovrascritte dalla nostra scelta.
Nel caso in cui, invece, decidessimo di attivare una Macro mentre un'altra è in corso, la sovrascrittura sarà totale.
Sfruttando le due Macros seguenti farà facile capire cosa accade.

Macro 1
/ac "Cure" <me> <wait.3>
/ac "Cure" <me> <wait.3>
/ac "Cure" <me> <wait.3>
/ac "Cure" <me> <wait.3>


Macro 2
/ac "Protect" <me> <wait.3>
/ac "Stoneskin" <me> <wait.3>


Se attiviamo la Macro 1 (vedi comandi su sfondo blu) il sistema inizierà a usare Cure su di noi: subito dopo questa azione possiamo lasciare che il sistema continui la Macro 1, oppure sovrascriverla in parte attivando ad esempio Aero, oppure sovrascriverla totalmente usando una Macro 2 (vedi comandi su sfondo rosso). I Commands indicati nell'immagine corrispondono alle stringhe di comando in successione che il gioco sta eseguendo.



Queue delle Azioni

Per evitare problematiche nell'attuazione delle azioni, i programmatori hanno fornito il gioco di un effetto "in coda" delle azioni selezionate. Se si fa partire il GCD (Global CountDown) è possibile mettere in coda un'azione tramite la sua pressione sull'Hotbar 0.5 secondi prima della fine del GCD. Il gioco registrerà l'azione selezionata e l'attuerà non appena il GCD sarà concluso. La problematica relativa alla sovrascrittura delle Macro porta alla mancanza di queue per esse. In questo caso, l'unico modo per attivarle appena il GCD è cessato è la pressione repentina e continua del pulsante per non perdere millisecondi preziosi.

Registrazione Effetti

Ogni effetto che una Skill/Spell va ad attivare viene considerato dal gioco in una sequenza simile a quella di una Macro. Il gioco infatti gestisce Casting, applicazione della cura, del danno, degli status e timers come se fossero righe di una Macro. L'ordine in cui vengono lette e considerate può comportare effetti di latenza o di mancata considerazione di un Buff o di un deBuff nel calcolo del danno. La lettura in sequenza porta in certi casi all'attivazione dell'effetto dopo un soglia oltre la quale in gioco non considera più il Buff o il deBuff per il calcolo dei danni o della cura. Un esempio è Megaflare: il danno del colpo viene calcolato e modificato da tutte le variabili (Buff/deBuff) agli "0 seconds to Megaflare", quindi se l'applicazione di un deBuff o un Buff avviene dopo che il sistema ha letto "0 seconds to Megaflare", questi non verranno considerati nel calcolo del danno. Stessa cosa accade per la cura degli HP: se questa avviene dopo la soglia di calcolo del danno, si sottrarrà dagli HP iniziali e non da quelli rigenerati.



L'output del danno (e la relativa sottrazione degli HP sul nostro schermo) quindi ha sempre un gap con il momento in cui viene calcolato il danno, e l'uso di cure/Buff/deBuff in questa finestra (calcolo-output) non influisce sul danno già calcolato che si appresta ad essere applicato. Potrà quindi capitare di trovarci con Galvanize se l'applicazione dei comandi di Cura e del Buff (es. Succor/Adloquium) sono successivi a "0 seconds to Megaflare". La registrazione degli effetti non è relativa solo al calcolo del danno, ma anche al concatenarsi di azioni.
Come detto, c'è sempre una certa latenza fra server e ciò che vediamo, ma in realtà c'è una latenza anche fra l'attuazione di un'azione dopo la sua animazione e il calcolo dei suoi effetti. Le azioni, anche se di carattere "Istant", a causa dell'animazione che deve essere attuata, hanno sempre un piccolo tempo di "casting", anche se questo dovrebbe essere inesistente per il calcolo degli effetti. Questo porta alla necessità di attendere quel micro-delay per usufruire degli effetti della nostra azione.
Un esempio è stato proposto nel paragrafo "Uso di Wait" già trattato più in alto, e propone le problematiche di un'abilità istantanea in cui dobbiamo attendere la risoluzione del Buff su di noi prima di poterne usufruire per usare velocemente Ressurrection/Raise.
Il registro degli effetti è quindi una problematica per il Pre-Casting di Buff e deBuff sulla soglia critica di calcolo del danno/cura, sull'applicazione di effetti necessari per creare catene di abilità che necessitano di Buff attivati, e così via.

Animazioni

Le animazioni delle AoE normalmente avvengono dopo il calcolo del danno. Se quindi ci trovavamo ancora nell'area colpita dopo che il segnale rosso sul terreno è cessato, e schivaimo nella latenza intercorrente fra calcolo di danno e attuazione dell'animazione, a causa del registro degli effetti subiremo del danno.
Durante l'animazione di Casting, a causa dei delay si può muovere il personaggio ad una soglia di completamento di 89-95% senza rischiare l'interruzione normalmente; è sempre bene, comunque, testare gli effetti di delay prima di importanti sfide.
L'effetto più importante delle animazioni è l'Animation Lock. Un tipico esempio di problematica di Animation Lock erano le Skills del Dragoon, il cui tempo di recupero dell'animazione è stato diminuito nelle varie patch per evitare problematiche di posizionamento ed evasione delle AoE.

Tic

Come già detto, ogni DoT o HoT applica il suo effetto indipendentemente dal tempo in cui permane sul nemico; queste abilità segnano un danno ogni 3 secondi conteggiati su un tempo indipendente valido per ogni giocatore. Il "Tic" di tutte le DoT e HoT è contemporaneo.



Nell'immagine vengono segnalati in rosso i due DoT applicati ai manichini d'allenamento, e in blu il danno contemporaneo. Come si può notare il timer dei due DoT segnala 17 e 13 secondi, numeri non divisibili per 3. Il timer dei Tic è quindi un tempo indipendente dal timer dei DoT.


"Mi servono le Macros?" "No!"
La risposta è molto semplice: no. Le Macros avevano un senso in Final Fantasy XI Online dove non vi era un HUD comodo e User-friendly come quello di Final Fantasy XIV: A Realm Reborn, per cui bisognava attuare continui cambi di equipaggiamento per massimizzare l'effetto di ogni Skill. Erano pratiche per la coordinazione di Skill Chain e per il concatenarsi di magie fra vari personaggi nel Party.
In base allo stile di gioco e all'esperienza, la risposta diviene soggettiva. Molti attaccano le Macro e fanno vanto di non usarle, anche quando per comodità di tutti i giocatori andrebbero usate. Le Macro in realtà possono essere molto utili per la gestione dell'AI dei Pet. Attuando veloci comandi in sequenza infatti è possibile imporre certe azioni che normalmente sarebbero difficilmente attuate istantaneamente. L'uso delle Macro non è importante, si può fare tutto in ogni modo, ma quello che conta è la possibilità di non precludersi l'efficienza in gioco, che normalmente deriva dalla flessibilità e dalla possibilità di attuare diverse strategie di gioco con cui gestire una singola situazione in un corollario di altre.

Concludo questa guida sulle Macro con un piccolo suggerimento: le Spells di cura, se non hanno un target selezionato, colpiranno in automatico il nostro personaggio. Questo non accade però se la Spell è in Macro e non vi è un comando con target <me>.



    La Strategia contiene un errore? Segnalalo qui.