ambar-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Ambar-dev] sobre los PNJs


From: Aranarth
Subject: Re: [Ambar-dev] sobre los PNJs
Date: Mon, 16 Sep 2002 14:39:47 +0200

On 16 Sep 2002 13:27:30 +0200
TuringTest <address@hidden> wrote:

> Hola Pablo.
> 
> Parece que te has tropezado con un monton de problemas para ampliar los
> PNJs. ¡Mea culpa! El código estaba cableado sólo para que funcionase la
> tutora, y no estaba aún escrita la creación de muchos objetos PNJ. Al
> final con las vacaciones se ha quedado así más tiempo del que debía.

Ya ya lo vi. No pasa nada. Yo no quise tocar nada de momento así que 
simplemente habilite (a pedales también) el PNJ del posadero.

> Te comento algunas de las dudas que te han surgido:
> 
> 
> > Sé que con paciencia y probando, todo
> > irá saliendo pero estaría bien que Diego escribiera un pequeño
> > tutorial (al estilo de los de las salas y objetos) para crear un PNJ
> 
> Me pondré a ello esta semana. Además de explicar la sintaxis del fichero
> de conversación, intentaré exponer los principios de diseño que he
> utilizado para juntar las distintas partes del diálogo y que resulte
> creíble.

Perfecto. eso es justo lo que ncesitamos.

> Por cierto, para hacer el DTD de las conversaciones, ¿te has inspirado
> en el esquema que preparé yo en el fichero dtd.txt, o lo has hecho
> leyendo el código Python? 

Me basé en el dtd.txt aunque he de decir que me he encontrado con algunos 
problemas importantes a la hora de validar algunos xml (con herramientas 
externas como xmlproc_val) y es que utilizas elementos de mismo nombre (por 
ejemplo, item o tema) en contextos diferentes con atributos y elementos hijos 
diferentes. Por lo que veo, el XML no resulta consistente de esa manera porque 
entiende que la primera definición de un elemento (por ejemplo, item) es la 
correcta y como luego encuentra elementos item de otra naturaleza, saltan mil 
errores.
Tengo que confirmar que esto es un error del parser y no un fallo de la 
especificación XML (sería una pena estar tan limitado en el asunto de los 
espacios de nombre).
En cualquier caso, siempre se podría ayuda al lector llamado itemOfftopic al 
item dentro de un offtopic y cosas así (no recuerdo muy bien ahora los casos).

> 
> > los PNJ consideran a todos los PJs como uno solo
> > esto hace que los PJs que llegan más tarde comiencen la conversación
> > en estados más alejados del inicial y se pierdan cosas.
> 
> La idea para la persistencia de las conversaciones era crear un objeto
> Conversacion() para cada grupo de jugadores que están en la sala. De
> esta forma, si el grupo se va y entra otro, el nuevo grupo comienza la
> conversación por el principio; y si el grupo inicial vuelve, puede
> seguir por donde se había quedado.

Lo veo bien salvo por el hecho de que los grupos son, de momento, sólo 
entidades formales que tienen como única aplicación el seguir a una persona por 
las salas (+seguir) y ni siquiera está planteado esto como grupo. Entonces, 
estás tomando a gente que en nada tiene por qué conocerse, como un 'equipo' de 
conversación frente al posadero o PNJ y esto lo veo forzado y poco realista.
Mi aproximación es más individual, lo que pasa es que entonces el PNJ se repite 
mucho a la gente de una misma sala y queda poco "listo".

Quizá pudiéramos encontrar una fórmula mixta en donde se tiene en cuenta al 
persona individual y el hecho de que hay más gente en la sala para que se 
produzcan frases equivalentes pero diferentes según pregunta uno u otro, de 
esta manera el 'estado de conversación' es el mismo pero la charla es mucho más 
rica.

Supongo que esto añade más esfuerzo... uf.

> El problema que se plantea es, ¿qué pasa si el segundo grupo entra
> mientras quede algún jugador del primero? ¿El primer jugador ve
> reiniciarse el diálogo, o los segundos lo ven empezado? Yo creo que esta
> segunda opción es mejor, aunque no resuelve del todo el problema. Quizá
> el nuevo objeto conversación debería crearse cuando dices 'hola'.

Pero puedes querer volver a decir hola unos días más tarde y no por ello el 
posadero se va aolvidar de todo lo que te dijo (se puede olvidar en parte, 
naturalmente).

> 
> Para terminar: intenté conectarme al CVS siguiendo los pasos del
> documento, pero no lo he conseguido. ¿Espero a que termines de hurgar el
> código para volver a intentarlo?

Necesito todos los detalles que tengas sobre el asunto para saber qué paso 
falló.

Un saludo y muchas gracias por tu rabajo!
-- -- -- --
Pablo "Aranarth"
[Smial de Hammo]
[http://elenya.net]




reply via email to

[Prev in Thread] Current Thread [Next in Thread]