OpenArena eXpanded (short: OAX; also OpenArena eXpansion) is the non-engine development of Open Arena.
What is OAX?
These "beta" releases are previews of what will be OpenArena in the next official releases and are distributed as mods for easy testing.
In these betas you can find, for example, new game options, changes in the user interface, and in the rules of the gamemodes.
Up to beta version 21 (June 2008), "OAX" was known as "Elimination" (because of the "test mod" was first created when testing the Elimination gametype), then it was renamed to "OpenArena eXpanded".
Source code for OA gamecode has been moved from Google Code to Github repository at the beginning of May, 2014. However the Google Code page still holds important documentation.
R and B
It's possible to find two different OAX numberings: "R" and "B" versions. "R" stands for "revision" (a.k.a. "rev"): each time a developer updates the source code/files on the "svn repository" (in short, makes a change), the "R" version number goes ahead; this allows to track each change, but you need "the hard way" below to test these latest changes. "B" stands for "beta": once on a while, a developer creates a "beta" package (starting from a specific "R" version) that everyone can simply download and test in "the easy way", like a mod; these downloads may miss the very latest changes, done after their creation. An OAX B version number is lower than the corresponding OAX R number, since a new beta package contains the changes introduced with more revisions; as an example, Beta 47 is based on OAX r238.
Where to find it?
You can find news about OpenArena Expanded here. It contains a download link for the source code and the "playable mod" version, description of the changes for each beta version, plus that thread is the place you can give feedback for them.
Furthermore, when a big change is implemented, so the engine must be touched, the thread about the latest test binaries is the place to go in order to download the latest binaries.
Testing
The easy way
To easily test an OAX beta version, use it like any mod (see Manual/Using mods):
- Go to the forums, to the thread about OAX.
- Download an OAX Beta version "mod"
- Unzip it inside your OpenArena installation folder (or user settings folder), so you should obtain a subfolder called "oaxBXX" (where XX is the beta version number, for example "oaxB45" for Beta 45, "oaxB46" for Beta 46... you can have more OAX beta versions "mods" installed). [1]
- Start OpenArena, then select "Mods", and there choose "oaxBXX"
- Use the game and try it. Please refer to the "readme.txt" file or to the thread on the forum to know what's new in each beta version.
The hard way
To test the very latest changes (the ones that can be viewed in the changelog) you can checkout from svn and compile yourself. This is also relevant if you want to make your own changes or tests.
- Install a git client. In Ubuntu Linux this is done with "sudo aptitude install git". In Microsoft Windows use Msysgit software.
- Clone with "git clone https://github.com/OpenArena/gamecode.git". If using msysgit use the "Git bash"-option from the right-click menu.
- Compile. In Windows run windows_compile_game.bat, windows_compile_cgame.bat and windows_compile_q3_ui.bat in "windows_scripts". This will create a folder called "windows" with a subfolder called "baseoa". In "baseoa" is a folder called vm. Compress vm to a zip file. Call it oaxdev.pk3 copy it into a oax-folder next to baseoa where you installed OpenArena. Linux users can use the "supermake"-script in "linux_scripts" to compile, pack and launch the game in one command.
- Start the game select oax as a mod. Unless you use the "supermake"-script as that will also launch the game with the mod active.
Build instruction: Linux detailed
Requirements: gcc and git
If the requirements are met this should build it:
git clone https://github.com/OpenArena/gamecode.git cd gamecode make
Instead of running make Go to the linux script folder:
cd linux_scripts
In this folder create a file called supermake.local In that file put:
#The full path to start OpenArena BINNAME=/path/to/openarena-0.8.8/openarena.x86_64 #The architecture. Use "i386" for 32 bit (default) or "x86_64" for 64 bit. ARCH=x86_64
Now the game can be compiled, packed and started with:
./supermake
Build instruction: Windows detailed
Install msysgit Create a folder you want to work in. In this folder right-click and choose "Git bash". In bash-promt copy paste (you can paste in the bash promt with Shift+Insert or with the menu):
git clone https://github.com/OpenArena/gamecode.git
Now go to the windows scripts folder by pasting:
cd gamecode/windows_scripts
In this folder run the command:
bash git-bash-cpmpile.bash
It will ask you 6 times to "Press any key to continue..." so that you have time to read any compiler errors. A file called "oax.pk3" will be created in "gamecode/windows/baseoa/". Create a folder in your Openarene folder next baseoa, call the new folder oax. Copy the pk3-file into that folder. Start the game and load the mod oax
Coding tutorials and resources
Submitting changes
If you have developed a change, as long as it doesn't violate NOTTODO, propose it in the OAX thread. You are also welcome to clone the git repository to show display the changes!
Notes
- ↑ Note: this folder goes at the same level of the "baseoa" folder, not inside it... and do not mix the files from the mod with those in baseoa. It is very important to avoid placing modified gamecode in the baseoa folder, especially if you are running a server that other players will be able to connect to (you may mess up their OA installation!).
External links
- Old forum thread about "Elimination" (old name for OAX mod, up to beta 21)
- Current forum thread about "Open Arena Expanded". You can get the latest beta version "mod" in the first post.
- OpenArena Gamecode on github - OAX source code repository since May 2014.
- Msysgit
- About the old OAX repository on Google Code (up to 3 May 2014):
- OpenArena Expanded on googlecode - Update list (change log)
- Download "Beta" OAX versions from googlecode, up to Beta 51.
- The Wiki Pages of OAX on Google Code - They contain useful help about some features of OpenArena.
- OpenArena Server Administration help on the Wiki Pages of OAX on google code.
- "Issues" section of the OAX site - Sort of bug tracker.
- TortoiseSVN and its article on Wikipedia.