Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

Proyecto Final - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 17 de mayo de 2026 por Marta V.

9 visualizaciones

Video sobre el proyecto final

Descargar la transcripción

Buenos días, yo soy Marta Villena Arevalo, haciendo aquí la presentación de, bueno, el vídeo, la presentación de mi proyecto final. 00:00:01
El proyecto final se llama Neverending Fight, y este es un proyecto estilo roguelike, que es de combate por turnos, 00:00:11
y que bueno, tiene sus pequeños gimmicks, que digamos, tonos dinámicos, con algunas estrategias simples, también hay arquetipos y tal. 00:00:20
A lo siguiente vamos a empezar primero con los objetivos 00:00:30
Para entender por qué se han hecho ciertas cosas de la manera en la que están en el código 00:00:34
Hay que tener en cuenta ciertos objetivos que he querido cumplir 00:00:39
Principalmente es el KISS, Keep it simple, stupid 00:00:44
Y el SOLID, mayormente por tema de mantenimiento de código 00:00:49
Luego hay otras más que también he querido usar 00:00:55
que es con la reusabilidad 00:00:59
porque hay un sistema en concreto del juego 00:01:01
que requiere de mucha flexibilidad 00:01:05
y obviamente al querer mucha flexibilidad 00:01:08
la reusabilidad es bastante útil 00:01:10
antes de ir al siguiente punto 00:01:14
estaría bien que sepáis 00:01:17
que esto es un mínimo viable producto 00:01:19
en otro sentido, tiene lo mínimo para funcionar 00:01:22
no habrá cosas que sean demasiado pulidas 00:01:24
Y es probable de que haya algún que otro bus que se me haya escapado 00:01:29
Pero lo principal, la estrella del rostro, se supone de que funciona 00:01:32
Bueno, ahora comenzamos con el aspecto de la dungeon 00:01:38
Que es el aspecto roguelike que tiene este juego 00:01:42
En este caso, las dungeons son una serie de salas interconectadas entre ellas 00:01:45
Por las que el jugador puede ir hasta llegar al nodo final 00:01:53
En este caso la forma en la que está estructurado es 00:01:57
Tienes un nodo del principio, un nodo final 00:02:01
Y luego en el medio tienes un montón de salas por las que el jugador puede ir 00:02:04
Estas salas se dividen principalmente ahora mismo por ocurrencias y combate 00:02:10
Las ocurrencias mayormente suelen ser diálogo 00:02:16
Y el combate te lleva a un combate, como es de esperar 00:02:19
Hablando sobre los eventos de las salas, ahora mismo la ocurrencia está un poco en desarrollo pero se puede más o menos intuir lo que se puede llegar a hacer con ellas teniendo en cuenta el sistema de eventos que he metido para ello. 00:02:24
Con lo que voy a centrarme un poco más en el de combate 00:02:44
En el nodo de combate o sala de combate 00:02:47
Pues te mueve al sistema combate, como es de esperar 00:02:50
Entonces, lo primero que hay que tener en cuenta con todo esto es 00:02:56
¿Qué es el sistema combate? 00:03:01
¿Qué es lo siguiente que vamos a hablar? 00:03:04
El combate se puede dividir en varios aspectos 00:03:06
Entre ellos están los turnos dinámicos 00:03:08
El combate simple 00:03:11
y las estrategias por equipos 00:03:13
básicamente 00:03:16
en el combate 00:03:18
tienes un equipo 00:03:22
de hasta 4 personajes 00:03:24
mínimo uno 00:03:26
en el que 00:03:27
con ellos vas a enfrentarte a un enemigo 00:03:29
como es turnos dinámicos 00:03:32
la velocidad es calculada 00:03:36
durante todo el combate 00:03:38
para así 00:03:41
Que si cambias la velocidad de un personaje o cambias la velocidad de un enemigo 00:03:43
Este puede afectar a quienes van antes o después 00:03:50
Pudiendo incluso en algunos casos surgir los llamados dobles turnos 00:03:54
Todos los personajes se pueden dividir fácilmente en básico, habilidad y definitiva 00:04:00
El básico puede ser usado siempre que quieras 00:04:05
la habilidad, no siempre 00:04:12
necesitas de algo llamado puntos de habilidad 00:04:14
que se consiguen con el básico 00:04:16
y luego 00:04:18
tienes la definitiva que esto 00:04:20
puedes activarlo en cualquier momento y 00:04:22
recibes lo que se llama un turno 00:04:24
de definitiva 00:04:26
esto es lo que viene siendo 00:04:27
el kit básico, luego 00:04:30
ya tienes otras cosas como 00:04:32
son las pasivas, las pasivas iniciales 00:04:34
que añaden 00:04:36
una estrategia 00:04:37
más al personaje para enriquecerlos como son. Los enemigos tienen más o menos lo mismo, 00:04:40
la mayor diferencia es que estos son controlados automáticamente por el juego. Estos tienen 00:04:53
también ataques básicos, habilidades, definitivas, como los personajes normales y pueden llegar 00:04:59
a tener pasivas, pasivas iniciales y del estilo. No siempre, pero puede pasar. 00:05:05
Y luego hay otro aspecto que se llama las arquitecturas de equipos, que lo que mayormente cambia es en qué equipos formas, con qué personajes y cuál es tu gimmick. 00:05:12
Qué gimmick viene siendo la estrategia principal. 00:05:27
Ahora vamos a hablar del guardado de la información. 00:05:32
La forma en la que se hace con la base de datos es que Unity tiene httpclient que hace una llamada al servidor, el servidor luego va a la base de datos, la base de datos devuelve los datos y el servidor devuelve a httpclient lo que está pidiendo. 00:05:36
Es mayormente eso, allí en la base de datos lo que mayormente se guarda son los datos de la partida 00:05:56
Debido a que estos son mayormente muy fluctuables y suelen cambiar bastante 00:06:02
En los scriptable objects he optado por meter las configuraciones iniciales de todo lo que viene siendo configuración 00:06:09
En este caso uno de los ejemplos que se me ocurren es el de los kits 00:06:18
Los que de los personajes como son estables no cambian a lo largo del tiempo 00:06:22
Pues es un ejemplo perfecto para meterlo con los scriptable objects 00:06:27
Al igual que la configuración inicial de un personaje 00:06:32
Las estadísticas con las que él comienza 00:06:35
Obviamente todas basadas en que están en nivel 1 00:06:38
Cualquier cosa que sea estable, que no cambie con el tiempo 00:06:41
Se usa el scriptable objects 00:06:47
Al contrario de la base de datos, que es aquello que siempre va cambiando, como son las partidas 00:06:50
A continuación vamos a hablar sobre los personajes 00:06:55
Los personajes están divididos en componentes 00:06:59
Los componentes cada uno representan una función en sí 00:07:02
Hay componente que es del kit que se encarga de todo lo que tenga que ver con las habilidades de los personajes 00:07:05
Hay otro en concreto que se llama Data, personaje Data, que se encarga de todo lo que tenga que ver con la información que cambia desde los personajes 00:07:14
A continuación vamos a hablar sobre las habilidades 00:07:25
Las habilidades hay que decir que tienen un mayor problema llamado de que tienen que ser demasiado flexibles 00:07:29
Para lidiar con el tema de la flexibilidad de las habilidades de un personaje y las arquitecturas que éste puede proporcionar, he decidido dividir las habilidades en efectos. 00:07:35
Cada efecto hace una cosa. Existen efectos de daño a un solo enemigo, daño a múltiples enemigos, meter bufos a múltiples enemigos, tal vez meter un tipo de estatus a uno mismo, incluso cosas como pedir una definitiva, un turno extra o adicionales. 00:07:49
luego se habla un poco más con ello ya luego hablaremos en concreto de qué hace alguno de 00:08:11
los kits de los personajes que hay y haré una pequeña demostración de lo sencillo que pueden 00:08:19
ser crearlos a continuación os voy a dejar aquí un vídeo muy bonito de cómo he estado haciendo 00:08:25
ciertos personajes vale en este caso voy a hacerlo de dos personajes dingo noodle y janoris cada uno 00:08:31
tiene su propio vídeo dejaré aquí y aquí con sus repetidos timers que están dentro del vídeo 00:08:39
luego los los hago más grandes y el de abajo lo mismo de esta forma podemos demostrar cómo 00:08:45
de rápido y fácil puede hacerse un personaje y de mientras tanto voy a explicar los personajes sino 00:08:53
la creación en sí de los personajes empezando por la creación de los personajes en resumen 00:09:01
También los scriptable objects se pueden crear a través de este menú yendo hacia personajes 00:09:07
o characters en este caso y dentro de ahí cogiendo las ability data. 00:09:13
En ability data te saldrá una buena pantalla en el inspector donde te ponen todos los campos 00:09:17
que puedas rellenar sobre dicha habilidad. 00:09:25
En estos casos puedes hacer cosas tan simples como poner el scriptable object de amaje y 00:09:30
Y en otros casos puedes llegar a hacer cosas más complejas como meter una habilidad data que se llama cada vez que hace cierto evento 00:09:35
y que esta habilidad data pueda cambiar una habilidad o haga ciertas cosas como un ataque adicional. 00:09:44
Mayormente se basa en eso y así de simple es. 00:09:52
Ya luego puedes meterle condiciones o efectos 00:09:55
Depende de lo que quieras 00:09:59
Y todos estos de aquí son configurables con el orden que quieras 00:10:02
El orden puede importar mucho dependiendo de lo que estés haciendo 00:10:08
Y no hay mucho misterio de esto 00:10:12
Ya que los vídeos ya se han terminado 00:10:15
Vamos a mirar el tiempo con el que he tardado en hacer los personajes 00:10:17
Sin tener que tocar ni una sola línea de código 00:10:20
he podido crear aquí unos personajes en unos tiempos bastante asumibles no son los mejores 00:10:24
debido a la dificultad de estos kits pero sí que es bastante asequible digamos después de esto os 00:10:32
voy a mostrar un pequeño clip de cómo es en el combate tras haber completado todo esto os 00:10:41
hablaré también un poco de algunas mejoras que se pueden llegar a hacer debido a la facilidad 00:13:33
con la que esto se puede implementar 00:13:37
sobre todo porque ya están casi implementados en el juego 00:13:40
el primero de todos es el de los escudos 00:13:43
es tan sencillo como meter un nuevo tipo de efecto 00:13:45
y que este efecto sea de escudos 00:13:51
lo tengo implementado en otro código 00:13:53
y por eso no lo tengo en el principal 00:13:55
debido a que no es funcional 100% 00:13:58
otra cosa que se puede llegar a meter son los estados 00:14:03
usando un state machine 00:14:06
ya que esto ya está casi implementado completamente en el juego 00:14:10
lo siguiente sería el behavior tree 00:14:14
que es mayormente para poder darle cierto comportamiento a los enemigos 00:14:17
en vez de que el automático simplemente haga una habilidad en concreto 00:14:23
esto está casi implementado 00:14:28
y muy probablemente en el futuro se vaya a implementar 00:14:30
Después de todo esto y de este pequeño salmón, os puedo decir que esta es mi presentación del videojuego que he estado haciendo, Neverending Fight. 00:14:34
No es tan extensivo como me hubiese gustado que fuese, pero es trabajo honesto y el trabajo honesto es valorable. 00:14:45
Con todo esto os diré muchas gracias por vuestra atención y con esto me voy pirando a volver a jugar y mejorar este código. 00:14:56
Idioma/s:
es
Materias:
Programación
Niveles educativos:
▼ Mostrar / ocultar niveles
  • Formación Profesional
    • Ciclo formativo de grado superior
      • Segundo Curso
Autor/es:
Marta Villena
Subido por:
Marta V.
Moderado por el profesor:
Lucia San Miguel López (lucia.sanmiguel)
Licencia:
Reconocimiento
Visualizaciones:
9
Fecha:
17 de mayo de 2026 - 20:02
Visibilidad:
Público
Centro:
IES FRANCISCO DE QUEVEDO
Duración:
15′ 11″
Relación de aspecto:
1.78:1
Resolución:
1920x1080 píxeles
Tamaño:
965.01 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid