Henchman levelling problem

Hi all. I’m about to get started on my third module. This one is going to have a HotU-style henchman. I’m using the HotU script set and conversation as described on this page:

So far so good, except that the “I’d like you to level up” line doesn’t appear in the conversation, even when the requirements for it (the henchman is at least two levels lower than the PC and isn’t currently busy) are met.

If the PC is higher than level 1 when they first hire the henchman (which they will be) then the henchman begins at the same level as the PC, which is fine. But I hire the henchman, then level up the PC from 1 to 6 (starting level for this module) and then speak to the henchman again I should get the option to have them level up, but it’s not appearing.

Does anyone know why this is or how to resolve it?

There are two possible solutions:

  1. You create a dialogue option to level up the henchi. This isn’t there by default. There are variants, which allow the player to decide in which class the henchi should level, but I found this always a bit tedious …
  2. You made a special “OnPlayerLevelUp” script. Include “X0_I0_HENCHMAN” and read the inscript instructions. The henchi can leveled up with a simple command.
  1. That’s the thing, the dialogue option is there, I can see it in the toolset. It just doesn’t appear in game when it should.

  2. I have extremely limited ability to use the scripting language (I rely on Lilac Soul and scripts available online for almost everything) but I may have to give this a try.

Thanks for your suggestions, appreciated.

If the dialogue line doesn’t show up, then maybe it’s conditional? Something like this?

To level the NPC up I have the following in Action Taken:

#include “x0_i0_henchman”

void main()
object oPC = GetMaster(OBJECT_SELF);
int lv=GetHitDice(oPC);
LevelHenchmanUpTo(OBJECT_SELF, lv);

Thanks, I’ll try these out.

The “please level up” line is conditional, yes, but it seems to not show up in game even if the conditions are met, that’s the puzzling thing. That’s why I posted the link to the henchmen guide, as I assume lots of people have used that system and might have run into the same problem with its generic henchman conversation.

I’m not sure about this but it could be you need to make copys of your henchmen in every level you want them to be leveled up to… Example: you must have 10 versions of your henchman in levels 1-10 if you want them to be able to level up to 10th level in your mod.

As I understand it that’s the pre-HotU method, and with the script set I’m using it shouldn’t be necessary as these scripts use a function that levels up the same NPC according to their class package.

1 Like


Can you post the script that’s not working?

It should look like @Mmat 's example (which you could use instead).

1 Like

Wish I’d have known this information when I made my last two modules because all the toolset manuals I had read didn’t mention that I could use a script to level up the henchmen- sounds alot easier than making multiple copies of the same henchman. .

Leveling up instead of multiple copies comes with XP1. On the downside, to better up the equipment of the henchi on level up (as in the OC), you need some extra scripting.

… or design the campaign so that there’s enough treasure to pay for better equipment at merchants - there are guidelines in the DM handbooks…

I used the henchman x2 script set(which I thought was the most up to date) and I’m pretty sure none of my modules henchmen will level up. Maybe I missed something?

Analyse this. Its the simplest way for a level up szenario. Have especially a look on the scripts in the module properties and the scripts in the Henchman properties
LevelUb.zip (12.5 KB)


@Mmat Thank you for the level up mod. If someone would write a new nwn1 guidebook for 1.69 and another for EE that would be awesome! Because all the guide books on the NWN university page I read seem to have been made a long time ago and have information that needs to be updated (but I have learned alot from those old guidebooks).

The script is the default Bioware script x0_d2_hen_canlvl

Looks like this:

#include "x0_i0_henchman"

int StartingConditional()
    return GetCanLevelUp(GetPCSpeaker());
1 Like

The Lexicon description of GetCanLevelUp():

The alternative script posted by @Mmat above should work fine.

1 Like

My script above is more a less the same of what you’ll find somewhere in an include of bio. I don’t like includes and go the direct way, if possible.

However you should test the levelup with my scripts and your henchi. There are a few instances, where automatic levelup will fail (see the paladin in “The Rogues of Quinn 4”). I don’t know why, but I got the message “Levelup failed in class ”. So, a failing levelup could be a problem with a specific NPC.

Ah, by the way, this is what you get if you call the function in your script. The speakstring is funny (doubled negation), but returns always false.

int GetCanLevelUp(object oPC, object oHench = OBJECT_SELF)
// SpeakString(“This function no longer does nothing. Should not be called”);
return FALSE;

The function that actually does the work is LevelUpHenchman.

That link to the Lexicon explains how the function should be used.

In a nutshell, the henchman (or PC or creature - works for all) needs to start at level 1 in a single class, with an unmodified package (no additional spells / feats / whatever added in the toolset).

1 Like

I have had no problems adding feats and skill. What you should not do is substract them. In fact I have build up New packages for levelling up encounter Creatures.

@Proleric Where do you put the level up script- into which script slot? Also the link info ends with: “For custom NPCs and henchmen leave them at level 1 and level them when they are spawned.” How do you level up henchmen when they spawn??