# Can these game be fully coded in html5/javascript? [closed]

I mean the mechanics of the game. Would it be possible?

-Pokemon GBA series, rendering the world would be easy, but what about battle mechanics? -MapleStory, after seen dragonbound.net which is an identical copy of Gunbound I would think it's rather possible, but I'm still not sure if javascript can handle all the mechanics of the world. It would be heavy on resources I guess?

I'm asking this because I'm really interested in html5 game develop(I really think in a future will destroy flash on game dev ground). I want to have an idea of how far games developed with the html5/javascript technology can go. I got especially inspired by dragonbound. I really think it pushes htmlt/javascript to the limits (game dev).

## closed as primarily opinion-based by Trevor Powell, Jari Komppa, Anko, kevintodisco, Josh♦Jun 16 '14 at 15:44

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

• Thanks for all the answers guys they are all really good. – RufioLJ Oct 8 '12 at 12:36
• This question is polling for opinions which isn't a good fit for this site according to the FAQ. – bummzack Oct 8 '12 at 18:35
• HTML5 support (and especially Javascript support) is really touch-and-ago. It's hard to make something work consistently across all possible browsers (desktop, mobile, etc.) – ashes999 Jun 12 '14 at 14:35
• Nobody plays games in HTML5. Do something cross platform – LateralTerminal Nov 8 '17 at 17:27

In HTML5/JavaScript you can get input from user and display pictures. Just like in many other programming languages. And your are already on the internet, so internet stuff should be easy too. Which is all you need to make a game.

The problem is not what is possible and what is not, because in theory anything is possible, but whether trying many things together would be still fast enough. Which depends: on computer speed, on computer, on browser speed, perhaps even on internet connection speed. And all these data change from player to player, from year to year.

So you could start with an analysis: what do you want your game to be able to do, when the screen is most full? For example, to display 50 monsters, each of them 300x300 pixels large, plus 300 bullets, each of them 10x10 pixels large, animated at least 20 frames per second. Now you have something to be measured. And the answer would be that it requires computer with processor speed X and memory Y to do that.

If the number is realistic, just do it. If the number is just a bit high, do it anyway... it will take you some time to complete the game, and meanwhile the computers will become at least twice faster.

If the number is too high, you might rethink your game. Is it really necessary to have 50 monsters on screen at the same time? Could they be smaller? Could we get some speed by avoiding partial transparency in bitmaps? Less particles in explosions? Etc. You probably can make some sacrifice.

I think you can do it. Remember, the computers are getting faster.

HTML5 can do basically anything, with the Canvas you can manipulate every pixel of the display, if you have the right techniques and skills you can do all you want. It even suports WebGL, as soon as browsers add hardware acceleration, you will be able to use all the rendering power of the user machine.

Canvas can be used to make 2D games, almost any of them.
And WebGL can be used for big variety of casual and indie games.

There are some good people working on making 3D dev easier with PlayCanvas, and the power of HTML5 2D can be demonstrated with the Bastion version for Chrome.

Hope I helped.

• Well I really really care less about cross browser compatibility. Many people use chrome or firefox especially gamers. And it's most likely that the default code will render the same on both, plus a recommended browser image could do the trick for people that really want to play. Thanks for the answer man, that Bastion link is blowing my mind... I thought DragonBound as the most advanced html5/javascript until now. lol – RufioLJ Oct 8 '12 at 12:42
• There are some points I don't agree with. 1. "HTML5 suffers the same problems of any web development" - Java and Flash are much more cross-browser/system compatible; it may, or may not change in future. 2. I don't know HTML5, but I guess as a new technology it has a limitation of only few libraries (that will change). It also probably has no text metrics system, and you can't store data on user's hard drive (unless it's cookies that are removed together with browser's cache). – Markus von Broady Oct 8 '12 at 15:14
• Also I find HTML5 much more laggy than java or flash. In my user experience HTML5 just isn't smooth. @RufioLJ "Many people use chrome or firefox especially gamers. And it's most likely that the default code will render the same on both" - My friends have many chrome/firefox compatibility issues... – Markus von Broady Oct 8 '12 at 15:16
• @MarkusvonBroady: 1st, You can store data on the client side. 2nd, JavaScript is one of the most developed for languages in terms of "libraries" now. 3rd, it has a text metrics system. And lastly, HTML5 will improve. JavaScript as a language is getting blazing fast, Js engines are starting to compile it into Assembly code. – jcora Oct 8 '12 at 15:21
• -1 for "HTML5 can do basically anything" and "HTML5 2D can be demonstrated with the Bastion version for Chrome". These both are simply not correct. HTML5 cannot yet support sophisticated, cross-browser audio (almost, but as of this comment it's not there yet, though it's on the verge). And Bastion for Chrome used Native Client with Mono. See this link for reference about Bastion: developers.google.com/showcase/#item=Bastion – michael.bartnett Oct 9 '12 at 3:11

By what grounds do you feel it would be resource intensive? There are plenty of RPG developed for AS3 and battle mechanics are not something you are limited to programming in any certain language. They are a collection of conditions and logic that could be expressed in any language.

MapleStory, any MMO that is not extremely heavy on 3d graphics that would require C++ to optimize performance could probably be implemented. The only limitation would be server capacity hardware wise. If you have a lot of clients, you may need several powerful servers to handle the load well.

If you are interested in html5 do not waste time making predictions about it's future and start making a game now.

There is no tangible limit to the things you can achieve with nearly any of the popular languages that are available today aside from some issues with performance.

The main variable is the game developer.

• A good point Galvanize added is that support varies between browsers which is a known issue. – wolfdawn Oct 8 '12 at 12:27