Sign in to follow this  

Getting into Web Game Dev - Recommend me Tools and APIs!

This topic is 2049 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I am starting on a casual 2D web game with a friend to both learn web game design (HTML5 + JS) and make it more accessible/platform independent than coding up in Flash or a specific Android/iPhone app. I have been doing some research into existing tech and APIs, and figured I'd ask for a few pointers here as well. The game is similar in art/style to Diner Dash albeit with a more Zelda-like gameplay.

So far I looked at few engines like ImpactJS, but they seem rather specific to their game type, so I will probably pass on those. I do plan on using PrototypeJS for inheritance and Box2DJS for math and collision (but not physics). So a few questions:


* Recommend me a good IDE; are there any viable debuggers out there, or am I stuck with Chrome/Firefox debug console?
* Any other engines I should consider? As I said Impact is more geared for tile-based sidescrollers, and Unity is a little "too big" for our needs (plus, this is 2D). This is a small game so coding from scratch wont be too bad.
* Any other useful APIs (like PrototpeJS / Box2DJS) I should look into? Particularly for math/collision.
* Any good tutorial/tech sites to bookmark (I already been looking at [url="http://www.html5gamedevelopment.org/"]http://www.html5gamedevelopment.org/[/url] and [url="http://www.html5gamedevs.com/"]http://www.html5gamedevs.com/[/url])

And any other useful pointers.

(FYI I do have a lot of background with games/engines in C++ and also work as a PHP/ASP web developer, so not a complete newbie here :) )

Share this post


Link to post
Share on other sites
There are at least 3 real problems with production-grade web development:

- GC. No matter the hype, no browser has production grade GC for real-time stuff. There's a lot of talk about how it's no big deal and JS is fast, but reality is, pauses are annoying

- Hardware acceleration is rudimentary. There's plenty of demos showing off how great the web is. Until you realize that a lot of hardware is unsupported, that most useful features are missing and that everything is built around limitations of platforms rather than features desirable for users. Google Maps can cause BSOD on Chrome with simple 2D canvas and the bug remains unresolved for more than 2 years. And best of all, as a developer, you have no control over any of this, you can pray that it will work for end users

- Lack of any standards. There are plenty of libraries, but they are individual efforts, unsupported "it's open source, fix it".

Couple that with 5-50 variations of unique platforms you must support (all HTML5 compliant, yet each broken in its own way) and pushing any kind of limit becomes monumental effort.


But yes, you can whip a neat looking demo in 20 minutes. No arguments here. Looking around however, that's about as far as the platform goes.

Another big part in perception is the disposable perception of web apps. if something doesn't work, users won't complain. It's web, just close and click something else. With no upfront investment, if something doesn't work within 7 seconds, people move on and forget about it, it's not worth their time spending 3 minutes whining about it.

Another factor - to make anything useful, you will need all hardware combinations, so a Mac and PC at minimum, along with all browser combinations, testing everything manually. Whatever compatibility guarantees there might be in standard don't hold in real world for anything beyond basic HTML layouts. Canvas and WebGL or anything else is simply a guessing game of trial and error.

[quote]am I stuck with Chrome/Firefox debug console?[/quote]

Basically, yes, for simple DOM stuff. For anything close to typical profilers and debuggers, there's nothing. Although hardware accelerated stuff can be debugged using desktop-based GPU debuggers that operate on driver levels.


That said, it's not impossible. Just expect to require 10-100x times more effort than using Unity or Flash or even iOS/Android. Which is why something simple as Angry Birds came to Web last, after all of those first. Cost benefit simply isn't there for production work, unless you already have a proven model and merely wish to expand beyond some other platform.


As a simple proof: between kongregate, armorgames, etc..., app stores, and whatnot - how many notable HTML5 games, let alone app stores are there? How many of those were originally made in HTML5, and were not just ported after initial success elsewhere.

Share this post


Link to post
Share on other sites
Hmmm all good points that make me consider Flash as well (albeit I would still be bummed out about no iOs support). I wouldn't mind going the destkop / C++ route either (with maybe SDL?) but I recon my reach would be much smaller than if using a native web technology.

Share this post


Link to post
Share on other sites

This topic is 2049 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this