Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

- #5806

Closed
Biarity opened this issue Jul 19, 2016 · 27 comments · Fixed by #14888
Closed

- #5806

Biarity opened this issue Jul 19, 2016 · 27 comments · Fixed by #14888

Comments

@Biarity
Copy link

Biarity commented Jul 19, 2016

@bojidar-bg
Copy link
Contributor

Better yet, make it a WebsocketStreamPeer or similar.

@godotengine/bugsquad I'm tagging this for 2.2, since networking.

@bojidar-bg
Copy link
Contributor

@qudware Oh, and BTW, you can already connect to/serve websockets via the relatively low-level TCP classes.

@vnen
Copy link
Member

vnen commented Jul 19, 2016

There's this: https://github.com/marcosbitetti/Godot-Websocket

@punto-
Copy link
Contributor

punto- commented Jul 19, 2016

Websockets will be supported soon, it's part of the tasks we're doing for
the Mozilla prize.

On 19 July 2016 at 19:04, George Marques notifications@github.com wrote:

There's this: https://github.com/marcosbitetti/Godot-Websocket


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#5806 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGVmPeabR9VILQfFKvpO9Ljoac1jw62-ks5qXUn9gaJpZM4JPnUb
.

@ghost
Copy link

ghost commented Jul 29, 2016

@punto- Link for the Mozilla prize you are referring to, please?

@mclark4386
Copy link

I would love to help with this if possible! Where is the branch this is being worked on?

@akien-mga akien-mga modified the milestones: 3.0, 2.2 Nov 1, 2016
@akien-mga
Copy link
Member

@mclark4386 It's not being worked on for the time being, the priority goes to the GLES 3/WebGL 2 renderer for now.

@mclark4386
Copy link

Ah! Thanks @akien-mga

@mclark4386
Copy link

@akien-mga Who should I talk to about Websocket integration? I'm about to do it anyways... only makes sense to do it in such a way that everyone can use it!

@akien-mga
Copy link
Member

Best would be to come around on #godotengine-devel on Freenode's IRC network and discuss it with @reduz if he's up to it :)

@mclark4386
Copy link

Will do! Thanks!

@mclark4386
Copy link

Ok, so currently my plan is to base the server off of TCPServer and the Client off of StreamPeerTCP... maybe see if I can't get away with using HTTPClient or request for the handshake. Please let me know if this will not work with any current plans or whatever! Also, open to any thoughts or suggestions! Thanks!

@RandomShaper
Copy link
Member

I don't get your point. Can you develop that?

@reduz
Copy link
Member

reduz commented Aug 1, 2017

So much for helping out FLOSS projects, eh? Pathetic

This feature is still being worked on. but It's difficult to do add without some hack. The idea is to do it in the smoothest way possible.

Regarding the help from Mozilla, you probably ignore that, after that announcement, there were many months of bureaucracy until the contract could be finally be put into work. We are still in time for delivering, so by the time 3.0 comes out, all the items will be accomplished.

@mclark4386
Copy link

Sorry I've been so MIA I got a base structure for Websocket handling in C++ and then that project got shutdown at my company and I just haven't had time. I'm happy to make a gist or something if anyone is interested, but it's fairly basic IIRC(initial pairing more or less) so I don't know how useful it'll be.

@Faless
Copy link
Collaborator

Faless commented Aug 10, 2017

I'm happy to make a gist or something if anyone is interested

@mclark4386 please do 😄 . I'm exploring the possibility of picking up this task, and your gist would definitely help, at least for reference.

@mclark4386
Copy link

mclark4386 commented Aug 10, 2017

here is the testing project I made for looking into the protocol/getting it going for godot: https://github.com/mclark4386/WebsocketsPlay

@Faless
Copy link
Collaborator

Faless commented Oct 11, 2017

Update

Work in progress for WebSocket Client/Server module using libwebsocket.org here: https://github.com/LudiDorici/godot-lws

@vanissoft
Copy link

how is going websockets integration? It will have secure websockets support?
thank you,

@sdzyba
Copy link

sdzyba commented Nov 1, 2017

Is it going to be done before the announced 3.0 beta feature freeze?

@ghost
Copy link

ghost commented Nov 1, 2017

I actually just finished converting my websocket game server (30k loc js/nodejs) to a TCP one. Because Juan and others said this was going to come out later and I just don't didn't want to wait :P

Wasn't that difficult, just had to get the messages from the stream and pass them into each game function.

However, something like this https://www.npmjs.com/package/uws is the most powerful websocket libray for nodejs, and I think I would feel more comfortable switching back to it instead.

Websockets really do make it easier for game developers because you don't have to manage the entire "stream" system. And there are also a lot of benchmark out already.

With all that said, I think we must give a moment of appreciation to @Faless's valiant efforts to get WS finally implemented into the core. It is truly appreciated. Hope this makes it into 3.0

@mhilbrunner
Copy link
Member

Is it still planned to get this into core? @Faless still working on this?
This should probably be moved to the 3.1 milestone (or be closed?) as the last work done on it was ~1.5 months ago?

@Faless
Copy link
Collaborator

Faless commented Dec 12, 2017

Is it still planned to get this into core?

We are still unsure about it, it will likely end up being a GDNative module for 3.0. The library I worked on is LGPLv2 + static linking exception, which should be compatible with Godot's MIT without adding restrictions, but still makes some developers uneasy.

@Faless still working on this?

Yes, but I don't have much time right now, I hope to bring better news at GodotCon 2018 in February by working more on it during the holidays.

This should probably be moved to the 3.1 milestone

Yes, it makes sense, but I'm still trying to make it available as a 3.0 GDNative module.

@mhilbrunner
Copy link
Member

No worries, I was just wondering what the status on this was since I'm currently trying to get into the networking side of Godot.

Your work is appreciated :)
Hyped for GodotCon! (And more news on anything Websockets)

@Faless
Copy link
Collaborator

Faless commented Dec 19, 2017

See https://github.com/LudiDorici/godot-websocket for an implementation of WebSocket client and server with both desktop and and webassembly platform (webassembly is for obvious reasons client only).
It supports both binary and text mode, sub-protocols, and even the new High Level Multiplayer API.

@akien-mga
Copy link
Member

The websocket module will be merged for Godot 3.1 as we ran out of time for 3.0, so that issue will be solved then.

@akien-mga akien-mga modified the milestones: 3.0, 3.1 Jan 9, 2018
@Biarity Biarity changed the title WebSockets for Godot - Jan 27, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

14 participants