Modding Familiar Assignment
[Deleted User]
Posts: 0
So, one of the new externalizations in 1.2 is FAMILIAR.2da, which appears to control the assignment of familiars by alignment. However, exporting said 2da via Near Infinity and editing it does not appear to have any effect on the game. Is there a simple way to change familiar assignment that I'm missing, or does this require nitty-gritty modding?
EDIT: Updating with confirmed working and not working.
Works:
Doesn't work:
EDIT: Updating with confirmed working and not working.
Works:
Lawful Good: Ferret
Neutral Good: Rabbit, Dust Mephit
True Neutral: Pseudo Dragon
Chaotic Neutral: Fairy Dragon
Neutral Good: Rabbit, Dust Mephit
True Neutral: Pseudo Dragon
Chaotic Neutral: Fairy Dragon
Doesn't work:
Neutral Good: Fairy Dragon, Cat, Ferret, Imp, Quasit
Chaotic Good: Ferret
Chaotic Good: Ferret
Post edited by [Deleted User] on
0
Comments
I'll try and replicate your issue.
I downloaded near infinity and DLTCEP. With NI I couldn't find the file and with DLTCEP I had no idea how to do the set up right for the EE version? :x Maybe I downloaded the wrong one or.. I have no idea. Is there a thread that someone can point me to? or some easy pointers?
To setup DLTCEP I used this tutorial, telling it I was using BG1/TOTC.
What does work for me: Neutral Good and Dust Mespit and Rabbit.
There's a pattern that seems to be emerging here: Any Familiar combination works on the initial summoning, but when it goes into your pack the familiar flips to match your alignment on the Law/Chaos axis while staying within the same type on the Good/Evil axis, and then the mismatch between your inventory and what you're supposed to have causes a glitch when you try to release. If this is the case, any lawful character should be able to use a Pseudodragon, Ferret, or Imp without problems, and Neutral a PD, Rabbit, or Dust Mephit, and any Chaotic a Fairy Dragon, Cat, or Quasit.
@Dee, with this information, do you think this problem can be tracked down and fixed?
While the summoning of the familiar is indeed controlled by the 2da, their behaviour is mostly controlled by their dialog files. There are only 3 dialog files for all 8 familiars: good casters get dragons (famil1.dlg), neutral casters get furry creatures (famil3.dlg), and evil casters get impish creatures (famil2.dlg).
Since the dialog files are combined for each type, the text and options are all controlled by the caster's alignment. So when you talk to a ferret as a chaotic good character, you're actually getting the dialog for a cat (it only checks if you're chaotic), so you get the cat familiar item.
And the reason why the familiar "disappears" after using the incorrect item is because it sets the wrong global variable. The way "releasing" a familiar works is with the item setting a global variable to 1, and when the game detects it, it "moves" the familiar to your caster. But since the cat familiar never existed (hasn't been added to the GAM file as a global object), nothing happens.
So to truly make a make a working familiar mod, you need to change the 2DA, change the DLG entry in the CRE file, make a custom DLG file (or just split the existing ones into 8 separate ones, removing all alignment checks), and you should be good to go.
If it's an entirely new familiar, you also need custom CRE, DLG, and ITM files, and extend baldur.bcs to include handling for your new familiar.
Sadly, it's not just a matter of editing a 2DA, but it's still a fairly painless procedure overall.