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

[Network] Abstract data layer #25

Open
yuraj11 opened this issue Oct 12, 2020 · 3 comments
Open

[Network] Abstract data layer #25

yuraj11 opened this issue Oct 12, 2020 · 3 comments
Labels
enhancement New feature or request

Comments

@yuraj11
Copy link
Contributor

yuraj11 commented Oct 12, 2020

It would be great if one could simply swap data layer - let's say you want to use steam networking API layer for sending and receiving packets.
Currently everything is based on rpc calls but it would be good to use some abstract layer between sending and receiving data in network.

For example there's readP2PPacket and sendP2PPacket in steam library:
https://gramps.github.io/GodotSteam/functions-module.html

At one point I will need this feature so it's possible I will take look on this future and create PR.

@Kehom
Copy link
Owner

Kehom commented Oct 13, 2020

Ok, so what exactly is the use case to switch over to send/readP2PPacket instead of using RPCs?

I did some preliminary research on the Steam API in order to try to at least have a guide on how to use it to automate the host_game and join_game based on the friends list. I didn't go far with the research though, but this simple case would not require a "drastic" change in the Networking addon.

Just know that I'm not closed to the idea, I just have no idea of the use case.

@yuraj11
Copy link
Contributor Author

yuraj11 commented Oct 13, 2020

The main benefit is simplicity of playing together between friends using P2P without solving router port forwarding etc. You can simply create server using the steam API and invite steam friends to play together.

But I have tried this API a long time ago and the P2P stuff is deprecated: https://partner.steamgames.com/doc/features/multiplayer/networking

....but it looks that godotsteam supports the new API (according the module source code):
https://partner.steamgames.com/doc/api/ISteamNetworkingMessages

@Kehom
Copy link
Owner

Kehom commented Oct 13, 2020

Ahhh, OK. That seems very interesting to provide an easier experience for players with less technical knowledge.

I will take a closer look into it (and some of the other issues) as soon as I finish working on the next tutorial which is about creating dedicated servers with Godot. A few improvements to the addon might come along the way because at least one of them is absolutely necessary (related to the credential system).

@Kehom Kehom added the enhancement New feature or request label Oct 13, 2020
@Kehom Kehom added this to To do in Godot Addon Pack via automation Oct 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Development

No branches or pull requests

2 participants