Use Reddit? Join us on our very own subreddit: https://www.reddit.com/r/Linuxstuff/
You can sign up to get a daily email of our articles, see the Mailing List page!
Support us on Patreon to keep GamingOnLinux alive. This ensures we have no timed articles and no paywalls. Just good, fresh content! Alternatively, you can support us on Paypal and Liberapay!

The open source project 'xoreos' released version 0.0.4 'Chodo'

Posted by , | Views: 5,008

xoreos is a FLOSS project aiming to reimplement BioWare's Aurora engine (and derivatives), covering their games starting with Neverwinter Nights and potentially up to Dragon Age II. This post gives a short update on the current progress.

Note: This is a cross-post of a news item on the xoreos website.

A new year, a new release: we are proud to announce the release of version 0.0.4, nicknamed "Chodo", of xoreos and xoreos-tools.

In this release, Neverwinter Nights now shows speech bubbles for conversation one-liners, as used for cutscenes, bark strings and short NPC dialogues. Additionally, the premium modules BioWare sold for Neverwinter Nights, including the three that come with the Diamond Edition, can now be properly loaded and started.

An oversight in the handling of the texture fonts used in Neverwinter Nights and the two Knights of the Old Republic games has been fixed. This oversight broke rendering of certain characters, most prominently of those used in eastern European languages and the "smart" single quotation mark that's used instead of an apostrophe in some strings found in the French versions.

For xoreos-tools, there's two new tools: fixpremiumgff and ncsdis.

The first tool, fixpremiumgff, can restore the deliberately broken GFF files found in the BioWare premium modules for Neverwinter Nights. The resulting GFF files can then be edited as normal.

The second tool, ncsdis, is a disassembler for the stack-based bytecode of BioWare's NWScript scripting language. It supports the scripts of all games targeted by xoreos and can disassemble them into a full assembly listing. It can also produce a control flow graph in the DOT description language, which can then be plotted into an image by using the dot tools from the GraphViz suite.

Moreover, this release includes a lot of user-invisible code documentation and quality fixes, in both xoreos and xoreos-tools.

Binaries for Windows, GNU/Linux and Mac OS X are attached to the GitHub release, here for xoreos and here for xoreos-tools. Additionally, packages for various GNU/Linux distributions can be found on the OpenSuSE Build Service (here for xoreos, here for xoreos-tools) and in Arch Linux's AUR (here for xoreos, here for xoreos-tools).

Alternatively, the repository and the source tarballs contain PKGBUILD files in dists/arch/ and a debian build directory in dists/debian/, which can be used to build Arch Linux and Debian/Ubuntu packages, respectively.

And as always, we're looking for more developers to join us in our efforts to reimplement those 3D BioWare RPGs. If you would like to help, please feel free to contact us. :)

0 Likes
We do often include affiliate links to earn us some pennies. We are currently affiliated with GOG and Humble Store. See more information here.
The comments on this article are closed.
Purple Library Guy 2 February 2016 at 12:13 am UTC
Does anyone have some context for this? I can't quite tell whether this means "Xoreos generally works at least on certain games except for various annoying glitches, and we just cleaned up some of those", or whether it means "Xoreos technically makes certain games run but they are unplayable, and this release cleans up certain issues but leaves that broader unplayable status largely intact".
The progress described, not to mention the tools for easing the continuation of progress, sound very positive, but I can't tell what that means for the general prospects.
DrMcCoy 2 February 2016 at 12:28 am UTC
Purple Library GuyXoreos generally works at least on certain games except for various annoying glitches, and we just cleaned up some of those
Unfortunately not, no.

Purple Library GuyXoreos technically makes certain games run but they are unplayable, and this release cleans up certain issues but leaves that broader unplayable status largely intact
This, rather.

What currently works is this: xoreos can detect and start all games. All games show basic ingame areas, with objects and (often) NPCs. Scripts (on area enter, on object click) are evaluated and run, but many of the functionality kicked off by the scripts is not implemented yet. Sound, music and videos work for most games. NWN and KotOR/KotOR2 also have GUIs (NWN more extensive), and NWN also has NPC conversations implemented.

There's no "proper" gameplay as such implemented yet.

For some screenshots, see the screenshots page here: https://xoreos.org/screenshots/index.html
For a video of Neverwinter Nights running in xoreos, see this video: https://www.youtube.com/watch?v=_EZRvDIB7wI

For a big rambly, non-exhaustive list of things left to do, see this wiki page: https://wiki.xoreos.org/index.php?title=TODO

Purple Library GuyThe progress described, not to mention the tools for easing the continuation of progress, sound very positive
It's progress. Slow progress, and there's still a lot to do, but progress nonetheless.

Purple Library Guybut I can't tell what that means for the general prospects.
Well, the prospects are these: it's a massive undertaking. With the current level of contributors, who are there (and I'm super grateful for them ) and me still doing most of the work, this is never going to be finished.

I.e. I need more contributors. Anybody interested, please contact me. Anybody who knows people potentially interested, tell them about xoreos. Get the word out. Thanks!

If anybody has any questions about this project or the process or anything, feel free to ask.


Last edited by DrMcCoy at 2 February 2016 at 12:29 am UTC
stan 2 February 2016 at 12:34 am UTC
I wonder if by smart single quotation mark, you mean this: ’
And if by apostrophe you mean this: '

The first one is a correct apostrophe, the second is not (but almost everybody uses it since the real apostrophe is not on the French azerty keyboards).
DrMcCoy 2 February 2016 at 1:00 am UTC
stanI wonder if by smart single quotation mark, you mean this: ’
And if by apostrophe you mean this: '

Yes, or rather, I mean 0x92 from the Windows Codepage 1252, and 0x27.

The former is also used as a single closing quotation mark. The Unicode description is RIGHT SINGLE QUOTATION MARK, with a comment "this is the preferred character to use for apostrophe". Just to distinguish it from 0x27, I called it a "smart" single quotation mark.

The strings in the French version Neverwinter Nights use both, interchangeably. In the texture that defines the font, both characters look the same. So some of them were broken, some displayed correctly. This has been fixed now.

The issue, in case anybody's interested was that xoreos didn't take the font encoding into account. It basically acted as if the order of the letters and their indices were the same as in Unicode (or as UTF-32 codepoints). This works for all characters in Latin1 (ISO-8859-1), because those map 1:1 onto Unicode. And because CP-1252, the encoding used in western European versions of Neverwinter Nights (and KotOR/KotOR2), is mostly identical to Latin1, this also worked.

Except for the quote/apostrophe, which is 0x92 in CP-1252, but maps to UTF-32 codepoint 0x2019. And, of course, the extended Latin-based characters eastern European languages (which use CP-1250) don't map either, let alone Cyrillic characters (CP-1251). [1]

This has been fixed, and now both apostrophes show correctly in French Neverwinter Nights versions. Likewise, eastern European versions should also work better now (but I personally haven't tested them).

[1] Neither would any of the Asian languages work, but xoreos doesn't support them at all yet, unfortunately.
no_information_here 2 February 2016 at 5:57 am UTC
I cannot really offer any help (except maybe playtesting sometime in the future), but I wanted to say how much I admire your effort! Amazing undertaking and a worthy project... the golden age of Bioware games.
Khudsa 2 February 2016 at 9:51 am UTC
It's just amazing the work done, and mostly by one person! I hope there number of contributors grows and help you with this amazing and big project.
DrMcCoy 2 February 2016 at 4:42 pm UTC
And if anybody's interested in that, here's an interview I did with The Linux Gamer:

View video on youtube.com
Purple Library Guy 2 February 2016 at 5:17 pm UTC
Thank you very much, Dr. McCoy, that elucidated exactly what I was wondering about very clearly.
throgh 2 February 2016 at 10:11 pm UTC
Just to note: I've added a tag also on Diaspora! This project needs more attention in my point of view.


Last edited by throgh at 2 February 2016 at 10:39 pm UTC
While you're here, please consider supporting GamingOnLinux on Patreon or Liberapay. We have no adverts, no paywalls, no timed exclusive articles. Just good, fresh content. Without your continued support, we simply could not continue!

We also accept Paypal donations and subscriptions! If you already are, thank you!
Livestreams & Videos
Community Livestreams
  • Story Time: „The Secret of Monkey Island“
  • Date:
See more!
Popular this week
View by Category
Contact
Latest Comments
Latest Forum Posts