Jump to content
bendodge

Working with multiple LAN adapters - Hamachi

Recommended Posts

Hello, I was a C&C95 addict as a kid and recently came across this awesome patch! I was able to play a few games using CnCNet, but I'd like to get a direct connection working. I am behind a university firewall and cannot open ports. I am trying to play with my brother over the Internet with a p2p connection.

 

My brother and I have a direct VPN via Hamachi, which installs a virtual wired LAN adapter. We only have 75ms lag, and so we'd much, much rather use that than the CnCNet tunnel.

 

I tried specifying both my virtual (Hamachi-assigned) LAN IP and my brother's virtual LAN IP in the Destination Network field of the configuration tool. I used http://www.kloth.net...es/iplocate.php to translate our addresses into "IP hex." We tried both 0 and non-0 socket numbers but still cannot see networked games. He did the same on his end (trying both his own and my IP address.)

 

What are we doing wrong? How can I bind C&C95 to a specific IP/adapter? Many thanks.

Share this post


Link to post

Dunno what OS you got, but this is the way to make Hamachi your primary LAN adapter in WinXP:

hamachi-priority.png

Share this post


Link to post

Windows 7; I should have mentioned that.

 

We did try moving Hamachi to the top and launching the game normally, but we still couldn't see each other's games. It sure seems like that should work, though. We will try it again just in case.

Share this post


Link to post

Discoveries:

  • I assumed that your patch included the IPX/UDP patch, but it may not actually include that. Is the 54,784 byte thipx32.dll the original?
  • CnCNet used to have a direct IP connection option, but not any more.
  • CnCNet auto-updates, so don't even try to use old versions.
  • CnCNet immediately replaces thipx32.dll on run and doens't restore the old version.
  • hifi doesn't want people running their own CnCNet servers. I cannot find current server code to compile.
  • I cannot use IPXWrapper or similar as C&C95 doesn't use winsock32.dll

I tried replacing thipx32.dll with the old 1.01 dll from Scorpio9a and moving Hamachi to the top, but no cigar.

 

Can you tell me if the thipx32.dll included with 1.06c is original? I think this topic is getting less and less relevant to your 1.06c patch, so can you suggest any better places to seek help? (I'd love to use CnCNet if I didn't have to use the slow relay, but there's no way I can open the port for p2p.)

 

Thank you.

Edited by bendodge

Share this post


Link to post

Well, hifi's code is public so you can make your own server if you want. I would go on #cncnet at freenode and ask there. If you are in the right time zone you may run into hifi himself. AFIAK 1.06 does include lan mode, check the launcher settings (it should replace the dll for you).

Edited by Sonarpulse

Share this post


Link to post

CCConfig, though perhaps they both contain the setting. I think it just replaces it with whatever LAN library is included on Nyergud's website, so it probably won't make any difference versus what you have done already, but it is at least a cleaner way to get the job done.

Edited by Sonarpulse

Share this post


Link to post

We did try moving Hamachi to the top and launching the game normally, but we still couldn't see each other's games. It sure seems like that should work, though. We will try it again just in case.

You might want to try steps 14-18 in this tutorial on how to play RA2/YR on Hamachi. You can bypass the part where you set Hamachi to the top by editing certain registry values.

Share this post


Link to post

The DLL CnCNet uses does work on LAN and should work on Hamachi. Peer to peer mode on CnCNet is the closest you get to direct connect which also required port forwarding. Do not use CnCNet.exe you want to play on a VPN or LAN, use c&C95.exe.

 

1.06 does include the LAN patch.

Share this post


Link to post

The included dll is the cncnet one, which has the same UDP LAN code as Scorpio9a's original LAN patch. It only switches to actual CnCNet mode when the game is launched with the CnCNet.exe launcher. When the game is ran normally though C&C95.exe, it's a perfect substitute to the older UDP LAN dll.

Share this post


Link to post

You might want to try steps 14-18 in this tutorial on how to play RA2/YR on Hamachi. You can bypass the part where you set Hamachi to the top by editing certain registry values.

Thanks for the guide. We have Hamachi at the top of the priority list, but I don't see how to specify an adapter in C&C95 like you can in RA2. I think the Multiplayer section of CCConfig is where I need to look, but I don't understand the two settings there (Socket and Destination Network).

CCConfig, though perhaps they both contain the setting. I think it just replaces it with whatever LAN library is included on Nyergud's website, so it probably won't make any difference versus what you have done already, but it is at least a cleaner way to get the job done.

The DLL CnCNet uses does work on LAN and should work on Hamachi. Peer to peer mode on CnCNet is the closest you get to direct connect which also required port forwarding. Do not use CnCNet.exe you want to play on a VPN or LAN, use c&C95.exe.

 

1.06 does include the LAN patch.

The included dll is the cncnet one, which has the same UDP LAN code as Scorpio9a's original LAN patch. It only switches to actual CnCNet mode when the game is launched with the CnCNet.exe launcher. When the game is ran normally though C&C95.exe, it's a perfect substitute to the older UDP LAN dll.

Ok, so the CnCNet DLL has the UDP patch and should work for LAN play. Now I just need to figure out why it doesn't. :P

 

Can someone explain what the two settings (Socket and Destination Network) on the Multiplayer tab of CCConfig do? I assume that Destination Network should be set to the local IP address of the preferred network adapter, but why is it in hex?

 

Unfortunately, I don't really understand sockets, though I did read the Wikipedia article. A socket is IP address + port, right? Does a socket have to be initialized somehow before you can use it? Does the socket number correspond to the port? What happens if it's left at 0?

Share this post


Link to post

Not sure, really. I just copied these settings from the original CCSetup. Network stuff has never been one of my strong points.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×