Jump to content

Status of Code


Master Xan

Recommended Posts

I love the Exile games, preferring them over the Avernum remakes. I was aware of the release of the code and this project, but haven't kept up with it.

 

What is the status of the open code project? Is the summary accurate? (It says you folks are working on merging the Mac and Windows versions with wxWidgets.)

 

Is there a "playable" version built since the code release, for any platform?

 

Is there another project working with the source code?

Link to comment
Share on other sites

Right now the Windows and Mac branches are quite split off from each other, working on getting a unified code base is a long-term goal.

 

Mac is a bit out of date, but there's a windows installer of CBoE here. For mac, there's this build by tridash, or just run the Windows version in Wine. (if you want to get the most recent builds, check the jenkins server here)

 

Right now the only project working on the code that I am aware of is CBoE. I've been tinkering around with the Windows code base occasionally, and Tridash and Celtic Minstrel have been working on Mac stuff. The current CBoE code is located on GitHub here.

Link to comment
Share on other sites

Thanks for the quick answer.

 

How altered is the Windows version, compared to the original game? Are we talking just a removal of 16bit code, or has it added resolution support and other modernization? Changes to entitiy limits? Other things of note which you are aware of?

 

The jenkins server is Mac version, correct? It wasn't clear from your post, and his server doesn't specify. I'm at work and can't download it to verify myself.

Link to comment
Share on other sites

My Version I Scenario editor in Windows Visual Basic has a few features I find useful, especially when trying to document someone elses scenario such as when I wrote the walkthrough for The Adventurers Club.

 

I have made the VB source code available for anyone who wants use those features.

Link to comment
Share on other sites

The current windows version is pretty true to the original. Most changes are bugfixes and modernization attempts -- it can now run flawlessly on 64-bit windows without having a crisis. Theres a couple new entities and some raised limits, but for the most part much has stayed the same gameplay-wise.

 

The jenkins server is bleeding-edge windows builds. Probably not much use to you unless you're looking to develop, really :p. But to use them, just dowbload and install the installer, then pop in the new executable(s) from Jenkins.

 

Unfortunately, i havent been able to get any sort of Mac cross compiliation working on the Jenkins server, which runs Debian linux.

 

One other thing to note -- theres (rather dated) documentation available online for the game and editor, its linked in the forum header.

Edited by sylae
sorry for the delayed response, was at work
Link to comment
Share on other sites

So who is Jenkins? And I will tinker with his build, though I may not start a serious party with it. (ha, "serious party")

 

Thanks for the info. This weekend I'll have time to download and tinker. I would like to develop, just don't have sufficient time- I'm writing a novel atm. Most of my career has been away from coding (more BI, databases, sys admin, etc), so it would take me significant amounts of time just to catch up on the languages being used.

 

This is one of three games I'd really love to see "redone" someday. BoE, Descent, and Star Wars Rebellion. I'm trying to stay aware of others' efforts, hoping to contribute when the opportunity arises.

Link to comment
Share on other sites

Jenkins isn't a person, it's the name of a program that can automatically compile the game whenever source code is changed. It allows people who don't have the whole programming environment set up see what new things are going on (otherwise a developer would have to manually compile and release a build every time something happened, and who has time for that? :p).

 

As for languages, it's pretty much C++, although Jeff's coding style at the time of writing this program was...convoluted. A fair amount of work has gone into making things somewhat readable. The development coordination is mostly done on github, so you should probably have a basic understanding of git (they do have a pretty straightforward windows program that takes out a lot of the learning curve, especially if you have prior experience with version control).

Link to comment
Share on other sites

It's done in C++? Makes sense; the "fancy" new languages weren't around in the 90s and the old junk wasn't good for gaming. Been awhile since I coded in that, but at least I have. Need to freshen up before changing much, but I should at least be able to read it, especially if folks have already put work into clarifying it.

 

I do have experience with version control. Such a wonderful concept, but the two times I've dealt with it, the implementation was... lacking. Nothing that would surprise you: incorrectly set environments full of problems, team members who merge incorrectly or otherwise destroy work, etc. Led me to do "my own" version control methods. I can always try it again though.

 

The code for the earlier Exile games hasn't been released, correct? But they were probably also done in C or C++ if BoE was. That means importing files from the earlier games shouldn't be impossible; someday, I might realize my vision of Exile 2 in an updated BoE engine.

Link to comment
Share on other sites

Its c++, but the original code was more of straight C iirc. The exile trilogy is just freeware, but Blades actually has a lot of chunks of E3 code that wasn't used. Forum user Ishad Nha has done a lot of work analyzing save structures and porting maps and such to Blades, you might want to check his work out w/r/t that.

 

The CBoE code was originally controlled with SVN, I moved it to git awhile ago just for the reasons you mentioned--git handles merges and conflicts a lot more elegantly IMO. I get issues with merging occasionally with other projects, but its usually me doing it wrong :p.

 

As far as dev environments, at the current time there's nothing too strange going on--i don't even think you need any libraries beyond the system ones iirc. For reference, I got it to cross-compile on Debian just fine without doing anything beyond installing MinGW and dealing with some cases sensitivity things.

 

If you want to contribute to the CBoE repository, register on github and tell me your username, I'll get you push permissions to the repo and upload permissions to the file dump.

Link to comment
Share on other sites

What is the status of the open code project? Is the summary accurate? (It says you folks are working on merging the Mac and Windows versions with wxWidgets.)

This summary is not accurate. I am currently working on getting the Mac code into a playable state using, rather than wxWidgets, a library called SFML (which is similar to SDL but built on top of OpenGL). Once that's complete, I'll move onto getting the PC editor and the scenario editor into a nearly-usable state, and then I'll probably look at merging.

 

(Nearly-usable because I expect the scenario editor will not be able to save scenarios.)

 

As for languages, it's pretty much C++, although Jeff's coding style at the time of writing this program was...convoluted.

I'd like to clarify this; Jeff's code is exclusively C, but I and others have converted much of it to C++.

 

Hold off on the permissions for now. I need time to refresh my brain on C and get familiar with the code. Plus there's that novel to finish writing...

 

Again, thanks for the info. Even if it ends up being months before I have time for this project, I'm saving this thread as a reference.

The delay is appreciated, especially if you're interested in the Windows side. I expect I'll need at least another week or two before I get the Mac side working (though I'll push my work to the repository as soon as the game is vaguely playable).
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...