Jump to content

SCSII on Linux


grodrigues

Recommended Posts

As far as I am aware, SCSII does not support Linux and I vaguely remember reading somewhere that the author stated that he would not add Linux support. Assuming I am not mistaken, here are my questions:

 

1. Why is it difficult to add Linux support to SCSII (and while I am at it, SCS and Wheels of Prophecy). Not knowing anything about BG2 modding, I do know that there is a weidu stack for Linux, (some) mods out there support Linux (e.g. IR and SR) and that SCSII offers Mac OS X support, which after all is an OS built on top of a Unix layer. To my ignorant eye, all this makes the situation somewhat puzzling.

 

2. Assuming I went ahead and tried to install SCSII on BG2 via Wine (Wheels also and SCS if I can manage to get BGT-Weidu to work, a big if), what sort of problems might I run into? Anyone out there, tried to do this?

 

The reason I am asking this is, surprise surprise, that I only have access to a Linux box (and installing Windows is not an option, both on technical grounds and personal preference) and am looking nostalgic and dewy-eyed to a stack of CDs containing the whole BG Saga. But after having played SCSII a couple of years ago and having had a blast (btw, congrats to the author for the superb work), I just cannot bring myself to play BG with the retarded vanilla AI -- no challenge, except in some choice battles where the designers have beefed the opponents with cheese (not that I am against cheese, I myself use(d) some variations of it).

Link to comment
As far as I am aware, SCSII does not support Linux and I vaguely remember reading somewhere that the author stated that he would not add Linux support. Assuming I am not mistaken

You're not... except that "would not add Linux support" is a bit strong. "Has no plans" is probably better.

 

As for why - basically because I don't really know what the issues are. I've never really been clear as to what's needed to make SCSII run on Linux (lowercasing of various sorts, I think, but there may be more) and since I don't know anything whatsoever about Linux and don't have convenient access to a Linux system, it's just not a priority for me to spend the time required to sort it out (especially as this seems to affect only a very small minority of players).

 

If someone were to do the donkey work of making SCSII linux-compatible, gave me detailed instructions on how to replicate their changes on my local copy (giving me their modified copy isn't an option), and explained exactly what I'd have to do/avoid to maintain linux compatibility going forward, I'd be happy to support it. (But I've been making that kind of offer for the last three years with no takers.)

 

Incidentally, SCSII doesn't seem to work on Wine either.

Link to comment
If someone were to do the donkey work of making SCSII linux-compatible, gave me detailed instructions on how to replicate their changes on my local copy (giving me their modified copy isn't an option), and explained exactly what I'd have to do/avoid to maintain linux compatibility going forward, I'd be happy to support it. (But I've been making that kind of offer for the last three years with no takers.)

 

Well, unfortunanately there is not much I can do to help, besides offering myself as a testing guinea pig. Nevertheless, let me mention that there is some info available at:

 

http://forums.gibberlings3.net/index.php?showtopic=7573

 

Having read the whole thread, here is a short summary of it that should get you started (providing you are actually interested and have a bit of free time, that most precious of commodities). Since you already have a Mac OS X package *start from it*. Mac OS X is under the hood a unix os with all the basic unix toolset, including the shells (e.g. bash). If you are using some scripting language (e.g. perl, python, etc.) compatibility should be even easier to achieve as they are platform-independent and available in virtually any Linux installation.

 

1. Lowercase everything.

 

Reason: The Linux filesystem is case-sensitive.

 

2. Remove WeiDU, sox and tisunpack executables from the package.

 

In a Linux install, the executables (other than one-shot use executables) are put in standard directories such as /usr/bin dir.

 

3. Open .sh scrips and lowercase all filenames.

 

Note: from where I got this, there is this parenthetic remark: "there's no need to do that in tp2s, luckily". Make of it what you will.

 

4. Remove all paths to old sox and tisunpack executables (e.g. "mymod/bin/tisunpack mymod/tiz/foo.tiz override/foo.tis" will become "tisunpack mymod/tiz/foo.tiz override/foo.tis". All program names go lowercase, except for WeiDU, which must be WeiDU.

 

Note: Linux users are on average more technically savvy, so appending instructions to the readme that this or that application is needed is not much of a problem. It usually just means typing "sudo apt-get install <appname>" in a console.

 

5. Don't use .rar files. If you can, use .tar.gz; otherwise, use .zip.

 

Note: technically, .rar can be used because there are unrar packages (at least in Ubuntu), but they are not free in the usual open source meaning of the word so they are not kosher.

 

6. To avoid lots of problems, you should keep to this character set for file names:

 

a-z0-9#!_-

 

Note: there is then the following parenthetic remark: "also # and ! have special meanings, but they are ubiquitous and the problems are slightly easier to solve than with ' or with spaces". See point 7 below for more.

 

7. If the file names used contain a character not in the [a-zA-z0-9_-] set, it needs to be escaped in either of the following fashions:

 

md music\mxm#am

 

should become either

 

mkdir music/mxm\#am

 

or

 

mkdir 'music/mxm#am'

 

8. Also, you need to do the obvious command changes (which you'd have already done on the Mac OS X version):

 

copy -> cp

move -> mv

md -> mkdir

rd -> rm -r

del -> rm

 

sox, tisunpack and oggdec are fine as such (except that they don't need the path, etc).

 

Note: If I am not mistaken, Mac OS X uses bash for its shell; if that is the case, then you are all set as bash is also the standard shell for ubuntu and most other linux installations.

 

There are lots of info in the thread I linked to above. I can help you with bash scripting if needed, although since you already provide a Mac version, this is probably not necessary. There are also some threads about porting to Mac OS X (which you probably know already, but in case you don't):

 

http://forums.gibberlings3.net/index.php?showtopic=628

http://forums.gibberlings3.net/index.php?showtopic=792

 

Many advice on it should apply verbatim to linux. See also:

 

http://forums.gibberlings3.net/index.php?showtopic=12153

 

where you can find the following advice: "Or, just download Amber and compare the Linux version with both Mac and Windows versions, since it contains all tasks that require thought, namely oggdec, tisunpack and snd2acm."

 

If there is anything I can do to help (e.g. pickup a copy of the source, implement the changes and test them in my local BG2 install), count me in.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...