How to Host a "Head To Head" Session in Aces High

To host an Aces High II head-to-head session, people out on the Internet need to be able to connect to your aceshigh.exe program running on your computer through ports 2000-5000 for both TCP/IP and UDP. Your firewall (such as Windows Firewall), your router (the thing between your computer and your cable or DSL modem), and possibly your antivirus software need to be configured to allow that. Once they are, everything should work. I tested this on my setup with Aces High II v2.04 patch 1. Everything works except voice -- I'm still working on that.

Once you have things set up, you start Aces High, select "H2H," "Create Host," type in a name of your game description, select the terrain, set max players, and click on "OK" as follows.

Below, I describe how to set up Norton Antivirus, Windows Firewall, and my router (which should work similarly to most routers as of 2005).

Warnings

Many people suggest turning off your firewall or setting your router to put your computer in the DMZ (which effectively connects your computer straight to the Internet). These are dangerous things to do -- especially if you do both of them. If you connect your computer straight to the Internet with no router and no firewall in the way, your computer can get infected with viruses within tens of seconds. Instead, I recommend configuring your firewall and router to allow hosting head-to-head sessions but keeping the large majority of their protective aspects in place.

Set up your antivirus software

Many antivirus programs don't need to be set any differently. Some, such as Norton Antivirus, though, include functionality that might get in the way unless it is configured properly. In Norton Antivirus 2005, there is "Internet Worm Protection" that examines data flowing across some ports and will block it under some circumstances. I exclude aceshigh.exe from having its data examined.

Go into "Options," select "Internet Worm Protection," then click on "Program Control."

In Program Control, make sure aceshigh has "Permit All" for its Internet access. If "aceshigh" isn't listed in the Program list, click on the "Add..." button to browse to it and add it to the list. aceshigh.exe is usually in "C:\Program Files\HTC\Aces High II".

Set up your firewall

You need to set your firewall to allow data to be sent on ports 2000-5000. The following is how you'd do that for Windows Firewall.

Go into Windows Network Firewall and give an exception to aceshigh.exe. To do this, right click on your "My Network Places" icon on the desktop and select "Properties" as follows.

Click on "Change Windows Firewall settings" as follows.

Make sure your firewall is on as follows.

Click on the "Exceptions" tab, and make sure "aceshigh" is checked as an exception as follows. Then click the "OK" button. This lets Aces High open up whichever ports it needs.

If you don't see "aceshigh" as a program in the list of "Programs and Services," see the section below on "Adding programs to the exceptions list."

Get your IP address

To find my IP address, I can run ipconfig by starting a command line session. Click on the "start" button, then "All Programs," "Accessories," and "Command Prompt" as follows.

In the command prompt, type "ipconfig" and press the "Enter" key, like so. Note that my IP address is 192.168.1.101.

Set up your router with port forwarding

Now I need to forward ports 2000-5000 to the IP address my computer is at. If your router has port triggering, you can use this to forward ports instead of static port forwarding (see the section below on "Set up your router with port triggering"). My router supposedly has port triggering, but hosting a head-to-head session doesn't work if I try setting things up with port triggering, so I use port forwarding instead.

Use your browser to log into your router (typically the device you plug your computer network cable into and that is plugged into your cablemodem or DSL modem). For a Linksys Etherfast Cable/DSL Router model BEFSR81, that means browsing to the URL "http://192.168.1.1" and logging in as admin (with whatever password you have set for admin) as follows.

For me, to get to the port-forwading functions, I click on the "Advanced" tab, then on "Forwarding" to get the following screen. I have the external ports 2000-5000 for both TCP and UDP forwarded to my computer (which is at 192.168.1.101). I called this configuration of forwarded ports "aces_high," which is just a name I gave it -- the router has no idea what the executable is, and this name could be anything. Once I put all this in, I click on the "Apply" button, and everything is ready.

Set up your router with port triggering

If your router has port triggering, you can use that to forward ports instead of static port forwarding. My router supposedly has it, but when I set things up this way, it doesn't work, so I use regular port forwarding as described above. Port triggering is a little more secure than regular port forwarding, so if you do have it in your router, it's worth a try to see if that works. Here's how it works. With port triggering, you specify some ports as your "trigger" ports and some ports as the ones that you want opened and forwarded (call these "forwarded ports"). When data flows on the trigger ports, the router opens up and forwards data on the forwarded ports. When data stops flowing on the trigger ports, after a few minutes, the router closes the forwarded ports. This is more secure as the forwarded ports are open only while the application that needs those ports is running -- they are closed otherwise.

On my router, I clicked on "Port Triggering" and put in the incoming port range of 2000-5000 to be open only when something has been sent on trigger port 3002. Then I clicked on "Apply" to start it running. Again, the application name could be anything, but I named it "aceshigh.exe" to remind me what this trigger is for. All of this setup results in the following behavior. When Aces High starts, it sends data on port 3002 to Hitech Creations' server. The router sees traffic being sent on 3002 and only then opens ports 2000-5000 to incoming traffic, which is then forwarded to my computer (which is the one that sent data on port 3002). When you shut down aceshigh.exe, it will stop using port 3002, and after a little while, the router will stop forwarding ports 2000-5000.

Once done setting up triggering, I clicked on the "Apply" button.

Adding programs to the exceptions list

If your Windows Firewall does not list "aceshigh" in its list of possible exceptions as talked about above, click on the "Add Program..." button. Then click on the "Browse..." button in the "Add a Program" dialog box.

Browse to where aceshigh.exe resides (usually in "C:\Program Files\HTC\Aces High II"), select it, and click the "Open" button. Then aceshigh.exe will be in your exception list, and you can select it as talked about in the "Set up your firewall" section.

Conclusion

I hope all this works for you as it does for me. If you have suggestions for improvement for (or correction to) this document, feel free to send me e-mail.


by Brooke P. Anderson
e-mail: brooke@electraforge.com

Click here to go back to my main gaming page.