Author Topic: TNET on PS4?  (Read 2927 times)

derkoi

  • Jr. Member
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 57
    • View Profile
TNET on PS4?
« on: March 03, 2015, 05:17:48 AM »
Hi,

I'm currently working on a PC, Mac & mobile game that I've started implementing TNET in. I plan to release on PS4 too once Unity 5 is available for PS4. (Yes I'm licensed by Sony & have the dev kit etc).

I found a post on the Sony Devnet forums regarding TNET and figured I post here. Here's the forum posts:

Quote
2015-02-18 13:29 • 13 days ago

Hi,

I'm currently making a multi-player game for PS4 that supports 2-8 players via LAN and WAN by using Tasharen network. However, when joining a host that does not support UPnP the game would crash and exit game. I discovered that it crashed at GetAllNetworkInterfaces() function in TNTools.cs. I cannot see any debug information, so I'm not sure what the error is caused from. This error specifically occurs when the client(PS4 Devkit) is using a different ISP to join a game, but the Host is using an ISP that does not support UPnP.

Thanks



Sam Bickley 2015-02-18 13:46 • 13 days ago

Hey Pathompong,

We've never seen that plugin being used before. Not all plugins support all platforms, and Tasharen's website states:

    TNet supports: Unity Basic, Unity Pro, iOS Pro, Android Pro.

So it's likely an issue of the plugin never having been considered for PS4.. have you tried contacting the developers to see if they have a PS4 version available?

Regardless, if you're able to get us a small reproduction project as part of a Bug Report and then let us know the case number, we'll try to investigate why it's happening and see if there's any fixes we can provide.



Steve Cawood (ME)  2015-03-03 08:44 • 1 hour ago

Interesting, I'm currently working on my game which at the moment is for PC,Mac and mobile but later this year I'll be porting it over to PS4 as I'm using Unity 5 for development.

I also use TNET for my networking and so would hope this is fixable.



Tim Cannell Unity Technologies  2015-03-03 09:34 • 40 minutes ago

We are not familiar with TNET and so are not sure exactly what is included in the package.

If it uses managed .NET socket calls, then we *should* be able to get some functionality.

However if it uses a native plugin, there is no way it will work without the TNET people porting it to PS4.

It's something you should look into now, to avoid disappointment later.

Tim


Steve Cawood (ME) 2015-03-03 10:20 • 19 minutes ago

Thanks for the reply Tim, I'll post on the TNET forum. TNET is made by Tasharen who also made NGUI. Michael worked at Unity briefly too.


Tim Cannell Unity Technologies 2015-03-03 10:30 • 8 minutes ago

Ah right, it'll be good stuff then!

Keep us informed of how it goes, and we'll fix any issues at our end as required.

Tim


Steve Cawood (ME) 2015-03-03 10:38 • 2 seconds ago

So far it's very good!

I'll keep you in the loop. Thanks again Tim.

So I'm just wondering what, if anything can be done to make TNET PS4 compatible?

Thanks
« Last Edit: March 03, 2015, 05:40:28 AM by derkoi »

ArenMook

  • Administrator
  • Hero Member
  • *****
  • Thank You
  • -Given: 337
  • -Receive: 1171
  • Posts: 22,128
  • Toronto, Canada
    • View Profile
Re: TNET on PS4?
« Reply #1 on: March 03, 2015, 06:00:34 PM »
TNet uses 100% .NET sockets, and GetAllnetworkInterfaces() is just a System.Sockets call to get the known network interfaces. Try a simple clean project, no TNet. Inside its Start() function just call GetAllNetworkInterfaces:
  1. NetworkInterface.GetAllNetworkInterfaces();
If it crashes, then let Sony know.

MCoburn

  • Jr. Member
  • **
  • Thank You
  • -Given: 1
  • -Receive: 7
  • Posts: 69
    • View Profile
Re: TNET on PS4?
« Reply #2 on: March 05, 2015, 07:11:57 PM »
I thought for some consoles you had to go through the companies' servers. I think this was the case for Nintendo WFC back in the day, you had to use Nintendo's servers or it wouldn't allow you to connect for some silly reason.

Maybe you could do a check to see if UPnP is available, and then go from there.