Fallen Guardian Posted July 1, 2012 Share Posted July 1, 2012 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? Link to comment Share on other sites More sharing options...
harIII Posted July 1, 2012 Share Posted July 1, 2012 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. Link to comment Share on other sites More sharing options...
Hassat Hunter Posted July 1, 2012 Share Posted July 1, 2012 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). Link to comment Share on other sites More sharing options...
JCarter426 Posted July 1, 2012 Share Posted July 1, 2012 Too recruit an NPC by object - in other words, to add a specific creature in the game world to your party: 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. AddAvailablePUPByObject( int nPUP, object oPuppet ); nPUP must be 0, 1, or 2; the remote takes up slot 0. Link to comment Share on other sites More sharing options...
Hassat Hunter Posted July 1, 2012 Share Posted July 1, 2012 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... Link to comment Share on other sites More sharing options...
Fallen Guardian Posted July 2, 2012 Author Share Posted July 2, 2012 Too recruit an NPC by object - in other words, to add a specific creature in the game world to your party: 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. 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? 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. Link to comment Share on other sites More sharing options...
JCarter426 Posted July 2, 2012 Share Posted July 2, 2012 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. 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. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.