![]() | This article has multiple issues. Please helpimprove it or discuss these issues on thetalk page.(Learn how and when to remove these messages) (Learn how and when to remove this message)
|
Asource port is a software project based on thesource code of agame engine that allows the game to be played onoperating systems orcomputing platforms with which the game was not originally compatible.
Source ports are oftencreated by fans after the original developer hands over the maintenance support for a game by releasing itssource code to the public (seeList of commercial video games with later released source code). In some cases, the source code used to create a source port must be obtained throughreverse engineering, in situations where the original source was never formally released by the game's developers. The term was coined after the release of the source code toDoom. Due to copyright issues concerning the sound library used by the original DOS version, id Software released only the source code to the Linux version of the game.[1][2] Since the majority of Doom players were DOS users the first step for a fan project was toport the Linuxsource code to DOS.[3] A source port typically only includes the engine portion of the game and requires that the data files of the game in question already be present on users' systems.
Source ports share the similarity withunofficial patches that both don't change the original gameplay as such projects are by definitionmods. However many source ports add support for gameplay mods, which is usually optional (e.g.DarkPlaces consists of a source port engine and a gameplay mod that are even distributed separately[4]). While the primary goal of any source port is compatibility with newer hardware, many projects support other enhancements. Common examples of additions include support for higher video resolutions and differentaspect ratios, hardware accelerated renderers (OpenGL and/orDirect3D), enhanced input support (including the ability to map controls onto additional input devices), 3D character models (in case of2.5D games), higher resolution textures, support to replaceMIDI withdigital audio (MP3,Ogg Vorbis, etc.), and enhancedmultiplayer support using theInternet.
Several source ports have been created for various games specifically to address online multiplayer support. Most older games were not created to take advantage of the Internet and the low latency, high bandwidth Internet connections available to computer gamers today. Furthermore, old games may use outdated network protocols to create multiplayer connections, such asIPX protocol, instead ofInternet Protocol. Another problem was games that required a specificIP address for connecting with another player. This requirement made it difficult to quickly find a group of strangers to play with — the way that online games are most commonly played today. To address this shortcoming, specific source ports such asSkulltag added "lobbies", which are basically integratedchat rooms in which players can meet and post the location of games they are hosting or may wish to join. Similar facilities may be found in newer games and online game services such as Valve'sSteam, Blizzard'sbattle.net, andGameSpy Arcade.
If the source code of a software is not available, alternative approaches to achieve portability areEmulation,Engine remakes, andStatic recompilation.
Original name | Port |
---|---|
Aliens versus Predator | icculus.org/avp |
Arx Fatalis | Arx Libertatis |
Blake Stone: Aliens Of Gold | BStone, Blake4SDL |
Blake Stone: Planet Strike | BStone, Blake4SDL |
Blood | BloodGDX, NBlood, Raze |
Carmageddon | Dethrace |
Catacomb | CatacombSDL |
Catacomb 3D | Reflection Keen, CatacombGL |
Call to Power II | Apolyton Civilization Site: Call to Power II: Source Code Project |
Commander Keen | Commander Genius |
Descent/Descent II | DXX-Rebirth, D2X-XL, DXX-Retro |
Diablo/Hellfire Expansion | DevilutionX,Diablo 1 Mod (Belzebub) |
Doom/Doom II | SeeList of Doom source ports for a detailed list. |
Doom 64 | Doom64EX, Doom64Ex+ |
Doom 3 | dhewm3, RBDOOM-3-BFG |
Duke Nukem II | Rigel Engine[5] |
Duke Nukem 3D | EDuke32,DukeGDX,JFDuke3D, Rancidmeat Port, xDuke Port, nDuke Port, hDuke Port,Rednukem, Raze |
FreeSpace 2 | FreeSpace 2 Source Code Project |
Gloom | ZGloom |
Heretic | Chocolate Heretic, ZDoom,Doomsday, GLHeretic for Linux, Heretic for Linux, HHeretic |
Hexen | Chocolate Hexen, ZDoom,Doomsday, GLHexen, HHexen, WinHexen |
Hexen II | jsHexen 2, UQE Hexen 2, Hammer of Thyrion |
Homeworld | Homeworld SDL |
Ken's Labyrinth | LAB3D/SDL |
Jagged Alliance 2 Wildfire | Stracciatella/SDL |
The Legend of Zelda: Ocarina of Time | Ship of Harkinian |
Marathon 2 | Aleph One, Aleph One/SDL |
Myth II | Project Magma |
PowerSlave | PowerSlaveGDX, PCExhumed, PowerSlaveEX, ExhumedEX-Plus |
Quake | QuakeSpasm, QuakeDS, DarkPlaces, FitzQuake,GLQuake, Project: Twilight, Telejano, Tenebrae, WinQuake,QuakeWorld, ezQuake, fodQuake, FreeQuake, vkQuake |
Quake II | vkQuake2,KMQuake II, q^2, Q2PRO, Yamagi Quake II |
Quake III | ioquake3, Quake3e, OpenMoHAA, Q3Base, Quake III: Arena for FreeBSD, Spearmint |
Quake 4 | Quake4Doom, gbQuake4 |
Redneck Rampage | RedneckGDX, Rednukem, Raze |
Return to Castle Wolfenstein | iortcw |
Rise of the Triad | WinROTT, GLROTT, icculus, rottexpr, NakedTriad |
Savage: The Battle for Newerth | Savage: Rebirth |
Serious Sam: The First Encounter / Serious Sam: The Second Encounter | icculus,[6] Ray-Traced,[7] Serious Sam Classic, Serious Sam Evolution |
Shadow Warrior | JFShadowWarrior, SWP, VoidSW, Raze, WangGDX |
SimCity | Micropolis |
Spelunky | Spelunky ClassicHD[8] |
Star Control II | The Ur-Quan Masters |
Star Trek: Voyager – Elite Force (holomatch) | iostvoyHM,[9] cMod,[10] Lilium Voyager[11] |
Star Wars: Dark Forces | The Force Engine[12] |
Star Wars Jedi Knight: Dark Forces II / Star Wars Jedi Knight: Mysteries of the Sith | OpenJKDF2[13] |
Star Wars Jedi Knight II: Jedi Outcast / Star Wars Jedi Knight: Jedi Academy | OpenJK |
Strife | Chocolate Strife, Vavoom |
Super 3D Noah's Ark | ECWolf |
Super Mario 64 | Super Mario 64 PC Port |
System Shock | Shockolate[14][15] |
System Shock 2 | NewDark |
Thief: The Dark Project | NewDark |
Thief II: The Metal Age | NewDark |
Tomb Raider | OpenTomb,[16] OpenCroft, OpenLara,[17] CroftEngine, TR1X[18] |
Tyrian | OpenTyrian |
Warzone 2100 | Warzone Resurrection |
William Shatner's TekWar | BuildGDX, JFTekWar |
Witchaven | BuildGDX, JFWitchaven |
Wolfenstein 3D | ECWolf, NewWolf, Wolf4SDL, Wolfenstein 3-D Redux, WolfGL, WolfGL-3D |
Wolfenstein: Enemy Territory | ioWolfET, ET: Legacy |