CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 21 Sep 2019 17:05

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 8 mensajes ] 
Autor Mensaje
NotaPublicado: 03 Mar 2010 17:21 
Desconectado
Grafista
Grafista
Avatar de Usuario

Registrado: 04 Sep 2008 17:23
Mensajes: 735
Hola. Estoy jugando un poco en ratos libres con algunas ideas que tengo para la próxima civilicomp de planseldon y ando intentando implementar una especie de mini-juego, pero no logro hacerlo funcionar. Me preguntaba si alguien podría echarme una mano.

Mi intención era poder leer lo que teclee el usuario y comparar la entrada con una serie de palabras válidas predefinidas.
Si un personaje nos preguntase por ejemplo: "¿Qué ser es el que anda de mañana a cuatro pies, a mediodía con dos y por la noche con tres?"
el jugador pudiese teclear " > el hombre " / " > ser humano " / " > las personas " para que el personaje le diese un caramelo o, y si se teclea una respuesta falsa, le atizase con una regla de madera en la punta de los dedos.

O que se mostrase lo siguiente:
Código:
Le chien est noir.
El perro es de color

y que el jugador tuviese que completar la frase. (ganándose el caramelo o el reglazo en los dedos).

¿Sabéis cómo se puede hacer algo así con Inform?


Arriba
 Perfil  
 
NotaPublicado: 03 Mar 2010 17:59 
Desconectado
Guionista
Guionista
Avatar de Usuario

Registrado: 20 Ene 2007 20:09
Mensajes: 356
Supongo que lo puedes hacer invocando directamente a la función "KeyboardPrimitive", pero claro, te tocará interpretar a mano las distintas respuestas válidas, ignorando artículos y todo eso (por ejemplo que el jugador teclee 'el hombre' u 'hombre' a secas, etc.)


Arriba
 Perfil  
 
NotaPublicado: 03 Mar 2010 19:00 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 10 Sep 2004 00:17
Mensajes: 3039
Ubicación: Chile
mastodon escribió:
Supongo que lo puedes hacer invocando directamente a la función "KeyboardPrimitive", pero claro, te tocará interpretar a mano las distintas respuestas válidas, ignorando artículos y todo eso (por ejemplo que el jugador teclee 'el hombre' u 'hombre' a secas, etc.)

En efecto, véase este post y anteriores en el mismo hilo.

_________________
[Incanus]
El Escritorio - Blog Aventurero y Literario


Arriba
 Perfil  
 
NotaPublicado: 03 Mar 2010 20:17 
Desconectado
Grafista
Grafista
Avatar de Usuario

Registrado: 04 Sep 2008 17:23
Mensajes: 735
Gracias a los dos por responder tan rápido.
Si. Así es como había empezado a programar eso de las adivinanzas y va bien cuando tienes unas pocas respuestas posibles. Pero si programar algo así con una, dos o cinco respuestas posibles es un jaleo tremendo, me imaginé a mi personaje profesor preguntando por el nombre de uno de los reyes visigodos, o por uno de los apóstoles de Jesús, y el follón de código puede ser bárbaro. Además creo que (al menos mi versión, llena de bucles recorriendo las posibles respuestas y la contestación del jugador) iba a ser muy poco eficiente.

Estaba pensando en si se podría tener un objeto 'tests' (por ejemplo) de este estilo:

Código:
Object tests "OBJ. Tests"
 with  found_in [; return true; ],
         reyes_visigodos 'sisenando' 'chintila' 'tulga' 'chindasvinto' 'recesvinto' 'etc',
         apostoles 'pedro' 'santiago' 'mateo' 'andres' 'bartolome' 'etc',
];


Coger la primera palabra introducida por el jugador y comprobar si está definida dentro de alguna de las propiedades del objeto (¿con WordInProperty( word, obj, prop )?).

Se que a primera vista hacer algo así parece meterse en un berenjenal a cambio de algo que no resulta especialmente útil. Pero creo que puede servir para hacer juegos de palabras o cosas del estilo para las que el medio conversacional se presta muy bien (aunque es verdad que este lenguaje de programación no tanto).


Arriba
 Perfil  
 
NotaPublicado: 04 Mar 2010 16:06 
Desconectado
Archivero
Archivero

Registrado: 08 Sep 2008 22:04
Mensajes: 274
Makinaimo escribió:
Estaba pensando en si se podría tener un objeto 'tests' (por ejemplo) de este estilo:

Código:
Object tests "OBJ. Tests"
 with  found_in [; return true; ],
         reyes_visigodos 'sisenando' 'chintila' 'tulga' 'chindasvinto' 'recesvinto' 'etc',
         apostoles 'pedro' 'santiago' 'mateo' 'andres' 'bartolome' 'etc',
];


Coger la primera palabra introducida por el jugador y comprobar si está definida dentro de alguna de las propiedades del objeto (¿con WordInProperty( word, obj, prop )?).


La librería Etemas usaba esa aproximación con muy buenos resultados, aunque juraría que sólo está disponible para InformATE. Es probable que para Inform 6 SP sólo hubiera que hacerle unos pocos cambios en los nombres de variables y funciones españolizadas.

--


Arriba
 Perfil  
 
NotaPublicado: 04 Mar 2010 20:12 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 10 Sep 2004 00:17
Mensajes: 3039
Ubicación: Chile
DrVanHalenFan escribió:
La librería Etemas usaba esa aproximación con muy buenos resultados, aunque juraría que sólo está disponible para InformATE. Es probable que para Inform 6 SP sólo hubiera que hacerle unos pocos cambios en los nombres de variables y funciones españolizadas

Entiendo que Etemas puede convertirse desde InformATE a INFSP = Inform 6 original + con texto de entrada/salida en español.

_________________
[Incanus]
El Escritorio - Blog Aventurero y Literario


Arriba
 Perfil  
 
NotaPublicado: 05 Mar 2010 01:07 
Desconectado
Grafista
Grafista
Avatar de Usuario

Registrado: 04 Sep 2008 17:23
Mensajes: 735
He ojeado la librería Etemas y si, eso es lo que tenía más o menos en mente. Era (es) un chico listo este Zak.
Creo que la he traducido bien a INFSP y he jugueteado un poco con ella, pero al final no me va a servir y voy a serguir intentando programar mis juegos de palabras un poco a lo bruto con arrays. A ver si llego a alguna parte...

Gracias a todos por la ayuda.


Arriba
 Perfil  
 
NotaPublicado: 05 Mar 2010 01:32 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 24 Ago 2007 00:41
Mensajes: 2023
Ubicación: Chile
Mi librería no publicada Datoki, para INFSP6, es una mejora de FHablaOO.h y de ETemas.h (más concretamente, es una mejora de Palique.h para InformATE!).

Por lo anterior, puede usarse como una implementación muy mejorada de ETemas.h para INFSP6. Aún no está documentada, pero si te interesa puedo enviártela y servirte yo mismo de "Documentación en Vivo". xD

Nada más pídela a mi e-Mail.

Saludos!

_________________
Eliuk Blau
eliukblau (AT) gmail.com
http://www.caad.es/eliukblau/


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 8 mensajes ] 

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
cron
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM