Supponiamo che io voglia creare un gioco di strategia con uno stato mutabile globale condiviso tra tutti i giocatori (pensa al tabellone). Ma a differenza di un gioco da tavolo, non voglio che sia un'azione in tempo reale e / o a turni. Invece, i giocatori dovrebbero essere in grado di accedere in qualsiasi momento della giornata e spendere un numero fisso di punti azione al giorno come desiderano. Al contrario di alcune ore, le sessioni di gioco durerebbero alcune settimane.
Questo ha lo scopo di premiare una buona strategia piuttosto che il tempo trascorso a giocare (in alternativa, i giocatori hardcore potrebbero sempre giocare più giochi in parallelo invece) così come tutti i tipi di problemi legati al gioco dal vivo come disconnessioni e sincronizzazione. Il gioco dovrebbe rimanere avvincente e avere comunque un ingombro ridotto per i giocatori occasionali.
Fin qui tutto bene, ma questo lascia ancora aperta la questione di quando risolvere le azioni e quando dovrebbero essere visibili. Voglio evitare il "gioco dei ninja" come fare tutte le tue mosse solo pochi minuti prima del reset del punto giornaliero per sorprendere altri giocatori, o la gente che spammando F5 per piazzare un'azione tempestiva che sconfiggerebbe l'intero punto di un non reale- gioco del tempo.
Ho pensato a un paio di approcci a questo:
Risolvi tutti gli eventi in un singolo processo pianificato in esecuzione una volta al giorno. Ciò significa sostanzialmente un gameplay "cieco" in cui i giocatori possono intraprendere azioni ma non vedono immediatamente i loro risultati. Il fatto è che ho giocato a un gioco per browser simile qualche anno fa e non mi è piaciuto il fatto che ti senti disconnesso e impotente fino a quando non c'è quel deus ex machina che ti dice cosa è realmente successo durante tutto quel tempo. Vedi il mondo evolversi in grandi incrementi di un giorno, che spesso non sembra vederlo evolversi affatto.
Per azioni che hanno un grande impatto sul gioco o su altri giocatori (attacchi, grandi risultati), rendili immediatamente visibili a tutti ma ritardandone l'effetto di qualcosa come 24 ore. I giocatori avversari potrebbero essere avvisati quando si verifica un evento del genere, in modo che possano reagire ad esso.
Hai altre idee su come potrei risolvere il problema? Esistono approcci noti in giochi esistenti simili?