Sunday, March 25, 2012

Final Project Indy Game Journey #3

Last week in development went well with everything that happened on my end. Mainly because I learned a lot in UnrealScript that is the coding language used in the Unreal Development Kit, the game engine we are using for our tower defense shoot 'em up game. I really want to get more comfortable with UnrealScript and coding in general because I am the second most experienced programmer on the team because of my knowledge of C++ and basic knowledge of JavaScript. This fact will make my scripting and coding ability important to stay on time with each of our milestones for development. 

I am getting more comfortable with UnrealScript by purchasing a new book, Unreal Development Kit Game Programming with UnrealScript: Beginner's Guide [Kindle Edition]. This book is written by Rachel Cordone and is great for people looking to start UnrealScript, like myself. It teaches you everything from the ground up and gets you right into UDK. I recommend this book for anyone looking to start coding in UnrealScript. The only thing I changed up from what the book teaches was using Microsoft Visual Studios 2010 to actually write the code.

After our staff meeting we were assigned the task to create two or three prototypes. We were given three options. One prototype option is one that would spawn different types of enemies on game start or with the click of a button. The second was to have these enemies that spawned move to a location on the map and change state, like fire an animation or shoot a weapon. The third, that my team member Andy Poquette pitched, was to design a tower that would take damage and get destroyed when it reached zero health. With this pitch from Andy our professor gave us another option to make the tower traversable and have functioning doors and ledges like we had mocked up in the previous week.

We had chosen to do to what we thought to be the two most code heavy prototypes from the start. This is because we want to get these mechanics up and running as soon as possible to have more time to design and polish later in development. After all, we only have three months to develop this game. We also had the task of updating our game design document and making a rough draft script for a video presentation we had to present to our college the following week.

Last week I was assigned to do the AI for our bots, which was one of our prototype options. My plan was to make the bot physics kick in, their animations enable, follow the player, and shoot within a certain distance. Unfortunately with my inexperience in UnrealScript, I had a bit of a hard time getting the bots to follow the player and fire their animations using UnrealScript. I also had a hard time getting them to hold a weapon because I had only ever programmed custom weapons using UTweapons. Thankfully our lead programmer Andy Poquette caught this, and we now know how to get the weapons working. I also forgot to call a default enemy controller in one of the functions I coded and that is the reason the bot animations were not working and why the bots were not following the player.

I then turned my attention to checking up on the GDD and video script to finish out my week. The only thing that sucked from last week was not being able to make the Red Bull Gaming LAN that came through Orlando over the weekend because of that snag with my UnrealScript coding. I was disappointed, but happy that I was able to get the code finished even if it took a little extra time after the weekend. This project is going to stay at the top of my priority list until finished so I have a great portfolio piece to add to my collection.

This week we needed to produce a video to present our game design to show to our college were professors and students sat in and asked questions once done watching the presentation. I will help with and study programming again, general game designs, and level design. I also video edited and produce the video for my team. This was my main focus to be sure the video presentation was up to par with showing all the students and professors in our degree program. I wanted to also try to help out our lead programmer, Andy Poquette, in any way I could to get our base mechanics up a running and code placeable with nodes in UDK Kismet for our none programmers to visually script. I also dug out my level design, game design, and UnrealScript books to make sure I have reading to brush up on during my down time. Anyway I can benefit the team, right?

(Pre-Production Presentation)

On a side note, my website is finally under development! I will keep everyone updated through Twitter, Facebook, and here on my blog. I am always looking for talented people to work and network with. Feel free to follow this RSS and my Twitter feed, friend me on Facebook, and connect with me on LinkedIn!

Tuesday, March 13, 2012

Final Project Indy Game Journey #2

So last week was pretty hectic. We needed to refine two of our concepts and then submit them for further approval. This was thrown at us on Monday night and we had our deadline on Thursday. With this in mind, we got right to the concepts, threw the old docs out the window, and started fresh. We decided to stick with the tower shoot-em-up, code name Towering, and the puzzle game, code name Vertigo. We also decided that the concepts we initially did for Vertigo were pretty well put together, but since we wanted to start fresh our team members Kelly Dayton and Kyle Rowan took the duty of rewriting the concept for Vertigo. You know how that goes; we are in college, original work is needed for each assignment, blah blah blah. The rest of the designers got hard at work refining Towering.

Shortly after the staff meeting with our professor on Monday we decided that Towering would be a better game to move forward with over Vertigo because of the need to have this title functional using the PC. We all agreed that Vertigo was designed with the intent of being a mobile title that would be played on devices like cell phones, tablets, etc. It would just be more fun to tilt and swipe at the screen with your hands then clicking and dragging with a mouse and keyboard. The next hurdle was convincing our professors, who are acting as the client and creative directors, that towering is the right game to move forward with. My only worry at that time was that the scope towering was too big and we would not get it done in time.

After all, isn’t that what 50 percent of game development is? Figuring out if we can reach that milestone for our gold build in the end? Of course the other 50 percent is asking ourselves; “Is this game fun?” To be honest, that continues to be a worry of mine, but I have faith and confidence that we can develop this game, polish it, and wow players, contest panels, and potential employers with the skills we have put together during throughout our time at Full Sail.

We tackled the new concept of Towering with the intent of wowing our professors and ended up doing just that with both documents. After we all finished Towering, we went back to Vertigo and finished that concept redux as well. The feedback we got from our professors was pretty much the same as we did on Monday with our initial concepts. They loved Vertigo again and urged us to move forward with that concept and weighed in that Towering might be too much work with everything that needs to be developed. At the time the design for Towering had an economic system, five enemy types, boss battles, and the list went on. It was a great concept, if we had a year to develop it. We only have three months. They did however assure us that we had the ultimate decision about which game to move forward with. I think both designs have great potential and fun aspects to them.

Vertigo is a an awesome puzzle game that throws the player for a loop with a tilting world, blinding clouds, and falling rubble that needs to be strategically place around the map to make bridges and plug holes. This rubble needs to be avoided by a player token so they don’t get crushed or fall off the map. Ultimately the player needs to place a solid object affect by gravity in a hole to unlock the exit.

Towering is a tower defense game that combines the shoot-em-up genre by giving the player freedom to place a friendly a auto turret anywhere they want to in their tower, blockades anywhere they want outside of the tower, and a variety of weapons that have to be strategically chosen since the player can only carry one at a time. There are a variety of enemies that move fast and slow, depending on their ability, and some that can even fly. The tower has health that must not reach zero or the game ends, but the weapons, power-ups, and deployable items can only be obtained outside of the tower. The player’s main goal is to make a last stand and fight through as many enemy waves as possible.

I voted Towering because the design seemed a bit more fun to me from a player point of view on the PC. There was also more work that could be delegated to our team members since we have six designers and are used to working in groups of three or four. I also see this game being great to develop using the Unreal Development Kit, which we are most custom to using throughout our classes at Full Sail University.

However, I would of love to develop Vertigo as well because one of the dreams I have in this industry is to become a level designer. Vertigo would give me many opportunities to design levels because it is a puzzle game with short levels. As I expressed before, I was not sure if we could nail the fun of the game withe PC controls. This is what swayed me toward Towering. We may be overlooking the workload of Vertigo as well. That is something we were expressed to by our professor. I do agree.

After we discussed it heavily we all agreed Towering would be best suited for this project. We now had to create the first iteration of our GDD. This was no easy task to do in just a 24 hours after we were able to take in our feedback and discuss the options as a team. We all got to work and I was initially put in charge of the tower and HUD with Kelly Dayton.

My initial HUD design was similar to the HUD found in Halo 3 because we want to have the player’s current weapon, weapon clip, deployable items, player health, tower health, and enemy counter displayed. After I pitched my idea to Kelly and mocked it up quickly. I was pitched a new HUD concept from Chris Permijo that purposed we use a HUD similar to the style seen in MMORPG or MOBA games. Everything would be displayed on the bottom of the screen to allow maximum vision of the play area and a nice central area for critical information. I loved the idea and helped refine it a bit.

(HUD Mockup)

This lead to Kelly and I doing the tower structure design and since Kelly was a bit overwhelmed I helped get her design muscles start flexing as well as mine with what I saw in my head for the tower. It is very similar to the HUD mockup above, minus one floor. This helped us finish up rather quickly and we moved on. I spent the rest of the day dipping into every design that was critical for our first pass GDD.

After that was done I handed the final rough draft to Kyle Rowan to format into a nice flowing document. We then started to take or hacksaws to the wordy parts and things that we thought would make the next three months hell if they stayed. We added those to a wish list. We also added flowcharts and mockups drawn up by Ed McFarland after corrections and review were completed by myself and Kyle Rowan. We probably could have gotten a lot more detailed and even gotten down to the niddy griddy of this document if we had the time last week. Working under the compressed schedule really gives us that feeling of milestones and due dates that I believe exist in the industry. This is one of those things I love about Full Sail University. I always learn a lot at staff meeting with our professor from the critiques of the previous week of work. This remained true at our most recent meeting on Monday 3/13/2012.

(Basic Game Flow Chart)


Next week I will be helping the team prototype some basic mechanics and functions of Towering suggested by our professor and another prototype that our team member, Andy Poquette, pitched and got approved. I will also be helping to refine and edit our GDD, produce the actual numbers for things like enemy health, speed, damage, etc, research student game competitions so we can follow their rules and guidelines throughout development, and help with a script we must put together for a game pitch video that is due in two weeks. Oh yeah, I’ll also sprinkle some extra fun on top of all that goodness =)

On a side note, my website is finally under development! I will keep everyone updated through Twitter, Facebook, and here on my blog. I am always looking for talented people to work and network with. Feel free to follow this RSS and my Twitter feed, friend me on Facebook, and connect with me on LinkedIn!

Friday, March 9, 2012

Final Project Indy Game Journey #1

Today I want to start off my series of blogs following the development process of my final project at Full Sail University. This will cover week 1 which was our pre-production period were concepts were designed. My team and I took the time to agree upon three design concepts to pitch to our three professors acting as our creative directors and advisors throughout the three months we will be developing our final project game.

We accomplished three concepts by having each of the six designers on the team pitch their concept within the team before submitting anything to our professors. After the concepts were complete, voting began to narrow down our six initial concepts into our final three. I then brought the top three design concepts together into one document. That had been submitted to our three advising professors to review and provide suggestions on a concept we should move forward to rapidly prototype.

After voting occurred, the concept I designed was not chosen. I had pitched a design that has the player control a fat cat that becomes faster as they progressed through the level. The objective is to juggle many different objects while dodging a playful dog attempting to tackle the cat to the group as one of the end conditions. If an item hit the floor, it would create a new obstacle for the player to avoid to continue juggling their objects. The player will have power-ups for their player token such as catnip, which increases the player token’s speed and agility. There would also be manipulators for the objects being juggled to alter their physics. This would allow the player to keep objects in the air longer to increase their score and ease play for a short period of time.

I had designed this concept using the MDA game design method I had learned in a previous course at Full Sail University taught by Zack Hiwiller. I like this method because of the focus on gameplay mechanics, player experience, the alternative approach to aesthetics, and what makes the game fun. You are able to see the design easily through your designer's eye as well as easily seeing it from a player's point of view by reversing the process. I think this is a really great method that helps get me through the design process. I am looking forward to see how the MDA method helps our development throughout the next three months of final project. Hopefully I can prove it as a valuable means of design and development to use for later projects.

While we wait for our professor's feedback, we are going to go over our current two concept choices, which are; a tower defense shoot-em-up and a puzzle game with easy swipe and tilt controls. Right now the majority of our team is leaning towards the tower defense game, but our professors seem to be leaning towards the puzzle game. This obviously makes our puzzle game concept a viable choice. By the end of the week we will have the first iteration of our living GDD written up and getting prepared to rapid prototype. This week has involved a ton of documentation, but it has been great learning and design exercise. I am very excited about moving forward, prototyping, and developing a kick ass final project that will make my portfolio look great and finally allow me to enter, and hopefully win, an indy game contest.

(Tower Defense Shoot-Em-Up)
Tower Defense Concept Doc Download

(Swipe / Tilt Controlled Puzzle Game)
Vertigo Concept Doc Download

On a side note, my website is finally under development! I will keep everyone updated through Twitter, Facebook, and here on my blog. I am always looking for talented people to work and network together. Feel free to follow this RSS and my Twitter feed, friend me on Facebook, and connect with me on LinkedIn!