PDA

View Full Version : Creating New Banter?


Holty1-5
05-04-2010, 03:07 PM
Hey Guys Holty here just asking a question, Im yet to try this myself as i dont really understand how to set it up LOL

Im asking if any one Knows how to Set up new Banter for the Party members. I did i bit of Digging in the Source Scripts for K1 and found this scripts

(The Banter im Using as a Example is Jolee's and Bastila's)
Heres the Script to Run on Node (Called k_hbanter10x)
and here is the Script
#include "k_inc_utility"

void main()
{
SetGlobalBoolean("G_Banter10",TRUE);
}

Then theres the Script that Determines if Node is Avalible

//:: k_hbanter10
/*
Checks conditions for banter 10(Jolee and Bastila)
*/
//:: Created By:
//:: Copyright (c) 2002 Bioware Corp.

#include "k_inc_debug"
int StartingConditional()
{
int iResult;

iResult = GetGlobalBoolean("G_Banter10")==FALSE &&
IsNPCPartyMember(NPC_JOLEE)==TRUE &&
IsNPCPartyMember(NPC_BASTILA)==TRUE;
return iResult;
}

Is there a way to Create New Banter say for a Custom Party Member?
?

Holty1-5
05-04-2010, 04:13 PM
I assumed that i may have not put this Lol but how would 1 go about doing this?
Doing somthing Like this

void main()
{
SetGlobalBoolean("G_Banter22",TRUE);
}



iResult = GetGlobalBoolean("G_Banter22")==FALSE &&
IsNPCPartyMember(Tag_of_NPC)==TRUE &&
IsNPCPartyMember(NPC_BASTILA)==TRUE;
return iResult;
}



would that Be what i put at the start of the Dialog Line or somthing Lol

VarsityPuppet
05-04-2010, 04:39 PM
Argh I see I've already enticed your curiosity...

Well, the scripts you are citing don't actually start up any dialogs...

You have the conditional script and... and an adjusting script.

Notice how the conditional script checks to see if GBanter22 is false? Well the first script you posted will fire after that one, ensuring that the dialog node is never accessed again when party banter is triggered... which leads me to my next point.


This is the script you want to modify to add new party member dialogs.

As far as what to do, that's a bit of a complicated question to answer... it depends on what exactly YOU'RE trying to do.

//:: k_bant_trig
/*
Default script for banter triggers
*/
//:: Created By: Drew Karpyshyn
//:: Copyright (c) 2002 Bioware Corp.

#include "k_inc_debug"
#include "k_inc_utility"
void main()
{
///check for hostiles in range

object oPC = GetEnteringObject();
object oHostile = GetNearestCreature(CREATURE_TYPE_REPUTATION, REPUTATION_TYPE_ENEMY, oPC, 1, CREATURE_TYPE_PERCEPTION, PERCEPTION_SEEN);

if(oPC==GetPartyMemberByIndex(0) &&(!GetIsObjectValid(oHostile) || (GetIsObjectValid(oHostile) && GetDistanceBetween(oPC, oHostile) > 40.0)))
{



if (GetEnteringObject()==GetPartyMemberByIndex(0) && UT_GetTalkedToBooleanFlag(OBJECT_SELF) == FALSE)
{
/* Db_PostString("Banter Trigger");
*/

//Check for banter 1
if (GetGlobalBoolean("G_Banter1")==FALSE &&
IsNPCPartyMember(NPC_CARTH)==TRUE &&
IsNPCPartyMember(NPC_BASTILA)==TRUE &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 8.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 8.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 8.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 2
if (GetGlobalBoolean("G_Banter2")==FALSE &&
IsNPCPartyMember(NPC_CARTH)==TRUE &&
IsNPCPartyMember(NPC_BASTILA)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 3
if (GetGlobalBoolean("G_Banter3")==FALSE &&
IsNPCPartyMember(NPC_CARTH)==TRUE &&
IsNPCPartyMember(NPC_MISSION)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 4
if (GetGlobalBoolean("G_Banter4")==FALSE &&
IsNPCPartyMember(NPC_CARTH)==TRUE &&
IsNPCPartyMember(NPC_MISSION)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 5

if (GetGlobalBoolean("G_Banter5")==FALSE &&
IsNPCPartyMember(NPC_CARTH)==TRUE &&
IsNPCPartyMember(NPC_CANDEROUS)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 6
if (GetGlobalBoolean("G_Banter6")==FALSE &&
IsNPCPartyMember(NPC_CANDEROUS)==TRUE &&
IsNPCPartyMember(NPC_BASTILA)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 7
if (GetGlobalBoolean("G_Banter7")==FALSE &&
IsNPCPartyMember(NPC_MISSION)==TRUE &&
IsNPCPartyMember(NPC_ZAALBAR)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 8
if (GetGlobalBoolean("G_Banter8")==FALSE &&
IsNPCPartyMember(NPC_MISSION)==TRUE &&
IsNPCPartyMember(NPC_ZAALBAR)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 9
if (GetGlobalBoolean("G_Banter9")==FALSE &&
IsNPCPartyMember(NPC_MISSION)==TRUE &&
IsNPCPartyMember(NPC_BASTILA)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 10
if (GetGlobalBoolean("G_Banter10")==FALSE &&
GetGlobalNumber("K_CURRENT_PLANET")!= 20 &&
IsNPCPartyMember(NPC_JOLEE)==TRUE &&
IsNPCPartyMember(NPC_BASTILA)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 10.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 10.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}

//Check for banter 11
if (GetGlobalBoolean("G_Banter11")==FALSE &&
IsNPCPartyMember(NPC_CARTH)==TRUE &&
IsNPCPartyMember(NPC_JOLEE)==TRUE&&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(1)) <= 5.0 &&
GetDistanceBetween(GetPartyMemberByIndex(0), GetPartyMemberByIndex(2)) <= 5.0 &&
GetDistanceBetween(GetPartyMemberByIndex(1), GetPartyMemberByIndex(2)) <= 5.0)
{
AssignCommand(GetPartyMemberByIndex(0),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(1),ClearAllAct ions());
AssignCommand(GetPartyMemberByIndex(2),ClearAllAct ions());
UT_SetTalkedToBooleanFlag(OBJECT_SELF);
ActionStartConversation(GetFirstPC(),"Banter");
}



}
}
}