Balder’s Gate Enhanced Edition Fallen Ranger Restore

(This article is valid as of 5/1/2016. It works on Mac and PC, but not iPad.)

I’ve been playing Balder’s Gate: Enhanced Edition (BGEE) since GOG.com had it on sale for $2.99 a few weeks back. I’m not very far along, mostly due to time constraints, but I did manage to have my ranger become fallen.

I don’t know why, and the last few save games he was already fallen, and I didn’t feel like backtracking that far in the game.

A few searches later, and I found that it was relatively easy to restore a ranger from their fallen state via a script, but the instructions were a bit dated and I had to figure some steps on my own, so I thought this guide might be handy for others as well.

First, these instructions are for OS X since I’m running BGEE on OS X. They are likely easy to apply to Windows, and the links I have below mention instructions for Windows.

I do assume that you are comfortable with Terminal, moving around directories, and running command line programs in OS X.

On the Shoulders

First, I took most of the information from the following 2 links. The first references the second, but I included it since it has most of the necessary information:

With these two links you are likely to get everything you need, but they do have some outdated information and reference utilities that either aren’t available anymore or aren’t really necessary.

Also, they assume a little more knowledge of BGEE scripting than I had, so I have augmented some of their instructions with a little more detail.

Setup (Download and Locate)

First, download the WeiDU script compiler. I found it at http://www.weidu.org/~thebigg/. Decompress it to somewhere accessible (I left mine in the Downloads directory - ~/Downloads/WeiDU-Mac).

Next, we need to locate where the script should be placed. The instructions mention to locate the chitin.key file. I guess Spotlight doesn’t search application bundles, but I did find it eventually buried within the app within the app. Go figure.

The final resting place was /Applications/Baldur's Gate Enhanced Edition.app/Contents/Resources/game/Baldur's Gate - Enhanced Edition.app/Contents/Resources. Probably the easiest thing to do is to open a terminal and just cd to that directory.

The last thing for setup is making sure that WeiDU can work with the BGEE installation. The second link talks about doing this:

ln -s ./lang/en_US/dialog.tlk dialog.tlk

Script and Compile

Now come the changes to restore your ranger.

Open your favorite text editor and put in the following script:

IF
  HotKey(D)
THEN
  RESPONSE #100
    RegainRangerHood()
END

Save this into the BGEE directory (I saved it as FallenRanger.baf).

Compile this script into something that BGEE can use:

~/Downloads/WeiDU-Mac/weidu FallenRanger.baf --out scripts --use-lang en_US

Last, we have to fix up some of the output to be digestible by BGEE.

cd scripts
mv FallenRanger.bcs aFall.BS
chmod ugo+x aFall.BS

I don’t know why the scripts have to be marked executable, but they are, so I followed suit. They don’t appear in BGEE unless they are marked as such.

“Gorion Would Be Proud of You”

That magic moment where we again ascend to ranger hood and can charm animals and hate on orcs or giants.

  • Open BGEE and load your saved game file.
  • Turn off Party AI.
  • Click on your character.
  • Select the character screen, choose customize, choose script, and note the currently selected script.
  • Find CUSTOM(AFALL) in the list near the bottom, choose it, choose done, done, and ESC to exit that screen.
  • Select another character.
  • Choose Party AI On.
  • Select your character again. Type ‘D’. You should hear a message similar to “Gorion would be proud of your actions.”
  • Go back and choose the script for your character that was chosen before. (See above instructions.)
  • Save your game.

VoilĂ , you are now a ranger again!


  1. This link also works for fallen paladins too, though the script would be changed to call RegainPaladinHood(). The directions in the remainder of the document remain the same.  ↩