During this week, I attended several small brainstorming meetings. I helped flesh out our game's ideas with other participants and helped clarify some of the more concrete and technical details of the project.
Once I had developed a solid grasp of the base mechanics, I went ahead and started creating my part of the demo for our game. I created a balance of a mix of early level design and programming that allowed for expansion of the project from my partners. First I created an attack class that enables the team to define attacks as ScriptableObjects. That way, each attack is easy to create and manage . Next, I created a prefab for a UI button that queues a set attack, if ammo is available, and a prefab for a physical button that reloads ammo for a set attack. Finally, I added an initial prototype for the timer based combat and pilot UI that only one user can use at a time.
My goal for this week was to provide a solid jumping-off point for our team, and ensure the project can be easily integrated with other mechanics under development, such as multiplayer and character movement.
This week our team was able to nail down a more rigid idea of the mech and engineer gameplay. I focused on implementing the battery system in our mech which allows the movement, placement, and charging/draining of battery objects.
This week I worked on creating the "repair system" in which the player can hold down on broken parts of the mech and they become repaired. I created a framework in which other systems can call on certain repair prefabs to damage them when the mech gets damaged. Unfortunately, this broke some of the input since now holding the interact button triggers the interact constantly. More work needs to be done on the repair system.
In the past weeks, we refactored the battery system in the GDD to only have "charged" and "uncharged" states. This week I reworked the code to more closely cohere to this system. I also added the ability to input multiple batteries at a time, at a charger, they get a full charge after a given amount of time. When depleted, it depletes from left to right. More work is needed to be done with ironing out the details but the system is ready to be connected to other aspects of the game.
Tweaked the battery chargers and repairs to fit into our newer scene.
Added a debug UI that allows the user to adjust the player's public variables in game.
Added a player health station prototype. It consumes a battery or a number of batteries depending on how much health the player has.
Added a location indicator script that works with Hyungwoo's mech manager to find player's location in the mech and display it on the UI. Also added some signage around the mesh.
Added a weld effect for the repairs and added placeholder ui. Added impact particles in the mech view that trigger upon impact.
Added damage particles in the mech fight that appear where the mech/monster has been hit. Also added a "chest camera" in the core that shows the outside view from the perspective of the mech's chest.
Added a smoke effect for the mech and monster for when they get low. Lower health = higher emission. Added explosion death particles for when the mech and monster's health reach 0. Fixed some issues with repairs not displaying properly.