CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 21 Abr 2018 01:27

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 9 mensajes ] 
Autor Mensaje
NotaPublicado: 16 Feb 2011 10:57 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Spoiler: Mostrar
Has resuelto 3 situaciones casuales de un total de 20.

Has celebrado otra vez tu cumpleaños.

Has dado de comer a los peces para que no tengan hambre.

Has preparado un buen baño para el señor oso, en la planta de arriba.

Has roto las entradas de Alberta porque es mala, muy mala.


No he podido reproducirlo.
Hay dos maneras de conseguir cada uno de los dos primeros puntos, y dos maneras de conseguir el tercero, los he probado de todas las formas posibles, y el contador siempre suma punto y al final muestra cuatro situaciones resueltas. :roll:
A no ser que...

mobile("guerrero").cancelPending(); end();

¿Eso podría cancelar la suma de puntos en el caso de que coincidiera justo con la acción que provoca esa suma?

Tendría que ser que el contador de turnos iniciara una escena justo cuando el jugador acaba de resolver el puzle, de modo que parte de ese bloque se cumpliera y parte no. O sea, el puzle se pondría a true, por lo que se muestra al final como realizado, pero la suma no se realiza. ¿Es eso posible?

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 11:04 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5288
Ubicación: Coruña
La verdad es que no puedo entender muy bien lo que me preguntas porque no sé cómo has implementado el sistema para contar estas cosas. Deduzco por lo que cuentas que es algún update; pero sin saber cómo va, difícilmente puedo saber dónde está el error.

Sí te puedo decir que cancelPending() lo que cancela son órdenes de la cola de órdenes del jugador, así que dado que la actualización de los puntos no creo que sea una orden, no debería influir.

Y también te puedo decir que si el código que pone los puzzles a true es el mismo código que suma, no veo motivo por el cual se debiera descompensar la cuenta. ¿O es que lo que quieres decir es que en un update de tiempo pones el puzzle a true, y en otro update diferente sumas?

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 11:14 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Al-Khwarizmi escribió:
Y también te puedo decir que si el código que pone los puzzles a true es el mismo código que suma, no veo motivo por el cual se debiera descompensar la cuenta.


Exactamente es así, la instrucción que pone el puzle a true, y la que suma un punto al total, está dentro del mismo if y al mismo nivel, así que por lógica si una se cumple la otra también.

Otra cosa que puede estar pasando es que realmente se hayan resuelto solo 3 puzles, y que el fallo esté en la comprobación que muestra los puzles resueltos al final. Tengo ahí algunos "or" que pueden ser la causa del problema. Lo estoy mirando ahora. :)

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 11:31 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
jenesis escribió:
Al-Khwarizmi escribió:
Y también te puedo decir que si el código que pone los puzzles a true es el mismo código que suma, no veo motivo por el cual se debiera descompensar la cuenta.


Exactamente es así, la instrucción que pone el puzle a true, y la que suma un punto al total, está dentro del mismo if y al mismo nivel, así que por lógica si una se cumple la otra también.

Otra cosa que puede estar pasando es que realmente se hayan resuelto solo 3 puzles, y que el fallo esté en la comprobación que muestra los puzles resueltos al final. Tengo ahí algunos "or" que pueden ser la causa del problema. Lo estoy mirando ahora. :)


Bueno, si era eso ya está arreglado.
El problema era el siguiente:
Hay dos objetos y dos puzles distintos.
Con cualquiera de los objetos se pueden resolver dichos puzles.
El caso es que si un "puzle", se resuelve con uno de ellos, ése puntua y deja una propiedad a true que impide que vuelva a puntuar con el otro objeto. Digamos que el que primero llega se lo queda. :lol:

En la comprobación final, en uno de los puzles usaba esa propiedad, pero en el otro usaba dos propiedades una de cada objeto y se ve que según era el caso (se pueden dar 8 combinaciones), mostraba el puzle resuelto cuando en realidad no lo estaba.

Lo ideal sería saber si el jugador recuerda haber realizado esas cuatro acciones que muestra el texto. En el caso de que no, seguramente lo que ocurría es lo que pienso. Si por el contrario está convencido de que sí las realizó... pues... ya no sé qué pensar. :roll:

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 11:34 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5288
Ubicación: Coruña
¿Y por qué tantas complicaciones? Si hay una propiedad para marcar que el puzzle está resuelto, ¿por qué no se usa esa misma propiedad para contarlo al final? :o

Yo supongo que el problema será algo de eso que dices.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 12:25 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Al-Khwarizmi escribió:
¿Y por qué tantas complicaciones? Si hay una propiedad para marcar que el puzzle está resuelto, ¿por qué no se usa esa misma propiedad para contarlo al final? :o


Voy a hablar de "puzles", aunque en realidad no es la definición correcta.

El problema es que antes, la propiedad que marcaba un puzle resuelto pertenecía al objeto que lo resolvía.
Cuando la aventura se hizo más compleja me encontré con que...
Hay puzles que se pueden resolver con dos objetos.
Hay objetos que pueden resolver más de un puzle.
Hay puzles que se pueden repetir, pero solo puntuan una vez.

En el caso que nos ocupa, lo que hice fue comprobar que uno de los objetos lo tuviera a true, pero luego me di cuenta de que ambos lo podían tener a true. Entonces fue cuando creé una propiedad externa a ambos objetos que es la que controla ahora el estado del puzle.
Eso sí, me olvidé usarla como comprobador al mostrar la lista de puzles resueltos. Ahí seguía habiendo un "or" que comparaba ambos objetos.

¿Entiendes ahora cuando digo que se me ha ido de las manos? :lol:

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 12:31 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5288
Ubicación: Coruña
Bueno, eso es que el diseño del que partiste inicialmente para hacer el sistema de puzzles no era lo suficientemente flexible, cosa que ya te queda aprendida para la próxima vez... y para esta vez, pues quedará hacer correcciones puntuales como estás haciendo, qué remedio.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 12:41 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Al-Khwarizmi escribió:
Bueno, eso es que el diseño del que partiste inicialmente para hacer el sistema de puzzles no era lo suficientemente flexible, cosa que ya te queda aprendida para la próxima vez... y para esta vez, pues quedará hacer correcciones puntuales como estás haciendo, qué remedio.


Sí, y la verdad es que me alegro de que estén saliendo estos fallos porque así me sirven como experiencia de lo que no hay que hacer.

Mi próxima aventura no se puede permitir ninguno de estos fallos porque va a ser el remake de "El libro que se aburría", con multimedia, y ésa va a tener que entender latín, que el otro día la estuve jugando y me pareció un poco dura de oído. :oops:

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 16 Feb 2011 13:24 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5288
Ubicación: Coruña
Es una aventura más pequeña, y partes de mayores conocimientos, mayor práctica y los errores de ésta... así que malo será.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 9 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 1 invitado


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