Jump to content

Blades of Exile Source Code


Spidweb

Recommended Posts

We have decided to release the source code of Blades of Exile under the Common Public License. (The same license the Blades of Avernum editor is under.) It should be available in the next few weeks.

 

I am really hoping people are able to whip it into something usable and create a way for games to run all of the old, cool Blades of Exile scenarios. This will take a bit of work. The code is old and will take some polishing, especially on the Mac side (since it needs to be both Carbonized and Universalized).

 

Should the code be improved, we would happily take it and host it so others can improve on the work.

 

It will be available pretty soon. In the meantime, here are some questions and answers from the readme file ...

 

Q: What am I allowed to do with this code?

 

A: Just about anything you want. Read the Common Public License.

 

(If you can't wait to read it, download the Blades of Avernum editor.)

 

Q: I have questions about the code. Can you help me?

 

A: Probably not. We're very busy, and we really don't have much time to talk people through programming issues. You should check the Blades of Exile section of our forums or the Blades of Exile Scenario Workshop on our website. If people put together web pages on this stuff, we'll link to them.

 

Q: I found a problem or missing piece of data. Or I made a web page about Blades of Exile. Or I've improved the code and I have a new, better version available for download. Do you want to know about it?

 

A: Yes!!! Tell us at spidweb@spiderwebsoftware.com. If a community comes up around this source code, we'll help people find you.

 

Q: Does this mean that you will be releasing the source code for other old games?

 

A: Not likely. For most of our games, when they get very old, we'll just rewrite and rerelease them. We're only doing this with Blades of Exile (and probably someday Blades of Avernum) because so many people have made scenarios for it.

 

Q: Why did it take so long to do this?

 

A: Partially because we were distracted by the thousands of things we have to do all the time. And partially because, up until very recently, we didn't know where the Windows Blades of Exile code was. (Please rest assured that this is very embarrassing to me.) A decent copy of it only turned up when we were searching through old computers for files for Nethergate: Resurrection.

 

- Jeff Vogel

Link to comment
Share on other sites

Can someone more familiar with Mac applications (or Mac&PC architecture in general) tell me what Carbonizing and Universalizing means, and what (if anything) it means for the Windows version?

 

From Jeff's post, I understand that there are two versions of the code, one for Windows and one for Mac. Will any changes be implemented in both separately, or will one of the two be fixed and ported anew?

Link to comment
Share on other sites

Carbonizing is not that difficult, as long as you stick with the existing code base, don't do anything wild and crazy like porting it to Cocoa, and you live with the risk of using the quickdraw deprecated functions.

 

Switching it to Universal mainly involves adjusting the byte order for short ints read from or written to the hard drive. There are a few other tweaks. If someone with actual programming skill takes the lead in adapting the games, I can provide some one-on-one advice for how to go about it.

 

At least XCode is decent and free. This helps a lot.

 

- Jeff Vogel

Link to comment
Share on other sites

Quote:
Originally written by Dr. Johann Georg Faust:
Can someone more familiar with Mac applications (or Mac&PC architecture in general) tell me what Carbonizing and Universalizing means, and what (if anything) it means for the Windows version?
It has absolutely nothing to do with the Windows version. Carbonization is the process of updating a classic Mac application (OS 9 or earlier) to work in the newer, Unix-based OS X. Universalization refers to editing a PPC OS X application so that it will run natively on an Intel Mac. Now, Intel Mac have an emulation API for PPC OS X applications known as Rosetta, which works fairly well for most applications. Pre-OS X applications will not runon an Intel MAc, so carbonization is absolutely necessary to ensure the future of BoE. Universalization would be nice, since it will use significantly fewer resources to run, but not absolutely necessary.
Link to comment
Share on other sites

Jeff:

 

What are the conditions going to be for the BoE data files? Specifically, will people be able to redistribute the art and sounds which come with Blades?

 

I am currently considering implementing an EXS translator for Pygmalion , a retro-style game engine inspired in part by Blades. Whether this would be worthwhile would be heavily influenced by whether the graphics and sounds would be available.

 

Thanks for releasing this code. It's a great service to your community.

 

Aran: This doesn't particularly affect Pygmalion, because Pygmalion has greater scope and much more features than BoE. It's primarily interesting to me as documentation for the EXS format.

Link to comment
Share on other sites

"What are the conditions going to be for the BoE data files? Specifically, will people be able to redistribute the art and sounds which come with Blades?"

 

Yes. And, on top of that, you'll be able to distribute all of my scenarios (Small Rebellion, etc). Go nuts.

 

- Jeff Vogel

Link to comment
Share on other sites

I don't know crap about C++, but between me and TGO(assuming he doesn't end up in space with his buick or get thrown in jail... again...), we could possibly do something spiffy cool with this, even though, historically, neither of us have ever done anything that even vaguely resembles useful or cool, let alone a combination of the two.

 

So the real question is: Does anyone know where I can get a good(and/or free) compiler for OS 9? And, more importantly, for that matter PC?

 

EDIT: Cause if there's anything that my programming experience with BASIC and JAVA has taught me is that you can code anything if you have enough of the right well-commented out examples to steal from.

Link to comment
Share on other sites

That thing somewhere on the Spidweb site that talks about starting and running a shareware company says he uses C++. I read that years ago when I wanted to be a game developer.

 

EDIT: Also, one of the first things I want done is to have that irritating thing that changes Windows's color scheme to grey removed. I like my Windows to have a nice blue color scheme and the system lags horribly as it changes every time I switch windows.

Link to comment
Share on other sites

Quote:
Originally written by Gaara of the Funk:
That thing's still not done?! How many freaking years has been under development?!
Five years as of around this date. I'm quite sorry that progress on my pet personal project hasn't been quite rapid enough for your taste; I've been unfortunately busy going to school, holding down a job, seeing my girlfriend, having friends, and generally living my life.
Link to comment
Share on other sites

Quote:
Originally written by Andrea:
Quote:
Originally written by Gaara of the Funk:
That thing's still not done?! How many freaking years has been under development?!
Five years as of around this date. I'm quite sorry that progress on my pet personal project hasn't been quite rapid enough for your taste; I've been unfortunately busy going to school, holding down a job, seeing my girlfriend, having friends, and generally living my life.
You must understand not everybody lives a life. Personally, I didn't meet many of those, but they exist.
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...