Source port
Encyclopedia
A source port is a software project based on the source code
of a computer game's engine
that allows the game to be played on operating systems or computing platforms with which the game was not originally compatible. Source ports are created by fans after the original developer hands over the maintenance support for a game by releasing its source code
to the public. The term was coined after the release of the source code to Doom. Due to copyright issues concerning the sound library used by original DOS version, id Software released only the source code to the Linux version of the game. Since the majority of Doom players were DOS users the first step for a fan project was to port
the Linux source code to DOS. A legitimate source port includes only the engine portion of the game and require that the data files of the game in question already be present on users' systems. Source ports are in no way meant to encourage copyright infringement of software
.
Source ports do not change the original gameplay as such projects are by definition mods
. 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). 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 different aspect ratio
s, hardware accelerated renderers (OpenGL
and/or Direct3D
), enhanced input support (including the ability to map controls onto additional input devices), 3D character models (in case of 2.5D
games), higher resolution textures, support to replace MIDI with digital audio
(MP3
, Ogg Vorbis, etc.), and enhanced multiplayer support using the Internet
.
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 as IPX
protocol, instead of Internet Protocol
. Another problem was games that required a specific IP 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 as Skulltag added "lobbies", which are basically integrated chat room
s 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's Steam, Blizzard's battle.net
, and Gamespy Arcade
.
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...
of a computer game's engine
Game engine
A game engine is a system designed for the creation and development of video games. There are many game engines that are designed to work on video game consoles and personal computers...
that allows the game to be played on operating systems or computing platforms with which the game was not originally compatible. Source ports are created by fans after the original developer hands over the maintenance support for a game by releasing its source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...
to the public. The term was coined after the release of the source code to Doom. Due to copyright issues concerning the sound library used by original DOS version, id Software released only the source code to the Linux version of the game. Since the majority of Doom players were DOS users the first step for a fan project was to port
Porting
In computer science, porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed...
the Linux source code to DOS. A legitimate source port includes only the engine portion of the game and require that the data files of the game in question already be present on users' systems. Source ports are in no way meant to encourage copyright infringement of software
Copyright infringement of software
Copyright infringement of software=The copyright infringement of software refers to several practices which involve the unauthorized copying of computer software. Copyright infringement of this kind varies globally...
.
Source ports do not change the original gameplay as such projects are by definition mods
Mod (computer gaming)
Mod or modification is a term generally applied to personal computer games , especially first-person shooters, role-playing games and real-time strategy games. Mods are made by the general public or a developer, and can be entirely new games in themselves, but mods are not standalone software and...
. 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). 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 different aspect ratio
Aspect ratio (image)
The aspect ratio of an image is the ratio of the width of the image to its height, expressed as two numbers separated by a colon. That is, for an x:y aspect ratio, no matter how big or small the image is, if the width is divided into x units of equal length and the height is measured using this...
s, hardware accelerated renderers (OpenGL
OpenGL
OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...
and/or Direct3D
Direct3D
Direct3D is part of Microsoft's DirectX application programming interface . Direct3D is available for Microsoft Windows operating systems , and for other platforms through the open source software Wine. It is the base for the graphics API on the Xbox and Xbox 360 console systems...
), enhanced input support (including the ability to map controls onto additional input devices), 3D character models (in case of 2.5D
2.5D
2.5D , 3/4 perspective and pseudo-3D are terms used to describe either:* 2D graphical projections and techniques which cause a series of images or scenes to fake or appear to be three-dimensional when in fact they are not, or* gameplay in an otherwise three-dimensional video game that is...
games), higher resolution textures, support to replace MIDI with digital audio
Digital audio
Digital audio is sound reproduction using pulse-code modulation and digital signals. Digital audio systems include analog-to-digital conversion , digital-to-analog conversion , digital storage, processing and transmission components...
(MP3
MP3
MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...
, Ogg Vorbis, etc.), and enhanced multiplayer support using the Internet
Internet
The Internet is a global system of interconnected computer networks that use the standard Internet protocol suite to serve billions of users worldwide...
.
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 as IPX
IPX
Internetwork Packet Exchange is the OSI-model Network layer protocol in the IPX/SPX protocol stack.The IPX/SPXM protocol stack is supported by Novell's NetWare network operating system. Because of Netware's popularity through the late 1980s into the mid 1990s, IPX became a popular internetworking...
protocol, instead of Internet Protocol
Internet Protocol
The Internet Protocol is the principal communications protocol used for relaying datagrams across an internetwork using the Internet Protocol Suite...
. Another problem was games that required a specific IP address
IP address
An Internet Protocol address is a numerical label assigned to each device participating in a computer network that uses the Internet Protocol for communication. An IP address serves two principal functions: host or network interface identification and location addressing...
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 as Skulltag added "lobbies", which are basically integrated chat room
Chat room
The term chat room, or chatroom, is primarily used by mass media to describe any form of synchronous conferencing, occasionally even asynchronous conferencing...
s 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's Steam, Blizzard's battle.net
Battle.net
Battle.net is a gaming service provided by Blizzard Entertainment. Battle.net was launched in November 30, 1996 with the release of Blizzard's action-RPG Diablo. Battle.net was the first online gaming service incorporated directly into the games that make use of it, in contrast to the external...
, and Gamespy Arcade
GameSpy Arcade
GameSpy Arcade is a shareware multiplayer game server browsing utility. GameSpy Arcade allows players to view and connect to available multiplayer games, and chat with other users of the service. It was initially released by GameSpy Industries, a division of IGN Entertainment, in early 2000, to...
.
List of source ports
- Aliens versus Predator:
- icculus.org/avp http://icculus.org/avp/
- Arx FatalisArx FatalisArx Fatalis is a partially open source first-person role-playing video game for the Xbox and PC, released on November 2002 by Arkane Studios, a video game developer based in Lyon, France....
:- Arx Libertatis https://github.com/lubosz/ArxFatalis
- Beneath a Steel SkyBeneath a Steel SkyBeneath a Steel Sky is a 1994 science-fiction point-and-click adventure game in the cyberpunk genre. Like many point-and-click adventure games, it features comedy elements, and was developed by Revolution Software, a British developer, and published by Virgin Interactive Entertainment. It was...
:- ScummVMScummVMScummVM is a collection of game engine recreations. Originally designed to play LucasArts adventure games that use the SCUMM system , it now also supports a variety of non-SCUMM games by companies like Revolution Software and Adventure Soft. It was originally written by Ludvig Strigeus...
- ScummVM
- Call to Power IICall to Power IICall to Power II is a PC turn-based strategy game released by Activision as a sequel to Civilization: Call to Power, which was, in turn, a game similar to the Civilization computer game by Sid Meier. The game could not have "Civilization" in its title because the word is trademarked by the makers...
:- Apolyton Civilization Site: Call to Power II: Source Code Project http://ctp2files.apolyton.net/source/
- DescentDescent (video game)Descent is a 3D first-person shooter video game developed by Parallax Software and released by Interplay Entertainment Corp. in 1995. The game features six degrees of freedom gameplay and garnered several expansion packs...
:- DXX-Rebirth http://www.dxx-rebirth.com/
- Descent IIDescent IIDescent II is a 3D first-person shooter video game noted for popularizing the use of true 3D rendering technology and providing the player with six full degrees of freedom to move and to look around....
:- DXX-Rebirth http://www.dxx-rebirth.com/
- D2X-XL http://www.descent2.de/d2x.html
- Doom/Doom IIDoom IIDoom II: Hell on Earth is an award winning first-person shooter video game and second title of id Software's Doom franchise. Unlike Doom which was initially only available through shareware and mail order, Doom II was a commercial release sold in stores...
:- See Doom source portDoom source portA Doom source port is a source port of id Tech 1, the game engine used by the video game Doom. The term usually denotes a modification made by Doom fans, as opposed to any of the official Doom versions produced by id Software or affiliated companies.-Doom source release:The source code for the Doom...
for a detailed list.
- See Doom source port
- Duke Nukem 3DDuke Nukem 3DDuke Nukem 3D is a first-person shooter computer game developed by 3D Realms and published by GT Interactive Software. The full version was released for the PC . It is a sequel to the platform games Duke Nukem and Duke Nukem II published by Apogee...
:- EDuke32 http://www.eduke32.com
- icculus.org/duke3d http://icculus.org/duke3d/
- JFDuke3D http://www.jonof.id.au/jfduke3d
- Rancidmeat Port http://www.rancidmeat.com/project.php3?id=1
- xDuke Port http://duke3d.m-klein.com
- FreeSpace 2FreeSpace 2FreeSpace 2 is a 1999 space combat simulation computer game developed by Volition, Inc. as the sequel to Descent: FreeSpace – The Great War. It was completed ahead of schedule in less than a year, and released to great critical acclaim...
:- FreeSpace 2 Source Code ProjectFreeSpace 2 Source Code ProjectThe FreeSpace 2 Source Code Project is a group of programmers currently maintaining and enhancing the game engine for the space combat simulator FreeSpace 2, developed by Volition, Inc. The source code was released in 2002, and is used by several projects. Most prominent among these are games based...
- icculus.org/freespace2 http://icculus.org/freespace2/
- FreeSpace 2 Source Code Project
- HereticHeretic (computer game)Heretic is a fantasy first-person shooter video game created by Raven Software, published by id Software, and distributed by GT Interactive in 1994. It was made available on Steam on August 3, 2007....
:- ZDoom http://zdoom.org/
- Doomsday http://dengine.net/
- GLHeretic http://www.raven-games.com/hosted/kokak/Heretic.shtml
- GLHeretic for Linux http://heretic.linuxgames.com/
- Heretic for Linux http://heretic.linuxgames.com/
- HHeretic http://icculus.org/hast/
- WinHeretic http://www.raven-games.com/hosted/kokak/Heretic.shtml
- HexenHexenHexen is a first-person shooter video game developed by Raven Software, published by id Software, and distributed by GT Interactive beginning on September 30, 1995. It is the sequel to 1994's Heretic, and the second game in the Serpent Riders series...
:- ZDoom http://zdoom.org/
- Doomsday http://www.dengine.net/
- GLHexen http://www.raven-games.com/hosted/kokak/Hexen.shtml
- HHexen http://icculus.org/hast/
- WinHexen http://www.raven-games.com/hosted/kokak/Hexen.shtml
- Hexen IIHexen IIHexen II is a first-person shooter developed by Raven Software from 1996 to 1997, published by id Software and distributed by Activision. It was the third game in the Hexen/Heretic series, and the last in the Serpent Riders trilogy. It was made available on Steam on August 3, 2007...
:- Anvil of Thyrion http://aot.linuxgames.com/
- Hammer of Thyrion http://uhexen2.sourceforge.net/
- NewHexen http://newhexen.raven-games.com/
- HomeworldHomeworldHomeworld is a real-time strategy computer game released on September 28, 1999, developed by Relic Entertainment and published by Sierra Entertainment. It was the first fully three-dimensional RTS. In 2003, Relic released the source code for Homeworld...
:- Homeworld SDL http://www.homeworldsdl.org/
- Jagged Alliance 2Jagged Alliance 2Jagged Alliance 2 is a tactical role-playing game for PC, released in 1999 for Windows, and later ported to Linux by Tribsoft. It is the third game in the Jagged Alliance series, and was followed by two expansions: Unfinished Business and Wildfire...
:- Jagged Alliance 2: Stracciatella http://ja2.dragonriders.de/
- Ken's LabyrinthKen's LabyrinthKen's Labyrinth is a first-person shooter DOS game, released in 1993 by Epic Megagames . It was mostly coded by Ken Silverman, who went on to design the Build engine that was used for rendering a first-person viewpoint in Apogee Software's Duke Nukem 3D...
:- LAB3D/SDL http://icculus.org/LAB3D/
- MaelstromMaelstrom (computer game)Maelstrom is a 1992 clone of Asteroids with an improved interface and better graphics. Many of Ambrosia's subsequent shareware titles followed in a similar formula....
- Maelstrom 3.0 http://www.devolution.com/~slouken/Maelstrom/index.html
- Marathon 2:
- Aleph One
- Aleph One/SDL http://alephone.cebix.net/
- Realtech VR:
- Official No Gravity Port http://www.realtech-vr.com/nogravity/
- Quake:
- QuakeDS
- DarkPlaces
- FitzQuake http://celephais.net/fitzquake/
- GLQuake http://www.planetquake.com/quake1/files.shtml
- Project: Twilight http://icculus.org/twilight/
- Telejano
- Tenebrae
- TomazQuake http://scs.quakesrc.org/q/news.php
- WinQuake http://www.planetquake.com/quake1/files.shtml
- QuakeWorldQuakeWorldQuakeWorld is an update to id Software's seminal multiplayer deathmatch game, Quake, that enhances the game's multiplayer features to allow people with dial-up modems to achieve greatly improved responsiveness when playing on Internet game servers...
based:- ezQuake
- FuhQuake
- ZQuake http://zquake.frag.ru/eng/news/index.shtml
- Quake IIQuake IIQuake II, released on December 9, 1997, is a first-person shooter computer game developed by Id Software and distributed by Activision. It is not a sequel to Quake; it merely uses the name of the former game due to Id's difficulties in coming up with alternative names.The soundtrack for Quake II...
:- q^2 http://icculus.org/quake2/
- Quake2maX http://quake2max.planetquake.gamespy.com/
- Quake II Evolved http://www.quake2evolved.com/
- Quetoo http://jdolan.dyndns.org/trac/wiki/Quetoo
- Yamagi Quake II http://www.yamagi.org/quake2/
- Quake III:
- ioquake3
- OpenMoHAA http://openmohaa.sourceforge.net/
- Q3Base http://www.quakesrc.org/news/
- Quake III: Arena for FreeBSD http://www.freebsd.org/cgi/query-pr.cgi?pr=84853
- XreaL
- Rise of the TriadRise of the TriadRise of the Triad: Dark War is a first-person shooter video game that was first released on February 17, 1995 and developed by Apogee Software . The members of the development team involved referred to themselves as "The Developers of Incredible Power"...
:- icculus.org/rott http://icculus.org/rott/
- WinROTT and GLROTT http://home14.inet.tele.dk/Bna-Info/
- Red Alert:
- Open Red Alert http://code.google.com/p/openredalert/
- Savage: The Battle for NewerthSavage: The Battle for NewerthSavage: The Battle for Newerth is a science fantasy computer game that combines aspects of the real-time strategy and first-person shooter genres. It takes place in the distant future when humankind has rebuilt society following an apocalypse, but is threatened by intelligent beasts...
:- Savage: Rebirth http://savagerebirth.com/
- Shadow WarriorShadow WarriorShadow Warrior, often known by its initials SW, is a first-person shooter computer game developed by 3D Realms and released on May 13, 1997 by GT Interactive. Shadow Warrior was developed using Ken Silverman's Build engine and improved on 3D Realms' previous Build engine game, Duke Nukem 3D...
:- icculus.org/shadowwarrior http://icculus.org/shadowwarrior/
- JFShadowWarrior http://www.jonof.id.au/jfsw
- SWP http://www.proasm.com/
- SimCitySimCitySimCity is a critically acclaimed city-building simulation video game, first released in 1989, and designed by Will Wright. SimCity was Maxis' first product, which has since been ported into various personal computers and game consoles, and spawned several sequels including SimCity 2000 in 1994,...
Classic:
- Star Control IIStar Control IIStar Control II: The Ur-Quan Masters is a critically acclaimed science fiction computer game, the second game in the Star Control trilogy. It was developed by Toys for Bob and originally published by Accolade in 1992 for PC; it was later ported to the 3DO with an enhanced multimedia presentation,...
:- The Ur-Quan Masters http://sc2.sourceforge.net/
- Star Trek Voyager: Elite Force (holomatch)
- Total AnnihilationTotal AnnihilationTotal Annihilation is a real-time strategy video game created by Cavedog Entertainment, a sub-division of Humongous Entertainment, and released on September 30, 1997 by GT Interactive for Microsoft Windows and Mac OS. It was the first RTS game to feature 3D units and terrain...
- Total Annihilation 3D http://www.ta3d.org/
- Tyrian
- OpenTyrian http://code.google.com/p/opentyrian/
- Warzone 2100Warzone 2100Warzone 2100 is an open source real-time strategy and real-time tactics hybrid computer game, originally developed by Pumpkin Studios and published by Eidos Interactive...
:- Warzone Resurrection https://gna.org/projects/warzone/
- Wolfenstein 3DWolfenstein 3DWolfenstein 3D is a video game that is generally regarded by critics and gaming journalists as having both popularized the first-person shooter genre on the PC and created the basic archetype upon which all subsequent games of the same genre would be built. It was created by id Software and...
:- NewWolf http://newwolf.sourceforge.net/
- Wolf4SDL http://www.chaos-software.de.vu/
- WolfGL http://wolfgl.sourceforge.net/
External links
- FPS Ports Website - Source ports for classic First-person shooterFirst-person shooterFirst-person shooter is a video game genre that centers the gameplay on gun and projectile weapon-based combat through first-person perspective; i.e., the player experiences the action through the eyes of a protagonist. Generally speaking, the first-person shooter shares common traits with other...
s