4. Backlog
● Semana 1: Diseño de propuesta de juego, personajes, narrativa de juego
y búsqueda de referentes. Arte conceptual en bocetos Búsqueda de
herramientas y tutoriales para el proceso de montaje (Research)
● Semana 2: Diseño del nivel en papel. (Kishōtenketsu). Avances en
programación del movimiento de la horda.
● Semana 3: Avances en programación del sistema de torretas.
(Detección de Enemigos)
● Semana 4: Avances en programación del sistema de torretas.
(Shooting)
● Semana 5: Avances en programación del sistema de torretas. (Rangos y
tipos de torretas)
5. Backlog
● Semana 6: Avances en programación de tipos de torretas 2.
● Semana 7: Avances de programación de tipos de enemigos.
● Semana 8: Avances de programación de tipos de enemigos 2.
● Semana 9: Avances en programación del HUD.
● Semana 10: Avances en programación del menú y pantalla de inicio.
● Semana 11: Avances en programación del sistema de mejoras.
● Semana 12: Digitalización arte y conceptos del juego. Integración arte
digital-juego.
6. Backlog
● Semana 13: Digitalización arte y conceptos del juego. Integración arte
digital-juego 2.
● Semana 14: Digitalización arte y conceptos del juego. Integración arte
digital-juego 3.
● Semana 15: Audio y efectos sonoros, cinemáticas básicas opcionales.
● Semana 16: Revisión final del juego, Generación del ejecutable del
juego.
8. Sinopsis
Vive la experiencia de ser un monstruo de
película. Lucha contra la horda enardecida
del pueblo que busca invadir tu castillo,
haz uso de tus habilidades sobrenaturales
y equípate con torres inspiradas en los
clásicos de terror.
9. Referentes de juego: TD
Los tower defense (TD) son un subgénero
de videojuego de estrategia en el que el
objetivo es defender los territorios o las
posesiones de un jugador mediante la
obstrucción de los atacantes enemigos,
que generalmente se logra mediante la
colocación de estructuras defensivas en
su trayectoria de ataque o a lo largo de
ella.
10. Referentes de juego: Mecánicas
-Apartado estético.
-Mecánicas de
posicionamiento y
control de hordas.
-Relaciones entre
torres.
-Ritmo de juego.
-Diseño lowpoly.
-Adición de trampas y
problemas de estado
para enemigos.
11. Referentes de juego: Estética
● Paleta de colores.
● Diseño sonoro.
● Narrativa cómica y relajada.
● Estética y lore
general de los
personajes.
● Narrativa y
caracterización.
12. Diseño de nivel 1
Punto donde se ubican las torres.
Punto de llegada de los enemigos.
Punto de spawn enemigo
13. Diseño de nivel 2
Punto donde se ubican las torres.
Punto de llegada de los enemigos.
Punto de spawn enemigo
14. Diseño de nivel 3
Punto donde se ubican las torres.
Punto de llegada de los enemigos.
Punto de spawn enemigo
15. Concept art final de los enemigos
Monje
Sabueso
Aldeano
● Monje: Enemigo con la capacidad
de curar las tropas que se
encuentran en su radio de
acción, con poca vida y daño.
Velocidad media
● Aldeano: Enemigo estándar del
juego.
Aptitudes medias en vida,
velocidad y salud.
● Sabueso: Enemigo de gran daño
y velocidad, pero con poca vida.
16. Concept art final de los
enemigos
Panadero
Horda
enardecida
● Panadero: Enemigo con
mucha vida y daño, a
expensas de poca velocidad.
● Horda de aldeanos: 3
enemigos estándar del juego.
Aptitudes medias en vida,
velocidad y salud
multiplicadas por 3.
31. Códigos de programación
public class Vida : MonoBehaviour
{ [SerializeField] Slider healthbar; // se invoca un
slider.
public string htht = "";//se usa para
poder nombrar una escena cualquiera.
[SerializeField] float Daño = 30f; // se
define un daño.
public float heath; // se declara una
flotante para la vida.
// Start is called before the first frame
update
void Awake()
{ heath = 100f; // antes de iniciar la flotante tendrá un valor
definido.
}
void Start() { }
void Update()
{
healthbar.value = heath;
Debug.Log(heath); // se declara que el valor del slider
será igual al de la flotante heart.
if (heath <= 0)
Script de vida
32. Códigos de programación
{
SceneManager.LoadScene(htht);
// si heart llega a ser 0 se carga la escena definida.
}
}
public void OnCollisionEnter(Collision collision)
{ if (collision.gameObject.CompareTag("Enemigo"))
{ heath -= Daño;
}
//cualquier objeto que tenga este scripT en
caso de colisionar con un enemigo la flotante
heart será restada con con la variable daño.
}
}
Script de vida
33. Códigos de programación
public void Salir()
{
print("Saliendo del jugo");
Application.Quit();
}
//cualquier botón que posea este print hará que
la aplicación se cierre.
}
public class controlador : MonoBehaviour
{
public void cambiarEscena(string nombre)
{
print("cambio a la escena " + nombre);
SceneManager.LoadScene(nombre);
}
// una función que nos permita que una variable nombres
decida cuál será la escena próxima a cargar.
Cambio de escena.
34. Códigos de programación
public class MOVIMIENTOCAMARA : MonoBehaviour
{ [SerializeField] float speed = 8;
[SerializeField] string vertical = "Vertical", horizontal =
"Horizontal";
// Arriba se declararon 3 variables serializadas: una
velocidad en float y dos strings correspondientes a
movimiento vertical y horizontal
void Start() { }
// Ahora se procede por medio de las variables previamente
nombradas a declarar dos vectores3, que se moverán de
acuerdo al producto entre la velocidad previamente
declarada, una variable estándar de unity y un getAxis
void Update()
{ Vector3 speedvector = speed * transform.forward *
Input.GetAxis(vertical);
transform.position += speedvector * Time.deltaTime;
Vector3 speedvector2 = speed * transform.right *
Input.GetAxis(horizontal);
transform.position += speedvector2 *
Time.deltaTime;
} }
MOVIMIENTO DE LA CÁMARA
35. Preguntas
1. Cuantos referentes de mecánicas se mencionan
2. Cual es la única clase de enemigo que tiene una propiedad extra
3. Cuantos niveles de juego hay
4. Mencionar 2 tipos de torre
5. Como se llama el juego