Thursday, January 23, 2025

Game Gen - Week 47

Scary Fun Progress!

I say scary, because more than a few times I've been scared by my own weeping-angel-like mannequins while working on this project, and it's starting to feel like it's really coming along!

Wow is multiplayer a challenge though! It gets quite confusing sometimes when having to keep track of clients and servers and who has authority, etc, but it's quite a rewarding feeling when it all get's figured out! 

I missed out on blogs for a bit due to the holidays but I'm happy to show the progress I've made since my last one!

Here is a quick overview of what I've accomplished since last time: 

  • Furthered the interaction system and created a player inventory system complete with UI. 
    • I improved the player inventory UI interaction to allow for swapping things around between your main hand, pockets, and backpack inventory slots.
  • Created item spawners and a spawn manager.
    • The item spawners spawn four of the same item and a spawn manager selects random spawners to spawn each item type and a certain amount of each type as desired.
  • Created a multi-player-ready puzzle for the main goal of this level. 
    • The puzzle is a fuse box with some fuses missing. The fuses can be found scattered around the level and once all the fuses are returned the door to the next level can be opened. 
  • Weeping-Angel-inspired enemy. 
    • This mannequin enemy blends in with the non-NPC mannequins around the level. Once you look away, however, you might be surprised what's behind you when you turn back around! 

Here's a short video of the progress I've made:


The main challenge has been getting everything not only working but then also replicated to work in multi-player. It's starting to make more sense, especially as we work on different systems and understand how the architecture works for servers and clients. 

I'm most proud of creating the puzzle, as that was the most challenging thing so far to get working for multi-player. I don't want to share all of my secrets, but here's some of the functionality. We had to do a lot of back-and-forth and iterating before we finally got this all working properly with multi-player interactions. 

Fuse Box Event Graph

This is an overview of the events needed to replicate the fuse box. 

- On interaction, we check who is interacting and what they are holding. If they are holding a fuse, we then continue to set the fuse added (if it's needed).

- When the player adds fuses, we run the "Add Fuses" function which iterates over the fuses in the "parent fuses" which are objects pre-set in the Fuse Box blueprint. These have an associated color tag which we check in the "check fuse color tags" macro to find which fuse "slot" or parent belongs to the color the player has. When we find the parent color matches a player's fuse, we set that fuse "parent" as the matching fuse and break the loop, then, we move on to check if the color is still missing. If so, we set the fuse of that color unhidden in the fuse box, else we let the player know they already have that color.

- Based on if the fuse was needed or not, we either clear the hand of the player or open a widget to tell them the fuse of that color has already been found. 

Blueprint Link


Fuse Box "Add Fuses" Function



Item Spawning

The other blueprint I chose to include is my item spawner. This was cool to make and enabled me to spawn a few of the same items in one spot, such as flashlights or fuses. I also have a manager who will randomly select the spawners in the map to use to spawn items, so they will always spawn in different locations!




Overall I'm proud of the progress and excited to continue! Here are my goals for the next two weeks:

  1. Work out bugs in existing mechanics and systems, such as the inventory UI and enemies. 
  2. Add more abilities to the player along with mechanics like fear level. 
  3. Clean up the UI and continue to improve the player experience. 

Thanks for reading, and as always thanks to Game Gen and Vives for all the support and mentorship!






No comments:

Post a Comment

Most Recent Post

Game Gen - Week 56

Story Writing and Lore Building This week, I focused a lot on furthering the lore of my horror game and giving the players a secondary objec...