Ok, I went with the later idea, and updated the net fix a little bit. I've put together another package containing this and a few other patches.
Outpost 2 (1.3.0.5 - Beta 2).rarRecent changes (from ChangeLog.txt):
1.3.5 Beta 1
* Minimap scroll fix (no longer gets caught on top and bottom for full sized maps, but can still get caught on sides of undersized maps)
* Network game speed fix, so it attempts to play at the set speed rather than gradually slowing to half that speed
* Applied hard unit limit increase patch (1023 -> 2047 max units)
* Applied soft unit limit table updates: (Changed when the build buttons dissapear)
- NumPlayers 1 2 3 4 5 6
- Vehicles { 400, 320, 230, 180, 154, 130} (per player)
- Buildings { 950, 350, 200, 150, 100, 96} (per player)
- ------------------------------------
- Units {1350, 670, 430, 330, 254, 226} (per player) [Vehicles + Buildings]
- Total {1350, 1340, 1290, 1320, 1270, 1356} (for all players) [Units Per Player * Number Of Players]
- Gaia { 697, 707, 757, 727, 777, 691} (space left for non-player units) [approx.] [*Weapons fire* (twice as many combat units now?), Beacons, Fumaroles, Disasters]
1.3.5 Beta 2
* Fixed option button highlighting bug in odasl.dll
* Applied Meteor Defense patch, so it will never fail to fire (but can still miss)
* Fixed wreckage bug, where wreckage sometimes got picked up as rubble (fixed the rubble checking code)
* Upgraded op2ext.dll to support loading multiple mods through Outpost2.ini
* Included updated NetFix, and associated Outpost2.ini settings (using new module loading system)
* Swapped centering behavior of <number> and Shift+<number> (unit group hotkeys)
As there have been changes to the net fix, I would appreciate people testing it out thuroughly. It should have less trouble trying to join games now. It may even give slightly less trouble when searching for games. It may also be a little more usable for people with troublesome routers. There are some additional .ini settings you can set to help deal with router troubles. I would like to know how well these features work.
A word of caution though. If you try to used the ForcedPort parameter without port forwarding setup, it could potentially break communications that might otherwise have worked. This parameter is not used by default, and must be explicity setup. This parameter is intended for people who have trouble being introduced by a third party such as the game host, or the game server. That is, people who have "symmetric NAT" routers. (Yes, I know, this is an old term that doesn't fully describe the real mess of routers out there, but it's what people here have probably already heard). If you need to setup this parameter, then do the following.
1) Adjust your router to forward a port to your computer for use by Outpost 2. The default port used by this patch is 47800 UDP.
2) Add the following line to Outpost2.ini (or similar if you adjusted the port) under the [NetFix] section.
That should tell the introducer (game host, or game server) to introduce you using that port instead of the router re-mapped port from the return address of the packet. Since this port is forwarded, it will be valid for anyone, and not just the introducer. (If the port isn't forwarded, then all return packets will be dropped by the router as there will be no return mapping setup for that port, so connections will not succeed).
ToDo List
-----------
High priority:
- Change version number
- Strip relocations from Outpost2.exe
- Swap centering behavior of other unit selection hotkeys? (backspace? tab?)
- Re-enable old SIGS button, and move net fix over to that button
Low Priority:
- Additional MiniMap scroll fixing (for small maps with border)
- Fix DLL name length limit bug
Maybe:
- Fix multiple selection bug (reselect same unit adds to selected unit count)
- Fix RCC crash bug (calling pure virtual function)