After reading on the BioWare forums yet more complaints about the game's AI, I decided to create this small package. It modifies the behaviour tab of the Character Screen to add a section where you may specify a custom combat script your party members will run, much like in the old Baldur's Gate game.
This means that if you have a very specific niche character who you want to do certain set things in combat, you can write a custom script for them which will override their standard actions using the HotU override AI script system. To install, simply dump the contents of the .zip file in your /override folder.
There are some caveats to this system:
1) You need to write (or have written) the script; on it's own, this package does nothing. For this, I recommend using the NSSCLC to compile it, or a tool such as NWN2Packer to extract one made in the toolset from a module. You should then place the .ncs file (the compiled script) in your override folder, too.
2) This system is still pretty much a prototype. It uses the HotU override AI script system, so while it will work on PCs (who are not being controlled) and standard companions, there is no guarantee it will work on companions in every module, since they may (but probably won't) use a different AI system.
3) The henchman AI will make companions do certain things, like healing when critical or following the party leader, as a higher priority than whatever you tell them to do. Usually, though, this is probably a good thing.
4) This system modifies the Characterscreen.xml UI file. So, it's NOT compatible with other such systems (I think TonyK's AI is one) - though it wouldn't be too hard to make a compatible version.
5) It is perfectly possible to make "illegal" scripts, such as ones which auto-heal or make your companions invincible; however, if you want to do this sort of thing you could just console yourself up to the max level or whatever. The point of this is to allow you to use a custom AI script, though you can use it how you wish.
A characterscreen.xml file which ought to be compatible with TonyK's AI v2.2. To use, download and install the Scriptable Party as normal, but replace the characterscreen.xml file with this one. You may also need to remove TonyK's version of the file as well.
Puppet Mode *should* turn off everything .. including combat modes. That is why it is called Puppet Mode, so that the player has to do everything! PCs should be puppets that do nothing unless controlled by the player. If any AI is not turned off, then it is no longer Puppet Mode.
I think you have misunderstood how puppet mode works. :)
Lance. _________________________ World of Althéa Blog: Link
OK, sorry it's a tad late, but there's a merged version for TonyK's 2.2. I don't use TonyK's much myself, though, so let me know if it works! ;-) _________________________ In production: The Dragon Dynasty All my other stuff
OK, that's cool. I'll make a merged version for Kaedrin's sometime, but it's good to know it works from the console. _________________________ In production: The Dragon Dynasty All my other stuff
Posted by _MAU_ at 2010-12-15 07:09:21 Voted 10.00 on 12/15/10
I had a brief test run and puppet mode does indeed turn your custom scripts off. The biggest problem I have with this game's AI is that puppet mode isn't quite as puppet-like as it should, namely it turns off combat modes for some reason (leave it to Obsidian to f**k up something as simple as friggin puppet mode). I'll do some more testing to see if I can make a better puppet script like you suggested.
Btw you're correct that Tony K's pack has a character screen file that conflicts with this, but you can just run your gui_fredai_change script with the console to bring up the custom script selection window so it's not a big deal.
I can see huge potential for this thing so thanks for sharing.
I'm not sure how puppet mode works, script-wise, but I expect it might turn off the script. However, if you assign a script to someone, you shouldn't need them to be in puppet mode, because that script can tell them to do nothing if you want (and while being actively controlled, the script shouldn't run anyway and they'll be getting direct orders). In theory, anyway. _________________________ In production: The Dragon Dynasty All my other stuff
Posted by _MAU_ at 2010-12-15 04:30:30 Voted 10.00 on 12/15/10
Is there a way to make the assigned script run even if the char is in puppet mode?
Posted by nicethugbert at 2010-12-15 00:43:02 Voted 10.00 on 12/15/10
10 - A Masterpiece, Genuinely Groundbreaking 9 - Outstanding, a Must Have 8 - Excellent, Recommended to Anyone 7 - Very Good, Deserves a Look 6 - Good, Qualified Recommendation 5 - Fair, Solid yet Unremarkable 4 - Some Merit, Requires Improvements 3 - Poor Execution, Potential Unrealized 2 - Very Little Appeal 1 - Not Recommended to Anyone