For more than 20 years I’ve been trying to make a vehicular combat game kind of based on the Steve Jackson game Car Wars. I think my first attempt was in 1991 on my Amiga 500. I’ve made several other runs at it on different systems and different programming languages and I always get stuck for one reason or another. Mostly I’m stuck right now because I’m having trouble figuring out how to make it playable on a range of form factors from a phone to a PC and maybe even xbox. It’s also a very big project with a lot to take on and I’m a little (or a lot) afraid of pouring a year or more into it with nothing to show for the effort in the end.
But while I was browsing artwork and playing with some early prototypes I found a 3D car model set that I really like. It has a playful cartoonish look that would work well in a variety of games. There are three sets. Two of them you can see at DeviantArt:
1) Set One
2) Set Two
At the same time I also saw an idea for a traffic control game and thought it would be something fun and easy to work on. I’m really pretty happy with it. I think it’s my best game so far.
Here’s a screenshot of the title page:
It’s an endless style of game. The traffic keeps coming and your job is to tap cars to stop them or swipe cars to speed them up so they don’t crash. Emergency vehicles also come blaring through and you can’t control them so watch out.
I’ve got it posted to both the Windows Store and Windows Phone Store. It’s a “universal” app though so if you buy it on either device you get it on both.
Here are the links:
Windows Store Link
Windows Phone Store Link
Hands down my least favorite part of making apps is the submission process. There’s a lot of tedious detail that needs to get done (screenshots, game ratings certifications, etc). I bet one way to make money on all of this would be to set up a service where someone just does that part for you in exchange for a small fee. It doesn’t take too long but I have a feeling I’ll get rejected at least once.
Cubie’s Color Run is the first app I’ve tried to make that supports languages besides English so I submitted it to a lot more countries. Many have their own rules for ratings and I’m not sure I’ve jumped through all the right hoops.
Fingers are crossed though!
So now I have a moment to think about what to do next. I think I’ll take a couple of days and update my dice rolling app with some ideas a friend suggested.
*Wow! Just got the email that it passed the Windows Store. Still waiting on the Windows Phone Store but that only took about 20 minutes. On a Sunday. I almost feel like that was too fast. Did anyone even look it over? Find by me though, I know it should be fine.
What a great summer right? I had a good time anyway. It wasn’t all play though. I did manage to keep plugging away at my new game “Cubie’s Color Run”. It’s almost done in fact which I’m pretty happy about.
As games go it’s pretty simple. Cubie (a cube with nice rounded edges thanks to my amazing 3D art skills) zips through space collecting colorful stars while avoiding the bad stars which drain him of color. There’s a time limit but he can catch spaceships which give him more time. Oh, and he has to avoid the comet or it’s all over.
I wanted to keep the game simple because the main purpose of the project is really to provide myself a vehicle to learn other things. I wanted to learn how to do a leaderboard in Azure and how to make single sign on work so you could play it on any Win8 or Windows phone device and have your high score follow you. That’s all working pretty well and I just need to find some time to add a bit of polish. I want Cubie to seem happy somehow (little animation maybe) when he catches a good star and I still have to get all the icons and publishing art ready.
As a stretch goal I also wanted to learn how to do other languages in Unity3D. Turns out it’s really pretty easy to get it basically working. What I don’t think I have is a good set of translations and I don’t really have cash to spend on that for this project. I didn’t really expect it to be so easy but since it is I want to do something. I’m going to try and support ten different languages and the first time it runs in anything but English it will pop up a message apologizing for my poor proficiency in that language. I’m not going to translate everything and I’m trying to use symbols that don’t require translation but I’m using the Bing translator for the heavy lifting. I know it will not be perfect but hopefully it’ll be better than English only and get the message across.
Even though it’s a simple game I’ve found that it is fun to play. Been testing it a bunch and I still think so anyway so It’s got that going for it… which is nice.
I wanted to make my next game an endless runner type game but I wanted it to by a bit whimsical and I wanted there to be a character involved. Since I’m not much of an artist I thought I’d go with a 3d cube and name him Cubie. Kind of corny I know but that’s what I’m going for. The working title at the moment is “Cubie’s Color Run”. I like that title for a few reasons. First it introduces the main character a bit. Second it sets up in the player’s mind what the basic task of the game is (something to do with color) and lastly it lets the person browsing the store know what type of game it is (runner). So I’m going with that for now.
Here’s an early screenshot:
Cubie flies along and has to collect colored shooting stars starting with red. Once full of red he starts over with orange and works his way through the color spectrum.
That’s where it’s at right now. Still just something we’re working on here but I like the look of it so far.
Near the end of the development stage of my tower defense game I started to want to rework my dice rolling app based on Unity3d. One of my first apps for Windows Phone, back when it was Windows Phone 7, was a dice rolling app. It’s still in the store and I used it for a while but I found myself going back to using real dice because I missed the sounds and feel that make up the dice rolling experience. To me, rolling real dice is just more fun than pressing a button and reading the result.
My idea for this attempt was that using Unity3d and 3d dice models could get me part way to the real dice rolling experience and keep the things that I like about using a dice app. Dice apps are faster and doing disrupt play with accidental rolls that knock over things on the table or roll of the edge.
I also wanted to work on a project that I felt I could turn around quickly. My ego had taken a hit towards the end of my game development because it just took so damn long to get from what felt like the 80% point to being finished. It was humbling to be honest. There are so many little details in a game that you never thing about but still have to get done. More than that though, there are many things you just have to try to see if it will work. I spent a lot of time on things that ended up not being or adding to the fun of the game and I ended up taking out most of it.
I was able to get this dice app done in a little more than a week and I’m happy with that. More importantly I’m happy with how it turned out. It will run on both Windows Phone and Windows 8.1.
This version is called Adventure Dice in the Windows Store. Here’s a screenshot:
Link for proof: Tower Defender 3D
Wow, it feels good to get that published.
This last stretch took a while for a number of reasons. The most minor one is just that I got a bit busy with other things and didn’t spend as much time on it. The main one though, I think, is procrastination. It’s one thing to toil away in private on something but I always find it hard to make the transition into letting it go. I know there are still problems with the game and I worry that it’s not as fun as it could be but I think I like where it’s at right now so I can let it go. Hopefully others will like it as well.
There were a few last minute bugs to fix and a few last minute things to add. It was also my first time going through the Windows Store publishing process. It was very similar to the Windows Phone process but I did get rejected at one point because I didn’t understand the age rating system. The age 7+ rating is supposed to be ok with cartoon violence but I guess shapes blowing up is too much. My problem is that the next level up is 12+ and I think this is a game a younger kid could play. What do I know though? Maybe I’m just a bad influence. So I set it to 12+ and that’s fine. I will say that I’m impressed with the turn around. I know a few hundred apps per day are coming in so I was expecting it to take a few days. Turn around was a few hours.
Here’s a screenshot:
So now I get to start on the next project. Not exactly sure but I think it will be a 3D version of my dice app.
Getting ready to go to the MS Build conference in San Francisco. I’d wanted to have the game in the store by now but there are still a couple of small bugs to fix and some difficulty balancing that needs to be done. I made the round Roller Bad Guys phase in and out ever few seconds. When they’re phased out cannon fire goes right through them.
This gives them a special ability and forces the player to plan ahead where to put the towers to catch them when they are phased in. It also makes the game quite a bit harder.
I’m also thinking about the consequence of failure. When the player fails a level and has to start over how much money should they start with? How much money they have progresses from level to level. If you save more early on you’ll have more on later levels. If they fail I think I’ll have the level start with the same amount of money they had when they first tried it and add a little on each attempt.
Anyway, I’m having fun playing through it now and I hope to post it soon. The nice thing about using a Surface Pro as my main system is I’ll have everything with me on this trip. Maybe I’ll be able to post it from Build.
I think all the major bugs have been fixed and I added some new things that I’m pretty pleased with.
- The Round Bad Guys now do a nice looking egg shell breaking animation when they die.
- I added a blue heal ray effect to the Pyramid Bad Guys so they heal other injured bad guys. It not only makes it harder but adds a liveliness to them and makes it feel like they’re fighting back:
- I upgraded the hover sleds to hover sleds with shields. Here’s what they looked like at first:
I was initially thinking about making them shoot back and damage towers but that would have added a lot more complexity and changed the balance of the game too much. So instead I made the front “cannon” part be a shield projector:
The shield deflects all damage from cannons but not lasers. The freeze towers also short them out for a brief time.
- Another thing I was thinking about from the beginning and am happy I got working is an AI system for the towers.
The player can set a target preference and set if it stays on the current target until it dies or leaves range or if it switches to a new “better” target as soon as it enters range.
I’ve said this a bunch before but I’m still amazed by how much work it takes to make even a small game and try to get lots of little details right. There are still some minor bugs and game balance issues but it’s getting there. I wanted to get it finished and in the store by the time I go to MS Build but I don’t think that’s going to happen. I’m not to worried about it though. It’s getting there and is even starting to be fun to play which is really the whole point.
I really wanted to get this game done this weekend. All the big issues were handled and I just had a medium sized bucket of details to wrap up. Then I did a round of device testing and all of that is in doubt now.
The game worked fine on my phone and on my Surface Pro but not on my Surface RT. For some reason all the UI decided it wasn’t going to show. No errors or anything. The buttons just don’t show up. Works fine everywhere else though.
Unity is a really nice powerful system that handles a lot of the details for me but when things don’t work it’s not always easy to understand why. On top of that I’m using a 3rd party gui system called NGUI. New versions of both Unity and NGUI were available but I’d been avoiding doing an upgrade because I didn’t want things to change on me this late in the project. With things in a broken state that was less of a concern so I went ahead and upgraded both and started over on the UI.
On the bright side I really like the new version of NGUI and in the long run my buttons are going to look better. Redoing all the buttons and text is going to be a lot of extra work that I hadn’t planned on though. Looking back a few posts I see that I originally planned to have the game published by the end of January. That didn’t happen but I’ll try to have it done by the end of February.
Update: Big thanks to Aren Mook (the NGUI guy) for helping me figure out what my issue was. Turns out stuffing lots of large images all into one atlas isn’t a good idea. I probably should have known that but I was busy thinking about all the other things too. It’s working now though.
I often turn off the music in games I play. If not right away I do after I’ve been playing them for a while. Usually this is because the music is either too loud and takes me out of the game or just not something I like very much and it gets old.
While looking through http://opengameart.org/ for sound effects and music I came across this guys music:
I really like the search / play feature of his website.
A lot of the music is perfect for my tower defense game because he made it for a space based tower defense game of his own. And I like it. I’ve been testing my game for a while now and I have it rotating between different tracks and it just makes the game seem so much more like a real game.
Other progress of note: I didn’t want the sound on/off icons to just be regular flat icons. This is Tower Defender 3D! So I made some 3D icons (a speaker and music note) in Blender. It took me a while to get the lighting like I wanted but it’s working out pretty good. I also learned how to do a singleton pattern in Unity so the music keeps playing from scene to scene. Lastly I changed the Incoming Ship notification panel to look a bit better. Here’s a screenshot of one of the levels: