emf31 / LastBullet

[ABP16] Shooter multiplayer
1 stars 0 forks source link

Entrega Hito 1 #4

Open Tonire opened 7 years ago

Tonire commented 7 years ago

LogoParadox

Postproducción Digital

Vídeo animación logo

Proyectos Multimedia

Entregables PM

Realidad Virtual

Bocetos

Videojuegos I

Multijugador en tiempo real

Trigger System

Diseño de requerimientos y funciones de red

Arquitectura de la IA

Sistemas de toma de decisión

Diseño técnico de funcionamiento del motor de red

En los entregables que exigen código existe un documento de texto instrucciones.txt donde explica dónde verlo (en qué rama, etc)

Videojuegos II

Diagrama de clases

Formato definición de niveles

Alpha del juego (resto de entregables)

Explicación de los entregables

lronaldo commented 7 years ago

Comentario Global

Evaluación de Entregables

Documento de diseño de sistemas de toma de decisión (8h - 0.73p)

Documento de diseño técnico de la arquitectura de la IA (5h - 0.45p)

Toda la lógica se realizará en la clase ​MachineState, el enemigo tendrá un objeto ​MachineState que ejecutará los diferentes estados y los cambios entre los mismos.

Esto debería estar diseñado en lugar de explicado en texto. De hecho, en el diagrama aparece una clase Enemy que tiene una asociación con MachineState en lugar de una agregación o composición, como el texto indica. Lo mismo es aplicable a los estados Anterior y Actual. Esto deberían ser agregaciones.

El bot enemigo tendrá un sistema de memoria que irá almacenando cuando ha visto a un enemigo, o cuando escuchó un sonido.

Estas son las cosas a las que no atiende el diagrama. ¿Cómo perciben los sonidos? ¿Cómo ven? No hay diseño para los sensores.

Además el bot enemigo dispondrá de un sistema de selección de objetivo.

Nuevamente, hablar de cosas que no se han diseñado, en genérico, en un documento de arquitectura, no tiene ningún sentido. Los documentos de arquitectura deben ser un reflejo directo de lo que se implementa. La implementación y este documento deben ser ambos reflejos de lo mismo. Alguien que obtenga estos diagramas debe ser capaz de implementar un sistema idéntico al vuestro. Esto aún no está a la altura.

Aún así, dada la baja cantidad en horas que habíais asignado a este item, considero que es válido como tal y será evaluado. Aún así, es extremadamente recomendable que mantengáis los diagramas vivos y los vayáis actualizando conforme implementáis. Los diagramas actualizados son una fuente muy útil de reflexión para diseño y añadido de características nuevas, así como para entender mejor cómo funciona todo y poder incluso depurar.

Diseño de requerimientos y funciones de red (5h - 0.45p)

Visualizar de balas en el cliente que se está ejecutando tanto de las que dispare el propio player como de las que disparen los diferentes enemigos.

Esto sería más lógico indicarlo en un item global como "funciones de información estadística" en el que definierais todos los datos concretos estadísticos que deben compartir servidor y clientes. Una lista bien estructurada y pormenorizada de datos, junto con sus necesidades de actualización, sería muy adecuada en este caso. Ahí agruparíais balas, rockets y granadas, por ejemplo, en datos de personajes, que podríais fácilmente estructurar. Así terminaríais requiriendo estructuras de datos que deben compartirse y mantenerse sincronizadas, por ejemplo. Eso os deja una funcionalidad de sincronización de estructuras de datos (u objetos) y una lista de requerimientos de sincronizador de distintas entidades, junto con los datos que deben ser sincronizados y sus necesidades particulares.

Aplicar un impulso a los enemigos que reciben el impacto de un rocket.

Igual que antes, la función debería ser "Aplicar impulsos a personajes" y podríais agrupar requisitos de tipos de impulsos y situaciones en las que son aplicados.

Este documento es muy mejorable. Se evalúa teniendo en cuenta las pocas horas asignadas, pero debería rehacerse con un contenido más apropiado.

Diseño técnico de funcionamiento del motor de red (5h - 0.45p)

Este entregable quedará como "No evaluado" a la espera de una nueva entrega.

Sistema de gestión de eventos (Trigger System/Event Manager) (50h - 4.55p)

Multijugador en tiempo real (110h - 10p)