Is HTML5 a legit language for developing game?

Started by
28 comments, last by dacypher22 10 years, 2 months ago
Advertisement

On the topic of cross-browser code, its a great ideal, and I don't think its beyond workable, even if its painful -- but, on the other hand, you can side-step most of it if you can simply accept not running on absolutely every browser. In that case, you are simply saying "Browser X is effectively my game client application". I think that's mostly fine, millions of people will already have your game client, your game client is probably already white-listed in most school/work environments (whether people should be playing in those locations is up to them to decide when and when its not appropriate), and for someone that really want's to play your game, what difference, really, does it make whether they download a proprietary client or a specific browser? When you start looking at issues of security and trust and potential liability, a browser is actually better in many respects for both the developer and the end user.

You still might have to deal with intra-version performance regressions or broken features -- it's not a guarantee that new versions contain changes that affect the way your game works, but its common enough you'll probably bump against it from time to time. If you picked Chrome as your target browser, Google tends to be on or near the bleeding edge, and chrome alone accounts for almost 60% of web traffic, so you can probably say conservatively that 50% of web users already have your client installed, which is huge. If you were able to add Mozilla to your list of supported browsers, that's another ~25%. IE, another 10%. And all three of those are working towards merging their desktop and mobile versions over the long term, Google is phasing out their mobile browser to be replaced by mobile Chrome, and IE, although behind the others on features, is already the same codebase across Desktop, Windows RT, and Windows Phone (They're not at feature parity yet, though).

So, yes, its a lot of work to maximize the promised potential of HTML5 today, but even just 50-60 percent of web users as a potential audience is not to be understated -- That's bigger than all of the big app stores and steam combined. Chrome has over 750 million active users; if you could make a dollar from even 1 percent of those users, you'd be a rich man. Easier said than done, of course, but its got the potential. For transparency's sake, Adobe reports that Flash can reach 2 billion users, but that number rolls up essentially all PC and mobile install-base, because those platforms can be targeted by Adobe Air (compiles flash to native apps), so its not people who have Flash Player et all installed.

throw table_exception("(? ???)? ? ???");

I learned a little HTML5... The language is reasonably new but it is amazing and can absolutely be used to create games.

A very popular game you'd probably know about which has recently implemented HTML5 would be Runescape. Check it out http://www.runescape.com/beta/html5

I learned a little HTML5... The language is reasonably new but it is amazing and can absolutely be used to create games.

A very popular game you'd probably know about which has recently implemented HTML5 would be Runescape. Check it out http://www.runescape.com/beta/html5

How the hay does one port a Java MMORPG game into HTML5 ?!

There has to be another back end language being used - unmodified JavaScript can not handle multiplayer in real time !

I cannot remember the books I've read any more than the meals I have eaten; even so, they have made me.

~ Ralph Waldo Emerson

They could be using Nashorn :D

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

I learned a little HTML5... The language is reasonably new but it is amazing and can absolutely be used to create games.

A very popular game you'd probably know about which has recently implemented HTML5 would be Runescape. Check it out http://www.runescape.com/beta/html5

How the hay does one port a Java MMORPG game into HTML5 ?!

There has to be another back end language being used - unmodified JavaScript can not handle multiplayer in real time !

Why is that? JS has gotten orders of magnitude faster now that many browsers are changing to JIT compilers rather than being interpreted. Considering that the network I/O is the slowest part of the entire game structure, I am not sure why JS couldn't handle real-time multiplayer. In fact, several are already well in development and show that it can indeed handle it.

As for the back-end, it is likely just connecting to the same servers that traditional Runescape ran on (probably C/C++ or Java). Although you could make a game server in Javascript with Node.js and Socket.io. Many online games are already being powered by it.

I learned a little HTML5... The language is reasonably new but it is amazing and can absolutely be used to create games.

A very popular game you'd probably know about which has recently implemented HTML5 would be Runescape. Check it out http://www.runescape.com/beta/html5

How the hay does one port a Java MMORPG game into HTML5 ?!

There has to be another back end language being used - unmodified JavaScript can not handle multiplayer in real time !

I am unaware of the specifics and am still a novice in programming so I won't attempt to answer this as to not give false information. However they are indeed using HTML5 in the game; exactly how I don't know.

I learned a little HTML5... The language is reasonably new but it is amazing and can absolutely be used to create games.

A very popular game you'd probably know about which has recently implemented HTML5 would be Runescape. Check it out http://www.runescape.com/beta/html5

How the hay does one port a Java MMORPG game into HTML5 ?!

There has to be another back end language being used - unmodified JavaScript can not handle multiplayer in real time !

Why is that? JS has gotten orders of magnitude faster now that many browsers are changing to JIT compilers rather than being interpreted. Considering that the network I/O is the slowest part of the entire game structure, I am not sure why JS couldn't handle real-time multiplayer. In fact, several are already well in development and show that it can indeed handle it.

As for the back-end, it is likely just connecting to the same servers that traditional Runescape ran on (probably C/C++ or Java). Although you could make a game server in Javascript with Node.js and Socket.io. Many online games are already being powered by it.

This is were knowing JavaScript comes in handy.

Pure JS can not connect to anything server side, in real time, with out using anther "back end" language.

Before making another post, please go look up the limitations of JavaScript, which is a client side language.

Edit: I will not get into a debate on the limitations of JS I/O capability ... if you would like to know more info, do some Google searching or post a question to this forum.

I cannot remember the books I've read any more than the meals I have eaten; even so, they have made me.

~ Ralph Waldo Emerson

Shippou, HTML5 includes websockets, which, while not ideal for the kind of communication games do, it is a workable technology. I'd like to see a fire-and-forget, UDP-based protocol in the future, but TCP at least allows for communication.

We're talking specifically about javascript in the browser here, with HTML5 and its constituent technologies. Even still, I don't know what difference it makes that "pure Javascript" can't communicate on the network -- You can't really come to any reasonable terms for which that statement is true without also disqualifying most other languages -- you can't communicate on the network with "pure" C or C++ either.

throw table_exception("(? ???)? ? ???");

I learned a little HTML5... The language is reasonably new but it is amazing and can absolutely be used to create games.

A very popular game you'd probably know about which has recently implemented HTML5 would be Runescape. Check it out http://www.runescape.com/beta/html5

How the hay does one port a Java MMORPG game into HTML5 ?!

There has to be another back end language being used - unmodified JavaScript can not handle multiplayer in real time !

Why is that? JS has gotten orders of magnitude faster now that many browsers are changing to JIT compilers rather than being interpreted. Considering that the network I/O is the slowest part of the entire game structure, I am not sure why JS couldn't handle real-time multiplayer. In fact, several are already well in development and show that it can indeed handle it.

As for the back-end, it is likely just connecting to the same servers that traditional Runescape ran on (probably C/C++ or Java). Although you could make a game server in Javascript with Node.js and Socket.io. Many online games are already being powered by it.

This is were knowing JavaScript comes in handy.

Pure JS can not connect to anything server side, in real time, with out using anther "back end" language.

Before making another post, please go look up the limitations of JavaScript, which is a client side language.

Edit: I will not get into a debate on the limitations of JS I/O capability ... if you would like to know more info, do some Google searching or post a question to this forum.

I am actually a very experienced JS programmer lol. The definition of "pure Javascript" is nebulous. If you mean ECMAscript, you are right because the ECMAscript standard does not include WebSockets. But almost no implementations use 100% ECMAscript and nothing more because it would be of little use.

But as Ravyne already mentioned, Javascript in the browser has WebSockets, which work fine for real-time multiplayer gaming. Also as Ravyne said, UDP would be nice, but there are already MMOs that use WebSockets. Please look into what WebSockets offer. Also check out Socket.io for Node.js. Yes, some of its fall-backs in older browsers go outside of JS, such as its Flash bridge fall-back, but the first choice is 100% JS WebSockets. And it works great for real-time in JS.

I am actually working on a 100% Javascript (JS in client, node for the server and MongoDB for data storage) MUD, and it is already in a playable state and is real-time.

This topic is closed to new replies.

Advertisement