Item stripping is kind of annoying because you have to build a loop - you basically say, “Show me the first item of the inventory. If the item exists, destroy it. Now show me the first item of the inventory. If the item exists, destroy it. If it doesn’t exist because the inventory is empty, stop.” There is a simple script to achieve this goal in the “Newbe FAQ #2” thread on the NWN 1 Scripting forum; I can’t figure out how to link directly to the post, but it is the 11th post on the page and the code for it is in a little box-like window.
You will need to decide whether you should run it from “OnClientEnter” (which can be found in the module properties menu) or as a trigger that the player will spawn into upon entering the game the first time. I think if you run it from “OnClientEnter” you will need to add a variable so that it doesn’t run each time they load up your module. So for example, once the equipment has been stripped once, you set a variable called “vItemStrip” to 1; at the beginning of the script you should check to make sure that vItemStrip isn’t already set to 1. I really can’t remember how OnClientEnter works though, so you should test this out.
I would like to warn you that many players will whinge terribly if their items are stripped & they cannot get them back at the end of the game. While you may be designing your game for a 1st level, new character, many players will prefer to bring higher-level favourite characters into the module & will get quite pissed if they no longer have all their uber l00t. You may want to store a copy of all their equipment in a chest they can access at the end of the module to accommodate this; or you can say “Suck it, whingers” - whichever is your style
For conversation looping, I’m not quite sure what you want to happen - do you want the PC to have options to ask a bunch of questions, then after they ask one, the others are still available for asking? This can be quite frustrating to do - I think the conversation editor is pretty clunky - but basically you need to have all the dialogue nodes you want available to be conditional. The condition would be, “Has the player already asked this question?” - if so, then it shouldn’t appear; if not, then it should appear. Say you had the four questions:
1: “Why?”
2: “Where?”
3: “When?”
4: “How?”
In the conditional (TextAppearsWhen) script attached to the “Why” option, you would put a script like
int StartingConditional();
object oPC = GetPCSpeaker;
"if (GetLocalVarInt("qWhy", oPC) == 0) return TRUE;
return FALSE"
In the ActionsTaken script for the “Why” option, you would put a script like
#include "nw_i0_plot"
void main()
{
object oPC = GetPCSpeaker;
SetLocalInt(oPC, "qWhy", 1);
}
What this means is, when your PC first approaches the NPC, his “qWhy” variable does not yet exist - so it is by default 0. Thus, because his qWhy variable is 0, the text appears and he is allowed to ask why. After he is done asking why, the qWhy variable is set to 1, and the next time he clicks on the NPC, the text does not appear and he is not allowed to ask why. He can still ask where, when, and how, though.
To make the PC have all the options available all the time you will need to make “links” to each of the questions for each point in the dialogue that you want him to have more questions available. I would do it by having a PC dialogue option at the end of each explanation that says, “May I ask another question?” This is only available if at least one of the qWhy, qWhere, qWhen, or qHow variables is not yet set (that is, if he has not asked at least one of the questions). The NPC’s response to this might be, “Feel free.” Then under ‘feel free’, you would make a link back to the PC’s “Why”, “Where”, “When”, and “How” nodes.
I hope this helps - it’s been about a year since I wrote a script for NWN so I’m pretty rusty. That Newbe FAQ is a pretty good resource, and after a bit of experience it should get a little easier.