Jump to content

Recommended Posts

Posted

I wanted to add new party members to camp so I thought the easiest way to do this would be to take a pre-existing *.nss file that has already been complied into a *.ncs file and use it, changing the new party member's name. Well, I can't get it to compile. Even in its original form it won't compile and it gives me the same error reason:

 

"saarebas_spawn_camp.nss - Unable to get the resource information for "gen00pt_party_saarebas" of type "plo" "

 

Here is the *.nss file that is already working as an *.ncs

 

#include "utility_h"
#include "wrappers_h"
#include "party_h"
#include "camp_functions_h"
#include "plt_gen00pt_party_saarebas"
void main()
{
object oFollower = GetObjectByTag("gen00fl_saarebas");
//Follower's position <--- you should change vector below to your desired position in camp
vector vTent = Vector(135.252625, 118.686562, -0.274021);
location lTent = Location(GetArea(GetHero()), vTent, -140.332153320);
command cMoveFollower = CommandJumpToLocation(lTent);
Camp_PlaceFollowersInCamp();
if(GetFollowerState(oFollower) != FOLLOWER_STATE_ACTIVE)
{
SetFollowerState(oFollower, FOLLOWER_STATE_AVAILABLE);
AddCommand(oFollower, cMoveFollower);
WR_SetObjectActive(oFollower, TRUE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_SAAREBAS, SAAREBAS_IN_PARTY, FALSE, FALSE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_SAAREBAS, SAAREBAS_IN_CAMP, TRUE, FALSE);
}
else
{
SetFollowerState(oFollower, FOLLOWER_STATE_AVAILABLE);
AddCommand(oFollower, cMoveFollower);
WR_SetObjectActive(oFollower, TRUE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_SAAREBAS, SAAREBAS_IN_PARTY, FALSE, FALSE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_SAAREBAS, SAAREBAS_IN_CAMP, TRUE, FALSE);
}
}
How do I go about fixing that "plo" error?
Thanks
Posted
did you make a plot called gen00pt_party_saarebas and make the appropriate flags?
Posted

are you certain about that? I've looked for it in my toolset and can't find it anywhere. for making a custom follower you may want to read over this:

social.bioware.com/wiki/datoolset/index.php/Follower_tutorial

Posted

It was in the saarebas mod. Thanks to LadyHonor's links, I created my own "plt_gen00pt_party_doug.plo", but I have as yet been able to get it to compile the "doug_module_core.nss" I created by unsuccessfully following the instructions from the same link.

 

Here's the error I'm getting now:

 

E: 23:56:59 - doug_module_core.nss - doug_module_core.nss(30): Variable defined without type (while compiling var_constants_h.nss)

 

 

#include "wrappers_h"
#include "party_h"
#include "camp_functions_h"
#include "plt_gen00pt_party_doug"
void main()
{
event ev = GetCurrentEvent();
int nEventType = GetEventType(ev);
object oEventCreator = GetEventCreator(ev);
object oHero = GetHero();
object oParty = GetParty(oHero);
int nEventHandled = FALSE;
switch(nEventType)
{
case EVENT_TYPE_MODULE_GETCHARSTAGE:
{
//ONLY DO THIS IF YOU HAVE A STAGE WITH EVERYONE'S CHARACTERS IN IT
SetPartyPickerStage("char_stage_valeria", "partypicker");
break;
}
case EVENT_TYPE_PARTYMEMBER_ADDED:
{
object oFollower = GetEventObject(ev, 0);
if (GetTag(oFollower) == "gen00fl_doug")
{
SetLocalInt(oFollower, CREATURE_REWARD_FLAGS, 0);
WR_SetFollowerState(oFollower, FOLLOWER_STATE_ACTIVE, FALSE);
AddCommand(oFollower, CommandJumpToLocation(GetLocation(GetHero())));
WR_SetPlotFlag(PLT_GEN00PT_PARTY_DOUG, DOUG_IN_PARTY, TRUE, FALSE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_DOUG, DOUG_IN_CAMP, FALSE, FALSE);
}
break;
}
case EVENT_TYPE_PARTYMEMBER_DROPPED:
{
object oFollower = GetEventObject(ev, 0);
if (GetTag(oFollower) == "gen00fl_doug")
{
WR_SetFollowerState(oFollower, FOLLOWER_STATE_AVAILABLE, FALSE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_DOUG, DOUG_IN_CAMP, TRUE, FALSE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_DOUG, DOUG_IN_PARTY, FALSE, FALSE);
}
WR_SetObjectActive(oFollower, FALSE);
break;
}
//The section below returns followers to their positions in camp when world map is closed
case EVENT_TYPE_WORLD_MAP_CLOSED:
{
object oPC = GetHero();
object oFollower = GetObjectByTag("gen00fl_doug");
object oArea = GetArea(oPC);
string sAreaTag = GetTag(oArea);
int nCloseType = GetEventInteger(ev, 0); // 0 for cancel, 1 for travel
if(nCloseType == 0)
{
if (GetLocalInt(oArea, AREA_PARTY_CAMP) == 1)
{
if(GetFollowerState(oFollower) == FOLLOWER_STATE_ACTIVE)
{
//Creature's camp position - should be same as used in spawn in camp script
vector vTent = Vector(138.564f, 111.815f, -1.08586f);
location lTent = Location(GetArea(GetHero()), vTent, 180.0f);
command cMoveFollower = CommandJumpToLocation(lTent);
SetFollowerState(oFollower, FOLLOWER_STATE_AVAILABLE);
AddCommand(oFollower, cMoveFollower);
WR_SetObjectActive(oFollower, TRUE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_DOUG, DOUG_IN_PARTY, FALSE, FALSE);
WR_SetPlotFlag(PLT_GEN00PT_PARTY_DOUG, DOUG_IN_CAMP, TRUE, FALSE);
}
}
}
break;
}
}

}

Posted (edited)

did you make a character stage and did you name it char_stage_valeria? if you didn't make a character stage you need to make one. you also need to use your own tag for it in the script.

 

also, did you name your plo file plt_gen00pt_party_doug.plo? if that is the case, then you need to add plt_ again to every plt_gen00pt_party_doug reference in your script.

 

ex:

 

if your header is:

#include "plt_gen00pt_party_doug"

 

it would need to be changed to this:

#include "plt_plt_gen00pt_party_doug"

 

if your plot flag is this:

WR_SetPlotFlag(PLT_GEN00PT_PARTY_DOUG, DOUG_IN_CAMP, TRUE, FALSE);

 

it would need to be changed to this:

WR_SetPlotFlag(PLT_PLT_GEN00PT_PARTY_DOUG, DOUG_IN_CAMP, TRUE, FALSE);

 

I hope this helps.

Edited by LadyHonor
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...