Jump to content

WoW.js - Playing WoW in your web browser


shlainn

Recommended Posts

Ah, one of shlainns batshit crazy ideas again - this may be mildly entertaining...

Okay. Oh, and do not be fooled by the title, there is no

As I proposed elsewhere - it would be nice to have good tools. And to avoid OS issues, I wanted to make these tools browser based so everyone can use them. And it should be nice and graphical. So, I started looking into modern HTML5 browser technologies, such as WebGL, WebSockets, ...

And so, one thing came to another. I am currently working on a WebSocket-powered browser based version of WoW (TBC).

Of course, MaNGOS does not speak WebSocket, so I created a minimal proxy, which basicly unwraps the WS payload and sends it over a standard TCP connection to MaNGOS, and does the reverse with any data from MaNGOS. Everything else is done in the browser.

What works so far:

- Realm Login (thanks to https://github.com/Caligatio/jsSHA and https://github.com/jtobey/javascript-bignum)

- World Login up to Character selection. Encryption/Decryption of World Packets works!!

- inflate/deflate in client-side javascript (Never confuse RFC 1950 with RFC 1951 - 2 bytes make hell of a difference!)

- clean code

Next goal:

- Implement Chatting

What else is there to do:

- Implement More Packet Handlers

- GUI :(

I think this is worth a look now. The code is on github .

Looking for HELPPPPP!!!

From my experience with PseuWoW I can tell that it is impossible for one person alone to re-implement the WoW client. Period.

So, if anyone wants to pitch in, with any experience in JavaScript or WebGL or just enough foolishness to come along on this journey, you are cordially invited to drop me a PM.

Shlainn

Link to comment
Share on other sites

This is seriously cool stuff - I hope this will be supported by more browsers soon. My very vague plan was to download stuff from the server and put it into local storage so it needs to be downloaded only once per computer. But at the current state we are MILES away from that.

when the web client first start it be able to detect if u have orginal wow client install and use certain content from it that cut down on streaming and increase the loading time.

Autodetection will not be possible. But it may be feasible to just point the browser to the wow data on game start.

Link to comment
Share on other sites

Sure, why not do it, shlainn?

If Id Software can make a browser-based Quake III, that looked and played at least as well as original version, then WoW should be doable.

One extra bit that web-Quake had was a training mode, where the game quantified your skill in a series of special levels, then used that data to match you with similar players on the regular levels. Something like that for PvP would be great, if it is even feasible to add it.

Link to comment
Share on other sites

This is seriously cool stuff - I hope this will be supported by more browsers soon. My very vague plan was to download stuff from the server and put it into local storage so it needs to be downloaded only once per computer. But at the current state we are MILES away from that.

Unfortunately, we are probably even further away from a non-streaming implementation too...

Have to port a mpq library, including some of the the compression components, to js :(

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use