Open-source The Elder Scrolls: Arena

Not about OpenMW? Just about Morrowind in general? Have some random babble? Kindly direct it here.
User avatar
afritz1
Posts: 47
Joined: 05 Sep 2016, 01:18
Contact:

Open-source The Elder Scrolls: Arena

Post by afritz1 »

Hello. I've been working on an engine re-implementation for The Elder Scrolls: Arena. I started it back in January this year mostly as a learning experience and so I could have a big free-time project involving 3D graphics.

The scope of the project is kind of like the DaggerXL subset of the XLEngine. It will replicate the gameplay of the original game while adding a couple modern conveniences and features, especially a modern graphics engine. It currently supports Windows and Linux, too, and I think the project can be considered FOSS now as well.

https://github.com/afritz1/OpenTESArena

By the way, thanks for all the work you all do on the OpenMW project! Morrowind is one of my favorite games of all time! It looks like OpenMW is almost feature complete, isn't it?

I admit I'm just starting out as a professional software developer, so progress is a bit slow when implementing new things because there is a lot of learning and discovery involved. At first I wanted this to be "my project", but now I know that I cannot get a reasonable chunk of it done in a timely manner without help from others.

Anyway, the documentation for Arena files is pretty hit-and-miss, so I tend to get stuck at roadblocks pretty often when trying to decipher the different file formats. Fortunately for the game rules, the manual is very detailed and essentially acts like a design document for how the game should behave. The game is also relatively simple overall, compared to Daggerfall and its skill system for example, since Arena's leveling is just based on primary attributes and experience.

If anyone would like to assist, just open a pull request on the repository whenever you like. I'm on the OpenMW and OpenTESArena IRC channels every once in a while to chat as well. Thanks!
User avatar
psi29a
Posts: 5355
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Open-source The Elder Scrolls: Arena

Post by psi29a »

Glad you posted here! :) (Hello again btw!)

Love the work, keep it up!

Make some youtube videos!
User avatar
raevol
Posts: 3093
Joined: 07 Aug 2011, 01:12
Location: Caldera

Re: Open-source The Elder Scrolls: Arena

Post by raevol »

Nice work! Excited to see where this goes!
Allofich
Posts: 104
Joined: 28 May 2016, 12:50

Re: Open-source The Elder Scrolls: Arena

Post by Allofich »

Hi afritz1, I've been following your project and check it every day (along with Daggerfall Unity). I enjoy seeing the progress and reading your comments. I saw you were asking for help with .FLC files and some other things. I wish I could help, but I don't know anything about decoding file formats. Maybe I can chip in at some point if there is something not too difficult that I think I can help with.
User avatar
psi29a
Posts: 5355
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Open-source The Elder Scrolls: Arena

Post by psi29a »

@afritz1: Maybe it is worthwhile to use your github issue tracking system to create tasks for people who want to help. It is sometimes hard to know what can and should be worked on, especially for new comers to a project. To increase engagement, take some time to plan out 'features' or 'tasks' that can be done independently of each other with a little guidance. This allows people who want to work on the issues the ability to ask questions in the thread.
User avatar
afritz1
Posts: 47
Joined: 05 Sep 2016, 01:18
Contact:

Re: Open-source The Elder Scrolls: Arena

Post by afritz1 »

Maybe it is worthwhile to use your github issue tracking system to create tasks for people who want to help.
Yeah, issues are a great way to manage objectives both short-term and long-term. I originally thought of writing a general layout for what's behind each folder in the source directory, but those kinds of things can sometimes get out of date pretty fast. I'd like to start experimenting with the new projects feature since that looks a lot like a simple Trello board, where it's better for having dozens of little tasks listed. I already have a general roadmap of ideas in the "Scope" section of the Readme, though it doesn't involve implementation details simply because they're ideas.

The codebase is by no means refined at this point, so very few things are really set in stone. That means if something in the code doesn't look finished, it probably isn't. If only I had more experience to know what kinds of tools would be great to program for making the developers' lives easier.

If the project had a larger team, I'd much rather just switch the 3D rendering API to Vulkan right away and spend all day tinkering with that, since at the moment the OpenCL renderer is pretty dumb and lacks any kind of robust interface for scene management (which I plan on fixing after file decoding). In any case, I should at least get the OpenCL code built up first so I have something to fall back to in case Vulkan ends up taking a lot longer to develop with.
Naugrim
Posts: 172
Joined: 08 Jan 2016, 01:32
Location: Spain

Re: Open-source The Elder Scrolls: Arena

Post by Naugrim »

Is there a chance to get a binary version for those not into C compiling?
Even if it's early you could just use the releases feature in github to post a 0.1a version.
User avatar
afritz1
Posts: 47
Joined: 05 Sep 2016, 01:18
Contact:

Re: Open-source The Elder Scrolls: Arena

Post by afritz1 »

Naugrim wrote:Is there a chance to get a binary version for those not into C compiling?
I would like to use the releases tab in the not-too-distant future. The project is still very early in development, and I would feel more confident about doing a snapshot of the repository once I get just a couple more of the file formats decoded; specifically the .CIF files for character faces and .FLC files for cinematics. That way, it would be a bit more presentable than it currently is. I would be including both the Windows and Linux 64-bit binaries in that release then (I'm not sure if anyone needs 32-bit?).

I'll likely start using version numbers for releases once I narrow down each segment of the scope a bit more, and that would happen after a couple more of the basic features are functioning.
User avatar
owatnext
Posts: 22
Joined: 21 Apr 2016, 22:35

Re: Open-source The Elder Scrolls: Arena

Post by owatnext »

afritz1 wrote:I would be including both the Windows and Linux 64-bit binaries in that release then (I'm not sure if anyone needs 32-bit?).
While I wouldn't consider 32-bit to be a priority, it would still be inclusive and somewhat necessary to have. I have one main machine (64-bit) and one machine that I use primarily for testing (32-bit).
To keep things separate and safe, I only allow beta and full releases to be on my stable machine, and alpha and below on my testing machine. So I wouldn't be able to test and give feedback until there's a 32-bit release. :geek:
But that is just my specific case.
While I can work around that with VirtualBox, it's just not as accurate. lol.
But don't let my blab deter you; it is your project, after all. :mrgreen:

Also, one thing I think you should change is the fact that when you die it deletes your save. That peeved me immensely in my years of playing Arena.

Regards.
charlieg
Posts: 50
Joined: 30 Jun 2015, 14:17

Re: Open-source The Elder Scrolls: Arena

Post by charlieg »

One of the devs here did something for Daggerfall:
https://github.com/kcat/opendf

Originally announced in this post with various details on the implementation in that thread.

Might be some useful stuff in there.
Post Reply