First week of Big Game project

As the title suggests I recently started a course called Big Game project. During this course I will, together with a group, create a vertical slice of a game, that we will continue to work with after this course. The game that I will work on is a MOBASA, Multiplayer Online Battle and Strategy Arena, that we are calling Eternal Resonance Arena, E.R.A. The game is team based where two teams face each other. Each team have a commander; that plays an isometric real time strategy game, and a champion; that plays a battle arena character. Together the champions and the commander will work together to kill the other teams commander structure and the team that kills the other teams structure wins. The game is set in a steampunk environment with islands that float in the sky. We are developing the game in Unity using 3 programmers, 3 artists and 1 designer. We are estimating an alpha in the coming weeks and a beta 4 weeks after that.

 

What I have done this week:

On Monday everyone started the week by writing an ambition document. Everyone in the group had the same ambitions for this project, a very polished product that we can continue to work with after this course is done. When that was done I did some research on A*, a pathfinding algorithm, and it looks like something that I will use for the creeps in a later development stage of the game. I need to do several optimization checks before I dare to implement it into the game, because of that it will not be in the game for alpha.

On Tuesday I started programming the states for the creeps. At this stage the creeps had an idle, patrol, chase and attack state. In idle the creeps switched to patrol, this state was mostly so I could initialize variables before it runs update code. In the patrol state the creeps moved towards pre-set waypoints on the map,  while patrolling they would scan an area for champions and move to the chase state if they found one. In the chase state the creeps simply moved towards the target at all times and if the creeps got into range they would switch to the attack state. In the attack state the creeps started their specific attack and then return to the chase state. After I completed all the states I started working on the different attacks for both a ranged creep and a melee creep. The ranged creeps shot a projectile towards a target and the melee creep performed a whirlwind attack.

On Wednesday I created a barrack structures that create creep units. I created settings to make it easy for our designer to change the density of creeps that spawn and how often they spawn. After lunch I got a tower mesh from one of our artists that I tried to make rotate. But after much struggle we noticed that the pivot point was wrong and when we updated the mesh I got it to work immidately.

Thursday started with me doing collision on the tower and then I created the towers attack. Currently it is a projectile effect but that will change for beta to a pulsing cirlce on the ground. After lunch the programmers sat down and started discussing code structure and how we were going to make objects interact with each other. We will make each gameobject have an attribute script, this script will hold every attribute that an object can have. Each ability that gameobjects will use will hold a spell attribute script, this script hold the damage, damage type and duration of the spell it is attached to. This system makes it easy to adjust values in the inspector of Unity. When a spell, for example, collides with an object it calls a globalscript that calculates the damage based on the spells attributes and the objects attributes.

On Friday I finished the restructuring of ranged creeps and towers. After that I went to see other classmates pitching their game designs for this course. There was one interesting card game that got pitched that I would be interested to see get greenlit.

This week have been very productive and we have come a long way on our project. I really hope that we will have an alpha finished next friday and I think that we will finish in time.

I hope you could understand my scribbles and I promise to improve until next time.

Leave a comment