| Descargas | F.A.Q. | Artículos | Screenshots | Comunidad | Archivo | Foro | English Info | Acerca >

Noticias Julio 2002


27/07/02
- He estado sudando tinta china para poder cerrar esta beta. No os podéis imaginar la de problemas y errores laterales (los que suceden cuando solucionas uno anterior) que han aparecido. El problema es que me han venido todos los errores de golpe al no estar creando un juego, sino un motor. Ahora que me he puesto con betas que usan el script y que ponen el motor a trabajar con situaciones "reales", es cuando me he encontrado con los errores típicos en cualquier etapa final de un desarrollo.

- Bueno, yendo más al grando, os comento que la nueva beta ya la está subida (podéis descargárosla en la sección de descarga). Es la más grande de todas cuanto he subido y el jueguecillo completa lo que había en la anterior beta, es decir, ahora ya sí que se podrá bajar a la guarida. Hay de todo un poco. No me he podido detener a realizar grandes diseños ni florituras debido a la falta de tiempo, material gráfico y herramientas visuales que, de nuevo, es de lo que más adolece, por el momento, este motor (como os podéis imaginar, donde más se echan en falta es en el proceso de diseño de un área). De todas formas, yo creo que la beta está bastante bien. Sigo con el estilo desenfadado para la misma, porque si encima de contar con tan poco elemento gráfico nos ponemos épicos, apaga y vámonos :o).

- Desde el punto de vista de las novedades, se añaden más elementos gráficos al personaje de la anterior. Ahora ya se le ve correr de forma mucho más realista (para poder alternar entre correr y andar, basta con que pulséis la tecla SHIFT). También hay una pequeña animación mostrando al personaje hablando en el retrato (para ello, escoger el primer perfil que se os ofrece en la etapa de creación del personaje). El caso es que Crisol soporta animaciones también en el retrato pero nunca hasta ahora las habíamos puesto. Pasa igual con las sombras. Crisol también trabaja con sombras pero no tenemos material gráfico y para poner algo muy cutre, mejor no. Todas las novedades gráficas de esta beta, en lo referido al personaje, siguen siendo de Manuel Moreno y Marcelo Galán en lo relativo a las pantallas renderizadas de fondo. Algunos tiles y elementos de decoración pertenecen a un set de tiles gráficos gratuitos, creados por ZeroSum Software.

De todas formas, la gran novedad es el sistema de combate. Al fin se va a ver funcionando. Me ha dado algunos problemas desempolvarlo, ya que desde hacía muchos meses no le ponía en funcionamiento. Afortundamente creo que ya funciona bien. Quiero que quede muy claro que Crisol NO IMPLEMENTA ningunas reglas de combate ni ningún tipo de inteligencia artificial. Es el diseñador quien se tiene que programar los scripts. Yo he creado un sistema de combate muy simplón, basado en los "libro - juegos" tipo "Lucha Ficción" o "La Búsqueda del Grial" (¿alguien ha dicho Pip?), asi que todo queda en manos de la persona que implemente el juego.

En la carpeta "Fuentes" de la beta, veréis los archivos de definición de datos y scripts que he diseñado para crear el mini juego. Me quedé bastante asustado cuando ví la cantidad más que considerable de scripts que creé. La verdad es que es realmente estupendo contar con soporte script para diseñar juegos ahora bien, haciendo estas betas te das cuenta el enorme trabajo que tiene que suponer realizar un juego de verdad desde el punto de vista de la creación de scripts, diseño de secuencias intermedias, etc.
Si alguien echa un vistazo al código fuente de los scripts, que sepa disculparme, pues algunos de ellos los hice demasiado rápido y con el ánimo bastante agotado. En consecuencia son muy mejorables en cuanto a estructura y, sobre todo, optimización. Esto último es importante pues cuanto menos se haga trabajar a Crisol para hacer una cosa, más rápido será el resultado en el universo de juego.

- ¿Y ahora qué?. Buena pregunta. Ahora me voy a poner como loco a repasar de nuevo la documentación. Han habido algunas cosas que han cambiado (para mejor) y otras que se han añadido. Sobre esto último de añadir, decir que CrisolScript ha visto aumentado de forma espectacular los métodos disponibles y algunos de ellos han modificado su funcionamiento y/o formato. Una vez acabe de dar los retoques en la documentación, implementaré los pequeños apuntes que tengo en el código de Crisol y en las herramientas (las cuales prometí subirlas hace tiempo, pero me temo que hasta que no esté todo cerrado, no podré).

Mi intención es tener una versión definitiva de Crisol, la que presentaré como proyecto fin de carrera, antes de que acabe el mes de Agosto. Esa versión podrá tener problemas, no lo descarto, pero será la versión que presentaré y, por lo tanto, las ediciones siguientes ya se irán actualizando según la popularidad que alcance el motor, mi propio tiempo disponible (que después de septiembre pasará a ser nulo durante una temporada indefinida) y el interés de la gente que pueda utilizar Crisol (¡si es que hay alguien interesado!).

- Por el momento poco más. Agradecería encarecidamente que cualquier problema o comentario me lo hagáis saber, bien en el foro o bien a título personal. Durante los días 6 al 13 no estaré localizable; los utilizaré para despejarme la cabeza, que falta me hace con tanto código.


18/07/02
- Actualizo para comentaros que sigo trabajando en la siguiente beta y que ya estoy muy cerca de poder publicarla. Al carecer de herramientas visuales, tardo más de la cuenta en terminar mis diseños si bien, eso no es lo que realmente hace que tarde más; el problema es que, actualmente, Crisol se halla en etapa de test y hay diversos errores o arreglos que hacer que sólo se ven mediante la construcción de betas como la que estoy haciendo. Por todo, la publicación de la siguiente beta es inminente pero no puedo dar el día exacto en la que la pueda subir. Os muestro una captura de la misma:



Esta será la beta más larga de todas y tendrá un inicio y un final. El inicio será el mismo que el de la anterior, esto es (lograr introducir al personaje en la la guarida de "Lord Pip").

- El pasado 15 de julio pude ir a ver a mi director de proyecto. Estuvimos hablando de añadir pequeños elementos a la documentación actual para mejorar la lectura de la misma, sobre todo en cuanto a imágenes. De todas formas, hay algunas cosillas que se me pasarón de incluir y otras que tienen que ser corregidas. Estos últimos casos son muy puntuales, así que todo lo que hay ahora sigue valiendo a un 99%.


10/07/02
- Siento no haber actualizado antes. Tenía en mente hacerlo durante el fin de semana para subir las herramientas ya definitivas pero ya sabéis como es esto. He encontrado problemas a la hora de revisar el sistema de combate y además me dí cuenta de que hacían falta unos pocos métodos y funciones más para CrisolScript. Esto también afecta a la documentación, que deberá de recoger dichas novedades. De todos modos, todo esto que os comento no supone un gran retraso, sigo con la idea de intentar sacar la siguiente beta con combate muy pronto. Idealmente antes del 15 de julio, que es cuando volveré a ver a mi director de proyecto. También Manuel Moreno "Dracke" está trabajando en alguna animación extra para la cara del personaje (Crisol soporta que se puedan construir retratos con animación y cambiarlos desde CrisolScript, pudiendo hacer que se muevan los labios cuando el personaje hable o que la cara muestre los daños causados, etc). La siguiente beta será una continuación de la anterior, es decir, se podrá ahora descender a la guarida y ahí tendremos que localizar al personaje con el que lucharemos.

- El sistema de combate ya responde de forma más o menos aceptable (es posible que haya casos en los que el motor pueda quedar en estado de error, pero trabajando yo sólo de "tester" es muy complicado tener conocimiento de todas las situaciones). El caso es que, como sabréis los que hayáis echado un vistazo la documentación, Crisol no implementa ningún tipo de comportamiento por defecto para las criaturas con las que el jugador luche. Toda la inteligencia de las mismas se ha de programar vía CrisolScript "a pelo". De esta forma, cuando le llega el turno de combate a una criatura, se ejecuta un evento llamado OnStartCombat. En él se deberán de programar todas las actuaciones que la criatura tome durante su turno de combate. Cuando se termine de ejecutar dicho evento, se pasará de turno automáticamente.

- Tal y como puse en un post del foro, contestando a Seryu, el combate en la siguiente beta se basará, sobre todo, en reglas descriptivas. Es decir, el enemigo persiguirá al jugador y le intentará golpear (siempre y cuando no esté herido) pero a la hora de mostrar la acción de golpear sólo mandaré por consola un mensaje descriptivo, ya que aún carecemos de suficiente material gráfico (esto no es del todo cierto, ya que el personaje principal cuenta con animacion de ser golpeado).

Para implementar las reglas de combate, he definido tres atributos en las criaturas: la fuerza, la defensa y la destreza. Cuando una criatura A ataque a una criatura B, se calculará el porcentaje de acierto lanzando un dado y sumando su resultado a la destreza de A. El dado lanzado tendrá 6 caras. Por otro lado, B hará lo mismo, pero utilizando un dado de 3 caras (cuando hablo de lanzar un dado, realmente hablo de obtener un valor aleatorio entre 1 y 6 y entre 1 y 3 respectivamente, usando CrisolScript, la función APIRand para mas señas). Con los valores obtenidos comprobaremos si A tiene un valor superior a B. Si es así, A golpeará a B. El daño causado se obtendrá de la diferencia entre la fuerza de A y la defensa de B. Si la diferencia es superior a 0, A habrá logrado dañar a B. Naturalmente, la fuerza y la defensa de las criaturas se podrá ver modificada equipando armas y/o armaduras.

Este sistema de combate que yo he implementado, usando CrisolScript para la siguiente beta, es muy sencillo y básico. Cualquier otro diseñador podría crearse el suyo propio con mucha mayor complejidad y riqueza.

La verdad es que muchos detalles de funcionamiento de Crisol deberían de existir en tutoriales completamente desligados de lo que es la documentación oficial del motor (la que presento como proyecto fin de carrera). Todo dependerá de cuánto se use Crisol y de lo que llegue a gustar pues, una vez que le de el visto bueno de "acabado" (independientemente de que puedan existir pequeños errores sueltos), yo dispondré de muy poco tiempo para seguir trabajando en el mismo y por ese mismo motivo, espero que la gente que de verdad haga cosillas cree algún que otro tutorial, de forma altruista, comentando cómo hizo esto o aquello, para que la gente que quiera utilizar Crisol no tenga que pelearse con toda la documentación oficial.

- Antes de despedirme hasta la siguiente actualización, en la que espero suba ya la nueva beta, mando mis felicitaciones a RRC2Soft, que ha cumplido su tercer aniversario. Esta página, que supongo conoceréis, se centra en mantener una base de datos sobre proyectos de juegos de rol y motores de grupos hispanos, así como en publicar tutoriales relacionados con el tema de la programación de juegos de rol y mantener información sobre el juego PORTAL, que está siendo desarrollado por ellos. Podéis localizarles en http://www.rrc2soft.com.


2/07/02
- Finalmente he tardado menos de los cuatro días, que apuntaba en la última actualización, en tener una primera versión presentable de todo lo que es la documentación final de Crisol. Lo he subido todo en formato PDF. He separado por temas el documento con el fin de que sea mucho más fácil consultarlos (y editarlos). Como siempre, todo está en la sección de descarga. Los manuales de uso de CrisolScript, CSCompiler, CrisolBuilder y CPAKTool así como de Crisol durante la ejecución de un juego, están ahora en los anexos al documento del proyecto. La parte central está decidada al análisis y diseño de Crisol y del resto de las herramientas. También hay apartados sobre organización de la implementación y pruebas si bien, no las he dado tanta importancia ya que son muy genéricas. Por último, he incluido la bibliografía. Creo que está casi todo lo que he consultado pero tengo que darle un segundo repaso ya que es más que probable que me haya olvidado más artículos sueltos.

- Ahora me pondré a terminar de repasar las herramientas de apoyo para subirlas cuanto antes (espero que antes de que finalice esta semana) para poder centrarme en la terminación de Crisol como proyecto presentable en Septiembre. Naturalmente, lo prometido es deuda y, una vez que presente el proyecto a finales de Septiembre, subiré también el código fuente (el de Crisol y el resto de herramientas que en que se apoya). De todas formas, con la documentación actual y la siguiente versión de las herramientas, todo aquel que se quiera animar a realizar editores visuales para Crisol ya no tendrá ningún problema. Recordar que las herramientas son en línea y desde los editores visuales únicamente se deberá de recabar la información para llamar a estas herramientas. Quizás me anime a hacer "algo" si acabo con tiempo (¡viva la utopía! :o)