Monday 10 March 2008

pro brief evaluation

For this project, the first step after reading the brief was to look at the recommended competitions in microsoft's imagine cup. The theme around all the competitions was a 'sustainable environment', so I took this into account when studying all the possible options. None of the imagine cup options appealed to me, however... they seemed overly complicated or simply unfeasible with the available equipment. With the possibility of using an alternative competition that links to games design, I set out to find one; after some unimpressive results, I found the jayisgames.com competition: create a flash game with the theme of an 'upgrade'.
With the competition approved, initially I was unsure of whether I needed to continue to incorporate the 'sustainable environment' theme alongside the 'upgrade' one, so I planned both themes into the game roughly; however it emerged I'd only need the 'upgrade' theme, which saved me time putting the sustainable environment into an opening cut scene (as I'd planned to). The constraint of using an advertising logo from the site was negotiated and deemed unnecessary, as this is solely for advertising purposes rather than for the game itself. Limiting the stage size to less than 800 pixels wide was an easy constraint to follow, with my game being 550 by 450.
My idea was to create an action platform game based around 'Benio', champion cat fighter. I designed him similarly to Wario as he is also an anti-hero, and I wanted an anti hero that homages Wario whose games have similar gameplay to what I aimed for. He fights evil cats that are polluting the environment; at least that was the original plan for linking it to a sustainable environment, however as it is there is no opening cinematic and no time to create a satisfactory one. The upgrades I planned were tougher cats on each level, and stronger attacks unlockable to take them down. To justify the comedy cat-beating theme further, I looked for evidence of comical cat abuse and found cat juggling in Steve Martin comedy 'The Jerk'.
First, planning had to be done though. I shall explain my plan of action and how the plan had to be changed in some cases:
1. Research 2d side scrolling or 2d beat em up games: I looked at Viewtiful Joe/Viewtiful joe2, Super Smash Bros Melee, Streetfighter Alpha Anthology, and Warioland 2. This part did not take long, and therefore went according to plan.
2. Finish sketching rough outlines of the levels. This was successful, except problems with code forced me to change the designs quite radically. However, once I knew what I could do, the results were actually more dynamic than what I'd planned. A glitch where you could move through the floor was incorporated into the gameplay by putting holes in the floor and adding enemies in there.
3. Design characters and backgrounds to work with. This was mainly done as planned before commencing the game itself, but I did design the desert stage later into development so the plan was changed slightly here. The second level design was far too similar to the first, so I merged the two and made the second level completely different.
4. Research Actionscript necessary to complete the work (may overlap with further work). I'm glad I added that statement in brackets, because it was inevitable. Code problems sprang up quite regularly, some were fixed and some lead to me rethinking aspects of the game. Moving through levels vertically as well as horizontally turned out to be limited due to the camera not following the character upwards, so I rethought this and instead added in some invisible bonus areas out of camera shot. One problem that still stands is that when you die, you don't return to the title screen; when I tried to add in a 'retry' button here, it simply looped the dying animation, so as it is the whole game has to be closed and reopened to the title screen. In the final confrontation, the actionscript works perfectly for retrying and progressing though; this is most likely because I coded that part from scratch rather than following a tutorial.
5. Make character animations and put backgrounds together for the first level. This was easily done to plan, although I came back to make small adjustments later on.
6. Make the first level interactive using Actionscript. This ended up overlapping with 4 more, as I found I needed more code than planned or different code. The biggest problem was trying to line things up on the stage to be in good camera shot for the next scene; it's complicated to explain, but I found that when moving onto the next scene the camera would stay in the same place as it was before in relation to the centre of the stage. In other words, the next scene would start you off out of camera shot, ready for imminent death. Since I could not find actionscrip to reset the camera, I instead made a chase scene in the first level to return to the starting point.
7. (optional) If all the above have been covered, design/code more levels into the game. The first level, complete with cut scenes and boss fight, was completed well within deadline, but I could not add in every level I'd designed. I initially thought up the city level, a ruined city level, a hectic fighting level at benio's house, a level in france with a first person shooter-style mini-game, and a level in space with a lion as the last boss. Instead, I ended up with a semi-ruined city level, and a 'mad mexico' desert level with a boss confrontation in another dimension, inspired by Pokemon gameplay and resident evil 4/shenmue cut scene prompts. The music is appropriately mexican, but I added in pyramids as a joke.. it isn't mexico, after all, it's mad mexico. These pyramids would be explained in the last level as the cat base.
How was the upgrade theme incorporated in the end? We should start by looking at the cat types, which get upgraded throughout the game. The regular cats walk back and forth at a reasonable speed. One touch is fatal, but they are easy to predict. Near the end of the first level are evil grey cats with scars and eyepatches though, who are bigger and move at double the normal cats' speed. The second level has magic cats: cats that move in groups and float. The regular cats move in rows; however, the evil grey cats move in a pyramid, in what is the most challenging part of the game I've made so far in my opinion. After those, new tall cactus cats appear. The upgrades to the opponents are quite clear. The second boss fight is also far more challenging than the first; the first boss is a kitten, more of a joke than a boss. But Kellyn is capable of defeating you instantly if you do not hit the 'quick time events' that appear on-screen.
So how is Benio upgraded to deal with this? This is an aspect I would have liked to improve upon. There is only one upgrade that works in the gameplay as it is, the uppercut that shoots a small shockwave forwards. I wanted to add in a second upgrade for hitting the floor and creating a huge flame pillar, but couldn't succeed in coding it in. I did show a clear upgrade at the end of the second level though, the crimson gloves. These would enable you to deliver the flame pillar blow in the next level.
I personally enjoy working on flash, and I've learned alot more about Actionscript and frame labels in particular while making this game. While I was initially put off by coding, I'm now tempted to make a whole game with similar mechanics to the final boss confrontation in my game; that is to say, more of an interactive cut scene where you must quickly hit prompts for different results. I believe I could produce something of a more professional standard in this style with more time, and without worrying about constraints such as deadline and the brief's requirements of an 'upgrade'. However to make a flash platform game of more professional standard, I would need an environment with an expert to help with the code for this, rather than just using resources from the internet and books on scripting. For this project to work within schedule and to plan, I needed to work alone at home for much of it. Being aware of the deadline was essential; even with changes of plan, the deadline had to be considered, so any setbacks meant more time spent on the project at home.
I actually found working in my room that it was a good environment for the project. A casual environment is more motivating than a formal one, so to get my work done more professionally I would not necessarily cite a different environment as a suggestion. The major constraints were time... and patience, which applies to anything on the computer.
Overall I'm happy with the final result, and this has given me an idea for my final major project: a big interactive cut scene-style game on flash. I'll think it over. Working to professional-style constraints and having to plan more is unwelcome with me though, I prefer working more freely as it is impossible to plan exactly what code will succeed and what will fail. I do recognise the need for a plan when working to deadlines in the professional world though, so this experience has taught me something in that respect.

No comments: