As the title says, it looks like the OnHeartbeat script doesn’t fire for familiars and animal companions. I’m quite sure the script itself works, since the SendMessageToPC information appears when I place it on a henchman.
Is there a variable somewhere that prevents heartbeat scripts from running on summoned creatures? (I’m not talking about the GetAILevel() call from the standard heartbeat script, since I wrote a specific one).
heartbeat event fires ok for Pluthon (familiar) and Fih (animal companion) here [SoZ]
( note that the Companion HB script ‘gb_comp_heart’ calls ExecuteScript(“gb_assoc_heart”, oSelf); )
but when Pluthon (familiar) is player-controlled the HB does not fire, which is expected (several events don’t fire for player-controlled creatures incl/ HB)
i cant think of any switch that controls this, but maybe look at Nwn2_Scriptsets.2da
Thanks a lot @kevL_s, that was it!
By the way, it looks like the last column in hen_familiars.2da and hen_companions.2da (which is supposed to allow certain familiars/animal companions if the character has the feat indicated there) only works for -1 (no feat required) and 2168 (dinosaur companion).
Hi,
For the record, (pretty much as KevL says) …
The default scripts for familiars and summons are replaced when used by the player. You can have even greater control of this via the Nwn2_Scriptsets.2da by adding your own sets and calling these to work on the creatures instead. This is how I reworked quite a few of my own AI for different beings.
Thanks, Lance.
Example: How mine differ …
Using SetEventHandler
(if only one script needs to be changed) or SetCreatureScriptsToSet
after spawning the creature I suppose?
Yes, That’s what I do …
Lance.