Attualmente sto programmando un gioco Stratego in JavaScript
, semplicemente perché volevo imparare a usare JavaScript mentre spendevo del tempo per mantenere le mie capacità di programmazione alla pari. (I miei attuali incarichi di lavoro non comportano alcuna programmazione.) Questa informazione non è del tutto pertinente. : -)
Il fatto è che adesso la mia IA funziona già abbastanza bene. L'IA ricorda i ranghi di pezzi che sono già stati rivelati e catturerà o fuggirà a seconda di ciò. Anche i pezzi che non sono stati ancora rivelati vengono presi in considerazione. Ad esempio, un maresciallo non catturerà un pezzo se c'è un pezzo nascosto in esso, poiché quest'ultimo potrebbe essere una spia. Se la spia non è più in vita, il maresciallo avrà paura solo dei pezzi non in movimento, poiché quelli potrebbero essere bombe. Se un pezzo sconosciuto sale al Generale, quest'ultimo fuggirà, poiché il pezzo sconosciuto potrebbe essere un Maresciallo. Ecc, ecc.
Il mio problema è che l'AI è attualmente estremamente difensivo . Salterà sulle opportunità per catturare i pezzi, ma non "progetta" mai di spostarsi da nessuna parte, e mai prende la bandiera, dal momento che pensa che la Bandiera potrebbe anche essere una bomba.
La domanda è: ci sono dei pattern che possono essere usati come base per un algoritmo per capire dove potrebbe essere la bandiera del nemico? Quando i giocatori umani giocano l'uno contro l'altro, quali sono le loro tattiche per scoprire la posizione della bandiera?
(Nota: nella versione attuale, i pezzi vengono posizionati casualmente sul tabellone per entrambi i giocatori, ma in futuro consentirò al giocatore di piazzare i suoi pezzi come vuole, comunque.)