HOME

TheInfoList



OR:

A source port is a software project based on the
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
of a game engine that allows the game to be played on operating systems or computing platforms with which the game was not originally compatible.


Description

Source ports are often created by fans after the original developer hands over the maintenance support for a game by releasing its
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
to the public (see List of commercial video games with later released source code). In some cases, the source code used to create a source port must be obtained through
reverse engineering Reverse engineering (also known as backwards engineering or back engineering) is a process or method through which one attempts to understand through deductive reasoning how a previously made device, process, system, or piece of software accompl ...
, 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 to Doom. 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. Since the majority of Doom players were DOS users the first step for a fan project was to ''
port A port is a maritime facility comprising one or more wharves or loading areas, where ships load and discharge cargo and passengers. Although usually situated on a sea coast or estuary, ports can also be found far inland, such as Hamburg, Manch ...
'' the Linux ''source'' code to DOS. 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 with
unofficial patch An unofficial patch, sometimes alternatively called a community patch, is a patch for a piece of software, created by a third party such as a user community without the involvement of the original developer. Similar to an ordinary patch, it alle ...
es that both don't 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 The aspect ratio of a geometry, geometric shape is the ratio of its sizes in different dimensions. For example, the aspect ratio of a rectangle is the ratio of its longer side to its shorter side—the ratio of width to height, when the rectangl ...
s, hardware accelerated renderers (
OpenGL OpenGL (Open Graphics Library) is a Language-independent specification, cross-language, cross-platform application programming interface (API) for rendering 2D computer graphics, 2D and 3D computer graphics, 3D vector graphics. The API is typic ...
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 Musical Instrument Digital Interface (; MIDI) is an American-Japanese technical standard that describes a communication protocol, digital interface, and electrical connectors that connect a wide variety of electronic musical instruments, ...
with
digital audio Digital audio is a representation of sound recorded in, or converted into, digital signal (signal processing), digital form. In digital audio, the sound wave of the audio signal is typically encoded as numerical sampling (signal processing), ...
( MP3, Ogg Vorbis, etc.), and enhanced multiplayer support using the
Internet The Internet (or internet) is the Global network, global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a internetworking, network of networks ...
. 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 The Internet Protocol (IP) is the network layer communications protocol in the Internet protocol suite for relaying datagrams across network boundaries. Its routing function enables internetworking, and essentially establishes the Internet. IP ...
. Another problem was games that required a specific
IP address An Internet Protocol address (IP address) is a numerical label such as that is assigned to a device connected to a computer network that uses the Internet Protocol for communication. IP addresses serve two main functions: network interface i ...
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 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's
Steam Steam is water vapor, often mixed with air or an aerosol of liquid water droplets. This may occur due to evaporation or due to boiling, where heat is applied until water reaches the enthalpy of vaporization. Saturated or superheated steam is inv ...
, Blizzard's battle.net, and GameSpy Arcade.


Alternatives

If the source code of a software is not available, alternative approaches to achieve portability are Emulation, Engine remakes, and Static recompilation.


Notable source ports


See also

* Enhanced remake *
Game engine recreation Game engine recreation is a type of video game engine remastering process whereby a new game engine is Code rewriting, rewritten from scratch as a Clone (computing), clone of the original with the ability to load the original game's data files suc ...
* Static recompilation *
Unofficial patch An unofficial patch, sometimes alternatively called a community patch, is a patch for a piece of software, created by a third party such as a user community without the involvement of the original developer. Similar to an ordinary patch, it alle ...
* List of commercial video games with later released source code *
Fork (software development) In software development, a fork is a codebase that is created by duplicating an existing codebase and, generally, is subsequently modified independently of the original. Software built from a fork initially has identical behavior as software ...


References


External links

{{Video game engines Software maintenance Software release Unofficial adaptations