- UOX
Infobox_Software
name = "Ultima Offline eXperiment"
caption =
developer = UOX3 Dev Team
latest_release_version = v0.98-3.7
latest_release_date =July 8 ,2006
operating_system =Microsoft Windows (95 and above),Linux
genre =Emulator
license =GNU General Public License
website = [http://www.uox3.org UOX3.org]"UOX", or "Ultima Offline eXperiment", is an "
Ultima Online " ("UO")server emulator that is written inC++ and released under the GPL. Today, the term "UOX" almost exclusively refers to the third version, "UOX3".Overview
"UOX" is a software suite that allows a user to manage a customized "Ultima Online" server to which they or others may connect. "UOX" is both free and
open-source , released under the GPL, allowing anyone to modify and customize it to his or her will.History
"UOX" has had a long history, and has seen three major version numbers, often marking change in development leadership.
UOX
Created during the beta testing of "Ultima Online" in 1996 or 1997, the first version of "UOX" is commonly regarded as the first "Ultima Online" emulator. Created by Jaegermeister. This version was
closed-source .UOX2
The second version was by Marcus Rating (aka Cironian), who rewrote "UOX" Harv|Alnes|2003. "UOX2" was also single-player Harv|Pelel|2005. This version was also closed-source.
UOX3
"UOX" has spent the majority of its lifetime in its third version. Originally re-written from "UOX2" by Marcus Rating, it has passed through many hands and gone through monumental changes. Some believe that the current rendition of "UOX" should be dubbed "UOX4", as virtually every line of the program has been rewritten. This was the first version to have the source released to the public under the GPL. It was released on October 22nd, 1997.
Early development
Originally decentralized, early development of "UOX3" (circa 1998) was done by [http://www.uox3.org/history/uox3halloffame.shtml many individuals] with no
version control and littlesynchronization or quality checks. This led to what is often termed "spaghetti code ", stability issues, and bugs. Yet, even so, the original creator, Marcus Rating, was opposed to centralizing development:: "Anyway, and I should have probably said this earlier: I do not think that centralizing the development of "UOX", as it is obviously happening, is a good idea. It was always wonderful to see how a lot of people just added their favorite features to "UOX" without having to think if someone else was working on the code too. Yes, it does lead to bugs sometimes, but actually "UOX" is still in a pre-alpha state, where no one should care about stability issues. Also, I do not think a revision control system is really necessary, if people just give a bit of an advance announcement before releasing things and remember to document all changes in the update.txt. (Yes, I have to remember that myself too)" Harv|Rating|1998
That choice and the resulting code base has often been one of the primary criticisms of the project ("see:" criticism). These issues have caused some to choose to create branches of the code ("see:" branches), and still others to create new emulators entirely.
Recent development
Today, "UOX3" would appear as an entirely different program to one who used it at its inception.
JavaScript is used to make just about anything in the game world scriptable, and the code is almost entirelyobject-oriented . Along with this rewrite, "UOX3" has seen many enhancements in cleanliness, organization, and better design principles. This new code base, originally created by Matthew Randall (aka EviLDeD), Daniel Stratton (aka Abaddon/Maarc), "Tauriel" (real name unknown), and Bryan Pass (aka Zippy), is now primarily maintained by Scott Thompson (aka giwo/Zane) and Geir Ove Alnes (aka Xuri/Xoduz) onSourceForge .Web sites
Originally, "UOX3" was hosted as a part of [http://uo.stratics.com "UO Stratics"] at uox.stratics.com. This was during the time when Marcus Rating was the primary developer.
As the project grew, and Rating lost interest, the community and development moved to UOXDev.com, run by Ryan McAdams. The project called UOXDev its home for many years, until McAdams shut the site down and shifted his focus to
RunUO .As Matthew Randall and Daniel Stratton took over, development moved to a new web site, UOX3Dev.net. This web site remained the focal point of "UOX3" development during its prime.
After the UOX3Dev.net site went down indefinitely, [http://www.uox3.org UOX3.org] , ran by Geir Ove Alnes, became the new official "UOX3" web site, and remains the official web site to this day.
Features
* Open-source C++.
* Customization through JavaScript.
* Commands are scriptable - more than 100 commands are scripted and can be modified by administrators already, and new ones can be added.
* All "UOX3" script and configuration files are reloadable during runtime.
* Extensive logging of server errors, packets sent and received, commands used, spells cast, combat messages, and in-game playerchat .
* Regional spawning system that allows an administrator to spawn large numbers ofnon-player characters or items without significantly increased world-save times, because objects spawned regionally are not saved and only kept in memory for as long as the server is running. Upon server restart, they are all re-spawned.
* Region-specific control of weather effects, lighting, appearance (Felucca,Trammel , spring, winter) and ore-resources.
* Custom dictionary system allowing for the display of server and script messages in multiple languages (Currently there are only dictionaries for English, and to some extent - French and German, though any language with a country-code supported in the "Ultima Online" client is possible to use).
* Customizableraces , allowing forallies , enemies,monsters opposing or assisting each other, skill-bonuses/penalties, etc.Branches
Due to its popularity and the nature of open-source projects, "UOX" has been branched many times. Some of these offshoots are still around and have grown into projects that are completely different from "UOX", and some have also been branched into new projects themselves. All were, at some point, based on the code of "UOX3" or derived from an emulator that used "UOX3" code. No known offshoots of either "UOX1" or "UOX2" exist (likely due to them both being closed-source).
Branching took place when an individual or group decided they wanted to make changes to the program not consistent with the current development team's goals. In these scenarios, new projects based on the "UOX3" source code were created in order to pursue the particular goals of that group. No other "Ultima Online" emulator has seen as many branches as "UOX".
Below is a short list of known branches, see [http://www.uox3.org/history/timeline.shtml "The UO Emulator Timeline"] for a more complete listing along with information about many other (non-"UOX" derived) emulators.
* "AUOX:" Armageddon made his own version of "UOX3", named "AUOX", and caused the first branching of any "UO" emulator to occur.
** "AUOXCon:" SpaceDog continued Armageddon's "AUOX" through "AUOXCon"(tinued).
* " [http://www.wpdev.org/ Wolfpack] :" created by Ripper based on "UOX3".
** " [http://nox-wizard.sunsite.dk/site/index.php NOX-Wizard] :" created by Xan using "Wolfpack" as a base on the 25th of June, 2001.
*** " [http://www.sf.net/projects/revelationemu Revelation] " Fork of Nox-Wizard, enters scene on the 21st of August, 2002.
** " [http://home.tiscalinet.de/aduke/main2/news2.htm Lonewolf] :" a derivative of "Wolfpack", started in November 2001.
*** "Method:" started by Melchir in early February 2002.
*** " [https://sourceforge.net/projects/werewolf-emu Werewolf] :" Lonewolf branch started by Zagyg in early December 2005.
** "The Shard"
** " [http://www.sf.net/projects/sushix Sunshine] " A derivate work of an early Wolfpack version, started by M. Strobl sometime in 2000.
* " [http://stud1.tuwien.ac.at/~e9425109/uox3_1.htm UOX-pi] :" created by Lord Binary, later merged into "Wolfpack".
* "Legions of Chaos:" the first existence of a faction system in "UO", written by Chaos.
* " [http://www.uoxc.com UOX Classic] :" an offshoot from the "UOX3" versions released immediately before the inclusion of the JavaScript engine and the move to object oriented programming.
** "UOX:NG:" started with big-endian64-bit machines in mind, by Generic Player.
* " [http://uoxe.sourceforge.net/ UOX3 (Unofficial)] :" started by Punt on the first day of 2003, intending to rewrite the JavaScript-enabled "UOX3" version.ee also
*
Ultima Online The game that "UOX" emulates.
* Ultima Online Shard EmulationReferences
*. Retrieved Dec. 6, 2005.
*. Retrieved Dec. 6, 2005.
*External links
* [http://www.uox3.org UOX3.org] The current official "UOX3" development site.
* [http://www.sf.net/projects/uox3 UOX3 @ Sourceforge] The "UOX3" Official Sourceforge Project
* [http://www.sf.net/projects/openuo OpenUO @ Sourceforge] A Sourceforge Project for all things "UOX"
* [http://www.uogateway.com/ UOGateway] is an application which allows you to connect your "Ultima Online" client to an emulated server.
Wikimedia Foundation. 2010.