Server Help

Trash Talk - We need SubSpace for NaCl

SamHughes - Sat Aug 13, 2011 12:05 am
Post subject: We need SubSpace for NaCl
Somebody get to work on that right quick.
Samapico - Sat Aug 13, 2011 12:16 am
Post subject:
Subspace for table salt?


Whatever that NaCl really is... why the hell would someone choose a name that is so impossible to Google correctly? I have no idea what you're talking about, and even if I wanted to, it's impossible to know.
Bassnectar - Fri Aug 19, 2011 10:03 pm
Post subject:
This is actually and extremely cool idea!

http://en.wikipedia.org/wiki/Google_Native_Client

Although from what I read, and what I got from it, is it's going to be impossible for our community to do this.

I'm not 100%, but after a quick read, it seems that this technology developed by google will allow people to use the Chrome browser to run clients / applications / programs that you would normally have to run directly from your computer.

The reason it will be impossible to do is because the source code for the client needs to be recompiled under the Native Client.

Another issue that may ( or may not ) occur, is that if this project does get big, google might charge for it, although I'm not sure of that.
SamHughes - Sat Aug 20, 2011 5:26 am
Post subject:
Bassnectar wrote:
Another issue that may ( or may not ) occur, is that if this project does get big, google might charge for it, although I'm not sure of that.


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:

  1. A single http request & response. Passing more data around needs another request. (XMLHttpRequest / iframe)
  2. A single http request, a never ending response. Sending data needs another request, receiving data does not. (XMLHttpRequest / Server-Sent Events)
  3. 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.
All times are -5 GMT
View topic
Powered by phpBB 2.0 .0.11 © 2001 phpBB Group