This weeks topic was reflection. This week also saw me carrying on my rapid ideation session from last week. Since the rapid ideation session was going to be the main focus of my work, I decided to try and incorporate the course material from this week into my rapid ideation session.

SMART Goals

The topic from this week that stood out to me the most was that of SMART goals. SMART is “a set of criteria to evaluate goals”(“Week 5: SMART Goals” 2022).

  • S – Specific
  • M – Measurable
  • A – Achievable
  • R – Relevant
  • T – Time-Bound

I decided to break down my goals this week using this acronym so that I could reflect back on them at the end of the week and evaluate my progress.

  • S – Multiplayer demo
  • M – Two players remotely interacting with a single game instance.
  • A – Using Photons Network SDK
  • R – I want to gain an understanding of game management across a network.
  • T – 1 week.
  • S – Dungeon crawler game.
  • M – Multiple rooms for the players to traverse with a boss at the end.
  • A – Using the Unity engine’s toolkit.
  • R – I want to showcase the capabilities of my artefacts networking,
  • T – 1 week.

Clearly laying out my goals gave me a new sense of focus and motivation moving into the session. I knew exactly what it was that I wanted to achieve and I had a clear sense of how to achieve it.

Rapid Ideation – Week 2

With the foundations of the networking laid out I moved onto the gameplay. I started making quick progress, adding in a playable character for each player that joined the room that they could independently control was simple enough with use of the Photon SDK. It was when I moved past this that things started to quickly get more challenging.

Two Players moving in two separate instances

I took a break from programming and decided to add some sprites to the game to add a quick and easy bit of polish. I downloaded a free tile set from itch.io (0x72, 2021) and created a tile map for it in the Unity editor. In hindsight, while this did give a boost to both my motivation and the overall quality of the games aesthetic, by the end I’ll have wished I used this time more productively.

Rooms in editor

When creating offline games in Unity, keeping track of objects in the scene can be trivial since the scene is a contained space. The more I tried to build upon this game the more I realised I had underestimated about doing the same across a network. While the Photon SDK does remove a lot of the technicalities, hiding it behind simple functions, I quickly became aware that this style of game design required a completely different mindset. Something as seemingly simple as moving the players from one room to the next, something that I could easily do in a normal project, proved to be utterly head-wrecking.

The Legend of Zelda screen scroll

I had intended to emulate the a screen transition similar to that of early games in the genre such as the original Legend of Zelda. Should one player move onto the next room, the screen would scroll up and both players would be teleported forward. This however proved far more challenging than anticipated. Since you are dealing with two separate instances of the game, the messages you send across the network are limited in what they can contain. They can only carry simple information, Ints, strings, they can’t carry object references. This threw me at first as it called for me to approach familiar problems from a completely new perspective.

Although I achieved the desired effect in the end, I spent so long relearning my old methods that I fell behind and left myself unable to fully meet my expectations for the artefact. I ended up adding some basic enemies for the players to “fight” in the form of bats, the bats would simply be destroyed when the player collided with them, unlocking the next room.

Bat enemy and screen transition

Although I didn’t reach the goals I set myself at the start of the session I am still pleased the experience gained from it. I now have new appreciation for games that incorporate networking in them, and look forward to working with this technology more in the future.

References