Consulta Unity, busco tutorial RTS

Buenas a todos,

No sé si alguien podrá saber de este tema, o conocer un poco. Estoy buscando algún tutorial que te enseñe a empezar a crear un juego RTS en la plataforma Unity, es algo que llevo mucho tiempo queriendo hacer y ahora que llevo una temporada metido en Unity me gustaría dar un paso adelante con este proyecto. El problema es que en juegos RTS no tengo ninguna experiencia (haciéndolos, no jugándolos jeje) y ando buscando tutoriales o algo que me ayude a empezar. He buscado mucho pero los que encuentro o cojean por partes, o todos tienen Assets importados y ya empiezan con mucha base, por lo que buscaba algo de este tema pero empezando de cero.

No sé si alguien puede saber o echarme un cable al respecto, yo mientras seguiré buscando jeje.

Gracias y un saludo :)
[beer]
1- si necesitas tutoriales para un genero, igual es mejor que te hagas un curso en condiciones de programación y te evitas estas cosas
2- reporto para que te lo muevan al foro de desarrollo

saludos
De acuerdo con el compañero.
Y añado ¿Por qué no te haces proyectos pequeños con cada mecánica suelta o versiones muy simples de ella?

Igual tienes que hacer un par o tres juegos más light antes de meterte al rts. No puedes pretender usar tutoriales para todo, especialmente un juego grande
Buenas, gracias por vuestros consejos.
El tema de que mecánicas más sencillas y ejemplos más lights ya controlo, pero meterme a un RTS así a primeras me pilla muy verde, por eso la idea de empezar con algo que me diese unas pautas de por dónde empezar.

De todas maneras seguiré vuestro consejo, intentaré ir haciendo pinitos a mi aire, a ver cómo voy haciendo, y a partir de ahí a ver si consigo ir haciendo algo.

Gracias y un saludo!
@luischo

El RTS tiene dos dificultades añadidas muy importantes y que requieren un nivel de matemáticas y programación importantes:

1.Pathfinding de las unidades.
2. IA.

1. El primero "puede" gestionarse con más o menos dificultad si el juego es en 2d o en 3d, en función de los tamaños de los mapas, número de unidades y algunos parámetros más de menor peso. Pero vamos, da por hecho que suele ser un dolor de huevos muy muy bestia. Como todo, puedes hacer un copy&paste de A*A sin entender nada, otra cosa es que se vaya a adaptar bien a tu juego.

2. Este puede evitarse si el juego es full multijugador. Pero a su vez añade la complejidad del multi. Igualmente la IA, aunque no tengas máquina, siempre está presente como por ejemplo en el ataque automático de tus unidades al detectar enemigos. Que si lo piensas parece una trivialidad pero que en la práctica puede dar problemas y bugs.

En general, de todos los géneros clásicos el RTS es el más difícil de programar porque engloba todo el resto. Tienes colisiones, generación dinámica de objetos, pathfinding, IA complejas, un trabajo de optimización muy importante y muchos patrones de diseño que necesitan de una muy buena base en OOP: factory, bridge, strategy o el patrón observer son el pan de cada día en este género.

Yo practicaría y practicaría. Y sé que va a ser impopular lo que voy a decirte, pero todas esas mecánicas individuales deberías tratar de hacerlas funcionar en una framework gráfico como Monogame, LibGDx, SDL, etc. Es decir, está muy bien crear un cubo, darle a un checkbox que pone "Collider" y que de golpe haya colisiones. Pero es importante entender las bases y más si quieres hacer algo cuyo tutorial no vas a encontrar en youtube. Por ejemplo, sabrías triangular polígonos irregulares convexos? Cuando es mejor usar cálculos Manhattan vs Euclideos?
Lo del pathfinding no debería ser muy difícil, en teoría sería solo aplicar el algoritmo de Dijkstra.
Con Unity cuando lo instalas tiene tutoriales a dar y regalar en la herramienta de instalación... no debería ser dificil que encuentres uno.
Sobre el pathfinding unity ya tiene todo hecho con NavMeshes... tienes tutoriales en youtube.
Sobre la IA, al menos en un primer momento yo usaría máquinas de estados y/o selección aleatoria. Luego siempre lo puedes mejorar con una IA como dios manda.
Sobre multijugador, al menos en un primer momento yo pasaría de ello completamente, y más con Unity que es un desastre en ese sentido. Como la arquitectura del juego ya te la va a definir Unity, tampoco harías nada especialmente distinto. Como mucho si quieres piensa en como programarías todo para multijugador y tenlo en cuenta, pero sin hacerlo.
6 respuestas