How do i make 2 players connect and play together ?


1) Game has no server.
2) Player only has 1 computer.
3) Player cannot configure his router or open a port.
4) Player does not want to share his PC for multiplayer.
5) Reasonable delay is allowed: up to 1 hour per packet / player action.
6) Ipv4 internet is used
7) Players can connect to any website.

Solutions I considered but cannot get them to work:
1) Posting in a random forum you don't own. Soon the thread that 10 million players use, approaches 60gb data per hour and gets closed by a moderator. Gameover.

2) Sending Data by Email. a) I know no email api. b) players will risk their email credentials.

3) Having an external server manage the initial connection.
a) I know none that are free. b) I am not paying money.

More specific : I am using unity, i am willing to port solutions if you find a free site or solution that works.

  • \$\begingroup\$ What's wrong with play-by-email? All the players really risk to reveal is their email address, not their passwords (unless you have a really stupid vulnerability) and SMTP/POP3/IMAP are really simple protocols with wide library support. \$\endgroup\$ – Philipp Jan 12 '17 at 10:39
  • \$\begingroup\$ just tested it, it requires a password to send a mail : answers.unity3d.com/questions/433283/… The code in question: smtpServer.Credentials = new System.Net.NetworkCredential("youraddress@gmail.com", "yourpassword") as ICredentialsByHost; \$\endgroup\$ – user2186597 Jan 12 '17 at 11:01
  • \$\begingroup\$ Yes, of course it requires a password, but that password is only exchanged between client and mailserver, just as usual with an email client. The password doesn't need to go to the other players. \$\endgroup\$ – Philipp Jan 12 '17 at 11:37
  • \$\begingroup\$ the player willl have to trust the game, the game could be an evil virus, why should i trust it ? because it has 3d graphics ? \$\endgroup\$ – user2186597 Jan 12 '17 at 17:04
  • 2
    \$\begingroup\$ If your game were a virus, you could already steal all kinds of data the moment they install it. Running your executable already means they need to trust you. \$\endgroup\$ – Philipp Jan 12 '17 at 18:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.