A reimplementation of BioWare's Aurora engine (and derivatives). Pre-pre-alpha :P
C++ C M4 Other
Latest commit 271112b Sep 29, 2016 @DrMcCoy DrMcCoy BUILD: Add more compiler warning flags, as supported by gcc 6
- -Wduplicated-cond: check for duplicate logic in if-else-if chains
- -Wlogical-op: check for duplicate logic in logical operator chains
- -Wshift-negative-value: check for shifting a negative value
- -Wshift-overflow=2: check for shifting in/out a sign bit
Permalink
Failed to load latest commit information.
build-aux BUILD: Use aux directory to store autogenerated files Jan 4, 2012
cmake BUILD: Some platforms install faad.h inside faad2/faad.h Feb 20, 2016
dists DIST: Add tolua++ files to Debian copyright file Sep 10, 2016
doc DOCS: Add a note about xoreos.conf encoding, with example Jul 30, 2015
gitstamp BUILD: Query git inside top_srcdir; fix gitstamp in out-of-tree builds Aug 5, 2016
glew GLEW: Rename glew.c to glew.cpp to compile it with a C++ compiler Sep 11, 2016
lua LUA: Disable system() (through io_execute()) Sep 25, 2016
m4 BUILD: Cache the last working Boost library suffix Sep 19, 2016
man DOCS: Document --debuggl in the man page Mar 5, 2016
src DRAGONAGE2: Build the ObjectType enum using unsigned values Sep 29, 2016
toluapp TOLUAPP: Rename *.c to *.cpp to compile them with a C++ compiler Sep 11, 2016
utf8cpp UTF8: Add a utf8cpp.patch of changes applied to the original sources Aug 29, 2016
.gitignore DIST: Remove iconv autotools files from .gitignore Feb 6, 2016
.travis.yml BUILD: Encrypt IRC channel for Travis to protect against fork spam Aug 25, 2016
.travis_coverity.sh BUILD Try the new Coverity Scan Travis upload URL Dec 3, 2015
.uncrustifyrc CLEANUP: Don't force all if branches to same brace style Sep 15, 2013
AUTHORS DOCS: Add Stanislav Bas to the contributors list Sep 10, 2016
BUILDDEP.md DOCS: Fix required MAD version in the BUILDDEP.md file Nov 1, 2015
CMakeLists.txt BUILD: Add more compiler warning flags, as supported by gcc 6 Sep 29, 2016
CODE_OF_CONDUCT.md DOCS: Update Code of Conduct to Contributor Coventant 1.4.0 Jan 30, 2016
CONTRIBUTING.md DOCS: Add a Code of Conduct Jun 18, 2015
COPYING ALL: Relicense eos from GPLv2+ to GPLv3+ Apr 24, 2011
COPYING.Arev DOCS: Add full Bitstream Vera license texts Jan 2, 2016
COPYING.Bitstream DOCS: Add full Bitstream Vera license texts Jan 2, 2016
COPYING.GPLv2 DOCS: Add full GPLv2 license text Jan 2, 2016
COPYING.LGPLv2.1 DOCS: Add full LGPLv2.1 license text Jan 2, 2016
ChangeLog DOCS: Mention the Witcher Lua stubs in the ChangeLog Sep 10, 2016
Doxyfile DOCS: Remove src/graphics/glew/ from the Doxyfile EXCLUDE directive Sep 27, 2016
FAQ.md DOCS: Add FAQ entry about consoles Mar 20, 2016
Makefile.am ALL: Add tolua++ 1.0.92 Sep 10, 2016
Makefile.common BUILD: Only add -ggdb if the compiler supports it Sep 11, 2016
NEWS.md RELEASE: This is version 0.0.4 Jan 31, 2016
README.md DOCS: Link the doxygen documentation from the README.md Dec 5, 2015
TODO DOCS: The TODO moved to our wiki Jun 19, 2014
autogen.sh BUILD: Add GPLv3+ license header to autotools files Dec 27, 2015
configure.ac BUILD: Add more compiler warning flags, as supported by gcc 6 Sep 29, 2016

README.md

xoreos README

xoreos is an open source implementation of BioWare's Aurora engine and its derivatives, licensed under the terms of the GNU General Public License version 3 (or later). The goal is to have all games using this engines working in a portable manner, starting from Neverwinter Nights and ending with Dragon Age II.

Games

The following games are valid targets for xoreos:

Status Build Status Coverity Status

Currently, the "foundation" work of managing resources, reading many basic file formats, displaying graphics and playing sounds has been done. All targeted games show partial ingame graphics, such as the area geometry and objects, letting you fly around in a "spectator mode". Some games show partial menus, and something resembling a starting point for a script system is there.

No actual "normal" gameplay is implemented yet, though.

For further information about the status of specific games, please visit our wiki.

Note: We are always looking for people to join our efforts in reimplementing those games. If you'd like to help, feel free to contact us! Please also read over our CONTRIBUTING.md for some guidelines. Thanks.

Getting xoreos

You can get xoreos in multiple ways:

You can download an archive with a binary of the latest release from our downloads page. This includes binaries for Microsoft Windows, Mac OS X and GNU/Linux, as well as packages for various GNU/Linux distributions. All of them are available for both 32- and 64-bit x86 architectures.

Or, if you're running Arch Linux, you can install xoreos directly from the AUR.

Lastly, you can compile xoreos yourself; either from a release source package, found on our downloads page, or a fresh repository checkout. For details on how to compile xoreos on various operating system, please read the Compiling xoreos page on our wiki.

Running xoreos

First, you need to fully install and/or copy the game you want to play with xoreos onto your hard disk. How you do this depends on the game, your operating system and where/how you have bought the game.

xoreos does not yet have a launcher GUI or anything like this. You need to start it from the command line. Run xoreos with the command line option "--help" (without the quotes) to get a help text about further command line options.

The quickest way to start a game in path /path/to/game/ would be to call

xoreos -p/path/to/game/

If you're on Windows and the path is, say, D:\Path\To\Game\, call

xoreos -pD:\\Path\\To\\Game\\

For a more in-depth documentation on how to run xoreos, please also read the Running xoreos page on our wiki.

Config file

In general, xoreos can read the configuration which game to run from either the command line, a config file or both. Additionally, when you first specify a new game on the command line, xoreos will add a related entry in the config file (creating it first, if necessary).

To accurately identify a specific instance of an installed game, xoreos uses the concept of a "target". Each target has a separate section in the config file, and each of their options apply only to that target. The special target "xoreos" is a global section applying to all games, although the same option in a game target overrides the global option.

For example:

[xoreos]
width=1024
height=768
fullscreen=false

[nwn]
path=/home/drmccoy/games/nwn/
fullscreen=true
volume_music=0.500000
volume_sfx=0.850000
volume_voice=0.850000

You can then start the game with the target "nwn" with

xoreos nwn

and xoreos will do the rest. This will start the game in the path /home/drmccoy/games/nwn/, running it in fullscreen at 1024x768.

As you can see with the volume options, xoreos also saves settings you made in the game' actual GUI into the target's section of the config file.

The place where xoreos expects the config file depends on your operating system:

  • On GNU/Linux, the place is $XDG_CONFIG_HOME/xoreos/xoreos.conf. $XDG_CONFIG_HOME defaults to $HOME/.config/
  • On Mac OS X, the place is $HOME/Library/Preferences/xoreos/xoreos.conf
  • On Windows, xoreos.conf is in the subdirectory xoreos in either $APPDATA or $USERPROFILE, depending on your Windows version

For a more elaborate example with more in-depth explanations, please see xoreos.conf.example in the doc directory, or the Running xoreos page on our wiki.

Links

Contact

To contact us, please either write to mailing list, or join our IRC channel #xoreos on Freenode.