Welcome!


Welcome!

This site showcases the thesis capstone projects for the Full Sail Mobile Gaming Master of Science program. Students completing the program post their end of program project self evaluation here examining what went right and what went wrong during production.

The site provides examples of all completed projects, without regard to the quality of work. Final faculty evaluation of your project is separate from your postmortem. It is a place to share student work and start dialogue with faculty about completed and upcoming projects.

If you are adding a postmortem for a completed project to this blog, please do your best to provide a meaningful meta-level evaluation of your project. This helps students currently in the program have a better understanding of the critical points related to independent production, game development and design and project management. The template for the blog content and instructions can be found in the first post from July 2014.

Thank You,
MGMS Faculty

Friday, February 24, 2017

Capstone Game Post Mortem: Coal Mine Escape

Capstone Game Post Mortem: Coal Mine Escape

Ryan Strong

MGMS Program

Full Sail University

February 2, 2017


Game Summary:

Game Icon


Title
Coal Mine Escape

Genre
Racer

Platform(s)
Android

Revenue model
Free, plan to use as vertical slice to place on Kickstarter for initial funds to help with creation of new maps and bikes.

Development tools/Language
-         Unity 5.4.2
-         C#

Game audience
Primary: Boys and Girls Ages 15-25

Team
The majority of the game was coded and designed myself, but I also used a few assets from the Unity asset store to help.

Copyright/Reference
Ryan Strong


Backstory:
Sound Bite
Coal Mine Escape! Can you get out before everything around you is left in ruin?

Executive Summary
Coal Mine Escape (CME) is a racing game with a twist. The player is set up on a dirt bike on a dirt road in the mountains of Tennessee near some coal mines. The player must use their skill to navigate tough terrain of the mountainous region by staying on the track and avoiding obstacles that show up in their path. There are Explosions around most turns that leave debris in the path of the player that must be avoided.

Demo Video


Inspiration
A few years back I was driving from Virginia Beach to a smaller town in Tennessee to visit my father and brother. While driving through I saw all of the mountains and the trees which gave me a feeling of serenity, it was peaceful and quiet. I chose this as my main area because of how it looked and felt. Then I thought what it would look like if there were something to go wrong with the mines, Tennessee is filled with old coal mines that are no longer in use. Using that as a main theme allowed me to come up with the idea of a series of explosions rocking the mountains. This to me made for a great set up to put the player in, they must escape before they are caught up in all of the destruction.


(Feds move to ban coal mining in East Tennessee range, 2015)

Ideal

I wanted a game that really put the player in the mindset of being trapped in a mountain area trying to escape. The player would feel like they had to hurry and get out before something bad happened to them. I wanted the trees to look like the ones that you see when you drive down a long stretch of highway, lots of leaves and green, but this wasn’t feasible with the limitations of the devices in use. I also wanted to have more foliage added in the form of flowing grass and nice bushes.


The Critique: What went right…


Design & Aesthetics
When dealing with the final design of my project I would like to initially point out that I was primarily focused on the actual aesthetics of it over some of the other aspects. This helped me put together a much better overall area for the game. One of the main things that I want to point out was the use of road signs in the game. I point this out because there are certain parts of the level that when the player is going through them, they have a lot of issues because the turns are much sharper than you would think they are. I placed road signs to help the player to understand that it was coming up and that they should slow down to be able to navigate that turn much more smoothly.




When looking at the Heads-Up-Display (HUD) in the game, the player is able to easily distinguish between the different aspects of the controls. I wanted to go with something that was more familiar to the player than something that wasn’t, so for the turn controls of the bike I utilized the arrows, this lets the player know that they will use them to actually turn the bike rather than what I originally went with, which happened to be one of the sides of the handlebar with an arrow attached to it. I attempted to make it all look extremely smooth so that it was more appealing to the player. The tachometer I went with actually helps with this as well, it provides a lot of information to the player in a small area, but luckily this information is something that is very easy to see and understand. While I went with MPH for the actual speed of the bike, I am not limited to that, I also have the ability to switch to KPH for the markets that mainly rely on those for speed.




One of the most important things that I added to the game that I felt really added to the feel that they had to escape was the use of different particle effects. Adding fire and smoke to the scene really gives the player a feeling that something is wrong, it helped me to tell a story. This game is nothing like any of the other games I have played on mobile device before, most of the motorcycle style games I have seen and played tend to put the player on a normal street just racing around or trying to avoid cars, I wanted something different, so I went with this style instead, letting the player see debris and disaster strike at multiple turns in the game.

The majority of the assets in the game I either purchased or found for free on the Unity asset store, this was very helpful in my design. I was able to take all of these items and either manipulate them to how I needed them for the game or to place in the position that I needed them to be at.

Project Management
For the project management side of my game, I actually didn’t use Underdog very often. The main reason for this is I found it much easier to utilize Google Drive and create a shared Excel document that my advisors could access at any time. I was able to put all of my tasks for each milestone into a separate sheet for each milestone, this helped me to order my tasks properly so they could be completed in a timely manner and if something didn’t work out one milestone, I could push it to the next for completion.

While I didn’t use Underdog for any of the scheduling, I did use it completely for the submission of my actual files, this was very useful especially if I needed to go back to a previous upload because of something breaking. I didn’t however use it for my builds, initially I put all of my builds into Underdog, but unfortunately, Underdog only allows for files sizes up to 100mb, this didn’t work out for me in the end as my file size actually exceeded that size by about 10 to 20mb. There for I utilized a Dropbox account that I created, I then shared with my advisors, I also set it up so anyone with the link to a specific build could download it at any time.

Development
One of the best choices I made when putting this game idea together was to utilize the Unity game engine. This game engine provides you with an enormous amount of stuff to choose from. I was able to create nearly anything I needed in a much shorter time than if I had to build everything myself. I utilized a lot of premade assets I purchased on the Unity store, this helped me with the design and development of everything with little to no extra work on a lot of items. I stuck to what I know when it came to any sort of coding or scripting, utilizing C# as my primary language helped to get the work done quickly and efficiently. Another nice thing that Unity did for me was in the form of physics, a lot of leg work is already done for you in the Unity engine so that you don’t have to worry as much about figuring it all out for yourself.

Testing
I found that testing of my game was a very important part of the entire design and development process. This was primarily due in part to the fact that I thought that certain things I put into the game would be easily understood or others that didn’t need much explaining at all, this couldn’t be further from the truth. Utilizing testing by either doing the testing myself or utilizing people to test for me, allowed me to see these flaws and to also see other minor things I didn’t notice.

Testing was a bit of a hard one to get because the majority of the testers I wanted weren’t easily available, so I had to rely on utilizing people that had tested the game for me once already, while this did get me a lot of the results that I needed, it also didn’t get me fresh eyes on the project. In the end, I was forced to utilize other forms of media to get my testers, I used Skype video calls to get a lot of the testing done, this was the only way I found it possible to get testers that hadn’t seen the game before, it did work out well in the end, but initially it was a bit taxing as people had to work around the limitations of the computer’s camera to get a proper test done.

Business Model/Plan
For my business model, I decided to go with a game that was completely free. I did this because one, I wanted to get my name out there, and two I wanted people to see I am willing to give them a game that would normally cost a few dollars on the store for free and it be something that was actually worth picking up. This to me is more important in the long run because it would give me a fan base and a following that in the end would be more willing to pay for another game in the future.

That being said, I also don’t plan on working on this game for free. I plan to put this game onto Kickstarter and attempt to raise funds that will help me be able to hire a few artists for more motorcycles and others for more tracks. This will make the design and development of the game go much smoother in the long run.

Other
One thing I would like to point out that probably helped me out the most in this entire endeavor, was taking time away from the project as a whole at times. There were many times when I would get stuck on something and not be able to progress past it, I would search for hours and even days online for answers to fix something that went wrong, not finding anything to help it. In the end, I would look at it and say, “you know what, I am done with you for now”, I would then leave it and not come back to it for either several hours or a few days. Then it would finally come to me, the problem that I was having was much easier to fix when I had a clear mind, I wasn’t thinking about what the problem was anymore, so it would just come to me. I think this is what really helped me to succeed, time, a very important thing.


The Critique: What went wrong…

Design & Aesthetics
The biggest problem that was faced during the design and aesthetics phase of my development process was when I decided to place a certain type of tree in the game. The trees that I chose to use were ones that looked more like a normal tree you would see if you looked out your window on a long drive through the county. The main problem with having these trees in the game were the number of polygons attached to make the tree look so remarkable. It had such a high poly count that when the game was loaded onto a mobile device, it basically put a stop to gameplay, the device would run extremely slow, preventing the player from being able to play the game. This was an enormous problem that had to be fixed right away, the easiest fix I found was replacing the trees with ones that had a really low poly count, making the game look a bit less than what I wanted it to look like, but still be able to function properly for players to play it.

Project Management
Initially when I put this game together, I had this grand idea of doing a game that involved other motorcycles racing against the player on multiple tracks. I wanted to have all types of race tracks for the player to choose from, letting them have a different experience for each race. This ended up being something that was completely out of scope. I ran into multiple issues getting everything to work properly, it would have taken months more than I was allotted to complete the project in. In the end, I decided on creating a completely new map with a single track that the player would have to race on and attempt to escape.

Development
Development was something that could have gone much smoother for me to start but unfortunately didn’t. The first major problem that I faced was one that I briefly mentioned above, dealing with the AI for the initial levels I wanted to have in the game. I spent days researching and attempting to get just one motorcycle to work as an AI element, it would move from one point to the next in a series of navigation points, but the animations for the bike didn’t function at all and the bike would constantly fall to one side while it progressed forward. I would spend the better part of two weeks attempting to get this to not happen, but my attempts were fruitless with this endeavor. Not only did I research as much as possible, but I also went as far as to get in contact with the developer of the asset I was using for the motorcycles to see if they had any recommendations or solutions to help, the only thing they could point me to was another asset that was no longer available for people to utilize. I had to abandon that attempt which in turn completely changed how the game played and looked.

There was one more thing that really went very wrong for me during the development phase, sharp turns. I wanted to add a sort of sharp turn to the game so that when the player arrived at one of the sharper curves on the track, they could hit a separate button which would allow them to make that turn without having to slow down if they didn’t want too. Initially I looked at changing the variable for the slip mechanic in the game, this did work slightly to allow the bike to make sharper turns, but it would only work in specific circumstances. If I set the slip value to what it needed to be for the bike to make the sharp turn and leave it as such when the game started, then the bike would do sharp turns constantly, it wouldn’t allow for less of a turn, the same was true for the reverse, if I set the value for a normal turn, you couldn’t do a sharp turn. I thought that creating a button, that when activated, could change the value of the slip, thus allowing the player to make a sharp turn at specific points in the game. Unfortunately, this didn’t actually change the value in game for the player, no matter how much I tried to get it to work, I couldn’t get it to function properly, leaving me with having to instead go a completely different route. I created instead a change in the max speed at specific areas on the track so when the player arrived at that point, they would only be able to go a set top speed, this limit made it possible for the player to make those turns much more easily.

Testing
Testing was a very difficult part of the entire development process for me this past few months. It was very hard for me to get different people to test the game, or those that said they were available when it came time to test were no longer available. This hurt my chances at achieving the most information possible from multiple people that would play this game. One thing I did do in the end that helped slightly was getting people to test over the internet, I would provide them with a copy of the game they would download onto their own mobile device, we would meet up on their preferred video messaging service, I was able to watch them play the game that way and record it for future use. This actually helped out slightly, but was still not as beneficial as having someone actually near me testing it.

Business Model/Plan
Since I made the decision to make this game free for anyone to play, I limited myself in the ability to gain any monetary value. While this is unfortunate for most, it is actually something that I feel isn’t as much of a what went wrong as opposed to being something that could help in the long run.


Summary:

While I was not able to complete what I originally put together for my project, I am overall happy with the final outcome. Once I took the time to design a completely new idea, I had a very strong idea setup that I was able to follow. This ended up being the game as we see it now, Coal Mine Escape. I believe that taking the time to revamp the original idea into something new is what gave me a new excitement into designing the game. This was much better for me in the long run, I took a lot of time creating something that I could be proud of.

While I personally feel this game is great as it is, there are still things that need to be done before it can be released to the mass markets. It would need to have more levels created so players have more to do, they currently are only able to complete the one level, this isn’t something that people will want to play more than once if that is the case. They might enjoy the fact they are able to attempt to get a higher score, but that is something that will get old fast, especially once they realize they have basically reached the highest possible score they can achieve. I would also add more motorcycles to the game so people can give themselves a bit more difficulty. To do these I would work with other developers and artists to create all of the levels and motorcycles.

Since this is the first game I have developed by myself, I feel as though I have completed a lot and was very successful at completing it. I learned a lot from my experience working on this game, things like what can and does go wrong when trying to develop a game from scratch, to other items that are much easier to complete. Since I was the only one doing all of the work to get this game to fruition, I was able to work a bit on some of the actual art side of the game as well, this really helped me with practice that will be needed for future endeavors into the whole mobile development side. I am happy with the experience I gained while putting this project together and hope others can enjoy it as well in the future.


References

Strong, R. (2017). Coal Mine Escape [Android Application].

Kickstarter. (n.d.). Retrieved February 24, 2017, from https://www.kickstarter.com/

One account. All of Google. (n.d.). Retrieved February 24, 2017, from https://drive.google.com/drive/my-drive

MGEMS Courses. (n.d.). Retrieved February 24, 2017, from https://edo.fullsail.edu/underdog/projects/mgms-courses/documents

Login. (n.d.). Retrieved February 24, 2017, from https://www.dropbox.com/home

Celebrate the season together, wherever you are. (n.d.). Retrieved February 24, 2017, from https://www.skype.com/en/

Feds move to ban coal mining in East Tennessee range. (n.d.). Retrieved February 23, 2017, from http://www.timesfreepress.com/news/local/story/2015/dec/12/feds-move-bcoal-mining-east-tennessee-range/340170/

Unity. (n.d.) Unity - Game Engine. [Android Application]. https://unity3d.com/