Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Algoritmo del juego Sherlock

Iniciado por tewe76, 24 de Marzo de 2007, 12:32:55 PM

« anterior - próximo »

tewe76

(Lo pongo en IA aunque quizá debería ir en General...)

No sé si alguno conoce el juego de lógica Sherlock ( http://www.kaser.com/sherwin.html )
Yo lo tengo desde hace años y la verdad es que he tenido épocas de bastante enganche :)
Bueno, la cuestión es que desde siempre me habría gustado hacer un clon (un clon mejorado, blablabá, como siempre... ;) ). Porque me daba pena que un juego tan interesante tuviese unos gráficos tan patéticos.

Bueno, ya estoy aquí escribiendo el capítulo 189 de mi biografía :roll:. La cuestión, es que me gustaría saber dónde puedo conseguir el algoritmo que usan para crear los niveles, o si alguno de vosotros tiene alguna sugerencia de cómo se puede hacer. A mí, la idea que más me tira es la de crear el estado final del nivel al azar e ir eliminando casillas según añado las pistas necesarias para colocar dicha casilla. Pero no tengo muy claro si éso servirá, así que estoy abierto a sugerencias.

Ah, por supuesto he buscado en google, pero no encuentro nada :(
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

tewe76

Como parece que nadie se anima a contestar :roll:, para los que no conozcan el juego y no tengan ganas de probarlo, decir que se basa en el típico pasatiempo de:
-Juan vive en la casa azul
-El dueño de la casa roja tiene un Mercedes
-La casa verde no está a la izquierda de la casa roja
...
-María viaja 2 veces al mes
Y tienes que rellenar una tabla con los datos que faltan, deduciéndolos de las pistas que te han dado.

Lo bueno del Sherlock es que es todo visual, con dibujos, lo cuál lo hace más divertido.

A ver si alguien tiene alguna sugerencia.
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

Vicente

Parece algo de forward chaining, mira en la wikipedia:

http://en.wikipedia.org/wiki/Forward_chaining

A ver si te puede ayudar. Un saludo!

Vicente

tewe76

Hum, sí, por la definición sí que parece ser algo así, pero no tengo ni idea de cómo aplicarlo. Bueno, buscaré info sobre elllo, oye ;)
Gracias :)
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

Vicente

Yo lo he implementado con Lisp en prácticas de IA. Es típico en Lisp, Prolog,... Básicamente tienes un conjunto de hechos y un conjunto de reglas (if X then Y).

Por ejemplo:

Hechos:

- Pepe es Padre de Juan.
- Juan es Padre de Antoñito.

Reglas:

if X Abuelo Z then X Padre Y, Y Padre Z

Con lo cual con los hechos de antes y la regla de abajo se cumple que Pepe es el Abuelo de Antoñito, así que en tu base de datos añadirías un nuevo hecho:

- Pepe es Abuelo de Antoñito.

Y este ciclo de ver si puedes deducir algo nuevo a partir de las reglas y los hechos que tienes se repite hasta que no deduces nada.

Luego de implementar es un poco lioso la verdad... Pero tiene que haber tutoriales por ahí seguro. Un saludo!

Vicente

tewe76

Gracias, Vicente :)
A ver qué saco :roll:
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.