I am currently working on an iOS game in my "free time" (haha, I don't really have any), mostly to learn what it takes to make a mobile game. My day job is making PC games but I feel it's my duty as a developer to stay informed of the current trends, and mobile games are surely the trend right now.
My goal was to learn the ins and out of the iOS platform, and what sort of unseen challenges mobile development can bring. In my experience I have discovered developing certain types of games, or developing certain platforms, can have large unseen challenges which must be taken into account when designing or managing a project. While I certainly learned many things about iOS development, I also have learned a very important design & development lesson. A lesson I am hoping I don't forget about when I start my next project.
That lesson is this, when you first start on your game, you are at your weakest. You don't have the hang of the development pipeline quite yet, maybe your art style or technique is 100% refined or maybe you don't have a full roadmap for the game. However, when developing a game, you often start at the beginning. You start at level 1, and then develop to the end. This means your later game content will be of greater quality than your early game content.
The problem is,of course, more people interact with your early game content than your late game content. If you early game content isn't the best it can be, players won't ever make it to your late game content!
In my current project I have definitely fallen into this trap. My first boss fight is pretty terrible. It's confusing and doesn't build properly on the skills players have built up to that point. The other boss fights are pretty nice! Especially the last boss but who is ever going to get there when the first real payoff moment for players is so weak?
So my new rule is – do your first boss last. This is when you will be at your best and you can give your best to players.
What is FusionFall Heroes?
FusionFall Heroes is online multiplayer 4-player co-op beat 'em up featuring heroes from the Cartoon Network universe. Players can choose their favorite hero, run missions with their friends, beat up baddies and earn coins. Players can use their cash to buy "blind boxes" which will reward them with new heroes or rank up their existing collection.
You can play Finn, Dexter, Four Arms, Mordecai and Gumball. Not only that, but we have tons of hero variations. What about Dexter with the Null Void Projector, that can send enemies to the Null Void? Finn with Generator Rex's sword? What about Mordecai taking down enemies with his guitar?
Loads more heroes coming soon 😉
Why Co-op Multiplayer?
Cartoon Network Games Studio focuses on multiplayer, multi-property games. While we love to make competitive games (e.g. TKO and Exonaut), we heard a lot of feedback that many players don't want to compete. So we wanted to make a cooperative games for player who wanted to play together, not against each other. We also included solo modes for players who want to get the hang of the game by themselves before teaming up with other CN fans.
Why in the FusionFall Universe?
FusionFall is an awesome game and a great brand. It's still popular and has a very loyal following. We wanted to give fans of FusionFall, and new players who are unfamiliar with the brand, way to have a quick, bite-sized play sessions of FusionFall. FusionFall
One major goal was to make sure everyone could experience FusionFall Heroes. That means no login or registration is required to play. Another things we are responding to, players wishes to play as the Cartoon Network heroes.
We are all super excited about FusionFall Heroes. I hope to see you all in the game!
Cartoon Network Games Studio's new game, FusionFall Heroes has been announced! Watch the teaser here: http://blog.cartoonnetwork.com/2013/03/19/coming-soon-fusionfall-heroes/
Stay tuned for loads more info about our new game.
I got a Team Umizumi math game for my 4 year old daughter. She loved it! Some of the games were a little over her head but she still played them because it was fun to just pop bubbles and such.
But then I noticed her behavior change, she stopped playing the newer, more challenging games and started playing the same game over and over. One that was easy, and she knew very well. Why?
"If I get 5 trophies Team Umizumi does a dance!", she told me.
Yes, achievements. If she got 5 trophies, she got a super trophy and a little cut-scene. So instead of just playing the game, she quickly figured out the easiest way to get the goodies.
I have a long commute to work. During my drive time I listen to audiobooks. I listen to many different things - comedy, fantasy (a lot of fantasy), science fiction, non-fiction, lectures - a varied mixture of genres. This past year I tried something different, I decided to catch up on all the classic sci-fi books I had heard of but never read. Here is the list and what I gained from each title and how it inspired me.
- Ender's Game - This was a big one on my list and it did not disappoint. It's difficult to glean much game design inspiration from a book that't about a kid caught in a game that is being manipulated to be as difficult as possible to impossible. We game designers are supposed to be making winnable games for players! However, there is a lesson here, if someone always believes that someone will help them, they will be less likely to stand on their own. Perhaps game can stand to be a little more stingy with help bubbles and such.
- Speaker for the Dead
- Stranger in a Strange Land - seems like an attempt to start a cult.
- Neuromancer - Interesting read of the 'birth' of cyberpunk.
- The Forever War
- Foundation and Empire
- A Canticle for Lebowitz
- Cat's Cradle
- Slaughterhouse Five - Hands down, one of the best books I have ever read.
- Do Androids Dream of Electric Sheep - Unbelievably disappointing. What a jumbled mess of a book with MASSIVE plot holes. Movie much better than the book. Who knew?
- Fahrenheit 451
- The Mote in God's Eye
- The Difference Engine
- Brave New World
- I, Robot
- Starship Troopers - It's amazing to me how many of these classic, famous sci-fi books are barely sci-fi. You could easily replace 'bugs' with any enemy on Earth and have a mundane boot camp & war story. That being said, this book was an well-told tale of a man's time in boot camp and first contact with the enemy.
- The Moon is a Harsh Mistress - Heinlein has some weird about about society. A place where somehow the constant threat of death for the smallest infraction from a mob creates some sort of psudo-utopia? Lots of fun ballistics though!
- The Cat Who Walks Through Walls
- Gateway - Wow, just wow. This book's plot is a perfect template for an MMO. An high risk/reward MMO full of permadeath 🙂
- Fall of Hyperion
I can't go into too much detail about all these books. I have been trying to wrap up this blog entry for 2 months! There were many inspirations and insights in this books. While I did get a bit sick of "space travel is boring" theme, which many of the books touched on, this was a great year of reading.
There is a good deal of debate on the value to randomness in game design. Many designers have a snooty idea that randomness is a crutch. Other designers, especially board game designers, will tell you randomness is a key component of a successful, long lasting design.
It's easy to see randomness everywhere in games. Most board games rely on dice to generate random behaviors. Heck, it's hard to think of a board game that doesn't use dice. Video games' grandaddy, D&D, even made up all kind of new dice to create even more tables of randomness.
Clearly, randomness works. It's sometimes good and sometimes bad, but why?
I believe that the need of randomness is inversely proportional to the complexity of a system. If the system being simulated is complex enough in itself, it does not need randomness. If the system is not that complex, or perhaps more importantly, if the players inputs to that system are not widely varied, randomness is not only a good idea, but required.
You can take a measure of your game for what I call "situational randomness." Are there enough inputs and systems in your game that create a hugely wide variety of situations? Will a player's interactions with these systems have plenty (but not too many) opportunities to create magic moments where all the game elements align just right to create a moment worthy of telling their friends about? And will their interactions with these systems be somewhat unpredictable?
Lots look at some examples. Imagine you have a simple "apple drop" style games. Apples drop, the player catches them. Maybe you do something clever like color the apples and if you catch so many of the same color in a row you get a bonus. In this scenario, the system is not very complex. More importantly, the player has literally no input into the system, just reaction. This game is going to create the opportunity for magic moments (say catching the same color of an apple 5x in a row) through randomness. There really is no other options.
Now imagine another game, lets call it apple battle. It's a dual sticker shooter where apples attack you from all sides. Your bullets will continue through targets like a laser. If you can shoot 5 red apples in one shot, you get a huge bonus. Here the player has more say on their opportunities. They can move around attacking the apples from many different angles. The apple generation is still random. What could we do to remove the arbitrary randomness?
What if the apples, instead of just disappearing when shot, moved back and exploded with physics, affecting other apples around it, bouncing them around all physics-like? Now this is something the player could interact with many times, and get the different outcomes. You could make the generation of the apples the same patterns, and the outcome of interaction would be different nearly every time. When something really special happened, the player would feel accomplishment. Under this scenario, randomness is probably not needed at all.
Now imagine exploding apple drop was multiplayer. Now you have an unpredictable system with multiple inputs. Now, randomness could be flat out bad. Randomness could greatly benefit one player and punish another. If players have influence over the randomness through, controlling stats that random rolls use, that works.
Board games simply cannot create widely unpredictable systems like this. They need randomness to create the feeling of an unpredictable system. However, video games can easily create simulations of complexity without ever needing random dice rolls.
Situational randomness is relying on players making the right choice, at the right time, in the right situations, perhaps with the right amount of resources, to make magic moments happen. In your game, can players predict the chaos enough, and react quickly and correctly to influence the system as they wish?
Randomness certainly has a place, but recognize when your game does not need it.
I am very excited to announce our latest update to Project Exonaut. It's been a while since our last update but we have made up for the wait with a ton of new content.
Atlas Exosuit - Penny
Gumball's crush, Penny is the Atlas equivalent to Banzai's Bobo Haha, quite possibly the most dominant Exosuit on the Banzai team. Very high tech and a double-shot Bulldog makes Penny a top-notch Exosuit.
Banzai Exosuit - Tina
Tina is a heavy tank with a far-reaching Marksman. She is the Banzai equivalent to NRG. Most people on the team here think she's even better.
High-level players said they needed something to spend their credits on. I have been teasing something special for high-level players and here it is, special gold variants of Exosuits. These Exouiits not only stand out visually, but in their abilities. These are not just re-colors, they have new stats and weapon mods which fit the high-skill play of our of top Exonauts. They can be yours for only 100,000 credits a each.
New Map - Elmore Carnival
Battle among the Gumball-themed Elmore Carnival! Check out the cool roll-through area in the lower-left, adding a new play dynamic.
New Map - Battlescape Gamma
Veteran Ben 10 Bounty Hunter's player may recognize some elements of this map, as it's a re-imagining of the Moltekron map from our previous shooter. It has been streamlined for Project Exonaut and really lends itself well to long-range sniping.
At some point in time you are going to have to cut the scope of your game. You are going to run into a resource issue be it time, money or people, or perhaps a certain feature took 10x longer to implement than planned. It's going to happen.
When scope cuts come, they feel like a punishment. "Everyone didn't work fast enough so we have to loose features!" But the reality is that people have a very, very hard time accurately estimating time to complete a task. This isn't saying "people in the games industry" can't plan well, poor time estimation is a inherent human flaw. And most people in they games industry are human. So from the very beginning of a project, you are going to have incorrect time estimates.
Step 1 - Scope Cut
The very first step in a design process should be to cut scope. You should trim away anything not truly needed for the game to be complete. When I say complete, I mean that the game covers all the core dynamics and compulsions truly needed for the game to succeed. For example, if your game is a dungeon diving game, you need loot to drive the replay compulsion. You cannot cut loot. But could you cut the feature that loot changes your player's appearance? Yes, you could. Or could you simplify "left-earring slot, right-earring slot, eye slot, nostril slot and head slot" to just "head slot"? Yes, you could.
Find the most basic set of features that completes your game. Why is this so important? Because these features CANNOT be cut. You need to define the set of features that if one of them gets cut, the game does not work. It becomes another game entirely and has to be redesigned.
A complete game design is like a recipe for cake. It will not be cake without all the ingredients. Adding more sugar and butter might make it tastier (but not good for you!) but removing sugar would make it something else. Biscuits, I guess.
Creep Happens = Cuts Happens
As a project progresses, new ideas and features get added to the game. At the time, a single item seems like a small addition, but multiple people making small additions over a few months adds up. Occasionally you should go back through your design and trim features that the game could live without. You will often find features that contradict or duplicate compulsions or dynamics you want to create. This way scope cuts don't feel like a punishment, but just a part of process.
Nearly every time our team cuts scope, we come out with a better product. It's more focused and streamlined and we create more time to polish and refine the existing features. The only time cutting scope is "bad" is when it cuts into the features of what is a complete game.
We got to add Rigby and Skips from Regular Show! Rigby is a fast, Tridex-weilding exosuit. His Tridex deals many shots in a short, high-damage burst. Skips is a fast double-firing Ballista user.
We made some really important fixes.
- New players no longer get stuck at "LOADING" after initial exosuit selection
- "Invisible players/weapon switching/phantom weapon firing" bug fixed
- Invincible indicator not appearing sometimes - player will now see a new effect to indicate invincibility after being released from a capture bubble.
- Music now plays on menu screen when an event is not occurring
We have more updates coming soon!
I just lost half a day to this issue, so I thought I would share this find so others can avoid this pitfall.
We have a game that loads levels, these levels are individual asset bundles that are loaded at runtime. We tested a level and then made some changes. The changes didn't show up? OK, bundle the level again and upload. No change. Delete the level, upload again. No change. Delete the level. THE LEVEL STILL LOADS?!
Turns out, even in the editor, Unity uses the web cache. You can see your project using the web cache here: http://webplayer.unity3d.com/setup/ - it looks to me even if you check "Disable all caching", it still caches.
So if you are using asset bundles and you make a change but your asset does not seem to update, delete the web player cache.