Fichero Cambios 17/08/02 :: Aranarth He modificado los copyrights de todos los ficheros .py para cambiar definitivamente ambar por minë y arreglar un problema en la dirección de la FSF. A partir de ahora, cada fichero .py nuevo que se cree deberá incluir al comienzo el fichero copyright.txt 17/08/02 :: Aranarth Ahora es posible ser un Maia si la clave elejida por el personaje jugador coincide con aquella escrita en el fichero clave_maiar.txt. Esto reporta diversas ventajas ya que hay comandos sólo accesibles a los Maiar. 17/08/02 :: Aranarth Se ha añadido el campo 'clave' a la creación y recuperación de personajes. 17/08/02 :: Hirunatan Arreglado el tema de carga de objetos. Ahora ya se cargan correctamente todos los atributos, y se consolida la versión 1.0 del sistema de objetos. Además, si existia algún objeto corrupto por ahí, ahora se resetea automáticamente desde el fichero de descripción en cuanto alguien lo +coge. Actualizados todos los ficheros de descripcion de objetos. 16/08/02 :: Hirunatan Ahora, al leer la descripcion de salas y objetos se compactan todos los espacios de cada item (o sea, si hay más de un espacio consecutivo se elimina, y se deja sólo uno). Terminado el sistema de coger y dejar objetos. Ahora los personajes tienen un atributo mochila y otro cuerpo (para los objetos que se ponen). Actualizada version de personajes a 1.2, los personajes antiguos se convierten automáticamente. Funcionan los comandos +coger, +dejar, +examinar y +esconder (todavia falta +poner, +quitar y +usar). Modificada sala posada-01 y algunos objetos, para probar. La carga de objetos en objeto.py no está bien, ahora está a caballo entre la versión antigua y la nueva del sistema de objetos (de hecho ni siquiera contempla el número de versión). Esto hay que terminarlo. Probablemente habrá que borrar los ficheros del directorio salas/, porque algunos objetos estaban mal leidos. Se puede dejar el limbo, para que no se borren los personajes. 12/08/02 :: Aranarth Incorporado el módulo de PNJs desarrollado por Diego "Hizgael" con un pnj de pruebas en el área poblado llamada 'tutora'. Nuevos comandos: +decir , +[p]reguntar por para interactuar con los pnjs. 29/07/02 :: Aranarth y Hirunatan Guía del colaborador 1.0. Especificaciones de los objetos y las salas 1.0. Mejoras generales en la apariencia de Minë. Múltiples comandos en una sola línea. Área de prueba seroth. versión 0.2. 03/07/02 :: Aranarth Nuevo formato de fichero de objetos. Arreglados algunos fallos. Se han borrado/modificado los ficheros que apuntaba a objetos antiguos. Creado espada01.xml, un ejemplo de objeto nuevo. 22/05/02 :: Hirunatan Añadidos un par de comandos: +ip y +area, que me vienen bien para unas cosas mias, y pueden ser útiles para otra gente. 08/05/02 :: Hirunatan Varios cambios en el formato de las salas, para incorporar algunas sugerencias que había pendientes en la lista de correo. Modificado el documento como_escribir_una_sala.txt para reflejar todos los cambios, y creado script actualizar-desc-salas.py para actualizar automáticamente los ficheros de descripcion de sala. La versión no se incrementará a 1.1 hasta que esté terminado el tema de puertas. - Los títulos de salas y algunas otras descripciones ahora deben incorporar el artículo, para evitar que salga "Estás en el/la camino de....". He cambiado dialogonormal.py. - He mejorado el sistema de usar una palabra en vez de una dirección (norte, sur, etc.) para moverse por salas. Ahora se puede usar también, en cualquier momento, la primera palabra de la descripción de una salida, ignorando artículos. Por ejemplo, ante la salida "Al norte ves un camino oscuro" puedes escribir +camino para ir por ahí. Si se quiere usar otra palabra, se pone entre corchetes ("al sur ves un estrecho [tunel]"). He cambiado el fichero utils.py. - Un personaje que no pueda ver una salida por su dificultad, podrá cruzarla si sigue a alguien que si pueda. - He terminado de definir el tema de puertas, cierres y puentes levadizos. De momento sólo lo he descrito en como_escribir_una_sala.txt. Falta modificar el DTD y el fichero sala.py, y luego implementar la funcionalidad en personaje.py o dialogonormal.py. Hay que repasar todas las descripciones de salas para retocar los títulos de sala y las salidas, poniéndo artículos en minúscula. Esto no lo puede hacer el script, hay que hacerlo a mano. Tambien he empezado a definir la funcionalidad de ponerse y quitarse objetos de encima los personajes. En la clase Personaje he definido dos variables nuevas: mochila (para todos los objetos que cojas) y cuerpo (para los que llevas puestos). He añadido su descripcion a la cabecera de la clase, y he creado unos pocos metodos para manejar ambas variables. Esto asume que se van a añadir al fichero de descripcion de objetos los cambios que sugeri en el mail con fecha 19 de abril en la lista mine_ste. Todavia no esta reflejado en como_escribir_un_objeto.txt. 22/04/02 :: Hirunatan Desde ahora, al cambiar un fichero de descripción de sala, el programa comprueba la fecha de modificación del fichero y lo recarga automáticamente, sin necesidad de borrar el fichero de salas ni reiniciar Minë, y sin que se pierdan los personajes u objetos que pueda haber en la sala. 21/04/02 :: Hirunatan Activada funcionalidad de creación y borrado automático de objetos, al entrar un personaje en la sala (segun el atributo "probabilidad"). No se verifica si el personaje ya había entrado antes o no, creo que no es necesario, al menos de momento. 19/04/02 :: Hirunatan Activada funcionalidad de volumen de personajes, objetos y salas. Ahora no se puede entrar en una sala si está llena de gente o de trastos. Creada una sala "pozo estrecho" junto al camino que lleva al poblado, para probar. 02/04/02 :: Hirunatan Terminada funcionalidad de compañías. Añadidos comandos "seguir" y "noseguir". 27/03/02 :: Hirunatan Preparada clase personaje para crear compañias. Avanzada versión a 1.1. 25/03/02 :: Aranarth Paso de dos listas de objetos en sala a una sola. Los comandos de dejar, coger, examinar, equipo y mirar han sido parcial o totalmente reescritos. Primeros pasos para el aprovechamiento de la información contenida en la lista de objetos de sala. 17/03/02 :: Aranarth He movido las funciones de coger y dejar objetos a sala.py convirtiendo éstas en métodos de instancia. En dialogonormal.py quedan ahora dos comandos simbólicos que llaman a los métodos. He aprovechado para reescribir mejor estas funciones añadiendo otra función llamada resumir_objetos que devuelve una lista de objetos empaquetados. Además, he añadido un nuevo comando muy útil llamado mirar resumido '+mr' que ejecuta mirar pero sin escribir la descripción de la sala. 13/03/02 :: Hirunatan He reescrito la parte de conectar y desconectar InterfazPJ con los PJ, y mover estos del/al limbo. He colocado bastantes aserciones para que si el código es correcto nunca haya inconsistencias; he blindado el código con "try...except" para que en caso de casques se mantengan siempre las invariantes; he protegido la carga de salas para que si un pj queda colgado fuera del limbo, se le mande allí al cargar la sala, y si un pj se pierde en el limbo sin salida, se le devuelva a la entrada cuando un jugador lo capture. 12/03/02 :: Aranarth He añadido el comando +idioma que asigna un valor al atributo idioma_base del personaje. idioma_base es la referencia para el habla, el susurro y el grito. He hecho los cambios oportunos en los ficheros afectados. Modificadas algunas salas. Versión 0.1.18 lista para el público. 09/03/02 :: Hirunatan He sincronizado el manual y la clase sala.py con respecto al atributo maximo de un objeto. 04/03/02 :: Hirunatan He dividido la clase InterfazPJ en varias clases DialogoXXX, porque se estaba volviendo demasiado enorme. InterfazPJ sigue existiendo, pero ahora delega casi todo su trabajo en el dialogo que corresponda. Aprovecho para introducir una nueva norma de diseño del interfaz de las clases: distinguir métodos públicos / privados (con __) y poner todos los atributos privados accesibles si es necesario con métodos de acceso. 27/02/02 :: Aranarth He incorporado los invariantes a objeto.py (falta que lo revise Hirunatan) y he ampliado los comandos relativos a objetos. Ahora nadie puede coger algo que no ve, se pueden esconder los objetos además de poder dejarlos a la vista y es posible examinar un objeto del equipo del personaje. 21/02/02 :: Hirunatan He modificado el fichero connection.py para que al enviar un texto que ocupe más de una línea (tal como ocurre con las descripciones de las salas), lo parta a 79 columnas y respetando siempre las palabras completas. Afecta también a enviar el logo y los créditos. 19/02/02 :: Aranarth He empezado a modificar el asunto de los objetos en las salas. Ahora sala.objetos contiene los propios objetos aparte de informació extra que no atañe al tipo de objeto en sí sino a las circunstancias de éste en esa sala. Asimismo empiezo a cambiar funciones como mirar, coger y dejar.