Wednesday, March 5, 2014

HTML5 Game Frameworks (Game Programming)

HTML5 game frameworks is an interesting subject. There are dozens of them around, all promising to make game programming easy. Personally I'm interested in using just HTML5, CSS, JavaScript, and CSS. But there are two frameworks I thought I should mention that work in Firefox OS.

Construct 2

Construct 2, by Scirra, has been around a lot and is perfect for people who want to make HTML5 games but don't want to do all the coding. You can learn all about Construct 2 at https://www.scirra.com/.

Basically you drag and drop bits, choose behaviors from menus, and build your game. I've tried almost all applications like this and Construct 2 is the best. Why? Because they seem to have the best community and they are very transparent about what they do and why. Run by two brothers in London, Ashley and Thomas Gullen, you feel like they are responsive to problems and their forum is legendary for people (not just Ashley and Thomas) helping you out if you get stuck. They have a ton of tutorials and their engine is updated frequently.

The cost is reasonable. You can buy if for 79 pounds if you are not a professional, and 259 pounds if you are, the difference being how much money you make from their product. I can't say enough of how helpful they are, and how advanced as well. They're really on top of things like WebGL and they export the games you make to the following targets:

Web (HTML5), Wii U, iOS, Android, Win 8, Win 8 Phone, Windows desktop, Mac, Linux, Blackberry 10, Firefox Marketplace, Tizen, Facebook, Chrome Web Store, Amazon Appstore!
Just for fun (and as part of some long-forgotten contest), I put an app in the Chrome Web Store and it was very easy to create, even though it has an odd format. You can check out its fabulous features here: https://chrome.google.com/webstore/detail/tilt-a-twirl/klabggekijaanbjbakdimcdikdhihhdn?hl=en-US.

If writing code freaks you out, you probably aren't reading this, but if you have a friend who doesn't code but who wants to make games, go for it! Construct 2 is also used a lot in the industry for prototyping bigger games. And the best part is that you can put your games in the Firefox OS Marketplace!

Phaser

I haven't had a chance to try out Phaser, but it is getting a lot of notice. I'd place it somewhere between hand-coding and Construct 2. You still code, but you use Phaser to do the heavy lifting, and it adds things that would be very hard to do in raw code, like Physics.

Check out Phaser here: http://www.photonstorm.com/phaser. The main honcho is Richard Davey and he seems very helpful. Again, like Construct 2, there are lots of tutorials and the community is very active and the updates are frequent. I'm hoping to try out Phaser pretty soon and see how well it likes Firefox OS, but Mr. Davey says it will work in Firefox OS and if anyone has done this, let me know.

A Game A Week

I'm a proud member of the One Game A Month jam at http://www.onegameamonth.com/ but I recently ran across a site where someone is doing one game a week! I was doubtful at first. After all, many can do a game jam in a weekend, but they often are wasted afterward and the pace isn't easy to keep up!

But this weekly site, called http://www.lessmilk.com/. The author, one Thomas Palef, has been doing a game a week for a few months and the games are cool. As I dug a little deeper, I found that he's coding in Phaser. This is a very, very good argument for using Phaser if you want to code fast.

He also walks you through a two-part tutorial on making an Angry Birds clone. I fear that this will be the new standard for simple gaming, but who am I to complain? He also had a nice short article on pixel art at http://blog.lessmilk.com/pixel-art-how-i-made-the-princess-in-game-6/. This is a person to watch.

I was amused that he said
Since I started this project I've received a lot of supportive emails, which is awesome. But there's more: I've also had emails that have opened up new opportunities for me:
  • I got a job offer from a big company
  • A publisher contacted me to buy some of my games
  • A small company wants me to build them exclusive games
  • A couple of indie teams want me to help them as a game designer on some interesting projects
  • I even got contacted by a PhD student who wants me to help him with his thesis
So if you want a job in the game industry, just do something cool and people will come to you!

Right now I'm happy doing this blog and preparing my book, but I expect Mr. Palef to be a rising star!

My Book

I've revised about two thirds of the posts I want to use for my book and things are going along smoothly. I'm finding that there is a lot of details to follow to format it so Amazon will like it, and with any luck I'll finish in about two weeks.

I'm hoping that my book will help get the word out that Firefox OS is easy to program and fun! I appreciate all the offers I've had to help publicize the book and I'll be looking to see if I can also put it on Nook, Google Books, and Leanpub. Maybe I should put it in the Apple store for amusement. After all, when the iPhone came out, Steve Jobs wanted everyone to write apps in HTML5!

I'll keep you posted!

Twitter

I've been having a lot of fun discovering Twitter. I never used it before starting this blog, and my thought was that it might be a good way to let people know that there was a blog on Firefox OS game programming and game playing. But I've since found out that it is a fun way to find out what's going on in the worlds I care about: Firefox OS and game programming.

Yesterday Twitter told me I couldn't follow any more people! It turns out they don't want you to follow more than 2000 people, so I've been unfollowing a few people who had followed me but who weren't tweeting things I was interested in. And if I want to follow people who I discover, I'll have to unfollow someone else.

So right now, if I follow you because of Firefox OS, I won't ever unfollow you. Same goes with any HTML5 game programmers. And also any game programmers that do pixel art or otherwise something that catches my attention (like ASCII Art). And an occasional odd person that has something interesting. And definitely not anyone who can sell me how get more followers or how to maximize my web site profits!

Right now I have 798 followers, but I'm not seeking followers unless you like Firefox OS game programming and game playing or Firefox in general or Pixel Art games or ASCII Art games or goofy game developers like the people who hang out at @OneGameAMonth or, well, you get the idea.

2000 tweets, 2000 follows, 798 followers.

Oh, and this blog has had a total of 23,000 views. The most popular page was on Device Orientation, which is definitely a cool subject. Second-most was my comparison of CSS, Canvas, and SVG, and third was IndexedDB.

Not surprising, most of my readers are in the USA:

United States
11512
France
1003
Germany
995
United Kingdom
536
Brazil
511
Spain
459
Canada
351
Ukraine
344
Italy
329
Serbia
148

Browsers weren't a surprise:

Firefox
12171 (52%)
Chrome
4884 (21%)
Safari
2710 (11%)
Internet Explorer
2134 (9%)

And Operating Systems wasn't too surprising:

Windows
10148 (44%)
Macintosh
6857 (29%)
Linux
2705 (11%)
Android
1246 (5%)

I appreciate every single one of you that takes the time to read what I write and I intend to keep going. As I said last time, I'm torn between these next paths:

1. Advanced topics like WebGL, WebAudio, WebSockets, WebWorkers, etc.

2. Going back and fleshing out more about how to use CSS for gaming.

3. Writing a series that leads to a full RPG!

4. Doing lots more with SVG, the undiscovered country.

5. More about creating music and art.

6. Making games in Construct 2 and/or Phaser.

7. There is no 7!

8. Working with servers. Node and MMORPG.
If anyone has any requests, let me know!

Well, I guess I'd better flip some coins and get back to work on reformatting and rewriting my book.