#

## ZSNES Windows v1.42

# Netplay

For smooth netplay, it is required that both sides have fast computers (look below for requirements). If one side has a slow computer (eg. 200mhz) while the other has a fast one (eg. 800mhz), the slow computer's low framerate will bog down the fast computer, causing poor frame rates on the fast computer. It is also strongly recommended that you keep latency at 3 (or reduce it to 2 for fast paced platform games), allow UDP connections, and keep back buffer enabled.
If you have Windows 95 and you are getting a init failed error, you should download and install the Winsock 2.0 update for Windows 95.
*** Note: Do not update the above if you do not have Windows 95.
Also, the higher than ping time, the worse the netplay experience, since ping times measure the time it takes for data to get to the other side and back. You can expect a not so great performance if you have a ping time of 400 or greater.
Note: You cannot use cheat codes, key combinations, or turbo keys in netplay.
Note: Firewall users - You may need to disable your firewall (or just disable it for UDP port 7845) in order to get the UDP protocol that ZSNESw's netplay uses to work.
Note: Internet Connection Sharing users (Win9x systems) - You may need to download an ICS Configuration software to get your connection to work and map UDP port 7845. You can find one here.

## System Recommendations for Smooth Netplay

- - Back Buffer must be enabled and the latency value must be 3 or 2.
- - The games have to run at least 50 FPS on BOTH computers without netplay. This can completely depend on factors such as CPU, video card, video mode, and the game you are running.
- - Your system should be able to handle the UDP protocol. Without it, lost packets can cause lots of in-game pauses in your netplay experience.
- - You can also try changing your resolution to different video modes and find the video mode that provides the optimal performance if the current performance isn't satisfactory.
- - You will also need an Internet connection with ping times of less than 400ms between both connections.

## Simple Instructions

- 1.) Go to Netplay -> Internet.
- 2.) Decide who will be the server and who will be the client (Neither has the gameplay advantage since ZSNESw treats both the same after a connection is established).
- 3.) If you're the server, send the IP that is shown to your friend (eg. through any chat program (ICQ, AIM, IRC, etc.)). Then click on 'Start Server'.
- 4.) If you're the client, type in the IP address that your friend has given you and then click on 'Connect to Server'.
- 5.) Chat with your friend on what game to play.
- 6.) Once decided, make sure that the filename on both sides are the same and that the load window points to the directory where the filename is.
- 7.) Load the game.
- 8.) Have fun! (If it worked)
- 9.) If it said 'Checksum Mismatch', try uncompressing the file if it is compressed. If not, then both sides have a different version of that ROM (eg. One side has the Japanese version while the other has the English, or both versions are English, but are different version releases of the same game).
- 10.) If you want to chat in-game, press 'T' and type in your line. You can change this key in the Misc -> Game Keys options from the GUI.

## Getting The IP Address

Your IP address should be displayed on the connection window.
The person being the client has to somehow tell the person who is the server his own IP address in order to connect. However, if your system has multiple IP addresses, the one on the connection window probably isn't the correct one.
In this case, Windows9x users can refer to winipcfg (go to the Windows Start Button -> Run, then type in winipcfg and press enter) while Windows XP users can refer to ipconfig (use the commandline). Or, if you're using mIRC, just type /dns <nick>.

## Connecting

When you're ready, select Internet from the Netplay menu.

- - If you are the server, just click on 'Start Server' and wait for the client to connect.
- - If you are the client, and after obtaining the IP of your friend (your friend has to send you his IP if you cannot figure out his IP on your own), type in the IP into the space provided and then click on 'Connect to Server'. Once you click on it, your system may look as if it's frozen, but it actually isn't. You just have to wait for a bit until it either connects or fails to connect.
- - If it failed to connect, then check to make sure that the IP you entered is correct and that you are properly connected to the net.
- - If the client says 'Found Client' and nothing else happens, chances are that your net connection does not support UDP. If this is the case, both sides will need to deselect 'Allow UDP Connection'. However, it is strongly recommended that you use this option if it is possible since it is much faster than without UDP.

## Loading A Game

Once successfully connected, the chat window should open up.
From there, you can load a game like how you normally load a game. But in order to load a game, both sides have to have their load window pointing to the directory where the game is located and also have to have the filename the same on both sides. Only one side has to load the game. After that, the other side will automatically load the game without the user's interaction.
If an error pops up saying 'ROM data mismatch', then it means that either side has a different version of the ROM. This error sometimes happens with .zip files even when both files are the same, so it is recommended that you unzip the games and try again if this error occurs.

## Configuring Chat Windows Options

The default settings are recommended.
However, if your computer is slower than 266 MHz, then it is recommended that both sides play with back buffer disabled. However, disabling this would degrade controller response.
You can increase the latency value if the average ping time between both connections is high (you can tell if the gameplay runs too jerky).
Reducing the latency value when back buffer is enabled will improve controller response time. But, however, this will cause the remote player to jump around more in order to keep both sides in sync.
For controller options (PL1, PL2, PL3,..), the first checkmarked player would be using Input #1 of the local side. The second checkmarked player would be using Input #2 and so on. Players marked with an 'X' are checkmarked on the remote side.
ZSNES Documentation v2.0