LucasForums

LucasForums (http://www.lucasforums.com/index.php)
-   Holowan Laboratories (http://www.lucasforums.com/forumdisplay.php?f=324)
-   -   Recruitng NPC's (http://www.lucasforums.com/showthread.php?t=210371)

Fallen Guardian 06-30-2012 11:36 PM

Recruitng NPC's
 
So, in BOS:SR when you get Kobayashi in the party he replaces Canderous temporarily. However, once Kobayashi leaves the party Canderous comes back like he'd never left. What I want to know, is how I could achieve that. Thoughts?

harIII 07-01-2012 08:32 AM

If you tell me what module you recruit Kobayashi I think I may be able to figure it out. As far as I know I'm wondering if the game will remember what Canderous' attributes are when he was kicked out which will explain why they are the same when he comes back. I'm not too sure because I've never had a companion return before.

Hassat Hunter 07-01-2012 08:39 AM

Yeah, it's the same NPC. So that's how the stats are the same.
Just re-add using the exact same tag and in the module where you left him (spawning a new (which needs to be done in another module) will undo it after all).

JCarter426 07-01-2012 12:20 PM

Too recruit an NPC by object - in other words, to add a specific creature in the game world to your party:
Code:

AddAvailableNPCByObject( int nNPC, object oCreature );
The engine is capable of saving object data, of course - but everything except the player and party are restricted to whatever module they were spawned in. As soon as Canderous exits your party, he's no different; he was spawned in that module, so he has to stay in that module. As long as he isn't destroyed, his information is saved and you can get him back by going to that module and recruiting him with the above script.

Of course, if you are doing it in K2, you can just add them to the puppet table and not have to worry about all that; if you add them to the table but don't assign them as a puppet, their information is stored from module to module even if they aren't present.
Code:

AddAvailablePUPByObject( int nPUP, object oPuppet );
nPUP must be 0, 1, or 2; the remote takes up slot 0.

Hassat Hunter 07-01-2012 01:29 PM

You could get around the module limitation technically by first going to another module, spawning him/her there and THEN removing them from the party.
Handy if you want that party member added for just a map, say, cleaning a base.

So, for example;
Talking to the new party member.
Getting taken to a new module where to use him, which is a one-shot (say, end of Taris).
Spawn, remove, add new NPC as member, leaving the old member behind.
Add to the .dlg that when the stuff is done, the new is removed and he/she re-added and re-warp somewhere else.

Of course, that's just one example, more could be done with that...

Fallen Guardian 07-02-2012 12:42 AM

Quote:

Originally Posted by JCarter426 (Post 2815032)
Too recruit an NPC by object - in other words, to add a specific creature in the game world to your party:
Code:

AddAvailableNPCByObject( int nNPC, object oCreature );
The engine is capable of saving object data, of course - but everything except the player and party are restricted to whatever module they were spawned in. As soon as Canderous exits your party, he's no different; he was spawned in that module, so he has to stay in that module. As long as he isn't destroyed, his information is saved and you can get him back by going to that module and recruiting him with the above script.

Of course, if you are doing it in K2, you can just add them to the puppet table and not have to worry about all that; if you add them to the table but don't assign them as a puppet, their information is stored from module to module even if they aren't present.
Code:

AddAvailablePUPByObject( int nPUP, object oPuppet );
nPUP must be 0, 1, or 2; the remote takes up slot 0.

So if I added the NPC as a puppet, it wouldn't spawn on the Hawk correct? And I could just use a normal recruit function whenever I wanted them back?

Quote:

Originally Posted by Hassat Hunter (Post 2815038)
You could get around the module limitation technically by first going to another module, spawning him/her there and THEN removing them from the party.
Handy if you want that party member added for just a map, say, cleaning a base.

So, for example;
Talking to the new party member.
Getting taken to a new module where to use him, which is a one-shot (say, end of Taris).
Spawn, remove, add new NPC as member, leaving the old member behind.
Add to the .dlg that when the stuff is done, the new is removed and he/she re-added and re-warp somewhere else.

Of course, that's just one example, more could be done with that...

Interesting. Thanks HH.

JCarter426 07-02-2012 10:35 AM

Quote:

Originally Posted by Hassat Hunter (Post 2815038)
You could get around the module limitation technically by first going to another module, spawning him/her there and THEN removing them from the party.
Handy if you want that party member added for just a map, say, cleaning a base.

So, for example;
Talking to the new party member.
Getting taken to a new module where to use him, which is a one-shot (say, end of Taris).
Spawn, remove, add new NPC as member, leaving the old member behind.
Add to the .dlg that when the stuff is done, the new is removed and he/she re-added and re-warp somewhere else.

Of course, that's just one example, more could be done with that...

Yeah, I was thinking this too - a bit more warping involved, but it could be worth it.
Quote:

Originally Posted by Fallen Guardian (Post 2815060)
So if I added the NPC as a puppet, it wouldn't spawn on the Hawk correct? And I could just use a normal recruit function whenever I wanted them back?

Correct. Remove them from the party table, add them to the puppet table, and you can even delete them safely and recover them later at any point. You can spawn an available puppet just like you can with a party member; as long as they are in the table, their information is stored.


All times are GMT -4. The time now is 06:56 PM.

Powered by vBulletin®
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
LFNetwork, LLC ©2002-2011 - All rights reserved.