Modifying the Cleric Magic Domain


Would it be possible to easily modify the Clerical Magic domain so it could include summoning a familiar? I want to be able to summon a familiar but I do not want to have to modify the Dialog.tlk file. Just modifying domains.2da file was not good enough.

Ultimately I am trying to simulate the “Animal Sib” basic class since I do not know how to create it. I can come close with Cleric by modifying the Animal domain and the Magic domain and manually assigning feats as I level up, but I cannot get the Summon Familiar feat to work.



It’s not possible without modifying the script for the summon familiar feat. Besides, the default familiar selection screen wouldn’t show up for any other class then a wizard and a sorcerer (hard coded). But you can assign the default familiar for clerics in the script or write your custom GUI. Or you can modify character Ros/Bic/Ifo file directly with GFF editor.



Where is the script located? I can work around the familiar selection screen issue.



This was a topic on the Order of the Stick Forums some time back:

Short of taking some levels as an arcane caster, I don’t see any options in 3.5 for a cleric to get a familiar. That said, some of the better modders here would probably be able to set up a sphere or diety that granted such a boon.



I actually have used the GFF editor to assign the familiar name and type. I also have the summon familiar button in the character’s toolbar. But when she gestures to summon the familiar, nothing appears.



Yeah there is a good amount of scripting that controls what familiar you get, its levels, etc.



Classes.2da has a col “HasFamiliar” 0/1 – not sure what it’s for, might be for character creation purposes only.

but my overall feeling is that you’d likely be banging yer head against hardcode …

My impression is that there is one hardcoded function, SummonFamiliar()
and that it accesses 2 fields on a character-object: “FamiliarType” and “FamiliarName”
then it uses the type to reference Hen_Familiar.2da

but if those are lined up and nothing happens then something hardcoded is in the way,

ps. You could try changing “HasFamiliar” to “1” in Classes.2da, and try creating a new character … make sure said character has “FamiliarType” and “FamiliarName” in its (proper) gff, and grant it the SummonFamiliar feat,


1 Like


The classes.2da file has a domain column used to indicate if a class has domains. Can a custom basic class be assigned domains?
And if so, what requirements must it meet?



It seems you can assign domains to custom basic classes have them come up. It is yet to be seen how functional they are.

There is a script which is used to identify “Nature” classes - meaning Druid or Ranger. Where are these classes declared and how can I associate Animal Sib as a Nature class?

This may be an issue with Animal Companion summoning.



script? what script




It is located in the file.

//:: Check Nature Class
//:: NW_D2_Nature
//:: Copyright © 2001 Bioware Corp.
Checks to see if the PC is a Ranger,
or Druid
//:: Created By: Preston Watamaniuk
//:: Created On: Sept 18, 2001

int StartingConditional()
return GetLevelByClass(CLASS_TYPE_DRUID, GetPCSpeaker()) + GetLevelByClass(CLASS_TYPE_RANGER, GetPCSpeaker());

I tried to modify it for CLASS_TYPE_ANIMALSIB but it would not compile. It said “Variable Defined Without Type”.

I have actually completed the Animal Sib class with all of the supporting files. Feat assignment works fine, spell assignments are great, skills are configured. The familiar summons just fine and levels up. Entries were made to Dialog.tlk (thanks a lot for your help with that by the way). All of the package files are complete and the Basic class is readily selectable. But without an Animal Companion, it is like an anchor without a boat! It is a very Marvelous DUD!!!

The spell system is a bit glitchy in that it shows all of the spells and feat spells for selection, but with the pack pre-configured all you have to do is click recommend and it automatically gives you the exact spells you are supposed to have for animal sib. It works at bit like sorcerer for spell-casting but is wisdom based with more spells known.



That is checking defined constants (in this case very likely the classes.2da row number of druid and ranger, just need it to also check the row for your nature class.



the script looks like a holdover from Nwn1, what became in Nwn2 a straightforward gc_ dialog script …

so I doubt it’s used anywhere in Nwn2, unless someone dug it up and plugged it into a dialog somewhere.

note: the CLASS_TYPE_* variables are constants defined in NwScript.nss – they are actually the row IDs in Classes.2da. That is, they are integers.

if you’re scripting and you want one for AnimalSib:

const int CLASS_TYPE_ANIMALSIB = x; // change ‘x’ to the value of the AnimalSib row in Classes.2da

( or use the (integer)rowId directly, although doing it this way is using what’s called a magic number for obvious reasons … eg. wtf is “42” )

re. the Animal Companion
don’t forget the col in Classes.2da “HasAnimalCompanion” + grant the feat Animal Companion

… Kaedrin seems to have given Animal Companions to his classes Verdant Guardian and Lion of Talisid. And i seem to recall someone figured out how to give the Paladin and/or Cleric classes a companion also … so i figure it’s possible



Both Verdant Guardian and Lion of Talisid are prestige classes. The Cleric can have an animal companion from the Animal domain but it only levels up with Cleric levels. Can a basic class use featmapping with another basic class? Could I for example take one level of Druid and then have my Animal Sib featmap to the Druid to level up the animal companion as Animal Sib progressed?



I wish I could send you a copy of my alpha files to look them over. It actually creates the animal companion entries in the bic file for the character if you accept the default configuration. I tried to approach the animal companion from a couple of different directions. My problem is that I need and AnimalSib_Companion feat and I already feel like my head is going to explode. :thinking:



sure. Zip everything up you think i need and upload them to the cloud. I’d like to have a look …

i mean yes … just doing the Artisan had me going batty at times, and the As is 10x as complicated



Sorry but upload to the cloud means nothing to me. I do not currently know of any way to send it and the zip is about 4.2 MB. If you know of a place please let me know.



no registration req’d. I tried it with a textfile and it downloaded wonderfully. go Poland  :)

just remember to copy the link it presents after upload. (or we’ll never find it ever again and you’d have to re-upload). Then paste the link either here or PM it to me …

cloud=Internet file storage (basically)



Great!!! Here it is. Be warned, I shamelessly pirated your two tga files from Artisan.

File was uploaded successfuly on server.
You can download it from address:



got it – 4+mb w/ 21 files

isn’t the internet wonderful