Prototipazione di un gioco puzzle per la solvibilità dei livelli


11

Sono nella fase di prototipazione della creazione di un gioco puzzle per iOS. La premessa di base di ciò che il giocatore deve fare è spostarsi dal punto A al punto B navigando attraverso un labirinto come una configurazione, spostando i blocchi di mezzo ed evitando i nemici. Questo è il mio primo approccio a un gioco come questo, quindi mi chiedo come gli altri si siano assicurati che i livelli che creano siano risolvibili.

Ad esempio, prendi il classico gioco Unblock in cui devi spostare il blocco rosso fuori dal tabellone spostando gli altri pezzi non rossi. Diventa difficile perché sono tutti in uno spazio ristretto con poco movimento da avere.

Il creatore sa che la disposizione dei pezzi del puzzle è posizionata in modo da consentire la risoluzione del puzzle? Iniziano con prototipi di carta e lavorano da uno stato finale risolvibile all'indietro per creare i layout di gioco iniziali?

Risposte:


10

Sembra che tu stia realizzando un gioco in stile Sokoban . Hai almeno 3 opzioni:

  • Funzionando da uno stato finale risolto. Il mio istinto dice che questa non è la soluzione ottimale, perché a) di solito ci sono molti stati finali eb) il puzzle non deve solo essere risolvibile, ma anche interessante. Quindi dovresti probabilmente perseguire una o entrambe le altre 2 opzioni:

  • Test automatici. A meno che tu non stia raggiungendo livelli enormi, in realtà ci sono poche azioni che un giocatore può intraprendere, la maggior parte delle quali porterà rapidamente a uno stato di gioco irrisolvibile. Questo lo rende perfetto per un bot per esaurire tutte le mosse possibili. Se esiste almeno 1 percorso che porta a una soluzione, il bot la troverà.

  • Il mio metodo preferito sarebbe il test manuale. Quindi ti viene in mente un'idea generale per un livello e disponi il tabellone, metti ostacoli e blocchi mobili, ecc. Quindi provi a risolverlo come se fossi un giocatore e devi osservarti consapevolmente. Prima di tutto, ovviamente, è risolvibile a livello? Un test automatizzato può aiutarti molto in questo, che ti farà risparmiare un sacco di tempo. In secondo luogo, il livello è divertente da giocare, è abbastanza interessante da consentire al giocatore di risolverne un altro? Questa, a parte la semplice solvibilità, è la domanda principale se vuoi migliorare il tuo gioco. Successivamente, devi giudicare se il livello è facile o difficile e probabilmente vuoi presentarli in questo ordine: da facile a difficile.

TL; DR: implementa un bot in grado di verificare rapidamente se un determinato livello è risolvibile o meno, preferibilmente nel tuo editor di livelli. Quindi progetta livelli che potrebbero essere divertenti da risolvere. Quindi prova manualmente il fattore divertimento e la difficoltà reali.


Hackworth, grazie mille. È molto utile. Come si potrebbero trovare ulteriori informazioni sulla creazione di un editor di livelli e di un bot di test? Sicuramente ci devono essere alcuni principi generali che mi aiuterebbero a iniziare. Inoltre, come hai scoperto che il genere del gioco si chiama Sokoban? Non avrei mai saputo per cosa Google. È grandioso. Grazie ancora. Posso dirti che ti interessa fare "giochi divertenti e fantastici". È un bel cambiamento dal porre domande su StackOverflow.
I00I

3

Questa è stata anche la mia domanda per molto tempo, non sono sicuro che sia la migliore pratica per creare enigmi, ma ho una risposta ora. Per farla breve, basta immaginare una semplice situazione di fine del gioco valida, quindi spostarsi passo dopo passo indietro e arrivare a un punto di partenza.

Ora per fornire maggiori dettagli: vuoi che il puzzle sia sempre risolvibile, dal punto di vista dei giocatori non è importante se il puzzle ha due o tre soluzioni ma ne deve avere almeno una! Tieni presente che puoi iniziare il tuo disegno facendo inverse mosse valide. Hai detto che è un gioco che devi spostare in qualche modo tutti i blocchi dal tabellone. Quindi per il primo passo immagina di giocare sul bordo della mappa e non ci sono blocchi rossi da nessuna parte sul tabellone. Da quella situazione inizi a fare mosse inverse che sono mosse normali (inversione di un'altra mossa normale) o tirare un blocco (che è il contrario del blocco di spinta) e tirare un blocco nel tabellone (che è ovviamente il contrario per spingere quel blocco fuori da scena). Con questo approccio sai che esiste sempre almeno un metodo per risolvere il puzzle,

Come suggerito da Hackworth nella creazione di enigmi in questo modo, all'inizio potresti generare enigmi molto semplici o non creativi, ma dopo aver creato alcuni enigmi imparerai a poco a poco quale tipo di mosse si tradurrà in un buon enigma. È esattamente allo stesso modo in cui un giocatore acquisisce esperienza per risolvere enigmi più difficili dopo aver risolto quelli semplici.


Gajet ti ringrazia per aver fornito approfondimenti sulle tue esperienze. È bello vedere che qualcun altro è stato su quella strada. Non sapere come impostare un editor di livelli e un bot per vedere se sono risolvibili mi fa appoggiare questo metodo rispetto alle altre due soluzioni più eleganti fornite. Potrei ancora abbandonare il mio amore per Cocoa Touch e abbattere e utilizzare l'editor di livello Cocos2d e le strutture per questo particolare progetto.
I00I

1

Questa è una domanda davvero interessante. La risposta migliore è che quando si progettano le meccaniche di gioco, è necessario considerare come si desidera creare i propri puzzle. La creazione di un puzzle divertente da giocare a volte è diversa dalla creazione di un sistema di puzzle all'interno del quale è possibile creare il numero corretto (elevato) di puzzle divertenti: questa è una delle distinzioni importanti tra sviluppatore e giocatore.

Ma hai già alcune regole in atto, quindi vediamo quanto velocemente possiamo portarti a un buon metodo di creazione di puzzle ripetibile. Dobbiamo iniziare con obiettivi. (Non puoi vincere senza goal!) Ecco alcuni possibili obiettivi per te:

  1. I livelli dovrebbero essere esteticamente belli.
  2. La soluzione ai livelli dovrebbe essere elegante.
  3. Ogni livello dovrebbe avere una soluzione unica.
  4. Ogni livello dovrebbe avere una difficoltà ben definita (quindi puoi ordinarli correttamente)
  5. Ogni livello dovrebbe essere molto diverso da ogni altro livello.
  6. Hai bisogno di 1.000 livelli.
  7. La creazione di livelli dovrebbe essere abbastanza semplice da consentire agli utenti di farlo.

Trova un obiettivo adatto a te, quindi lavora all'indietro da lì. Se vuoi livelli meravigliosi, allora hai bisogno di un sistema in cui puoi rendere risolvibile qualsiasi accordo con modifiche limitate, in modo che le considerazioni estetiche possano dominare. Se hai bisogno di livelli X, allora hai bisogno di un processo che puoi automatizzare o che un grande team lavori per te. ;) I tuoi obiettivi dovrebbero guidare la tua soluzione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.