Monday, February 9, 2009

Lychgate: a JavaScript MMORPG game

General Info

Ok, so I've finally found a couple of minutes to setup a real blog for this. You can see previous entries for my Lychgate project at http://code.google.com/p/lychgate/wiki/MiniBlog, but it looked like it would start getting a bit long so I've set this one up.

Goal of this project: To create an JavaScript MMORPG using the new HTML5 

Canvas HTML Tag:
Specification: HTML5
Standardized by: WHATWG.org

Initially released by Apple the canvas html element is now supported by FireFox, Opera, Chrome and Safari natively. In short, canvas allows you to draw anything you wish straight to the web-page. No plugins required so you are only limited by your imagination as far as what it can do. The only draw back is lack of support from Microsoft in IE, though there is a very clunky JavaScript version available it will not run the more complicated things that i develop here ... which is of course games.

FAQ

Some questions people have asked me over the year or so that I have been working on this project.


Why Do this?

Because I can! Few other people are really attempting such a project and no others are that I currently know of are developing it in canvas. It is also the best way that I can think of to really show off my skills in JavaScript. While I could do this outside of canvas but this has been done and the results are ok at best with a couple of exceptions, yet even those exceptions have their limitations.

Why not just make a flash game?

Have you played some of the flash games out there? Flash is horrible at best.

What is the best browser to use?

Difficult question, Google's new Chrome browser is by far fastest in pure processing speed, but it does have a few graphic quirks such as it will not properly apply opacity to images. Firefox, though somewhat slower, does render canvas very well but Opera and Safari both are right behind it. So as long as it's not IE it's pretty much up to you unless your on a slower computer then you should use Chrome.

Will this be open source?

Yes the base-code for the client side of the game will be open source. This will not include specialized code for the game I will be developing using this code, nor will it include any server-side code.

Will this require any other JavaScript Modules?

No, it will not require anything else and will be completely self-sustaining to include it's own prototyping and classing systems and at the moment will be built on a maximum of JavaScript 1.5 though I may change this to 1.3 at a later time.

How will you do sound-effect and music?

Unfortunately JavaScript cannot do sound natively. So I plan on writing interpreters in flash, java and unity3d to play sound so that the user can use any or just turn sound off entirely.

Will support be added for Internet Explorer?

Currently there is no plans to add any sort of specialized code to just to make it work in IE.

When will there be a playable alpha version?

I currently work for myself, so that and job-searching takes up a great deal of my time. Such is how life goes at times so unfortunatly there is no definitive release date. People who are paying me to work on their website for them always come first over hobby projects.

How will maps load?

Maps will be qued up and pre-rendered to a buffer to avoid the horrible "loading please wait". The entire engine will be run via a custom Ajax script that I have custom built. While i could just use a pre-built Ajax script such as one mootools offers the requirements of something like this are much more intense than just a simple web2.0 website. This queing of the maps not only reduce/eliminate the loading screens it also has a nice side effect of increasing overall draw-rates.

No comments:

Post a Comment