En la universidad, este semestre estaré trabajando en 3 proyectos distintos. Uno de ellos ya lo conocen bastante bien, pero iniciaré otros desde 0. Les cuento sobre este proyectito que no tiene nombre aún:
Mi equipo está conformado por 4 programadores y 0 artistas... Lo que significó todo un lío el ponernos de acuerdo en qué hacer. Pues había casi total libertad creativa al no depender de ningún artista presente en el equipo.
Como requisitos, me pidieron que sea un proyecto hecho en Unity, que esté optimizado para portear a Xbox Series; que sea compatible con inputs de PC, pero con los controles diseñados para jugar en Gamepad; que usemos recursos gráficos ya existentes (NO originales) y que sea ✨marketeable✨ porque también lo estaré trabajando en mi clase de marketing.
Como fun fact: nos mataron horrible porque no nos avisaron de eso con tiempo.
Para mi clase de Desarrollo para Consolas, donde tengo que entregar el prototipo, nos pidieron hacer la propuesta del juego en menos de 2 horas basándonos en los requisitos técnicos que se nos pidieron. Y dos días después, nos dijeron que lo trabajaríamos en las clases de Márketing y Modelos de Negocios 💀 por lo que modificamos un poco la idea, pero no pudimos mover mucho que digamos...
A raíz de eso, casi por obligación de la estrategia de márketing, lo tuvimos que diseñar pensando en que sea multiplayer, aunque mi profesor de la clase de Consolas no está muy contento con esa decisión XD
Al menos en la clase de Modelo de Negocios sí nos dieron la libertad de decidir trabajar en otro proyecto... De ahí surgió la idea del 3er proyecto que trabajaré, quizá el prototipo no sea tan sólido, pero siento que es una idea muy cool. Espero poder compartirla pronto por aquí 😎
Anyways. Cada semana tendré que estar reportando avances en clase. ¿Por qué no compartirlos aquí también?
# Avances de la Semana 1 - Creé un sistema para poder utilizar el Input System nuevo con múltiples Inputs. Puedo controlar y distinguir cuando un jugador quiere utilizar el teclado. Me permite 3 posibilidades: bloquear totalmente los inputs del Teclado para que solo usen Gamepads, hacer que un solo jugador maneje su personaje solo con el Teclado, y la posibilidad de que un jugador pueda intercalar entre Teclado y Gamepad.
- Hice un prefab de jugador que puede ser poseído por inputs reasignables, permitiendo que todos los jugadores reutilicen el mismo objeto con ligeras modificaciones. De esta forma, es más fácil escalar las funciones del player; será posible que durante el gameplay los usuarios puedan cambiar de controles; evita errores que puedan surgir con la desconexión de algún mando; y sienta las bases para poder llevar el juego a ser Multiplayer Online (de momento, lo haremos en local por requisito de la clase).
- Creé dos scripts que simulan el "Event System" y los botones que vienen por defecto para la UI en Unity, para que exista la posibilidad de reconocer y aceptar distintos inputs. (También permite intercalar entre Teclado y Gamepad para el cursor del jugador 1).
- Hice la máquina de estados para manejar la Pausa sin TimeScale y lo implementé en el player. Conserva la fuerza que trae su RigidBody y se la devuelve al darle Play.,
- Hice que el jugador pudiera caminar en rampas o escaleras sin que la pendiente influya en su velocidad.
- Creé un prefab de Player para producción, ya que, el que había hecho para aceptar múltiples inputs depende de otros sistemas que se generan en otras escenas. Así podremos hacer testing mucho más rápido.
Esta semana me voy a hacer el misterioso. **¿Pueden adivinar qué tipo de juego será?** Quiero saber qué se imaginan jajaja.
!PIZZA 🍕
$PIZZA slices delivered:
@gr33nm4ster(1/15) tipped @marisky
Join us in Discord!