Commit graph

144 commits

Author SHA1 Message Date
iota97
4205ce7c42 Trim username on join as well 2021-07-26 21:11:21 +02:00
ANR2ME
7a06103cc6 Create GameMode's socket after Master and all Replicas have been created so we will know the largest buffer size. 2021-05-31 04:37:09 +07:00
Henrik Rydgård
f4a6d291e1 Common: Capitalize setCurrentThreadName(). 2021-04-30 23:02:36 -07:00
ANR2ME
206ab4345e Attempts to reconnect to Adhoc Server only when Creating/Joining/Connecting to a group or Scanning for groups, instead of on 2 seconds interval. 2021-04-02 12:19:02 +07:00
ANR2ME
e508885cc4 Show the socket error code when failed to connect to adhoc server 2021-04-02 12:18:59 +07:00
ANR2ME
e3228ca1b5 Use a function to check for loopback address 2021-04-02 12:18:12 +07:00
M4xw
4cc322466a Switch: Workaround several missing toolchain defs. 2021-03-04 21:24:57 -08:00
ANR2ME
36a9fb7645 Replacing the deprecated gethostbyname function with getaddrinfo function to prevent getting deprecated warnings 2021-03-01 01:45:28 +07:00
ANR2ME
758fb12fc3 Making sure there are no warnings related to deprecated inet_ntoa function 2021-03-01 01:45:27 +07:00
ANR2ME
cb61b34b53 Minor changes. 2021-02-21 20:05:50 +07:00
Unknown W. Brackets
9d22297a90 Windows: Use CommonWindows more consistently.
Also, make sure WinSock2.h is included beforehand where it's needed.
2021-02-14 10:30:10 -08:00
ANR2ME
0ce2c2c6e9 Windows recvfrom doesn't support MSG_TRUNC, so we're using dummy buffer with max size as alternative for peeking actual size of the next pending message. 2021-02-11 07:40:35 +07:00
ANR2ME
04434ea68e Fix possible race condition issue. 2021-02-05 21:54:00 +07:00
ANR2ME
79c30ee716 We don't really need to allocate a buffer when using MSG_TRUNC on recvfrom 2021-02-05 21:53:59 +07:00
ANR2ME
849fe4ade1 Updated PdpStat to prevent rcv_sb_cc from exceeding the buffer size arg (since we use larger buffer size to prevent micro stutters or disconnection issue due to too many dropped packets with small buffer size).
TODO: May need to improve it to be able to calculate the correct size if there are multiple datagram messages
2021-02-04 10:31:01 +07:00
ANR2ME
d907906c74 Fix connection issue on Dynasty Warriors (Shin Sangoku Musou) games when playing with more than 2 players. 2021-01-30 15:20:24 +07:00
ANR2ME
dbce1a4c1d Prevent access violation when running out of userMemory due to piling up AdhocMatching events. 2021-01-09 00:55:11 +07:00
ANR2ME
b10797db95 Fixed an issue where sometimes a player unable to join a host on Warriors Orochi 2 (should also fix similar issue on other games that use PDP/UDP on Windows) 2020-12-25 00:27:35 +07:00
ANR2ME
38d887ce88 Change socket's MSS based on PSP_ADHOC_PTP_MSS 2020-11-16 19:03:11 +07:00
ANR2ME
f30c61849b Making use TCP_QUICKACK (or it's alternative) along with TCP_NODELAY 2020-11-16 19:03:09 +07:00
ANR2ME
4eca124710 Blocks current thread to synchronize initial GameMode data. Fixes desync issue when GameMode multiplayer mission is being started. 2020-10-29 06:08:51 +07:00
ANR2ME
399f56f73b Implementing Adhocctl Busy state to prevent getting kicked out from Adhoc Server on games that tries to leave the group multiple times in a row.
Also Updated Adhocctl behavior.
2020-10-29 06:04:22 +07:00
ANR2ME
0157fe4988 Updated GameMode API (Fixed Pocket Pool) 2020-10-29 06:00:16 +07:00
ANR2ME
bff18c07d0 Fixed unable to see game room issue on Air Conflicts - Aces Of World War 2, should also fix other games with similar issue (due to invalid group mode) 2020-10-29 06:00:16 +07:00
ANR2ME
0363319f14 Prevent Scanning issue after reconnected to AdhocServer, also Updated logging to showing the error code on sceNetAdhocctlScan 2020-10-29 06:00:15 +07:00
ANR2ME
30b9f46aa5 Don't need to connect if AdhocServer IP is the same with this instance localhost IP and having AdhocServer disabled 2020-10-19 23:34:47 +07:00
ANR2ME
88ebed4c02 Prevent AdhocServer Pings from spamming Debug Log 2020-10-16 12:23:20 +07:00
Henrik Rydgård
b3deaab963 VS 2017 buildfix hack - these parameters are new to Windows.
Thanks autechre.
2020-10-14 23:15:49 +02:00
ANR2ME
00b11115bb Fixed timeout issue due to the latest CoreTiming::GetGlobalTimeUsScaled() have a possibility to get smaller number than the previous one. 2020-10-11 13:34:30 +07:00
ANR2ME
8b2073cd7f Prevent Dissidia 012 from opening too many ports when failed to connect continuously. 2020-10-10 01:00:32 +07:00
ANR2ME
d628eb2ebd Fix Falcom games (ie. Ys vs. Sora no Kiseki, Vantage Master Portable) 2020-10-09 23:45:12 +07:00
ANR2ME
6d02e25318 Updated GameMode implementation to fix Bomberman, also improved performance on BattleZone. (+1 squashed commits)
Squashed commits:

[4a3168b2d] GameMode oops
2020-10-09 23:42:03 +07:00
ANR2ME
8a96112e1a Fix Apctl and Adhocctl state change timings to works properly. Which fix the stuck MessageBox on Naruto Shippuden Ultimate Ninja Heroes 3 and .hack//Link properly. 2020-10-09 23:37:35 +07:00
Henrik Rydgård
ff8148dd92 Move native/util, native/data and native/i18 to Common/Data.
Also move colorutil.cpp/h

linking build fix experiment

Delete a bunch of unused CMakeLists.txt files

CMakeLists.txt linking fix

Don't include NativeApp.h from any headers.

Android.mk buildfix

Half of the UWP fix

Buildfix

Minor project file cleanup

Buildfixes

Guess what? More buildfixes!
2020-10-04 07:28:29 +02:00
Henrik Rydgård
15382d5f94 Move threading utils from native to Common 2020-10-01 09:27:25 +02:00
Henrik Rydgård
054acf768c Don't cache time in a variable.
A little weirdness in the code that has stuck around for a long, long
time. It's really not necessary and mostly just confusing.
2020-09-24 23:52:43 +02:00
ANR2ME
4881f4f0bd Fixed PdpStat and PtpStat info 2020-09-22 10:16:04 +07:00
ANR2ME
3439511e0c Implementing Adhoc GameMode HLE 2020-09-20 11:55:16 +07:00
ANR2ME
e690dc62dc Fix an issue of major performance drops when using accepted PTP Sockets. 2020-09-15 01:53:18 +07:00
ANR2ME
2808903663 Making sure the are no compiler warnings on adhoc code on android 2020-09-14 03:38:20 +07:00
ANR2ME
8d68e917b7 Prevent Client side from forever re-trying to connect to Exited Host on Shin Sangoku Musou Multi Raid 2 2020-09-14 03:38:20 +07:00
Henrik Rydgård
9753e317f3
Merge pull request #13415 from ANR2ME/adhocctl_fix
Avoid getting Fatal signal 6 (SIGABRT) on linux/android
2020-09-12 16:30:05 +02:00
ANR2ME
3b38062a47 Fix Failed to Bind already used port issue on Android (and probably linux too). This should fix Dynasty Warrior Strikeforce and Shin Sangoku Musou Multi Raid 2 2020-09-12 09:08:50 +07:00
ANR2ME
2b109f4640 Avoid getting Fatal signal 6 (SIGABRT) on linux/android when losing connectivity to the Adhoc Server. 2020-09-12 06:14:28 +07:00
Henrik Rydgård
8d72abb605
Merge pull request #13413 from ANR2ME/adhocmatching_fix
AdhocMatching - Clients shouldn't try to detects other clients disconnection by them self.
2020-09-11 13:06:02 +02:00
ANR2ME
3eeb48bb40 Clients shouldn't try to detects timeout of other clients, because most of the time the client side doesn't have timeout information given, better wait for the host to tells them if a client got disconnected. 2020-09-11 13:44:09 +07:00
ANR2ME
1e6593f791 Sleep a bit longer, especially when PPSSPP paused. 2020-09-11 13:24:45 +07:00
ANR2ME
82a064adcf Resolve Adhoc Server DNS early and cache it so we don't need to resolve it again later. 2020-09-10 12:00:30 +07:00
ANR2ME
2affbb850c Stop waiting for connection on Exit to Menu to prevent causing lags. 2020-09-10 12:00:30 +07:00
ANR2ME
97e5a1f447 Combining PDP and PTP socket's array into a union array. Fixes Hot Shots Tennis that doesn't works well with socketId > 255 2020-09-09 14:21:32 +07:00