My Project was all about the creation of a 2D side-scrolling indie platformer in a retro style. My production company and I picked two random aspects of our story from a bag In this case setting and the main character and include them in the game. We ended up have Ada Lovelace as our character and Ancient Egypt as our setting.
For pre-production, I engaged in team-based discussions on the storyline and character development that stemmed from our research into ancient Egypt and Ada Lovelace. For the research pacifically we looked at what Ada had done and what she was known for and integrated that into our plan and story. We also did research into both ancient and current Egypt finding out many facts about the lands and people. By doing this we were able to fabricate a story that the player would be able to follow.
After the research was mostly done we started mind mapping our ideas and creating mood boards for the settings, main character and enemies. Using these mood boards and mind maps we were able to finish the bulk of the research and decided on the final storyline.
From here we went on to making concepts for our characters deciding what they would look like and what traits they might have. I personal linked Egyptian gods to the seven deadly sin who corresponded with gemstones found in Egypt. We also concepted animations that we could use in the games. In addition to the character concepts, we made seamless textures and a test environment
Now armed with all the knowledge we needed we created a design document detailing what we each wanted for our individual versions of the game. These document detailed everything from demographics to mechanics of the game.
For production, we split off from each other and started to work on our separate games. I started by setting up my document so that I could have the screen scroll with the character. To do this I had to create the main room so that it was longer than the screen resolution which was 256 x 256 pixels so I set my room to 1024 x 256. Once this was done I went into photoshop to start making the background. For the background, I decided to have its parallax so that it gave even more movement to the game. For this, I started to do some more research into coding and how to set up a parallaxing background. Through this research, I also found how to code gravity and movement so that it was smoother. When I went back to creating the Background so that it could parallax I had to save four different images the sky layer or background, the far-ground, the mid-ground and the foreground.
With the initial background complete I added it to my room by adding each layer in as a separate background allowing them to go in order. To then make the background parallax I had to create an object and add a step event with it having the effect of creating four variables that would then continue to work along as the object was still there. The variables have had the effect of slowly increasing the speed in which the background layers moved with the sky staying still and the foreground moving the fastest.
Once I had my background nice and sorted I moved on to adding and editing sprites. Because of time limits and my binging happy with my test sprites, I decided to use them and simply to edit small details such as colours and movements. For my main character sprite Ada Lovelace I created three different versions an idle pose for when she was standing still, a walking/moving pose for when she moved around the map and a throwing pose for when she throws her projectile. To make these poses work I created an object and bound the idle sprite to it. From here I went on to add a keyboard event that had the following commands set up to create movement and change between the sprites:
Set horizontal speed – 2.5 to go right or -2.5 to go left both of these are set to be relative.
Variable: hspeed / value: 5 or -5 / less than or equal to when going left and greater than or equal to when going right
Set horizontal speed 0
Set friction – 0.3
Change sprite to the moving sprite
Transform sprite – mirror if going left or don’t mirror if going right.
That is all for left and right movement but we still need a jump. To do a jump is a lot simpler. You do is add a keypress
If collision at point –
Set vertical speed – -15
(I also added sound to the jump for which you add the play sound and select the sound you want to play)
Relative simply means it applies to the object only. So if you set the horizontal speed -2.5 and relative it means for as long as you hold that button down it will increase the speed from what it is. For example, if you set the speed as two and relative each time it increases the speed it adds two so it ends up going 2, 4, 6, 8 and on until you let go. For coordinates, it simply means it treats the sprite as point 0,0.
Hspeed and Vspeed are simple ways for the program to identify between horizontal speed and vertical speed.
What all this above means is simply that when you press and hold the left or right keys the character will move and change to a running pose making it look less like they are gliding and more like they are actually moving. It also means when you go they will slide a little before coming to a stop. All this was set up on an A and D keys because I set up a coded version of this movement on the arrow keys. The way I did this is by making a create event that created a script that allowed me to generate custom variables. These custom variables made it so that the sprite would move around and jump without falling through the platforms. This new movement was bound to the arrow keys and proved to be smoother than the drag and drop commands above.
Of course for the drag and drop commands, I needed to create another two sets of commands, one for gravity and collision and the other for changing the sprite back into its idle pose when you stop. The first set I will go over is the simpler of the two which is how to change sprites back to their idle pose. This was done by simply creating a key release event and adding the change sprite action that changed the sprite back to the idle pose. Now for the more complex thing of adding gravity and collision we needed to a step event and have the following actions work within it:
Set vertical speed – 1 / relative
Check collision at position – X 0 Y vspeed / only solid / relative
Move to contact – direction: Direction / Maximum: -2 / Against: Solid objects
Set vertical speed – 0
And that is it for adding gravity and collision.
In The post-production phase of my project, I had to do some product testing and have people test my game.
I also made some promotional material in the form of a Top Trump card for Ada Lovelace detailing her date of birth and a little about what she has done.
My goal for my game was to collect all the gems from the bosses and close the portal to the underworld. Unfortunately, I was unable to fully implement this kind of systems so it evolved into having to defeat one boss and the challenge became getting there.
The challenging parts of my product are the bosses and the actual getting there as it may have seemed easy to get there but in actuality, it was much more difficult. My game is different because not only have I taken my character and placed them somewhere they wouldn’t usually be found but I have taken a different era and merged it with another having ancient Egypt seep into current Egypt.
I originally targeted this towards 13 to 21-year-olds but that has since changed to 15 to 18-year-olds of both genders due to the game’s addictive aspects for these ages. I chose to aim it towards both males and females because I don’t want to be stereotypical and say violent games are only for men and so on.
My finished project conveys where it is set well but it could be improved by adding other features of the era and country. It could do with having more levels so that I could fit more story in using the backgrounds.
People will want to play my game because of the challenge it provides. The design and style will also attract more people as it is an old style that isn’t used too often compared to 3d methods.
The messages I am trying to get out are, women can do some things as men or can do things without the help of a male figure. The other message is that if you put the effort in you can overcome most things and win.
To aid in getting these messages across I had Ada Lovelace as my main character and she has to complete these tasks without help. The other way is that that game is really difficult so that people actually have to work to get past the levels but not so much it will push them away rather than draw them into the challenge.
Some of the problems I encountered were how to deal with the visuals such as what Egypt looked like and how I was going to depict the Egyptian gods and Ada. I also had the problem of having a limited resolution to only 256 x 256. Other problems to do with sound where that I couldn’t find nor create the sounds I wanted. I also encountered problems at the start with my movement and other mechanics within the game.
I solved most of the interactive problems by starting over but this itself caused a problem of not having far less time than originally planned. I also dealt with the movement by going back and redoing it as well as adding in some coded movement that ended up being the smoother of the two.
My visual problems were solved by looking at reference images and reusing past concepts for characters. I did research into what Egypt looked like and who existing material had depicted it and based my designs off of this. I also dealt with the resolution by making the game able to scroll which allowed me more room without making the resolution bigger.
Unfortunately, I was unable to find a solution to my audio troubles in time so I had to leave my game with minimum sound. I could have solved this problem by being less strict with what sounds I wanted but this, in my opinion, would lower the quality of my work.
In the end, I think my project was good at solving the problems I as given and faced during the project but that being said it has a long way to go before solving them all and being 100%. The simple reason it was not up to standard was I didn’t put my 110% into it and ended up micromanaging everything.
I need to remain focused and on track giving my all along with doing more research into the subjects, I am dealing with.
I have learned new methods of audio production beyond simply downloading content from the internet. These will allow me to capture and analyse sounds so that in my FMP I can accurately convey the meaning and emotions I want to. I also learned about different styles of pixel art and how to animate it which I can adapt the principles to allow me to animate none pixel art designs and drawings.