Jump to content

sorcerer/monk multiclass mod


lynx

Recommended Posts

I got bored of fixing spellcasting, so here's a one-day mod that makes it possible to play a sorcerer/monk multiclass in gemrb. :)

 

It has mage race and item restrictions, monk avatar, combined starting gear in tob, no detecting traps (useless) and a custom actionbar.

 

I didn't bother with dualclassing support, since it requires some more table adjustment.

 

sorcerer_monk.jpg

sorcerer_monk2.jpg

 

You can read the details here.

 

Gemrb bugs were hurt in the process. :D

 

And yes, you'll have to wait until the next release in about a month.

Link to comment
Guest Vorgen

I tried following the instructions on the wiki, and there was a small problem with this line:

 

python extend2da.py gemrb/override/bg2/skills.2da APPEND_COL 'SORCERER_MONK 10 5 -1 -1 -1 1 1 -1 -1'

 

I got the error saying that there should be 12 values, but only 10 were given. I inserted two more "-1"s at the end and the command completed successfully. However, I do not know what effect inserting two more "-1"s had. Am I going to have kobold-tracking skills now or something?

 

Also, after that, I got hung up on trying to install the linux version of weidu so I haven't finished following the instructions and setting this up. I just thought I'd mention that first error.

Link to comment

ups, that should be:

python extend2da.py gemrb/override/bg2/skills.2da APPEND_COL '$ $ SORCERER_MONK 10 5 -1 -1 -1 1 1 -1 -1'

 

Better redo this part. What problems do you have with weidu? You don't even have to install it anywhere, but it needs to be run from the game dir (i think it also wants to be untarred there).

Link to comment
Untested, but I could imagine only the TRA usage to be wrong.

You can't sneak them into the middle of another string directly like you do here.

 

APPEND ~classes.2da~ ~SORCERER_MONK @1 @2 @3 * 786432 21 * 0x40000 -1 1 1 1 0 0 2 0~

 

Since this is a .2da, you probably want the @1, @2, and @3 positions filled with dialog.tlk references to those strings in your .tra file (rather than the actual contents of @1, @2, and @3).

 

One option is to add a placeholder to the .2da and use REPLACE to swap the placeholder with a string reference for your traified string. The REPLACE command loads the string referenced in the .tra, adds it to dialog.tlk, and swaps the placeholder for the reference to this newly-added string.

 

APPEND ~classes.2da~ ~SORCERER_MONK PLACEHOLDER_1 PLACEHOLDER_2 PLACEHOLDER_3 * 786432 21 * 0x40000 -1 1 1 1 0 0 2 0~
COPY_EXISTING ~classes.2da~ ~override~
 REPLACE ~PLACEHOLDER_1~ @1
 REPLACE ~PLACEHOLDER_2~ @2
 REPLACE ~PLACEHOLDER_3~ @3

 

An alternative method is to add the string to dialog.tlk first, storing the reference to the string in a variable, and directly substitute the contents of the variable into the string before it is appended to the .2da. Prior to the addition of the RESOLVE_STR_REF command, this method was much uglier. Now it is probably the most elegant solution.

OUTER_SET tra_1 = RESOLVE_STR_REF (@1)
OUTER_SET tra_2 = RESOLVE_STR_REF (@2)
OUTER_SET tra_3 = RESOLVE_STR_REF (@3)

APPEND ~classes.2da~ ~SORCERER_MONK %tra_1% %tra_2% %tra_3% * 786432 21 * 0x40000 -1 1 1 1 0 0 2 0~

Link to comment

Thanks, too much wishful thinking on my part. ;) This is exactly what a shell script did before.

 

I'll go incorporated your change now, but you've also reminded me I forgot an important thing and thus a weidu-only approacg is not yet possible. While gemrb now can read its own overriden tables from the game dir too, weidu can't know where to grab the original files from.

Link to comment

I've installed Sorcerer/Monk and it doesn't seem to be showing up in the multiclass selection screen.

I tried to install it initially on Megamodded BG2 game, and then tried it on a fresh install of BG2, but neither installs worked.

Link to comment

Archived

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

×
×
  • Create New...