Skip to content

Releases: El-AMPA/MMOTFG

Versión 3.0 - Multijugador y mejoras generales

30 May 18:22

Choose a tag to compare

Novedades

  • Se ha implementado el modo multijugador, que permite unirse a grupos creados por otros jugadores.

  • Se han corregido errores generales del framework para asegurar un experiencia de juego poco problemática.

Contenido

Esta release contiene:

  • Una build del proyecto compilado en la cual se pueden ejecutar juegos cambiando los archivos presentes en la carpeta Assets, tanto mediante el archivo .exe como mediante Docker, a través del archivo Dockerfile incluido.
  • Las carpetas de recursos del juego de los tres juegos que se realizaron como pruebas de concepto del framework, usables para incluirlas en los archivos de la build y jugar.
  • El código fuente de MMOTFG para los usuarios que deseen ampliar su funcionalidad.

Versión 2.0 - Creación de juegos enteros mediante archivos de datos y mejoras de usabilidad

18 May 17:58
677c3ab

Choose a tag to compare

Novedades

  • Se han implementado mejoras de usabilidad, entre las que se encuentran la adición de la posibilidad de añadir sinónimos para comandos,es decir, poder escribir “i” en vez de “inspect”, por ejemplo. Los mensajes de ayuda que mandan los juegos por defecto ahora contienen también hipervínculos que permiten al jugador pulsarlos para utilizar los comandos sin tener que escribirlos.

  • Ya es posible crear juegos enteros mediante archivo, no solo estando ya limitada esa posibilidad al mapa navegable. Mediante archivos
    de datos ahora se pueden crear los enemigos, los objetos que habrá en el juego y la información del jugador.

  • El jugador ahora puede subir de nivel. Todo el sistema de subida de nivel y experiencia es configurable también mediante archivos de datos.
    El diseñador puede decidir la cantidad de puntos de experiencia que se necesitarán para subir de nivel y los cambios en las estadísticas que se experimentarán al hacerlo.

  • El mapa ahora cuenta con variables de progreso, que se pueden activar para condicionar ciertos eventos,por ejemplo, tener que haber
    pasado por otro lugar con anterioridad, o hacer que no se vuelvan a repetir si se pasa varias veces por un mismo lugar. Todo este sistema
    se puede configurar también mediante archivos de datos.

MMOTFG 1.0

23 Mar 21:36
28017e1

Choose a tag to compare

Primera versión del motor MMOTFG. Permite hacer un juego RPG de un solo jugador al que pueden jugar varios usuarios en paralelo gracias a una base de datos que guarda el progreso de cada uno.

Características principales

  • Creación de mapa mediante archivo .json: El mapa del juego puede crearse mediante un archivo .json (ver assets/map.json) en el que se puede especificar el nombre del nodo del mapa, las conexiones a otros nodos y los nombres de las direcciones que conectan con ellos y los eventos que se desencadenarán al llegar al lugar, al inspeccionarlo o al irse.

  • Enemigos: Se pueden crear enemigos para el juego mediante una clase en C# que implemente la clase Enemy. Por defecto vienen definidos campos para la vida del enemigo, sus MP, sus ataques, los objetos que deja al morir y eventos programables para cuando recibe daño y para cuando muere.

  • Jugador, inventario y equipamiento: El personaje del jugador tiene 3 estadísticas por defecto: salud (HP), que determina el daño máximo que puede recibir antes de morir, puntos de magia (MP), que se gastan cada vez que hace un ataque que los consume y ataque (ATK), que determina el daño que hará a los enemigos con cada ataque. El jugador puede recibir objetos e inventario en su equipamiento que puede consumir de distintas formas (con los comandos /eat, drink, etc) o equiparse con el comando /equip. Por defecto hay 11 ranuras distintas para equipamiento (pies, cabeza, cinturón, etc) en las que solo se puede equipar un objeto que encaje en esa ranura al mismo tiempo. Al equiparse objetos, las estadísticas del jugador se verán alteradas de acuerdo con lo que haya configurado en los atributos del objeto equipable. Los objetos consumibles se pueden hacer con una clase en C# que implemente ObtainableItem y los objetos equipables con otra que implemente EquipableItem.

  • Base de datos: El proyecto está configurado por defecto para conectarse a una base de datos Firestore de Firebase, aunque podría conectarse a otro servicio reimplementando la clase DatabaseManager. La base de datos guarda el nombre del jugador, el ID de Telegram del usuario al que va asociado, el lugar en el que se ecuentra, el enemigo contra el que está luchando y sus estadísticas (si es que está luchando contra alguno), su inventario y sus estadísticas. Cada vez que un usuario interactúa con el bot, este realiza las acciones pertinentes con respecto a los datos de guardado de su usuario en la base de datos, lo que permite que los usuarios jueguen al juego en paralelo sin influir en la partida de los demás.

En este momento se puede hacer un juego únicamente cambiando los archivos de la carpeta de assets (map.json y los archivos multimedia que correspondan) y añadiendo los objetos y enemigos personalizados que se deseen mediante la implementación de las clases correspondientes en C#.

v0.5

02 Mar 11:11
399a880

Choose a tag to compare

v0.5 Pre-release
Pre-release

Primer concepto de infraestructura

Esta es una primera versión de la infraestructura de MMOTFG. El programa está conectado a una base de datos SQL, y se ejecuta mediante Docker Compose, cada cosa en un contenedor que se conecta con el otro mediante TCP dentro de la propia subred de Docker.

Con independencia de que esta estructura vaya a ser cambiada posteriormente, esta es una forma perfectamente válida y funcional de enfocar el uso del motor y se podría usar perfectamente si el usuario así lo decididera. Si esto cambia en el futuro será únicamente por cuestiones de comodidad.