Hi guys, i am trying to make card ### turn-based ### game online so many players could play online.

Rules are:
1- ### two players only ### could play on same match, and other two players play on other match( the match is kind of room or table or something like that)

2- update actions (what player does in his turn), after pressing a button only( the other player see what the first player did after pressing certain button)

3- the server knows: each player turn, what player played, other information on players.

I'm confused what technic i should use for this?
do i use Websocket or just normal http requests connected to normal server, I don't think i want webRTC for this, I don't know if i can use just API for this.

What is best for security, less delay technic?

If you are not sending banking details then encryption is not essential.
Look at https://docs.godotengine.org/en/stable/tutorials/networking/high_level_multiplayer.html Godot handles everything for you. You just need to connect_to_host() and create_server() and then wrap your head around using @rpc calls. Each player has the exact same game state - nodes, so you need to call functions to update each players game - nodes.

If you want a serverbrowser where you could connect to players that are hosting games.. well then your not in luck.. you need some sort of a masterlist server where all the IP😛ORTS are stored for each players hosted game. And then serve this list to clients that want to join them games..

Im working on this thing, all written in godot. I already have masterlist server done, now working on client side. Handling all the requests.

If i remember there were tutorials where people used http servers.. but i decided to write everything in godot native.. so stay tuned for when i post my abominations here.. when its done.

My attempt at multiplayer https://godotforums.org/d/40012-synchronizing-multiplayer-3d-cameras-and-items-fail/6