I noticed that people either don't know how to use NetFix or don't use it right. Hopefully this guide can change that.
This guide is written for Version 1.3.5
(same as 1.3.5 Beta 2
) of Outpost 2.Setup
First of all: The NetFix that is included in the download package is outdated.
There is a new NetFix available which ought to support more quirky routers. You should download it here
. Put the downloaded file ("NetFixV3.dll") into the "NetFix" subdirectory of your Outpost 2 directory, replacing the old file (you can create a backup copy of the old file, e.g. renaming the old "NetFixV3.dll" to "NetFixV3-old.dll"). If you have several installs of Outpost 2 make sure you are copying into the right one.
Note: Although both dlls have "V3" in their name that doesn't mean they're the same.Playing games
Once you have the new NetFix installed you can already play. In order to play over NetFix you have to start Outpost 2, click "MULTIPLAYER" and then click "SERIAL". A window will open where you can change game options and see games hosted by other players. At the top there should be a line "Welcome to OPU Net" and another line "External IP: ...". It is possible that you see a warning message below the external ip. NetFix may still work, but if it doesn't you should report the warning message to the other players, so they know whats going on.
Make sure that the server address is set to "server.outpostuniverse.org:47800" (was previously "outpost2.net:47800" or "22.214.171.124:47800") (the official opu server). (it is possible to set another address here, but that's not covered by this guide)
You can now either create a new game or join an existing game using the corresponding buttons. The further actions should need no explaining. If an error occurs refer to the troubleshooting section of this post.Troubleshooting
First of all, NetFix creates log files in your outpost 2 directory: "log.txt" and (only on the hosts machine) "logHost.txt". These will be overwritten if you host or join a game, so make sure to check them quickly if you encounter an error. The contents of those files can be a bit misleading, so you should ask people who pretend to know what it all means (e.g. me).
Other than log files, you can get some information from error messages (message boxes, status text) that Outpost 2 throws at you. Here are the most important ones:Game join failed
(in status bar)
When you click the "join" button, Outpost 2 will try 3 times to join the selected game (sending 3 join requests to the game's host). If the host responds to neither request within a certain time, you'll see this message. This includes the case that the host sends a response which doesn't reach your computer (mostly caused by routers). Another cause can be that the host doesn't receive your request.
A solution is that either the host or the joiner or both forward port 47800 UDP to their computer and set "ForcedPort=47800" in their Outpost2.ini (described below). (Note: apparently, the Host has to
use the ForcedPort option and forward the port whereas all other players must not
use the ForcedPort option)Could not Bind to the server port.
(in status bar)
You tried to host a game, but NetFix could not host on the desired socket.
1. just try again
2. in your Outpost2.ini set "HostPort=<port>", where <port> should be a number roughly between 40000 and 50000. HostPort can also be equal to ForcedPort. The default is 47800.the above section is not yet complete. I will continue to expand it whenever people let me analyse their NetFix problemsOptions in Outpost2.ini
You can find Outpost2.ini in your Outpost 2 installation directory, where Outpost2.exe is located. If your system is configured to hide file extensions, it might just be named "Outpost2". You can open Outpost2.ini in a text editor (e.g. notepad - But nothing like Word) and will see something like this:
Search for lines which look like
If one of those lines is missing or looks different, make sure to change them to the above (unless you have a reason to have them look different).
The following options each belong on its own line in the same section (i.e. right below "ProtocolIndex=3").
- ForcedPort=<port> - This will set the local port to <port> and ask all players to send subsequent packages to <port>. If you are behind a router this will only work if you forward <port> to your computer. Vice versa, if you want to benefit from port forwarding you have to force the forwarded port.
- HostPort=<port> - When hosting a game, the host will also listen on the specified port for incoming packets. The port must be forwarded if the host is behind a router. Apparently this port is only used for game setup. All outgoing packets will be sent through a different port (unless both ports happen to be the same).
- ClientPort=<port> - When searching for hosted games, packets are sent to this remote port, if either 1. the search is initiated by the timer and no game server address is set (in which case a broadcast to the local network is done) or 2. the search is initiated by a click on the "search" button. This option is probably only useful if the host is using the HostPort option.