top of page
Search
  • indiepandasgames

Game Dev Blog: Week 3

Updated: Oct 6, 2021

INTRODUCTION

We are Team Indie Pandas, a group of 7 undergraduates reading the module, CS4350 Game Development Project in AY21/22 Semester 1. As the main objective of this module, we are tasked with developing our very own video game! Our team name was inspired by the term: independent. Since we are a small group of students working towards a large project (without any external publishers), we thought that we could be classified as an indie studio. The Pandas part ties to the theme of our game project, which we will elaborate on later.


We decided to develop a simple 2D fighting game. For our first step, we looked at popular and successful fighting games for references. We tried to identify what elements make a fighting game appealing to players. We took some inspiration from games like Rivals of Aether and Brawlhalla. In the end, we concluded that we will develop a fighting game that closely resembles Super Smash Bros. Ultimate.



One of the requirements we are required to fulfil is fitting our game into one of the four themes:

  1. Virtual Ecology

  2. Serious Games to support/engage students in online education

  3. Artificial Creativity in PCG

  4. Others – focus on new technologies and novel ideas

We chose Virtual Ecology as the theme of our game, along with the name of our game: Endangerous.


Game Information

Genre

2D Platform Action Fighter

Platform

PC

Number of Players

1 - 4 (online)

We will be using the Unity game engine to develop our game, with the Photon Engine running the backend of the multiplayer component of our game. Characters and animations will be hand-drawn on Adobe Photoshop. BandLab and BFXR would be used for music and sound effects respectively.


 

CONCEPT IDEAS

Our team has decided to develop a 2D fighting game that borrows gameplay mechanics from the popular Nintendo fighting game Super Smash Bros. Ultimate.


To make our game stand out, we decided to utilise an ecology theme as the basis for our character and environmental designs. We would have endangered flora and fauna training together in various environmental biomes. We aim to incorporate some Serious Fun by raising awareness of environmental destruction and endangered species.


Gameplay-wise, we hope to implement a feature that allows players to interact with the game environment during fights. We believe that environmental interactions are rarely used in most fighting games, hence we intend to create environmental hazards and effects to introduce more dynamics into our game.


Currently, the stage locations we have in mind are:

  • Mountain

  • Desert

  • Tundra

We will focus on developing these few stages before deciding whether we would include more in the later stages of development.


As for the fighter characters, we plan to start with these four initial characters:

  1. Cactus

  2. Red-crowned Crane

  3. Pangolin

  4. Emperor Penguin

These species were chosen due to their endangered status and diverse features.

 

ART

Characters

These are the 4 different initial conceptual designs of our first character - the Cactus! Most of these designs are based on Mexican and Wild Western culture. Hence we opted to provide props like a poncho and a Sombrero.

"Howdy partner"



We as a team liked the third design the most, but we were concerned about having too many details in the character. This might take too long for the team to animate every frame for our character. Therefore, we decided to trim down some of the details such as removing the shoes and simplifying the hat into a cowboy hat. We also wanted a simpler, more minimalist first draft just to have a rough gauge on how the animations would look like.


As for our other character, Aik Peng drew up the crane and made it look regal and elegant. We liked this design, and just need more frames to showcase the rest of its animations.


This is the first draft for our first level, set in the mountain tops, drawn by Lilian. It looks surreal and heaven-like. The main platforms could look a bit too confusing since the colour scheme was very similar to the brown mountains in the background. Also, when zoomed in the platforms will have some loss in details, and since in the gameplay the camera will be zoomed in more onto the level, this can be a problem. Thus, Lilian will be working on these points for next week.


We also brainstormed for ideas about tying in the environmental theme. For the mountain tops, we thought about adding in wind currents to help characters get between platforms. This coupled with platforms that will crumble and break away after standing too long could make for a more dynamic stage.



 

TECH

We built our game with Unity2D from the ground up, utilising Photon Unity Network (Pun) for our networking needs.


 

IDEAS TO PONDER

Environmental-based hazards?

We also thought about potentially having a sidescroller level, with obstacles such as trees that players need to work together to cut down. If they do not manage to cut down the tree in time, they will get pushed out of the screen by it, and all lose a life together. This promotes some sort of cooperation amid the competition, while possibly introducing some Procedural Content Generation (PGC). We will need to refine this idea further if we want to implement it, as it needs to feel intuitive and fun as a level gimmick.



 

UPDATES FROM THE TEAM

LILIAN

I implemented projectile shooting on our test character. It was a challenge networking the projectile as I wasn’t sure of the most efficient way to approach the problem. In the end, I chose to sync the projectile by simply attaching a PhotonView to it. This approach may cause lag if many projectiles exist in the scene, but it is probably alright if there are only a few projectiles at once.


CHUYUE

This week I’m still working on the game manager. I added code so that the game will auto-start when everybody has confirmed their characters - this is actually a lot harder than I thought!! When one player confirms their choice, they have to update the room’s properties. Then everyone has to individually get the properties after they are updated, and keep track of the number of players that are ready.


I've also implemented the game over screen, which shows how long each player survived, using the same method. This method turned out to interfere with Photon’s built-in code, so I would have to change it (eventually), but for now, it works. Gabriel suggested using RPC calls instead and that sounds like it will be much simpler.


ZHI HANG

I did up four draft designs of the Cactus character, the first character to be used in our game.


It was my first time dealing with digital art, hence it took me quite some time to get used to using a drawing tablet and drawing on it while looking at the computer screen instead of the tablet surface. I searched for some designs of existing cactus-like characters online. I came across several interesting ones in a YouTube video (https://www.youtube.com/watch?v=ge7c6vUC1uc) and used their selection as inspiration for my designs. I also looked up Google Search to seek out some simple designs since the designs shown in the video are too complicated for our game. Furthermore, it is better to do a simple sketch of the design first before polishing it with details after it has been approved by the entire team and animations are already satisfactorily done. From the designs shown from Google search, I got the idea to design different headwear in case the default one is not accepted.


AIK PENG

This week, I started work on the crane character. Since we are basing the character on the Red-Crowned Crane which originated from Japan, I tried to personify that concept into the crane's posture and movement. After some thinking, I imagined the crane as a prideful noble individual who would probably make very graceful and careful movements. Since our current focus is to create a playable character, the priority was to create the animations first and see how it feels, before settling down on the character’s design. Due to the crane’s… unique body type, I had quite a hard time imagining and drawing her out. Eventually, I managed to come up with a design, even if it was basic. The sprite that I drew was also… too detailed, which would make drawing more frames harder later on.

ROBIN

This week, I implemented the recovery state while the state machine was still being refactored. As a result, my recovery state was designed for the older version of the state machine. It was implemented as a modified jump, with most of the jumping code, but the recovery action can now be done mid-jump, possibly several times depending on the characters. This is one of the features meant to differentiate the characters by implementing them with more unique movesets. For example, our cactus has a single uppercut recovery move, while our crane will have a more graceful smaller recovery move where it flaps its wings to propel it upwards, and it can be used up to 3 times.



YU CHUN

One of the basic movesets of a 2D platform game is dropping down and jumping through the platform. These seemingly easy tasks took me longer than I anticipated. Being a basic moveset, there are myriad of ways to enable this feature. However, being a multiplayer game, most solutions do not work for us and I had to go through multiple ways to find a perfect solution for our game.


GABRIEL

Oh dear, I think I’m going to become the villain in Indie Pandas. After creating our game prototype, our code has become really messy. Therefore, I have been tasked to do some mass cleaning (*ahem* refactoring). In other words, this means destroying and rebuilding what we have already established. Ouch. I also have to discipline everyone for not having a coding standard. Why is this important? Well, we currently have three numbers used to control the player’s direction. Apparently, the reason why we have three numbers is that no one could find the first number, so they recreated it - twice. I am sad. Resolving this is going to be painful. It also means that I’ll have to postpone adding new features for the time being.

46 views0 comments

Recent Posts

See All

Game Dev Blog: Week 11

UPDATES FROM THE TEAM LILIAN The UI issues are now almost complete. I edited the gameover overlay but it’s still a work-in-progress. I also decided to grey out the character portraits upon death/disco

Post: Blog2_Post
bottom of page