1 Information
This article explains the basic setup settings and methods for multiplayer games after the deprecation of the official MS Zone. Gameplay tips, level guides, and other multiplayer-related topics are not included in this article.
This article does not apply to OpenUA. Which employs different and refactored network algorithms and codes to support its multiplayer functionality. The multiplayer aspect of OpenUA will be covered in the OpenUA article.
2 Official Multiplayer Notes
Before starting, make sure to check the official Multiplayer Notes text file that is present in the main game installation folder first. It contains valuable essential information about setting up the multiplayer games (some information and options described in the file may be outdated).
The full text is also available at here:
Official Multiplayer Notes
Additionally, as always it is highly recommended to check the official game Help files as well.
3 Overview
Urban Assault uses DirectPlay 7 for multiplayer. It is old Microsoft technology and can be tricky to set up properly. It will be covered further in the next sections.
3.1 Executable Version
All players should use the identical version of game executable. For example, UA.exe (Original UA), Ua_xp.exe (MD Expansion), or ua_trial.exe (Demo). Otherwise they may be unable to connect due to a software type/version mismatch. The version check can be disabled via Nucleus.ini config file, but it is highly recommended to NOT disable it since it may cause numerous issues.
3.2 Game File Integrity
If players have different game data (such as modified game data) contents, the game detects it and a warning message appears. Any type of unofficial, script-based custom game data modification contents can trigger this problem, and at a high chance it also indicates cheating. Therefore, it is imperative to maintain the identical game data-set between the match players before starting the game (if there is no back-up data, reinstalling the game is necessary).
It is highly inadvisable to start the match if this error message is triggered, even if the game allows starting by default config settings. Do not play a multiplayer match with strangers if this error comes up and your game files are clean.
4 Compact Disc Requirements
The players need one compact disc for up to three players. The players need at least two compact discs for four players. Anyone playing a multiplayer game without a compact disc, must have installed a Complete or Full installation.
5 Connecting manually over internet (TCP/IP)
This method is available in the multiplayer menu. It is the most basic and probably the most reliable way to set up a multiplayer game, but it requires the largest amount of configuration. The joining players must know the IP address of the host player to connect.
The following TCP ports must be available for incoming connections in Urban Assault:
* 47624 - DirectPlay 7 initial connection
* 2300-2400 - DirectPlay data connections. The entire range should be available.
Due to the nature of DirectPlay, all players must have these ports forwarded, not just the host. If these ports cannot be used for incoming connections (firewall inaccessible to the user, carrier-grade NAT etc.), then other methods must be used for multiplayer.
6 Using GameRanger
GameRanger is a software that allows easy set-up of game rooms for many multiplayer games, including UA. It automates the connection procedure and it can often perform NAT traversal which reduces the amount of configuration needed. However, if you are behind a NAT router, it's still recommended to forward port 16000 for GameRanger.
GameRanger does not support the Metropolis Dawn -env parameter. But a specifically designed and verified custom multiplayer mod is sometimes used to import MD content without changing gameplay.
Other disadvantages of GameRanger include the potential unreliability of the initial connection (reported by many people) and the amount of advertisements in the software itself. Also, the connection quality in general is reported to be unstable and suboptimal compared to the native TCP/IP connection method of UA.
7 Using Hamachi
Hamachi is a program that can set up a simple virtual network for games. It has been widely used to play UA for a long time.
8 Connecting manually over serial
Multiplayer over a serial connection is mostly obsolete, but might be interesting as a retro setup project. It's usually available in the multiplayer menu. Two local computers with a serial port and a null-modem cable are required.
If a real serial port is not available, a USB → RS-232 adapter should work as well. However, the DirectPlay serial interface seems to support ports COM1…COM4 only. If such an adapter registers itself as something else, such as COM10, you have to manually change the port number via Windows Device Manager.
More information about this functionality is covered in the official Multiplayer Notes file.
9 Connecting manually over dial-up (Modem)
Dial-up (Modem) technology is mostly obsolete. It is usually available in the multiplayer menu. Only the levels with the dial-up tag ('slow_connection' parameter set in the level definition files) can be played over a dial-up connection.
More information about this functionality is covered in the official Multiplayer Notes file.
10 Connecting manually over IPX
According to the official game document, UA supports IPX connection for multiplayer. However, the IPX protocol is mostly obsolete and, on modern systems, this option is usually not visible in the multiplayer menu at all.
More information about this functionality is covered in the official Multiplayer Notes file.
11 OpenUA
OpenUA is a clean-room, open-source re-implementation project of the original Urban Assault engine. The multiplayer layers of OpenUA are still currently under development and they have numerous differences compared to the original multiplayer layers of the original UA engine, including the general methods and protocols used to play a multiplayer match.
As mentioned in the summary at the top of this article, the multiplayer functionality of the OpenUA is not covered here but in the OpenUA (UA:Source) article.
12 Technical Assistance
Should you have any other questions or require further help related to the topic, feel free to ask at the community forums or Discord server.