Has anyone used this function sucessfully? I can't get it to work - what exactly is the string that ought to be put there? I tried "human", "6" and "RACIAL_SUBTYPE_HUMAN" and all three failed. Help?
Ok here's the deal - I'm thinking of creating a module with bi-linear story.
One protagonist is your player - super-duper powerful, lvl 20 mothafucka. The other one is a level 1 weakling, created by me. The story would progress switching between the 2 until they meet in the finale, where one desperately needs the other, I tried giving your PC a tag and removing him from the party, but that won't work. So I tried playing with "morphing" the player - SetCreatureAppearanceType, SetGender, SetXP etc. I run into a brick wall with class, but I thought of a workaround.
Since some of the SetX functions don't "kick in" instantly, but after loading a new module, I can use two modules - one for each charachter. One would have a hakpak'ed classes.2da where I would replace ALL classes with the one I the weakling character to have. That would also require creating a copy of each class row so I can use them for NPCs... I could do the same thing with subrace...
Super-complicated and not compatible with race-dependant features like favoured enemy - however it would serve my purpose... kinda ;-)
check out what CopyObject() does ... I think it works on PCs. track the current xp's of both creatures somewhere, and use xp functions to adjust any player-switches that happen. Or even better, the two characters could be stored in the Campaign database (requires a bit of care, but workable) -- and just pull whichever out and instantiate it when/where required ....
So, i guess, as soon as the campaign starts and player logs in w/ L20 char, do a CopyObject() on it (scripthidden -> reset xp -> store in campaign DB -> destroy object IG). I'd assign both creatures a tag (slightly different jic it's needed). And it'd take a bit of effort to make the switches seamless, but for whatever reason i'd really try not to have parallel mods going.
edit: not sure how the game recognizes that THIS IS THE PC, however
In all fairness - OC uses different modules for different chapters, so why not ;-)
Also the main problems still remains - how do I remove the first PC from the party? RemoveRoster just despawns everyone else, but the FirstPC is intact. I didn't try straight up destrying him, but I don't feel the game will let me...
( i mean without sending a message to the player "ok, now stop playing this campaign and load up the other one" )
maybe you could pull something off using a companion and scripthidden, Ie. copy the PC & make it his companion. Then use SetOwnersControlledCompanion() to switch characters and scripthide the other one. Ofc i have no idea how the game'd react to that.
Another obstacle - I can't access the memorized spells in any way... I can store and restore the known spells the same way I did it with feats, but the memorized ones are set to default to player package.
I also can't find a way to get the player's soundset? I guess I could make him choose it again with pre-game GUI and store it as ant int
The easiest workaround that works for me is to edit packages.2da and put "****" in all SpellPref.2da rows - this would require the player to refill his spellbook every sigle time the plot switches to the strong character, but hey - at least it works
I don't need parallel areas - I need parallel modules: one with overrode classes and races and one with standard ones. Also: these 2 characters won't meet face-to-face until the final act so 2 modules seem a natural choice: one for each storyline.
https://neverwintervault.org/comment/25131#comment-25131
So no is the answer? :-/
I think i got a workaround but it's absurdly complex :-/
what are you trying to do, in detail? Is it for a party-member, an NPC, blueprint or instanced, etc etc. What's the situation
Ok here's the deal - I'm thinking of creating a module with bi-linear story.
One protagonist is your player - super-duper powerful, lvl 20 mothafucka. The other one is a level 1 weakling, created by me. The story would progress switching between the 2 until they meet in the finale, where one desperately needs the other, I tried giving your PC a tag and removing him from the party, but that won't work. So I tried playing with "morphing" the player - SetCreatureAppearanceType, SetGender, SetXP etc. I run into a brick wall with class, but I thought of a workaround.
Since some of the SetX functions don't "kick in" instantly, but after loading a new module, I can use two modules - one for each charachter. One would have a hakpak'ed classes.2da where I would replace ALL classes with the one I the weakling character to have. That would also require creating a copy of each class row so I can use them for NPCs... I could do the same thing with subrace...
Super-complicated and not compatible with race-dependant features like favoured enemy - however it would serve my purpose... kinda ;-)
sounds neat,
check out what CopyObject() does ... I think it works on PCs. track the current xp's of both creatures somewhere, and use xp functions to adjust any player-switches that happen. Or even better, the two characters could be stored in the Campaign database (requires a bit of care, but workable) -- and just pull whichever out and instantiate it when/where required ....
So, i guess, as soon as the campaign starts and player logs in w/ L20 char, do a CopyObject() on it (scripthidden -> reset xp -> store in campaign DB -> destroy object IG). I'd assign both creatures a tag (slightly different jic it's needed). And it'd take a bit of effort to make the switches seamless, but for whatever reason i'd really try not to have parallel mods going.
edit: not sure how the game recognizes that THIS IS THE PC, however
In all fairness - OC uses different modules for different chapters, so why not ;-)
Also the main problems still remains - how do I remove the first PC from the party? RemoveRoster just despawns everyone else, but the FirstPC is intact. I didn't try straight up destrying him, but I don't feel the game will let me...
Also - wouldn't a copy of the FirstPC be unable to multi-class?
Yeah - just tested it. The game's having none of that shit. You can't destroy the FIrstPC :/
y ... how can the PC be switched, at all
( i mean without sending a message to the player "ok, now stop playing this campaign and load up the other one" )
maybe you could pull something off using a companion and scripthidden, Ie. copy the PC & make it his companion. Then use SetOwnersControlledCompanion() to switch characters and scripthide the other one. Ofc i have no idea how the game'd react to that.
OK I got it to work pretty smoothly, but not without cost - I had to use ResetLevelForXP which pretty much disables multiclassing for this campaign...
I'll upload the example mod somewhere and post a link here so you can take a look at it ;-)
Check if this works.
Another obstacle - I can't access the memorized spells in any way... I can store and restore the known spells the same way I did it with feats, but the memorized ones are set to default to player package.
I also can't find a way to get the player's soundset? I guess I could make him choose it again with pre-game GUI and store it as ant int
The easiest workaround that works for me is to edit packages.2da and put "****" in all SpellPref.2da rows - this would require the player to refill his spellbook every sigle time the plot switches to the strong character, but hey - at least it works
lulz, very clever :)
question: why do you need parallel areas? why not just warp back to the same area, or whatever area is required
i guess that'd depend on the broader design ... but looks workable.
I don't need parallel areas - I need parallel modules: one with overrode classes and races and one with standard ones. Also: these 2 characters won't meet face-to-face until the final act so 2 modules seem a natural choice: one for each storyline.