Editor’s Note: I know by now you’ve fallen madly in love with Mike’s narrative style, but this week we’re switching things up. It’s time to kick the business major out and get a bit more technical. To that end, this week’s post is written by our lead (and only) developer, Rich Knieriem. Enjoy!
Last week you heard about some of the exciting progress we’ve made on the game thus far, including a fully playable tech-demo level. I want to talk a little bit about the types of tools I’ve used so far in creating that level and why I think they’re part of the wave of the future.
As the team’s leading “expert” in software development, I was put in charge of creating the game’s engine. After a few laughable attempts at building my own I went in search of a ready-made one. It didn’t take long before I started running into engines built on HTML5. I decided to give one of them, Construct 2, a try. And believe me, after a few Hop Czar fueled learning sessions, I was firmly on the HTML5 bandwagon.
HTML5 is a relative newcomer to the coding arena, but it’s far from obscure. Popular video services like YouTube and Vimeo have already switched to HTML5. Even the vaunted Netflix has begun to supplement its Silverlight video player with an HTML5 player. HTML5 is quickly gaining ground and it’s not hard to see why. Barring minor differences between modern browsers, HTML5 offers a truly platform independent experience. I mean really, your code can run on anything. What other language offers that?
I realize that some people may dare to disagree. So, for your benefit, I’ve listed a comprehensive summary and refutation of any possible arguments against HTML5:
Q: “What about flash?”
A: Who the fuck still uses flash?
A: Hahahahaha, no.
Q: “Oh…So you’re just making a web game?”
A: Not quite.
Frameworks like PhoneGap or Construct 2 allow users to create something in HTML5 and port it to any type of device they choose; this is why I chose an HTML5 based engine. With a simple click of the mouse, I can build the game to any device I want. Anything from a PC to an Iphone is fair game. Hell, I could probably get it onto one of those smart fridges if I really wanted. Our game is a desktop game, but it could be a phone game later, or a web game, or pretty much anything we want. And even if we never try to expand it beyond a desktop game, it will be easily portable across Windows, IOS, and Linux operating systems. That alone is enough reason to use HTML5 for a time strapped indie developer.
I may not be a AAA title developer, yet. But, don’t let the detractors fool you. HTML5 does have enough power to make it onto the big stage. Seriously, it isn’t just for angry bird clones. Full 3d graphics, offline asset storage, and socket based networking are all possible with HTML5. It won’t be long until AAA titles begin to hop on the bandwagon. In fact, I’m so confident in HTML5 that I’m willing to defend this claim in trial by combat against any AAA executive that disagrees, especially if said executive is from EA.
However, leaving aside any potential duels with industry leaders, the question remains – how should indie developers prepare themselves for HTML5’s imminent world domination? Once again, I’ve prepared some exhaustive guidelines:
Q: “How should we prepare for our new HTML5 overlord?”
A: Uninstall IE8. Seriously guys, that shit is pure evil.
Q: “Are you just using HTML5 because you don’t want to learn a new programming language?”
A: …well…yes….but HTML5 is fucking black magic. You can’t beat that.
You may think that “black magic” is a bit of an overstatement. But I have my reasons. When I had to explain why this language was good to Mike, this was the phrase that came most naturally. And it seems to have gotten the point across. This may have something to do with the excessive amounts of time he’s dedicated to reading fantasy books, but it works.
Until my next developer post, I want to leave you readers with one final comprehensive insight – my steps to becoming a filthy rich developer.
Step 1: HTML5
Step 2: ?
Step 3: Profit