Nascondino

Il nascondino

> Programmazione

Questo algoritmo mira a trovare le celle su cui l'avversario non avrà linea di vista, anche mentre si muove.

Generalmente sentirai parlare di questo algoritmo sotto il nome di "Cache-cache", o "Nascondino" per la maggior parte degli anglofoni.

Utilizzo

Il nascondino è uno dei primi metodi che ti permetterà di gestire i tuoi movimenti in modo più efficace.

Se il tuo porro si nasconde dietro un ostacolo in modo che sia irraggiungibile per l'avversario, l'avversario non avrà altra scelta che usare un metodo subdolo, come Spark che colpisce gli ostacoli, o l'AoE.

Principio

Il metodo generalmente utilizzato per trovare le celle in cui sarai nascosto utilizza l'algoritmo celle accessibili.

Quindi il primo passo è rendere accessibili le tue celle, in modo da sapere in quali celle puoi spostarti e quindi potenzialmente nasconderti. Ma anche conoscere quelle del tuo avversario (o dei tuoi avversari), per sapere dove può andare il tuo avversario, e trovare così una cella dove non possa raggiungerti, anche in movimento.

È quindi necessario determinare le celle "sicure" tra le celle accessibili al tuo porro. Per fare ciò, devi testare ciascuna di queste celle e controllare le linee di vista con le celle accessibili dell'avversario. Se non c'è linea di vista tra una cella e quelle dell'avversario, allora quest'ultimo non sarà in grado di prendere di mira questa cella, anche mentre si muove.

Quindi, l'idea è di partire dall'ipotesi che una cella sia "sicura", e provare a dimostrare il contrario. Quindi testiamo ciascuna delle celle dell'avversario fintanto che non c'è linea di vista. Non appena esiste una linea di vista, significa che l'avversario sarà in grado di raggiungere questa cella. È ovviamente possibile affinare e calcolare un "pericolo" sui candidati al nascondiglio per scegliere il meno cattivo, ad esempio per non lasciare all'avversario la possibilità di un colpo di linea M-Laser.

Quadrato verde: il tuo porro / Quadrato rosso: avversario / Quadrato blu: caselle accessibili dell'avversario Linea verde: nessuna linea di vista / Linea rossa: linea di vista