Bejeweled Next La migliore selezione di gioielli


9

Esiste una tecnica di progettazione del gioco che posso usare in modo da rimuovere completamente le situazioni "Niente più mosse rimaste". vale a dire. il gioco non dovrebbe contenere scenari impossibili.

Per quanto immagino, tutto dipende da quale gioiello e da dove dai all'utente dopo che un gruppo di gioielleria di 3 o 4 si dissolve.

È possibile ? An always infinitely solvable Bejewelled game?


2
rendere tutti i gioielli blu
amb

+1 ottima domanda. Dovrebbe esserci una soluzione abbastanza non contorta per questo, a seconda di quante nuove gemme vengono generate.
ashes999,

@ ashes999: Grazie, ma le uniche due idee per ora, penso che questa rimozione della situazione illegale sia possibile per 1.) controllo della forza bruta e aggiunta di gioielli basati sul calcolo della bruta previsto, 2.) introduzione di cose come bombe o l'ipercubo che interagisce con qualsiasi gioiello attorno creando una grande interruzione sul modello della scacchiera.
Vishnu,

Risposte:


1

È certamente possibile creare un gioco Bejeweled senza fine. PopCap lo ha fatto da solo con l'ultimo Bejeweled 3 (la modalità si chiama "Zen Mode").

Prima di tutto, devi assicurarti che ci sia almeno una mossa valida quando generi la scheda per la prima volta.

Ogni volta che un giocatore fa una mossa, devi calcolare la tavola risultante e cercare mosse valide. Se non ne trovi nessuno, devi controllare le gemme che verranno generate per ripristinare una scheda valida. Poiché (almeno) 3 gemme verranno rimosse con una mossa e dovrai generare 3 gemme sostitutive, puoi assicurarti che queste 3 gemme sostitutive formino un'altra mossa valida con la tavola corrente. Modalità infinita raggiunta.

Naturalmente non è l'ideale che la nuova mossa appaia con nuove gemme, ma è un modo economico per garantire sempre una tavola giocabile. E poiché creare mosse valide significa in realtà scambiare posizioni di gemme, non passerà molto tempo prima che altre mosse diventino possibili.

Come già accennato, le bombe e altri mezzi per liberare grandi parti del tabellone aggiungeranno più varietà al gameplay, ma non sono necessarie per garantire una modalità infinita.


4

Sì. Questo sarebbe infatti possibile. Questo non è un caso di arresto del problema poiché il caso è definito, non arbitrario. Per rispondere a ciò, è necessario rispondere a due parti; prima se esiste una soluzione può essere trovata, e in secondo luogo ci sarà sempre una soluzione valida da trovare.

La prima parte di è come trovare un set di tessere sostitutive (gemme) che producano una tavola giocabile. Questo può essere ottenuto tramite metodi di forza bruta, basta controllare ogni possibile set di sostituzione fino a quando non ne viene incontrato uno giocabile (ci sarebbero anche metodi di forza non bruta più ottimali).

La seconda parte è determinare se ci sarà sempre un set di sostituzione che produrrà un set giocabile. Qualsiasi set di tessere rimosso in una sola mossa sarà un superset di set di tre tessere, quindi se nel caso minimo di solo tre vengono rimossi, se un set giocabile può sempre essere trovato, quindi per tutti i possibili modelli di tessere rimosse ci sarà un set giocabile, poiché conterrà tutte le soluzioni per ogni set di tre tessere rimosse che è un sottoinsieme delle tessere rimosse.

Nel caso minimo di cancellare solo tre tessere in una riga / colonna, un set di sostituzione contenente due tessere di tipo A separate da una tessera di tipo B (dove il tipo A è il tipo di tessera sopra o sotto la serie cancellata di tre in il caso di una colonna di tre, oppure a sinistra o a destra nel caso di una fila di tre). Ciò produrrà una mossa in cui scambiando il centro di queste tre tessere con l'apposita tessera A accanto produrrà un set di tre. Ciò mostra che è sempre possibile trovare un set di tessere che produrrà una mossa valida lungo la colonna / riga in cui sono state cancellate le tessere originali. Limitare le mosse future a quella colonna o riga sarebbe, pur essendo una valida soluzione per un gioco a infinito giocabile, non sarebbe molto divertente. Ma usando tutte le regole per i comuni giochi in stile ingioiellato, è facile dimostrare che esiste sempre una soluzione che consentirà anche spostamenti all'esterno di quella riga / colonna. Supponiamo di rilasciare tre tessere di tipo A, dove A è una delle tessere sopra o sotto / a sinistra o a destra dell'insieme rimosso di tre. Questo produrrà una tessera stile "bomba" che eliminerà un'area quando rimossa. Se poi cadiamo in un altro set di tessere sostitutivo che si traduce in una corrispondenza con quella bomba, un'area di tessere verrà cancellata. Quest'area conterrà un numero di 3 sottogruppi di riquadri all'interno di altre righe, il che significa che le mosse future non saranno necessariamente limitate a una singola riga / colonna. Questo produrrà una tessera stile "bomba" che eliminerà un'area quando rimossa. Se poi cadiamo in un altro set di tessere sostitutivo che si traduce in una corrispondenza con quella bomba, un'area di tessere verrà cancellata. Quest'area conterrà un numero di 3 sottogruppi di riquadri all'interno di altre righe, il che significa che le mosse future non saranno necessariamente limitate a una singola riga / colonna. Ciò produrrà una tessera stile "bomba" che eliminerà un'area quando rimossa. Se poi cadiamo in un altro set di tessere sostitutivo che si traduce in una corrispondenza con quella bomba, un'area di tessere verrà cancellata. Quest'area conterrà un numero di 3 sottogruppi di riquadri all'interno di altre righe, il che significa che le mosse future non saranno necessariamente limitate a una singola riga / colonna.


Ruota solo di 120 gradi alla volta, giusto? Quindi cosa succede se visualizzi un tabellone che (a causa di mosse precedenti) ha distribuzioni segnabili altrove nel tabellone, che richiedono 5 mosse da un blocco appena piazzato, e il giocatore fa prima clic su qualcosa di sbagliato ?
Clockwork-Muse

Ruota di 120 gradi? Bejeweled non comporta rotazioni. Stai pensando a Bejeweled Twist ?
Matthew R,

Scusa, no, stavo pensando a Hexic . Ma, con gemme sufficientemente diverse, sarebbe possibile entrare in una situazione in cui il motore avrebbe dovuto generare un trio corrispondente ogni volta per consentire il gioco continuo (perché nient'altro avrebbe segnato). Che potrebbe essere interessante da vedere, ma non molto giocabile.
Clockwork-Muse

Saresti sempre in grado di generare un set di sostituzione di tre tessere identiche dello stesso tipo di un riquadro a sinistra / a destra o in alto / in basso di quel set, che creerebbe un set più grande che verrebbe quindi rimosso. Ciò significa che alla fine è possibile rimuovere tutte le tessere nella riga o colonna della tessera originale. Nella maggior parte dei giochi in stile gioiello, set più grandi portano a tessere speciali che eliminano le aree o tutte quelle di un determinato tipo di tessera. Questo potrebbe essere messo in cascata, se necessario, per eliminare abbastanza tessere da poter generare una tavola giocabile indipendentemente dallo stato iniziale della tavola.
Matthew R,

3

Hai toccato l'arresto del problema nell'informatica.

Data una descrizione di un programma informatico arbitrario, possiamo dedurre se si fermerà ad un certo punto o funzionerà per sempre? C'è una ragione per cui questo è chiamato un "problema".

La risposta breve è: no, non puoi garantire che un gioco Bejeweled non abbia mai mosse illegali. Perché per garantire ci vorrebbe un tempo di elaborazione infinito.


4
Proprio FYI, il problema di arresto afferma che ci sono problemi impossibili da risolvere, non che lo siano tutti. Per questo problema specifico, penso che tu non riesca a farlo (o il gioco sarà ridicolmente semplice, come ad esempio 2 colori e una griglia 3 * 3), ci sono troppi percorsi possibili in un gioco di dimensioni normali come questo .
Valmond,

1
Inoltre FYI: l'attuale generazione di giochi Bejeweled (da PopCap) ha una modalità infinita ... quindi sembrano aver risolto il problema con successo :) Assicurano che ci sia sempre una mossa valida generando nuove gemme che garantiranno una mossa valida ( si applica solo quando non ce ne sono attualmente disponibili).
bummzack,

1
@bummzack: mi dispiace dire che hai sbagliato bummzack, ma nel popcap ingioiellato (di cui sono orgoglioso di dire che sono il capocannoniere sia in classico che in velocità). La versione classica smette di dire .NO SPOSTA A SINISTRA e ti offre un gameover.
Vishnu,

@ knight666: Beh, non penso che sia impossibile, come l'altro post di Mathew R, ha una buona idea di usare una bomba quando l'IA prevede che potrebbe sorgere una situazione illegale.
Vishnu,

@Vishnu Beh, ho scritto l' attuale generazione , che sarebbe Bejeweled 3, e questo vale solo per la modalità infinita (o la modalità Zen o altro). Sono consapevole che questo non era il caso nella versione classica ...
bummzack,
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.