xoreos lead here, here to clear up a few things. Feel free to throw questions my way, too
. (Yes, I've got a Google Alert on "xoreos"
)
Judging from the vids, graphics-wise it looks about as good as the original
No, not really. It's missing lighting, for once. We're currently, still, in the process of rewriting the renderer, to use more modern GL code (ripping out my old naive OpenGL 1.2-era code). That will still take a while, though.
and it seems to be functional to the point where one could almost play it.
Depends on the game. KotOR and NWN are the two games we've implemented the furthest, so far, allowing for some limited play. NWN2, Jade Empire, The Witcher and the Dragon Age games only allow you to fly around in the areas spectator-style.
The screenshots on the xoreos website show the state of the individual games a bit:
https://xoreos.org/screenshots/index.html (click on each image to pull up a bigger version).
What is the advantage of this engine over the originals ?
Short answer: portability, moddability, openness.
Well technically Witcher 1 was using a heavily modified version of the nwn1 engine. Probably too modified to work for Xoreus but you never know.
The first Witcher game is indeed a target for xoreos.
I had no idea those engines were to Aurora that they could be modified into it.
There were a lot of changes, and a lot of new middleware added, but at the core, they're still very Aurora-y.
Dragon Age: Inquisition isn't anymore. BioWare/EA is finished with this engine, it seems.
I think they'd be OK if it was a reimplementation using entirely their own code
It
is entirely our own code. Most of the information was gleemed by spelunking, looking at files in an hex editor, work done by others, educated guesses, etc. I personally only looked in the disassembly to find out a few information. There's no straight-up disassembly->C++-code transformation in there.
Mostly, that's because newer games (and I do count Neverwinter Nights as a "newer game"
) are way more complex, and stuck in their way, so to speak. If you want to do what we're doing, you can't lift up the code as is.
That's different in, say, ScummVM, another project I have (well, had, it's been a while) my fingers in. There, it was more feasible to reimplement directly from the disassembly in a lot of cases.
and stayed away from tradenames
We don't misuse any trademarked material. Despite popular wisdom, you can freely reference trademarked concepts. What you can't do is trying to look like the original article. Remember: the point of a trademark was to protect the customer from confusing counterfeits. xoreos is completely safe in that respect.
However, I am not a lawyer, and this is not legal advice.
I think they'd legally be OK under fair use, if they're not charging money
First of all, IANAL, but from my understanding, the "not charging any money" bit is overstated. That's one point among many if you want to determine if something is fair use. Not charging any money doesn't make something automatically fair use, and charging money doesn't automatically make it not fair use. It's one factor that weights into the decision.
But, also, I'm not in the US. This definition of fair use doesn't really apply to me, for better or for worse, because I'm in a different jurisdiction. And yes, it does work differently in the EU.
The issue might come if they support the scripting language.
No. The scripting language is has nothing to do with any of this, one way or another.
If what you're eluding to is the Oracle vs Google case with Java, that's a completely different situation. Entirely.
Heck, in the case of NWScript (the main scripting language used in the Aurora engine games), BioWare even explictely opened it. They released specs. It was one of the main draws of NWN, back in the day.
There has been a FLOSS NWScript compiler for decades now (by a group of people calling themselves the OpenKnights Consortium). There's a JIT compiler used by the NWN2 persistent world community (that's still alive, to this day!).
And yes, of course xoreos interprets NWScript. It kind of has to. Just like GemRB interprets the Infinity Engine scripts, just like all the ScummVM engines interpret their scripts. That's a given.
(Additionally, The Witcher uses Lua in combination with NWScript. Very weird
)
So anybody noticed, if you take away the X we get OREOs???!!! The One Cookie that controls them all..
Yes, xoreos is kind of a pun on a few things:
It used to be called "Eos", which is the Greek equivalent to the Roman dawn goddess Aurora. However, everyone and their dog uses Eos as a name, so I had to look for something more easily googleable. I'm not really all that creative with names, though.
So yes, I saw that the plural of the popular brand of cookies does contain eos. If you remove "or" as a prefix, and read it as a boolean operator, the logical or, and then transform it into a "xor" (exclusive or), put it back on, you've got xoreos.
Yes, it's only kind of a pun, and bouncing off several corners, but it stuck.
Aaanyway, I'm happy to answer any questions about the project you might have. We're also always looking for more contributors (and the relative lack of contributors (though I do of course appreciate every single person, every single commit, every single issue) is why the project is only going so slowly). If any of you want to contribute or know people who would, feel free to ping me. Here, on IRC, by mail, wherever. You'll find contact information on the xoreos website (I don't want to spam too many links in my first post, lest I might anger a spam filter).