Medal of Honor UDP 28500
IamLupo opened this issue · 6 comments
Hello,
I have been modding medal of honor rising sun for the ps2 and i manage to make my own custom matchmaker server in python. With this result i manage to push the server list and now the LAN clients can connect to each other.
I used DEV9ghzdrk-1.4rel.dll to let them connect to each other. But this plugin also has issues.
When i use your plugin i gained this error:
https://cdn.discordapp.com/attachments/264497527984881664/818677124562288640/unknown.png
Could you maybe have a look at it and see why this happends? Thanks
I used:
PCSX2 1.6.0
CLR-DEV9 9.0
Can you post the pcsx2 and CL_DEV9 log files
@TheLastRar Here there are all the log files:
http://iamlupo.nl/playstation/MoH/logs/06-03-2021/
This is the python script i made to communicate first through TCP 14300. This pushes the the server list to the playstation 2 clients.
My matchmaker server: http://gitlab.ludoruisch.nl/root/moh-rs-back-online/blob/master/main.py
Once the playstation recieves that data it starts to connect to my other MoH emulator that host a game. It recieves detailed server information through UDP. And as you see eventually your plugin crashes.
PS: If you also need the logs from my other emulator let me know. This emulator kept running normally in this process.
Oke i manage to solve the issue. The problem is not in your plugin.
The story:
When a client request the list of all servers at the matchmaking server. Then there exist the request LLST and GLST. This will give region and game list informations to the client.
When you hosted a game you had to select what region you wanted to host. And i expected that this was been done through the LLST request to get all regions. But apperntly there existed a RLST request.
Basicly in that old situation the RLST hasn't been processed and hosted the game without region informaton. This caused when the matchmaker server sended a client the server ip and port. This client would connect with UDP to the server and get the information from the server itself. And because the RLST wasn't been handle correctly it caused that the server has wrong information. This case caused that it can poison the client and crash. That eventually triggered to crash your plugin.
Conclusion:
Because the RLST is now been implemented in my matchmaker server. This makes that the host will have now all information it needs to host.
Your plugin works perfect basicly!. Thank you for your work! :D
Sorry to hijack, but I found this via Google. How do you mod MOH on PS2? Are there some tools, extractors etc?
Sorry to hijack, but I found this via Google. How do you mod MOH on PS2? Are there some tools, extractors etc?
Hey maybe contact me through discord. Then i can explain this in more detail ;)
Discord: IamLupo#5130
While the issue was with the matchmaker server, I had kept the issue open to remind me to investigate handling errors in UDP connections
This has now been fixed on 0.9.2 and the plugin should no longer crash when it encounters a similar situation to above