Java-Gaming.org Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (736)
Games in Android Showcase (224)
games submitted by our members
Games in WIP (814)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Steam and Kryonet?  (Read 1886 times)
0 Members and 1 Guest are viewing this topic.
Offline tommohawkaction
« Posted 2017-08-16 10:54:43 »

Hello, I am currently in the stage where I want to implement co-op to my game. However I am having some trouble with some of the concepts.

[Notes]
I want to release my game on Steam
I want to have max of 4 players
I don't want to spend money on servers
Also I cannot find a way to turn on UPNP

From my experience with Kryonet is the Server side has to portforward, which is not what I want. I want the player to be able to host their own server (On their machine), and players can join only if they are friends with the steam user. However I feel like i need to portforward (unless steam uses some sort of upnp)
Offline tommohawkaction
« Reply #1 - Posted 2017-08-16 11:14:00 »

The only thing I can find online is this https://code.google.com/archive/p/weupnp/
Not sure how I would use it with Kryonet though :/
Offline CoDi^R
« Reply #2 - Posted 2017-08-16 13:09:29 »

The Steamworks SDK includes a P2P networking interface, which also does NAT translation. Of course this requires Steam, so for potential non-Steam builds you would have to provide an alternative network implementation.

Robotality - steamworks4j - @code_disaster - codi^r @ #java-gaming
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline tommohawkaction
« Reply #3 - Posted 2017-08-16 14:23:35 »

The Steamworks SDK includes a P2P networking interface, which also does NAT translation. Of course this requires Steam, so for potential non-Steam builds you would have to provide an alternative network implementation.

Ah does this mean I don't have to worry about port forwarding?
Also would i be able to use Kryonet with Steam?
Also does P2P work with multiple users (MAX 4)
One more thing, you said this requires Steam? Is there anyway I could test this without putting my game on Steam yet

Thanks for the response  Grin
Offline princec

« JGO Spiffy Duke »


Medals: 945
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #4 - Posted 2017-08-16 15:08:02 »

One more thing, you said this requires Steam? Is there anyway I could test this without putting my game on Steam yet
Unfortunately you can't test Steam features without getting on Steam, which is a bit of a bugger.
I'd advise not using the Steam network APIs if you can help it and make something that works everywhere.

Cas Smiley

Offline CoDi^R
« Reply #5 - Posted 2017-08-16 15:17:05 »

Quote from: tommohawkaction
Ah does this mean I don't have to worry about port forwarding?

So they say.


Quote from: tommohawkaction
Also would i be able to use Kryonet with Steam?

I don't know Kryonet, so I can't answer that. Essentially the Steam P2P API boils down, after initial connection/negotiation, to two functions, "send message to another Steam user" and "receive message from another Steam user", which work with byte data. I can't tell if you can dock Kryonet on top of that.


Quote from: tommohawkaction
Also does P2P work with multiple users (MAX 4)

Sure, but you'll have to manage yourself what messages are sent to which user(s).


Quote from: tommohawkaction
One more thing, you said this requires Steam? Is there anyway I could test this without putting my game on Steam yet

You need to register with the Steamworks partner program, which gives you (your Steam account) developer access, but probably requires you to sign some NDA first. It's been a while and long before the days of Steam Direct (and I didn't do the initial registration myself), so I don't know the current time and effort needed.

Robotality - steamworks4j - @code_disaster - codi^r @ #java-gaming
Offline tommohawkaction
« Reply #6 - Posted 2017-08-16 15:19:53 »

Ah okay that makes sense, still in a bit of a mess though. I have just made my game have some sort of multiplayer using Kryonet. My only issue is that I might have to redo the whole multiplayer system when I deploy on Steam...
Offline tommohawkaction
« Reply #7 - Posted 2017-08-16 15:21:40 »

One more thing, you said this requires Steam? Is there anyway I could test this without putting my game on Steam yet
Unfortunately you can't test Steam features without getting on Steam, which is a bit of a bugger.
I'd advise not using the Steam network APIs if you can help it and make something that works everywhere.

Cas Smiley

Thanks for the response, yeah I would love that to be the case, but everywhere I go all i see is people saying they cannot get it working because of port forwarding issues. I really hope the Steam and Kryonet works together... would be great! If not then I guess ill need a wrapper for the Steam version :/
Offline CoDi^R
« Reply #8 - Posted 2017-08-16 15:22:07 »

Unfortunately you can't test Steam features without getting on Steam, which is a bit of a bugger.
I'd advise not using the Steam network APIs if you can help it and make something that works everywhere.

Cas Smiley

Yes, if I had to, I'd try to build some kind of generic interface and treat Steam networking as yet another implementation. Even if only for testing purposes, because it's a pain already to just test some simple networking functions with multiple Steam accounts.

Robotality - steamworks4j - @code_disaster - codi^r @ #java-gaming
Offline princec

« JGO Spiffy Duke »


Medals: 945
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #9 - Posted 2017-08-16 15:27:05 »

Don't be afraid of port forwarding issues... most people can learn how to set it up on their home routers. Failing that though, weupnp will actually work ok. I don't think you really need Kryonet.

Cas Smiley

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline tommohawkaction
« Reply #10 - Posted 2017-08-16 15:47:31 »

Don't be afraid of port forwarding issues... most people can learn how to set it up on their home routers. Failing that though, weupnp will actually work ok. I don't think you really need Kryonet.

Cas Smiley

I've looked into weupnp but I cannot find how to use it... any chance you could direct me? Pointing
I'm guessing the Steam implementation would be pretty simple anyway  Huh
Offline ral0r2

Junior Devvie


Medals: 1



« Reply #11 - Posted 2017-09-18 20:42:57 »

Don't be afraid of port forwarding issues... most people can learn how to set it up on their home routers. Failing that though, weupnp will actually work ok. I don't think you really need Kryonet.

Cas Smiley

I've looked into weupnp but I cannot find how to use it... any chance you could direct me? Pointing
I'm guessing the Steam implementation would be pretty simple anyway  Huh

Would be great to hear if you manage to find a solution for your problem. I might be getting there some day as well, if I decide to deploy on steam.
Pages: [1]
  ignore  |  Print  
 
 

 
cybrmynd (138 views)
2017-08-02 12:28:51

cybrmynd (159 views)
2017-08-02 12:19:43

cybrmynd (153 views)
2017-08-02 12:18:09

Sralse (169 views)
2017-07-25 17:13:48

Archive (648 views)
2017-04-27 17:45:51

buddyBro (767 views)
2017-04-05 03:38:00

CopyableCougar4 (1301 views)
2017-03-24 15:39:42

theagentd (1265 views)
2017-03-24 15:32:08

Rule (1237 views)
2017-03-19 12:43:22

Rule (1312 views)
2017-03-19 12:42:17
List of Learning Resources
by elect
2017-03-13 14:05:44

List of Learning Resources
by elect
2017-03-13 14:04:45

SF/X Libraries
by philfrei
2017-03-02 08:45:19

SF/X Libraries
by philfrei
2017-03-02 08:44:05

SF/X Libraries
by SkyAphid
2017-03-02 06:38:56

SF/X Libraries
by SkyAphid
2017-03-02 06:38:32

SF/X Libraries
by SkyAphid
2017-03-02 06:38:05

SF/X Libraries
by SkyAphid
2017-03-02 06:37:51
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!