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/