Start Working On A New Project

Week 1

This is the week when we try to start working on the project.

Since the project was only in a concept stage we needed to define the game.

So a lot of time was spent on meetings to give the team a unified vision and an overview of the project. One of the first decisions was to use Unity (not Unreal), this was due to the the stability of the engine and that we programmers had a bit more experience with Unity (only one previous project though). Moving on, a lot of decisions where made for the gameplay, narrative and level. What type of enemies should we have and how to progress through the levels? What type of weapons and how do they work?

We made a foundation for the project that we will continue to build on and evolve the features involved, until we are satisfied with the game and the effect it has on the players.

cwiRz

Could This Be GameTown?

After decisions of what and how comes the task of producing a backlog, using scrum, and defining how to actually produce these ideas and what does the tasks involve. As a programmer I has to figure out what mechanics makes the game work as intended, there can be quite a lot of mechanics needed to make a feature work or there might be very few, it differs a lot. For example a spawn point system is a very basic one for games, but how do they work? Well probably a lot differently from game to game, but in our game? You need a physical world area that responds to the player entering and when this event occurs save the players data. And that is it right? NO! To make a functional saving system a lot more is required, there need to be several checks to see if the system should actually save the data and connection to player character so it knows that is really the player and to know when the character dies and at that moment focus the camera on spawn area and set the saved data to the character, there are quite a few ways to do this and knowing what method is most effective and useful is difficult. Just the fact of saving the data is something that  has to be adapted to ones own game, as of now there will only be one level to our game so there is not much point in having a system that saves the data outside the current game and allows the player to continue where they left of before they shut the game off.

ai_robot

Is This The Robot Ai We Are Looking For?

After finishing a draft for the backlog we continued to create the basics for the game, what basics? Such as player and enemy movement, trying out some basic  attacks for both player and enemy, the camera was definitely needed since we did not want the standard view but rather a isometric view. So we rushed headlong into development.

a-visual-guide-to-robots-and-cyborgs-in-movies-and-tv

Perhaps These Are The Ones We Should Base Our Robots On.

My job during this project is going to be as a programmer, though since we are all designers in training there will probably be some of that to. What task I will work on during the project is not set in stone (or at all), but for this week we are all starting up the project and trying to get some prototypes working.

The basics would need to be created to be able to see if our vision could hold, would the core of our game function and keep a player interested in the game. So both of us programmers started on movement, me just to get some basic movement when testing other parts and to learn a bit how Unity’s navmesh works since I plan to use it to mainly navigate the enemies around the game though perhaps the player should use it to since it contains a lot of useful functions.

Well more about enemies! Enemies can come in many forms and shapes throughout games and we have several in min, though to have a well polished game for GGC we plan to have only one main type that can be altered into different states and modes. What better for such a plan but robots? Since they can come in such a variety of shapes and types, easily changed from one model with a colour or small alteration without seeming out off place (unlike humanoids which might clash with the narrative and setting if altering them to much). Robots that are remotely controlled by gamers or hackers throughout the Gametown, seemed to fit perfectly into our theme, but what kind of robots? We made ours sphere shaped with arms, so to attack the character they start spinning swinging their arms around in deadly arcs. A hazardous experience for the player, that needs to watch out while waiting for an opening when they are not spinning since Kei’s reach is not far enough with the starting weapon to get past their deadly attacks and strike at the core of their being.

So I took upon myself to try and actually implement these creatures that stand in Kei’s path through Gametown, so I start off with some placeholders cubes and cylinders to represent player and enemy. Then giving the enemy a way to find the player, well to make that easy to start of just giving it access to the players gameobject through the inspector. As such the enemy had a target with a position it could seek, the enemy updates it position each update moving towards the player. This was a start but more was needed such as all the data the enemy would need and making much of that easily changeable, for example having an detection area for the enemy that which radius could be changed easily with slider bar where you just drag the bars handle to the value you want. With these things in mind I continued the work to bring these creatures to life.

At the end of the week the enemies had taken form, they could detect the player within a radius then switching to an attacking state in which they move towards the player until reaching an optimal attacking range and as long as the player is within the maximal attack distance. This is so that the enemies do not have to move each time the player does, since if always trying to stay at the optimal distance they would have to move continuously. Instead the enemy has both min and max distance, the min so that there the player can be to close for the enemy to start an attack which is quite normal especially for ranged units which has a distance when the effectiveness of the ranged weapon is lessened. Besides this the enemies has an attack, just an animation of a sphere with cylinders for arms that spins around, if the arms connect with the player damage is given and eventually can defeat the player. The opposite is true as well with player attacking with a sword and giving damage.

Setting up the animation with those basics shapes gave an insight into the animation system of Unity, which is really extensive. But it was really fun to try and also programming what should be played and the conditions for it.

Well this was an interesting start of the project and an eventful week with lots of research and things to learn, lets hope all continues like this with a new wonder to learn around each corner.

srhk_isoNightmarket1920x1080.0

A Bit How We Imagine The Setting With The Camera View And Town Lights.

 

About Isak Ekedahl

2014  Programming