It's BSD licensed.
JoWie - Sat Aug 20, 2011 6:04 am
Post subject:
The biggest issue an in-browser subspace clone would have is networking. Javascript (V8 / SpiderMonkey) in combination with WebGL (or maybe canvas) is fast enough for a game like subspace.
NaCl is sandboxed and you can only use the API chrome provides. You can not make system calls. Unless it introduced new networking functionality it would not have a lot of advantages.
There are a bunch of different API's (and ways to abuse them) in the brower for sending data around, they all come down to:
- A single http request & response. Passing more data around needs another request. (XMLHttpRequest / iframe)
- A single http request, a never ending response. Sending data needs another request, receiving data does not. (XMLHttpRequest / Server-Sent Events)
- Bi-directional TCP initiated by a handshake in HTTP (WebSockets)
The first and second option have been possible for years. The last option is more recent (Firefox 6+, Chrome 14+, IE HTML5 Labs Plugin), but it would be the best candidate.
An issue is that this is all TCP. Most multiplayer games, like subspace, use UDP. Continuum periodically sends a position packet containing your location over UDP. If a packet is lost in UDP, it is not resent, which is exactly what you want when it comes to periodic position packets. Why resend when there already is a newer one on the way.
Having said that, I think nowadays TCP would be playable, but it would demand more on the quality of internet connections (bandwidth would only be a very small factor)
Mine GO BOOM - Sun Aug 21, 2011 1:04 am
Post subject:
Why not instead us a game engine that already supports Desktops, Web Clients, iOS, and Android? Write once, share everywhere.