January 07, 2015

Not exactly a New Year's Resolution

This year for New Years I have resolved to not make any New Year's Resolutions. After all, like most people, my resolutions don't last much beyond the first week. I am making an effort to do more writing, which also means my always sporadic blog posting is going to become even more irregular than it already is. For the first time in half a decade, I have also decided to take another crack at game programming. I mean, if no one out there can make a game I like then the only choice I have is to make it myself, right?

In December I spent some time participating in "Alpha" testing for two new games: Project Gorgon and Valiance Online.

Project Gorgon is a classic sword and sorcery fantasy game. Since it is still in the very early development stages it has plenty of problems (NPCs who are missing body parts, using one character model to represent multiple enemies, and so on). On the upside, all of it's game systems are mostly intact. It is possible to create and delete characters, explore the game world, run a wide variety of missions, explore the innovative skill-based character progression system, communicate with other players, and trade with other players. Considering how rough some of the "Pre-Release Open Beta" tests I've participated in were, this game is off to a really good start.

Valiance Online is billed as a "spiritual successor" to City of Heroes. Nothing will ever replace City of Heroes in my heart, not even if I make it myself. This means that any game which claims to be designed in the same spirit is going to have to go a long ways to impress me. Unfortunately, Valiance Online falls far short of the mark. It is possibly the least complete, least functional pre-release test I have ever participated in. The one thing it does have going for it is I could not find a single hole in the map. Even Project Gorgon has a couple holes in the map. However, there are a dozen NPCs that offer missions which cannot be completed. The few missions that can be completed have poor connections between the mission start and the mission goal. Whatever tool they are using to design missions does not script the mission completely from start to finish, which makes it a bad tool. This does not bode well for their future as a game, or even as game designers.

There are a handful of groups out there trying to create a replacement for City of Heroes. All of them are collections of former City of Heroes players with some degree of skill in programming, computer graphics, computer storytelling, etc. These four are the ones I know of which have the best potential to actually have a game in the market sometime in the next two years:
Valiance Online
Heroes and Villains
City of Titans
Atlas Park Revival

Yes, despite all of the problems with the current version, Valiance Online does have a working map, the ability to create characters, a few enemies, and a few missions. It's off to a rocky start but even a rocky start is better than no start at all. None of the others have anything more than a forum and some concept art. There are rumors of licensing deals and secret projects floating around all over cyberspace, but the four above are the only ones that look to me like they have a realistic chance at producing something I would be willing to hand over hard earned money for the privilege of playing. Make no mistake. Playing City of Heroes was not some kind of right or entitlement. It was a great privilege and a great honor to be able to experience Paragon City, the Rogue Isles, and Praetoria. Countless hours of hard, hard work went into making, maintaining, and improving City of Heroes. There were good times, there were bad times, but mostly there was an endless variety of player characters, hundreds of missions, and even the Mission Architect which allowed me to make my own missions and play through them. No game has ever offered the variety of play that City of Heroes made available and not a day goes by I don't miss the freedom to log on, create a completely original character, and then run through a couple hours of game play.

Watching the five games mentioned above does get me to thinking, though. Software tools have come a long ways since the first time I used DOS batch files to make my computer talk to me. While it is true that Pascal confused me, C++ nearly drove me insane, and good old C proved useful but limited, C# is made to be as simple as sliding together graphical elements and running a compiler to produce a working prototype. For database interfaces, computerized information terminals, and the like, most C# environments will allow even a non-programmer to slap one together in a couple of hours. Programming a game, on the other hand, is an entirely different animal, but still, there are now tools out there which make it easier than it has ever been.

One of those tools is called "Unity". While not as simple as most C# environments, Unity is designed to be a game engine and only a game engine. It is specifically designed around the idea that it should be possible to go from concept to prototype in less than a week. And while a prototype is not a complete, working game, if the prototype does prove pleasing, Unity has all the tools available to take the next step and produce a working game. It doesn't happen overnight. Two of the five projects mentioned in this post use Unity as their foundation. While that might not seem important, those are also the only two of the five that have a working Alpha test out there. That's right, the one thing Project Gorgon and Valiance Online have in common is both games are being built with the Unity3D game engine and IDE. I find that very encouraging. The Unity Asset store has hundreds of graphic sets, sound sets, basic games, textures, and other components. Anyone with a background in programming should be able to download the free version of Unity, drop a couple thousand dollars in the Unity Asset store, and cobble together a working game. To transform that working game into a commercially viable product will take some time, but there are literally hundreds of mobile phone games out there right now which were built on the Unity2D game engine using components from the Unity Asset Store. One of the big reasons so many mobile games look and feel exactly the same is because they are using the Unity game engine and Unity online store.

I'm looking at all this and I just can't help thinking to myself that if some of these other people can do it, so can I. After all, I've done a bit of computer programming here and there. Nothing worth mentioning but enough that I know the difference between an object, a method, and a pointer. I bought a couple of Kindle books from Amazon about game design, the Unity game engine, and C# programming. As long as I'm sitting here in Tokyo I might as well read up on it a bit and see how it looks. I'm writing something everyday, so the writing part of my New Year is off to a solid start. Reading programming books is more productive than staring at a Japanese television screen. Besides, now that City of Heroes is definitely never coming back, I don't have much else to do with my free time. I might as well grab a few books and a copy of Unity and see how it goes. Knowing me, nothing will come of it. I am notorious for starting things I cannot complete. Still, pretending to study game design is better than staring at the walls slowly going insane.