And maybe also focus on using Tggtt's patched GOG.com version with restored multiplayer support (at least where NetBIOs is supported) as a basis, as this will work best for modern OSes once multiplayer support is hopefully restored.
The patch is here: viewtopic.php?f=4&t=351
Does anyone know about networking?
- Ubergeneral Grunt
- Site Admin
- Posts: 189
- Joined: Fri Nov 19, 2010 10:20 am
- Favourite Race: Tarth
- Location: Perth, Western Australia
- Contact:
Re: Does anyone know about networking?
Tarth cooks make best strudel, barbecue, bean dip, fish, cat food, smelt, piston rings, tofu and cam shafts...
Re: Does anyone know about networking?
Thanks for reminding us about that, however, I don't see any trouble there, since the patch only changes DEADLOCK.EXE to make it work just like the updated 1.31 with CD but using the files provided by GOG's installer instead of looking for the CD.Ubergeneral Grunt wrote: ↑Tue Sep 01, 2020 7:35 amTggtt's patched GOG.com version with restored multiplayer support
MildewMan1 is replacing DLNET*.DLL, which is not affected by the patch. Therefore, what works for 1.31 with CD should work with GOG patched version.
Advice: DLNET used by 1.31 probably works with 1.20 as well.
Best 20x20 Map is elected.
Follow @OpenDeadlock.
Please help Deadlock Wikis.
Join #OpenDeadlock at irc.MindForge.org and Libera.Chat
Follow @OpenDeadlock.
Please help Deadlock Wikis.
Join #OpenDeadlock at irc.MindForge.org and Libera.Chat
-
- Colonist
- Posts: 37
- Joined: Sat Jun 27, 2020 3:02 pm
- Favourite Race: Tarth
- Location: St. Louis, Missouri, USA
Re: Does anyone know about networking?
I'll probably end up just using tcp sockets for both.
The 1.31 dll might work with 1.20, but I recall reading in their patch notes that they changed something.
I'll see if I can post some pictures tonight of what I've got so far.
The 1.31 dll might work with 1.20, but I recall reading in their patch notes that they changed something.
I'll see if I can post some pictures tonight of what I've got so far.
-
- Colonist
- Posts: 37
- Joined: Sat Jun 27, 2020 3:02 pm
- Favourite Race: Tarth
- Location: St. Louis, Missouri, USA
Re: Does anyone know about networking?
Sorry for the delay in getting these pictures uploaded.
-
- Colonist
- Posts: 37
- Joined: Sat Jun 27, 2020 3:02 pm
- Favourite Race: Tarth
- Location: St. Louis, Missouri, USA
Re: Does anyone know about networking?
Here's a couple more.
Re: Does anyone know about networking?
Congratulations on the progresses.
Thanks for sharing that, MildewMan1.
Thanks for sharing that, MildewMan1.
Best 20x20 Map is elected.
Follow @OpenDeadlock.
Please help Deadlock Wikis.
Join #OpenDeadlock at irc.MindForge.org and Libera.Chat
Follow @OpenDeadlock.
Please help Deadlock Wikis.
Join #OpenDeadlock at irc.MindForge.org and Libera.Chat
-
- Colonist
- Posts: 37
- Joined: Sat Jun 27, 2020 3:02 pm
- Favourite Race: Tarth
- Location: St. Louis, Missouri, USA
Re: Does anyone know about networking?
I think I'm close to having this working. I added something to my network debugging app where I can send what I call a "Net Message" to the game over the network to simulate things that a real player would do. I am able to select a race using my debugger and select a landing site, which gets me into the game. In the photo below, my debugger is the game host (Cyth), and I am a slave player in the game.
I access some memory locations directly in Deadlock with this, so to get this working with 1.31, I will need to go through and find the corresponding memory locations that I am using in 1.20.
Still have some work to do, but once I am ready, hopefully someone can help me test out a real game to check for bugs.
I access some memory locations directly in Deadlock with this, so to get this working with 1.31, I will need to go through and find the corresponding memory locations that I am using in 1.20.
Still have some work to do, but once I am ready, hopefully someone can help me test out a real game to check for bugs.
- Ubergeneral Grunt
- Site Admin
- Posts: 189
- Joined: Fri Nov 19, 2010 10:20 am
- Favourite Race: Tarth
- Location: Perth, Western Australia
- Contact:
Re: Does anyone know about networking?
Tggtt and I did have success with Deadlock II multiplayer games using TCP/IP and Hamachi, so that will probably work here for testing with other players too.
Maybe it would be possible to add play over the internet directly? Still, that might be a bit too difficult.
Maybe it would be possible to add play over the internet directly? Still, that might be a bit too difficult.
Tarth cooks make best strudel, barbecue, bean dip, fish, cat food, smelt, piston rings, tofu and cam shafts...
-
- Colonist
- Posts: 37
- Joined: Sat Jun 27, 2020 3:02 pm
- Favourite Race: Tarth
- Location: St. Louis, Missouri, USA
Re: Does anyone know about networking?
That's what I'm working on is direct internet play using TCP sockets. Anyone should be able to connect to someone else if they have their IP and Port number.
Eventually I want to take my debug server and make it into an independent server that would handle all of the games. Instead of having to share your IP and port, you'd just connect to the server (would happen automatically from Deadlock like if you had used TEN or MPlayer back in the day), and then the server would facilitate connecting players that want to play together. Of course connecting with an IP address would still be an option.
I setup a virtual box with windows 10 today and installed everything to test out what I have so far between 2 games and found a pretty nasty bug that was only affecting Deadlock, and I didn't see it when testing with the debug server. I am using multithreading for a lot of this to prevent the UI from freezing while the sockets are doing stuff, and my code was calling the Net code directly from the staticly linked version, and then Deadlock was calling it from the DLNETNT.dll, so they were deadlocking (haha) each other.
I got that corrected though by hijacking the function where Deadlock loads the dll and just feeding it the memory addresses to the staticly loaded functions.
Eventually I want to take my debug server and make it into an independent server that would handle all of the games. Instead of having to share your IP and port, you'd just connect to the server (would happen automatically from Deadlock like if you had used TEN or MPlayer back in the day), and then the server would facilitate connecting players that want to play together. Of course connecting with an IP address would still be an option.
I setup a virtual box with windows 10 today and installed everything to test out what I have so far between 2 games and found a pretty nasty bug that was only affecting Deadlock, and I didn't see it when testing with the debug server. I am using multithreading for a lot of this to prevent the UI from freezing while the sockets are doing stuff, and my code was calling the Net code directly from the staticly linked version, and then Deadlock was calling it from the DLNETNT.dll, so they were deadlocking (haha) each other.
I got that corrected though by hijacking the function where Deadlock loads the dll and just feeding it the memory addresses to the staticly loaded functions.
-
- Colonist
- Posts: 37
- Joined: Sat Jun 27, 2020 3:02 pm
- Favourite Race: Tarth
- Location: St. Louis, Missouri, USA
Re: Does anyone know about networking?
FINALLY!! I got 2 games to work together after many frustrating hours! I need to polish up some of the stuff to make it more efficient, but I'm pretty stoked that I was able to get this far with 0 networking experience 2 months ago.