Sonic Adventure™ 2

Sonic Adventure™ 2

168 ratings
How to set up Sonic Adventure 2: Battle Network (Online Multiplayer)
By Kibo and 1 collaborators
A step-by-step tutorial on how to get the SA2B: Network Mod (by SonicFreak94) working.
3
3
3
   
Award
Favorite
Favorited
Unfavorite
1. Introduction








Hi there! I'm Omochao! This is a guide to...


eh, enough of that...

This is a guide to setting up the SA2B: Network mod by SonicFreak94.

I've met a few people on here and wanted to play some SA2 Multiplayer with them, but often they did not know how to properly set up the mod...

So i wanted to create this nice and easy step-by-step guide right here on steam showing you all how to set it up.

Enough talk, let's go!
2. Requisites
To start off, you'll need a few things:

NOTE: Hamachi is not required if you are able to PortForward. However for the sake of keeping this guide short and easy, i will be using Hamachi. For more information on how to Port Forward...

...Google it i guess? ¯\_(ツ)_/¯ SIKE! I have added a section below on how you can Port Forward and host your own games without a third party application like Hamachi. Check it out!

Mod Downloads:

NOTE: If you have MainMemory's Character Select Mod[gamebanana.com] enabled, it can cause problems with spawn points, disable it for the mod to function properly.

If you already know how to install mods, please skip to Step 5.
3. Setting up the Mod Loader
Once you have downloaded the Mod Loader, extract the file and place it in the root of your Sonic Adventure 2 folder (e.g: E:\Program Files (x86)\Steam\steamapps\common\Sonic Adventure 2), once you've done that - run the executable.



Once the program has opened, click on the "Install Loader" button at the bottom. This will add all the necessary files and folder to the Sonic Adventure 2 directory.

4. Installing the Mod
Once you have downloaded the sa2-battle-network.7z file, extract it to the now created 'mods' folder in the root of the Sonic Adventure 2 directory. This 'mods' folder houses all of the mods you will use.

Now open up the Mod Manager, if it is already open then click on the Refresh button on the left. you should now see the Network mod appear in the list.

Click on the Checkmark beside the Mod and then click on save at the bottom. Do not click Save & Play as the mod will not properly work without the following steps.
5. Setting up the Connection
Now open up Hamachi and press the Power button.

Once you have Hamachi turned ON, you can then either create a room or join one. To create a room, go to Network > Create a new network.


From here you will be asked to give the room a name (Network ID) and add a password. I have filled it out as seen in the image below.



From here, if you want others to join, simply provide them the Network ID and the Password. If you're joining someone else's room, you'd wanna get this info from them.



Once someone has joined your room, you should see their name under the room name, if there is no problems they should have a green circle by their name as seen below.


Now that you have a stable connection to your partner, now it's time to move on to configuring SA2 to connect to them. Locate the sonic2app.exe within the root of the Sonic Adventure 2 folder, then create a shortcut of it.



From here, i'd recommend renaming it to something else so it's easily identifiable. I renamed mine to 'Sa2 Network'.


Open up the properties of the shortcut you just created, in the Target textbox we need to add additional information in order to either host or connect to our partner.

If you're hosting, add at the end of it: '-h 27015'



If you're connecting, add at the end of it: '-c [address:27015]'
e.g: -c 127.0.0.1:27015



If you're wondering where you can get the address of your partner, simply go to hamachi, right click their name and click on 'Copy IPv4 address'.

Now to test if the mod is working correctly. Run the game using the shortcut you just created (Important!) and navigate to the 2 Player Battle menu. Once on it, the music should be different from the regular Battle music. It should instead sound like This[1drv.ms]. If you cannot hear this then something has gone wrong.


There are additional Command Line Arguments you can add to spice up the game. These have been grabbed directly from SonicFreak94's sonicretro post[forums.sonicretro.org]:
  • --host (or -h) [port] - Hosts a server on the specified port. When in doubt, use 27015
  • --connect (or -c) [address:port] - Connects to the specified address on the specified port.
  • --timeout (or -t) [timeout] - The connection timeout in milliseconds. Default is 15000, minimum is 1000. Currently non-functional.
  • --no-specials - Disables special abilities in 2P mode entirely. It doesn't synchronize yet, so both players must use it.
  • --keep-active - Keeps the game window active. In other words, it doesn't pause when you click on another program while in window mode. Also available in mod form.[sf94.reimuhakurei.net]
  • --cheats - Enables teleportation.
  • --netstat - Enables network statistic logging. Saves as netstat.recv.csv and netstat.sent.csv

Common Hamachi problem

If for some reason you get this screen from opening up hamachi then here's a quick fix.

Go to Windows Search and type in "Services". Click on the first option.

Scroll down the list of services and look for "LogMeIn Hamachi Tunneling Engine" and hit "Start the service"


it'll take a few moments to load up and you should be good to go!

Also, go to the Service's properties by right clicking on it and make sure that Startup type is on 'Automatic' and click OK.
6. Port Forwarding (Optional)
If you're like me and you don't want to deal with the hassle of using Hamachi, it is possible to host games by simply opening the port to allow others to join!

Opening the port

To begin, navigate to your router settings by entering 192.168.0.1 in your browser's URL bar. You may need to log in.


Once you're in, search for a section for Port Forwarding. All routers differ so mine may look a lot different from yours. If you are having trouble, please refer to this page[www.noip.com].

Once you have found the Port Forwarding section, you will need to know what your local IPv4 address is. You can find this by opening Command Prompt and entering 'ipconfig'.


Here you can see it shows my IPv4 Address as 192.168.0.23, yours will be different. You now want to take note of the last two numbers of the address.

Now, in your router's page, create a new rule and enter the IPv4 address in the area presented. It will also ask for some port numbers, enter 27015. For protocol you should select both TCP and UDP. Your router may need you to create separate rules for TCP and UDP. If your router gives you the option of enabling it, make sure its enabled.


Here you can see I've created the new rule with my computer's IPv4 Address, port number 27015, both protocols (TPC & UDP) and the rule is enabled. Make sure you save and apply this new rule.


Allowing port via Firewall

Now we will need our firewall to allow the connection through the port. Search Firewall on Windows and open it. Now look for 'Advanced settings' on the left side and open it, you will need Administrative privileges.

On the left, click on Inbound Rules and add a New Rule on the right. A new window will pop up.


Select Port and click next.


Select TCP, enter the port number '27015' and click next.


Ensure 'Allow the connection' is checked, click next.


These depend on your circumstance, tick all that applies to you - I personally have them all ticked for my home computer.


Here you can give it an identifiable name, once you've done that - click Finish.


Now you should be back to the Firewall Advanced Security page. Now click on new rule again and repeat the process, however this time select UDP so you can allow the UDP port.

Then, once you have added an Inbound rule for both TCP and UDP. On the left, click Outbound Rules and add a new rule. Here you simply want to replicate what you did before, follow the same exact steps.


The result should be, you should have two rules for each Inbound and Outbound, both allowing the port 27015 for TCP and UDP. So 4 rules in total.

Testing if ports are active

So now let's check if the ports are working. First, let's modify our SA2 shortcut to say that we're going to be hosting, on port 27015. Like so:


Now open the game and navigate to the 2 Player menu screen. Again, you should here a different song than the normal 2P menu music - this means the mod is working properly. Open Command Prompt and enter 'netstat -an | find "27015"', It should show a TCP port 27015 as LISTENING.


To confirm if the port is truly open and others can connect, navigate to this website[www.yougetsignal.com], it should automatically add your public IP Address in the 'Remote Address' box, simply enter the port number 27015 and click 'Check'. It will then tell you if the port is successfully open, which means people can now join you.


Now if you want others to join, you will need to give them your public IP Address, which can be easily found by Googling "What's my IP?", they will need to enter this with the port number when they want to connect, like so:


Summary
So, just to simplify the whole process.
  • Open the port via your router
  • Allow the port to be open within your firewall
  • Test to make sure ports are open
  • Hand over your public IP Address to your friend
  • Connect and have fun

If you're having any trouble or are confused, please feel free to reach out to me.
7. Additional Info + Credits
Chao Racing & Karate
From my experience, these Gamemodes work, however you both would need to be using the same Chao save files in order for it to be properly synced. Also ensure to check whether or not you both have Chao World Extended installed. I'm not sure if this is a requirement, but it doesn't hurt to check.

Fullscreen & Splitscreen
There is a feature to toggle between Splitscreen and Fullscreen, to do this, simply press the L & R buttons (or equivalent) at the same time.
NOTE: There is a chance that doing this can cause your game to crash.

Synced Upgrades
The Mod does include Synced upgrades; so that for example, you have a bounce bracelet mod for either sonic or shadow, it can be used in 2P and the other person can see you bouncing (even if they do not have the mod installed/enabled).

Crashes
Expect a lot of crashes. That's all i'm saying.

Disconnection issues
Once your partner's game eventually crashes, a small jingle will play, followed by the new 2P menu song. This means you have been de-synced with them. I recommend that once you both are disconnected, that you return to the 2P menu and wait for your partner to return, otherwise they will be on the 2P menu while you're still in a game, the game will reconnect you and it will be weird.

Looking to play with others?
Join the Sonic Adventure Central Discord channel[discord.com] to find others you can play against!
Click here to join[discord.com]


Credits
Huge thanks to SonicFreak94 for creating the mod.
MainMemory for reverse engineering.
Sonickidnextgen for help with the programming.
Nadevan for introducing and helping me first set it up and losing to me (the score's like 250-4)
Heavenly_Dandruff for helping me test the Port Forwarding.



Any Problems?
If you need any help with getting the mod to work, drop me a friend request and i'd be happy to help you through it. Also, if you just wanna battle, hit me up, i don't take Ls tho.

Also if you notice any errors or mistakes in this guide, please let me know.

18 Comments
hekler 16 Jul @ 1:53pm 
so no linux? (this includes steam deck as its based off arch linux)
ColdChocco 17 Mar @ 3:10am 
ciao is crazy
Yami ᶻ 𝗓 𐰁 7 Feb @ 11:21am 
Steam remote play SUCKS for me, will be testing this one in the future for sure <3 tyy!!
Knuckles5577 20 Jan @ 4:36pm 
what do i do if the shortcut isn't starting the game?
«•Aero•» 16 Jul, 2024 @ 3:19pm 
me and my friend have followed all the settings and the mod working correctly. i copied my ap4k thingy and put :27015 at the end and told my friend to do the -c and then that and i did -h 27015 but when we launch the game from the shortcuts it is not letting us play together, we both go to 2p battle and we press start but it is like we are in different server thingies because we are both player ones
Mparks2106 26 Dec, 2023 @ 2:17pm 
Does the other person need the game?
Remurin 11 Feb, 2023 @ 11:08am 
No matter what I do, when the modloader is installed the game crashes after the introduction omochao loading tip. Got everything installed, might you be aware what might crash it?
DescipleOfZen 7 May, 2022 @ 5:18pm 
Seems like Parsec would just be more efficient.
Kibo  [author] 10 Sep, 2021 @ 9:15am 
Yeah, only battle races and chao races work
IAMAMAZING100 9 Sep, 2021 @ 3:50am 
This is great... There just one thing. Kart racing doesn't work for some reason. Other than that it good