First post, by truth_deleted
These ports are SDL based and have been ported to Windows and non-Windows platforms. All have good to excellent offline bot support.
ioquake3 - Quake 3 port (includes bots from Q3 source code); extensively updated by developers
https://github.com/ioquake/ioq3/
http://ioquake3.org/get-it/
http://ioquake3.org/get-it/source-codes/
iortcw - Return to Castle Wolfenstein port (includes 3rd party Omni-bots), updated regularly
http://code.google.com/p/iortcw/
http://www.ecgnetwork.co/forum/viewtopic.php?f=2&t=26310
http://www.ecgnetwork.co/forum/
http://omni-bot.invisionzone.com/index.php?/f … le-wolfenstein/
etlegacy (ET:L) - Wolfenstein: Enemy Territory port (includes 3rd party Omni-bots); updated regularly, but missing some model animations
https://github.com/etlegacy/etlegacy
http://www.etlegacy.com/index.php?r=etlcontro … elease/download
http://dev.etlegacy.com//projects/etlegacy/boards
http://omni-bot.invisionzone.com/index.php?/f … nemy-territory/
note: use rc3 version if running XP (as of 9/2014)
In ET:L and iortcw, the Omni-bots are able to complete mission objectives and are competent; however, they are not very human-like, so alternatives include the older closed source Fritz bot (http://fritzbot.bots-united.com/) and the open source Bobots (http://bobots.e-monsite.com/pages/projet-bobo … load-bobot.html). ET:L is currently supporting Omni-bots, but others have make Fritz bot work in that port. Iortcw is not supported by Bobots and Fritz bot is possibly untested.
I built all above ports in mingw32/gcc4, whether this development environment was suggested or not. However, one limitation is the complex instruction set to build Omni-bots; in Windows, VS is required to build ET:L so it works alongside the VS built Omni-bots package. I recall that iortcw builds with mingw and maintains compatibility with the already built VS binary package of Omni-bots. Recommended mods with bots for ioquake3 include Threewave CTF (very good bot support) and True Combat (bots are fair). ET:L is similarly a skirmish style game. Iortcw includes support for both skirmish games and also has a conventional single player campaign.
Iortcw requires crucial PAK files (and possibly others?) from the original bought game. Same for ioquake3. ET:L requires PAK files, but these may be obtained from the freely downloadable multiplayer demo of W:ET (http://returntocastlewolfenstein.filefront.co … ases/Demos;2666).
Another port which is fairly robust (I didn't include ports with limited or partial function; nor the fully functional ports of Quake 1 and 2 which are supported by 3rd party bots):
OpenJK - port with support for Jedi Outcast and Academy (requires PAK files)
https://github.com/JACoders/OpenJK
Although ET:L has excellent online potential and offline capability, I recommend iortcw and ioquake3 for offline skirmishes with bots, including objective based game modes in the former and the conventional game modes in the latter port. Both also build easily in a mingw environment, and I believe the above ports served as a basis for ports to ARM based Android devices. This shows the cross-platform capability of these SDL based projects.