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

Patapon 2 - Failed to Bind Port 1 #19842

Open
4 of 5 tasks
Asteliks opened this issue Jan 9, 2025 · 5 comments
Open
4 of 5 tasks

Patapon 2 - Failed to Bind Port 1 #19842

Asteliks opened this issue Jan 9, 2025 · 5 comments

Comments

@Asteliks
Copy link

Asteliks commented Jan 9, 2025

Game or games this happens in

UCES01177 v1.00 - PATAPON 2

What area of the game / PPSSPP

When trying to host a local multiplayer session with the other player on the actual PSP I get the "Failed to Bind Port" error spam. From what I understand when connecting to a PSP we can not use port offsets.
Zrzut ekranu z 2025-01-09 23-40-55

What is especially interesting this error doesn't appear in other games when hosting or trying to join local multiplayer games - works fine for Monster hunter Freedom unite and Fat Princess

What should happen

I should be able to host my local multiplayer game

Logs

Unable to find the log file on Linux Fedora Flatpak

Platform

Linux / BSD

Mobile device model or graphics card (GPU)

NVIDIA GeForce RTX™ 3080

PPSSPP version affected

1.18.1

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.
@anr2me
Copy link
Collaborator

anr2me commented Jan 9, 2025

Try running PPSSPP as admin/sudo, because ports below 1024 are restricted, so only admin can access them.

PS: Unfortunately on Android it's not possible for java app to use ports below 1024, even with root/su (may be a background service can bind it)

@Asteliks
Copy link
Author

Asteliks commented Jan 9, 2025

Try running PPSSPP as admin/sudo, because ports below 1024 are restricted, so only admin can access them.

Wouldn't that stop the other games from working too? No luck here:
error: "flatpak run" is not intended to be run as `sudo flatpak run`, use `sudo -i` or `su -l` instead and invoke "flatpak run" from inside the new shell

sudo -i flatpak run org.ppsspp.PPSSPP VulkanMayBeAvailable: Device allowed ('SDL:Linux') Vulkan library loaded ('libvulkan.so.1') VulkanMayBeAvailable: Enumerating instance extensions VulkanMayBeAvailable: Instance extension count: 24 VulkanMaybeAvailable: Instance extension found: VK_KHR_device_group_creation (00000001) VulkanMaybeAvailable: Instance extension found: VK_KHR_display (00000017) VulkanMaybeAvailable: Instance extension found: VK_KHR_external_fence_capabilities (00000001) VulkanMaybeAvailable: Instance extension found: VK_KHR_external_memory_capabilities (00000001) VulkanMaybeAvailable: Instance extension found: VK_KHR_external_semaphore_capabilities (00000001) VulkanMaybeAvailable: Instance extension found: VK_KHR_get_display_properties2 (00000001) VulkanMaybeAvailable: Instance extension found: VK_KHR_get_physical_device_properties2 (00000002) VulkanMaybeAvailable: Instance extension found: VK_KHR_get_surface_capabilities2 (00000001) VulkanMaybeAvailable: Instance extension found: VK_KHR_surface (00000019) VulkanMaybeAvailable: Instance extension found: VK_KHR_surface_protected_capabilities (00000001) VulkanMaybeAvailable: Instance extension found: VK_KHR_wayland_surface (00000006) VulkanMaybeAvailable: Instance extension found: VK_KHR_xcb_surface (00000006) VulkanMaybeAvailable: Instance extension found: VK_KHR_xlib_surface (00000006) VulkanMaybeAvailable: Instance extension found: VK_EXT_acquire_drm_display (00000001) VulkanMaybeAvailable: Instance extension found: VK_EXT_acquire_xlib_display (00000001) VulkanMaybeAvailable: Instance extension found: VK_EXT_debug_report (0000000a) VulkanMaybeAvailable: Instance extension found: VK_EXT_debug_utils (00000002) VulkanMaybeAvailable: Instance extension found: VK_EXT_direct_mode_display (00000001) VulkanMaybeAvailable: Instance extension found: VK_EXT_display_surface_counter (00000001) VulkanMaybeAvailable: Instance extension found: VK_EXT_headless_surface (00000001) VulkanMaybeAvailable: Instance extension found: VK_EXT_surface_maintenance1 (00000001) VulkanMaybeAvailable: Instance extension found: VK_EXT_swapchain_colorspace (00000005) VulkanMaybeAvailable: Instance extension found: VK_KHR_portability_enumeration (00000001) VulkanMaybeAvailable: Instance extension found: VK_LUNARG_direct_driver_loading (00000001) VulkanMayBeAvailable: Calling vkCreateInstance VulkanMayBeAvailable: Vulkan test instance created successfully. VulkanMayBeAvailable: Eligible device found: 'NVIDIA GeForce RTX 3080' VulkanMayBeAvailable: Eligible device found: 'AMD Radeon Graphics (RADV RAPHAEL_MENDOCINO)' VulkanMayBeAvailable: Ineligible device found and ignored: 'llvmpipe (LLVM 19.1.6, 256 bits)' VulkanMayBeAvailable: Found working Vulkan API! VulkanMayBeAvailable: Destroying instance DEBUG: Vulkan might be available. Failed to initialize SDL with joystick support. Retrying without. Unable to initialize SDL: Pipewire: Failed to connect hotplug detection context (112)

@anr2me
Copy link
Collaborator

anr2me commented Jan 9, 2025

i'm not sure about flatpak, never used them before, but this issue is OS restriction, it's not something PPSSPP can do about (which is why we use port offset to avoid this restriction on most platforms, but unfortunately real PSP doesn't have port offsetting feature)

@anr2me
Copy link
Collaborator

anr2me commented Jan 10, 2025

Btw, are you playing this on LAN or online?

If it's through public IP, there is "UPnP UseOriginalPort" setting where you can use port offset to bind ports higher than 1023 on your internal IP, while it will be mapped and opening the original ports used by the game (ie. port 1) on the public IP, this will allows real PSP to communicate with it's original port as long it went through public IP, and as long your ISP allowed you to open ports below 1024.

So, with port offset 10000 and UseOriginalPort enabled, the UPnP port mapping will be:
PPSSPP's InternalIP:Port+10000 <----- router ----> ISP's externalIP:Port <---- the internet ---> PSP

I think it might also be possible do this when playing on LAN, by forwarding packets from one port to another port on the same network adapter/interface using iptables or the like on linux.
May be like this https://askubuntu.com/questions/104824/port-forward-to-a-port-on-the-same-machine

PS: i'm not familiar with iptables since i'm not a linux user.

@Asteliks
Copy link
Author

We've tried in in our local LAN network. Guess the best solution would be to have port offsets implemented on PSP end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants