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

Using the "IP Address" option in "Pro Ad Hoc Server IP Address" doesn't work #16646

Closed
5 tasks done
Gabriel2Silva opened this issue Dec 23, 2022 · 12 comments
Closed
5 tasks done
Labels
Libretro Issue on Libretro but not all ports. Networking / adhoc
Milestone

Comments

@Gabriel2Silva
Copy link

Game or games this happens in

ULES-01213 - Monster Hunter Freedom Unite

What area of the game / PPSSPP

Tests done in Monster Hunter Freedom Unite.

Basically, networking works fine on the Libretro core. When using a private server such as socom.cc, I can play with people on both PPSSPP standalone and Libretro flawlessly. However, if I decide to host a server myself (all ports correctly forwarded, DMZ enabled, even) or to manually input an IP Address using the "IP Address" option in "Pro Ad Hoc Server IP Address", it doesn't work.

In fact, it seems to me that it doesn't even try to connect, as the log always prints the same two errors:

[libretro ERROR] [SCENET] Socket error (10060) when connecting to AdhocServer [135.148.124.223/135.148.xx.223:27312] [libretro ERROR] [SCENET] Socket error (10060) when connecting to AdhocServer [135.148.124.223/135.148.xx.223:27312] [libretro ERROR] [SCENET] Socket error (10038) when sending

or

[libretro ERROR] [SCENET] DNS Error Resolving 192.168.000.029.

What also bothers me is that if I select the "socom.cc" option in "Pro Ad Hoc Server IP Address", it connects just fine, but if I manually input the DNS IP Address for this same server, it gives me this error.

The "Localhost (multiple instances)" option also works just fine. It seems to me that this is a problem specific to the "IP Address" option in the "Pro Ad Hoc Server IP Address" dropdown.

I attached two log files.

self hosted.log
socom original ip.log

What should happen

It should connect just fine when using the "IP Address" option in "Pro Ad Hoc Server IP Address".

Logs

No response

Platform

libretro / Retroarch

Mobile phone model or graphics card

NVIDIA GeForce GTX 1660 SUPER

PPSSPP version affected

v1.12.0 - PPSSPP (ff4971f)

Last working version

No response

Graphics backend (3D API)

Vulkan

Checklist

  • Test in the latest git build in case it's already fixed.
  • Search for other reports of the same issue.
  • Try resetting settings or older versions and include if the issue is related.
  • Try without any cheats and without loading any save states.
  • Include logs or screenshots of issue.
@Gabriel2Silva
Copy link
Author

By the way, this is a Libretro issue - for some reason I can't select the Libretro label?

@amverweij
Copy link
Contributor

Do your host and your client have a different MAC address configured in the settings?

@Gabriel2Silva
Copy link
Author

Do your host and your client have a different MAC address configured in the settings?

Yes.

@amverweij
Copy link
Contributor

I just tested playing on my home network with ppsspp-libretro 1.14 on both client and server. It works for me.

Settings on the client(s):

  • Enable Networking/WLAN: ON
  • A unique MAC address
  • WLAN Channel: Auto
  • Enable Built-in PRO Ad Hoc Server: OFF
  • Change PRO Ad Hoc Server IP Address: IP address
  • PRO Ad Hoc Server IP Address: 192.168.178.103
  • Enable UPnP: OFF
  • Port Offset: 10000
  • Minimum Timeout: 0
  • Forced First Connect: OFF

Settings on the server:

  • Enable Networking/WLAN: ON
  • A unique MAC address
  • WLAN Channel: Auto
  • Enable PRO Ad Hoc Server: ON
  • Change PRO Ad Hoc Server IP Address: IP address
  • PRO Ad Hoc Server IP Address: 192.168.178.103
  • Enabe UPnP: OFF
  • Port Offset: 10000
  • Minimum Timeout: 0
  • Forced First Connect: OFF

(This is in accordance with How-to-play-multiplayer-games-with-PPSSPP)

Hope that helps!

@Gabriel2Silva
Copy link
Author

I just tested playing on my home network with ppsspp-libretro 1.14 on both client and server. It works for me.

Settings on the client(s):

  • Enable Networking/WLAN: ON
  • A unique MAC address
  • WLAN Channel: Auto
  • Enable Built-in PRO Ad Hoc Server: OFF
  • Change PRO Ad Hoc Server IP Address: IP address
  • PRO Ad Hoc Server IP Address: 192.168.178.103
  • Enable UPnP: OFF
  • Port Offset: 10000
  • Minimum Timeout: 0
  • Forced First Connect: OFF

Settings on the server:

  • Enable Networking/WLAN: ON
  • A unique MAC address
  • WLAN Channel: Auto
  • Enable PRO Ad Hoc Server: ON
  • Change PRO Ad Hoc Server IP Address: IP address
  • PRO Ad Hoc Server IP Address: 192.168.178.103
  • Enabe UPnP: OFF
  • Port Offset: 10000
  • Minimum Timeout: 0
  • Forced First Connect: OFF

(This is in accordance with How-to-play-multiplayer-games-with-PPSSPP)

Hope that helps!

I honestly have no idea what I'm doing wrong, then. I'm glad to know that it works, but now I'm even more lost than before. I've updated my PPSSPP core to latest (v1.14.1-29-g2ff5747) and used exactly the same settings as you on the host machine (only exception being the IP address which is my PC static IPv4 address). I was going to try and connect with another PC on the same network but I can't even connect on the host PC. I don't think port forwarding and any of this NAT business can have anything to do with the fact that it isn't working, but just to be sure, I'm on an Open NAT connection with DMZ enabled and pointed to my PC IPv4 address. I am also outside CGNAT and I have a static external IPv4 address. Windows Firewall is not blocking RetroArch, too, as I manually allowed inbound and outbound connections on both private and public networks.

Also doesn't work when using VPNs such as Radmin or Hamachi (tested it just in case).

Did you tested it with MHFU just like me? Here's a quick video:

tryingtoconnect.mp4

@amverweij
Copy link
Contributor

amverweij commented Dec 23, 2022

Assuming that you made this video on the machine with local IP address 192.168.0.29, I have no idea why it doesn't work for you.

I find it rather odd though that the issue seems to be that you cannot resolve the local IP address of the machine on which you are running. When you open a DOS box and ping 192.168.0.29, does that work?

I tested with Soulcalibur Broken Destiny.

(In case you are not running on 192.168.0.29, try again with Enable Built-in PRO Ad Hoc Server: OFF.)

@Gabriel2Silva
Copy link
Author

Gabriel2Silva commented Dec 23, 2022

Assuming that you made this video on the machine with local IP address 192.168.0.29, I have no idea why it doesn't work for you.

I find it rather odd though that the issue seems to be that you cannot resolve the local IP address of the machine on which you are running. When you open a DOS box and ping 192.168.0.29, does that work?

I tested with Soulcalibur Broken Destiny.

(In case you are not running on 192.168.0.29, try again with Enable Built-in PRO Ad Hoc Server: OFF.)

Yes, this was the machine with local IP address 192.168.0.29. It is not restricted to a local connection, though: if I input a public server IP address, such as socom.cc or psp.gameplayer.club, it gives me the exact same error (DNS Error Resolving ip address). To me, the "IP Address" option simply doesn't work.

I just tested it in another PC with another IP address managed by DHCP instead of static, running Windows 11 just to make sure this isn't something related to my computer or my RetroArch installation. Exactly the same errors in exactly the same scenarios. I'm honestly lost at this point.

Here's the result of ping 192.168.0.29 in Windows 10 cmd:
ping 192.168.0.29 Pinging 192.168.0.29 with 32 bytes of data: Reply from 192.168.0.29: bytes=32 time<1ms TTL=128 Reply from 192.168.0.29: bytes=32 time<1ms TTL=128 Reply from 192.168.0.29: bytes=32 time<1ms TTL=128 Reply from 192.168.0.29: bytes=32 time<1ms TTL=128

I'll dump my Soulcalibur Broken Destiny copy and test it just to be sure.

EDIT: Also, doing the exact same procedure in standalone PPSSPP works fine. I can connect fine when hosting and I can also connect fine when joining other public servers typing their DNS IP addresses directly.

@Gabriel2Silva
Copy link
Author

Tested it in Soulcalibur Broken Destiny (ULUS10457), exactly the same error:

[libretro ERROR] [SCENET] DNS Error Resolving 192.168.000.029

And I get stuck in a "Connecting. Please wait... Channel: Automatic", "An internal error has occured. (00000000)", "Connecting. Please wait... Channel: Automatic""An internal error has occured. (80410B10)" loop.

@amverweij
Copy link
Contributor

It could be that the issue is with the leading zero in 029, that could make the DNS resolver interpret it as octal.

Does it break in PPSSPP standalone when you enter the IP address including the leading zeros?

@amverweij
Copy link
Contributor

I have reproduced your issue locally on a host where the local IP address has a leading zero.

@amverweij
Copy link
Contributor

@Gabriel2Silva : thank you for all the effort you did in reporting this issue.

@Gabriel2Silva
Copy link
Author

@Gabriel2Silva : thank you for all the effort you did in reporting this issue.

Thank you for your helpfulness, too. Glad to see it's being fixed,

@anr2me anr2me added the Libretro Issue on Libretro but not all ports. label Dec 24, 2022
@anr2me anr2me closed this as completed Dec 24, 2022
@unknownbrackets unknownbrackets added this to the v1.14.2 milestone Dec 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Libretro Issue on Libretro but not all ports. Networking / adhoc
Projects
None yet
Development

No branches or pull requests

4 participants