HOME

TheInfoList



OR:

An unofficial patch is a
patch Patch or Patches may refer to: Arts, entertainment and media * Patch Johnson, a fictional character from ''Days of Our Lives'' * Patch (''My Little Pony''), a toy * "Patches" (Dickey Lee song), 1962 * "Patches" (Chairmen of the Board song) ...
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 alleviates bugs or shortcomings. Unofficial patches do not usually change the intended usage of the software, in contrast to other third-party software adaptions such as mods or cracks.


Motivation

A common motivation for the creation of unofficial patches is missing
technical support Technical support (abbreviated as tech support) is a call centre type customer service provided by companies to advise and assist registered users with issues concerning their technical products. Traditionally done on the phone, technical suppor ...
by the original software developer or provider. Reasons may include: *the software product reached its defined end-of-life and/or was superseded by a successor product (
planned obsolescence In economics and industrial design, planned obsolescence (also called built-in obsolescence or premature obsolescence) is a policy of planning or designing a product with an artificially limited useful life or a purposely frail design, so tha ...
) * the software was originally designed to operate in a substantially different environment and may require improvement/optimization (
porting In software engineering, porting is the process of adapting software for the purpose of achieving some form of execution in a computing environment that is different from the one that a given program (meant for such execution) was originally desi ...
) * the developer has gone out of business and is not available anymore (
abandonware Abandonware is a product, typically software, ignored by its owner and manufacturer, and for which no official support is available. Within an intellectual rights contextual background, abandonware is a software (or hardware) sub-case of the g ...
) *support is not economically viable (e.g. localization for small markets) *a fast solution for a time critical problem (e.g. security holes) when an official one takes too long * the official developer is unable to cope with the problems


Types

Unofficial patches are also sometimes called ''fan patches'' or ''community patches'', and are typically intended to repair unresolved bugs and provide technical compatibility fixes, e.g. for newer
operating systems An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
, increased display resolutions or new display formats. While unofficial patches are most common for the PC platform, they can also be found for console games e.g. in context of the emulation community.


Translations

Unofficial patches are not limited to technical fixes; fan translations of software, especially games, are often created if the software has not been released locally. Fan translations are most common for
Japanese role-playing game While the early history and distinctive traits of role-playing video games (RPGs) in East Asia come Video games in Japan, from Japan, many have also been Video games in South Korea, developed in South Korea and Video games in China, in China. ...
s which are often not localized for Western markets.
https://web.archive.org/web/20110716024241/http://img128.imageshack.us/img128/1900/tra26ba.jp

https://web.archive.org/web/20110718200429/http://img145.imageshack.us/img145/7259/tra42bl.jpg]
Another variant of unofficial patches are Slipstream (computing), slipstream like patches which combine official patches together, when individual patches are only available online or as small incremental updates.


Methods

The most common case is that the
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the w ...
and the original development tools are not available for the software. Therefore, the faulty software's binary must be analyzed at run time by
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 accompli ...
and
debugging In computer programming and software development, debugging is the process of finding and resolving '' bugs'' (defects or problems that prevent correct operation) within computer programs, software, or systems. Debugging tactics can involve i ...
. If the problem is found, a fix to the program must be applied. Sometimes only small changes in
configuration file In computing, configuration files (commonly known simply as config files) are files used to configure the parameters and initial settings for some computer programs. They are used for user applications, server processes and operating system se ...
s or the registry are required, sometimes binary hacks on the
executable In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instructions", as opposed to a data fil ...
itself are required to fix bugs. If a
software development kit A software development kit (SDK) is a collection of software development tools in one installable package. They facilitate the creation of applications by having a compiler, debugger and sometimes a software framework. They are normally specific t ...
(e.g. for modding) is available, fixes to the content can be easily produced, otherwise the community would need to create their own tools. These found fixes are typically packed to user deployable patches (e.g. with NSIS,
Innosetup Inno Setup is a free software script-driven installation system created in Delphi by Jordan Russell. The first version was released in 1997. History Since Jordan Russell wasn't satisfied with InstallShield Express which he had received upon purc ...
). If the source code is available, support can by provided most effectively. Sometimes the source code is released intentionally, sometimes by
leak A leak is a way (usually an opening) for fluid to escape a container or fluid-containing system, such as a tank or a ship's hull, through which the contents of the container can escape or outside matter can enter the container. Leaks are usu ...
ing or mistake, such as what happened with the
game engine A game engine is a software framework primarily designed for the development of video games and generally includes relevant libraries and support programs. The "engine" terminology is similar to the term "software engine" used in the software in ...
of the ''
Thief Theft is the act of taking another person's property or services without that person's permission or consent with the intent to deprive the rightful owner of it. The word ''theft'' is also used as a synonym or informal shorthand term for some ...
'' series. Sometimes fans even completely reverse-engineer source code from the original program binary. With the source code available even the support of completely different but recent
platform Platform may refer to: Technology * Computing platform, a framework on which applications may be run * Platform game, a genre of video games * Car platform, a set of components shared by several vehicle models * Weapons platform, a system or ...
s with
source port A source port is a software project based on the source code 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 cr ...
s becomes possible.


Law

While no court cases have directly addressed the legal ramifications of unofficial patches, similar cases have been tried on related issues. The case of '' Galoob v. Nintendo'' found that it was not copyright infringement by a user to apply an unauthorized
patch Patch or Patches may refer to: Arts, entertainment and media * Patch Johnson, a fictional character from ''Days of Our Lives'' * Patch (''My Little Pony''), a toy * "Patches" (Dickey Lee song), 1962 * "Patches" (Chairmen of the Board song) ...
to a system (while the scope was very specific to the
Game Genie Game Genie is a line of video game cheat cartridges originally designed by Codemasters, sold by Camerica and Galoob. The first device in the series was released in 1990 for the Nintendo Entertainment System, with subsequent devices released for th ...
). On the other hand, the case Micro Star v. FormGen Inc. found that user-generated maps were
derivative work In copyright law, a derivative work is an expressive creation that includes major copyrightable elements of an original, previously created first work (the underlying work). The derivative work becomes a second, separate work independent in fo ...
s of the original game. In ''
Sega v. Accolade ''Sega Enterprises Ltd. v. Accolade, Inc.'', 977 F.2d 1510 (9th Cir. 1992), is a case in which the United States Court of Appeals for the Ninth Circuit applied American intellectual property law to the reverse engineering of computer software. ...
'', the
9th Circuit The United States Court of Appeals for the Ninth Circuit (in case citations, 9th Cir.) is the U.S. federal court of appeals that has appellate jurisdiction over the U.S. district courts in the following federal judicial districts: * District o ...
held that making copies in the course of
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 accompli ...
is a fair use, when it is the only way to get access to the "ideas and functional elements" in the copyrighted code, and when "there is a legitimate reason for seeking such access". According to
Copyright law of the United States The copyright law of the United States grants monopoly protection for "original works of authorship". With the stated purpose to promote art and culture, copyright law assigns a set of exclusive rights to authors: to make and sell copies of the ...
17 U.S. Code ยง 117, the owner of a copy of a program can modify it as necessary for "Maintenance or Repair", without permission from the copyright holder; an argumentation also raised by
Daniel J. Bernstein Daniel Julius Bernstein (sometimes known as djb; born October 29, 1971) is an American German mathematician, cryptologist, and computer scientist. He is a visiting professor at CASA at Ruhr University Bochum, as well as a research professor ...
professor at the
University of Illinois at Chicago The University of Illinois Chicago (UIC) is a public research university in Chicago, Illinois. Its campus is in the Near West Side community area, adjacent to the Chicago Loop. The second campus established under the University of Illinois ...
. Similar user rights are given also according to European copyright laws. The question of whether unauthorized changes of lawfully obtained copyright-protected software qualify as
fair use Fair use is a doctrine in United States law that permits limited use of copyrighted material without having to first acquire permission from the copyright holder. Fair use is one of the limitations to copyright intended to balance the interests ...
is an unsettled area of law. An article of Helbraun law firm remarks, in the context of fan translations, that while redistributing complete games with adaptions most likely does ''not'' fall under fair use, distributing the modifications as a patch might be legally permissible; however, that conclusion has not been tested in court.


Reception

Reception of unofficial patches is mixed, but by large, copyright holders are ambivalent. When the software is not considered commercially viable unofficial patches are ignored by the copyright holder as it is not seen as a source of lost revenue. There have been seldom cases of
cease and desist A cease and desist letter is a document sent to an individual or business to stop alleged illegal activity. The phrase "cease and desist" is a legal doublet, made up of two near-synonyms. The letter may warn that, if the recipient does not disc ...
letters to unofficial patch and fan translation projects. Sometimes the copyright holder actively support the patching and fixing efforts of a software community,Community-based update to GalCiv 2 Ultimate Edition
by MarvinKosh on 25 September 2014
sometimes even by releasing the
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the w ...
under a
software license A software license is a legal instrument (usually by way of contract law, with or without printed material) governing the use or redistribution of software. Under United States copyright law, all software is copyright protected, in both source ...
which allows the software community the continued software support by themselves.Blue Saga's Source Code Has Been Released
by Matt Chelen on mmos.com (30 July 2016)
Examples for such software are in the
List of commercial video games with later released source code This is a list of commercial video games with later released available source code. The source code of these commercially developed and distributed video games is available to the public or the games' communities. Background Commercial video g ...
. The
free and open source software Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
movement was founded in the 1980s to solve the underlying problem of unofficial patches, the limited possibility for user self-support in binary only distributed software due to missing source code.
Free and open source software Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
demands from distributed software the availability of source code, which prevents the technical problems and legal uncertainties of binary only user patching of
proprietary software Proprietary software is software that is deemed within the free and open-source software to be non-free because its creator, publisher, or other rightsholder or rightsholder partner exercises a legal monopoly afforded by modern copyright and in ...
.


Examples in video games


Examples in general software


See also

*
Fan labor Fan labor, also called fan works, are the creative activities engaged in by fan (person), fans, primarily those of various media properties or musical groups. These activities can include creation of written works (fiction, fan fiction and review ...
*
Server emulator Strictly, a private server is any machine or virtual machine used as a server that is privately administrated. Colloquially the term is nearly-exclusively used to refer to independently operated, unofficial servers for video games. Private Server ...
*
Source port A source port is a software project based on the source code 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 cr ...
*
Right to repair The right to repair refers to proposed government legislation to forbid manufacturers to impose barriers that deny consumers the ability to repair and modify their own consumer products (e.g. electronic, automotive devices or farm vehicles such ...


References

{{Independent production Software maintenance Software release Unofficial adaptations Video game development Fan labor