vaultbait Posted July 8, 2022 Posted July 8, 2022 1 hour ago, spicydoritos said: I thought this was a neat idea so I cobbled together a demo script and plugin for fellow modders/tinkerers. Attach the script to any NPC(s) in CK. Just fill in the morality value where you would normally populate script properties and you're good to go. Default value is 0 so FPSH can still take over if you forget this step. No need to edit the script or recompile. Your plugin won't require Sexual Harassment as a master. Perfect timing! I just added the first script to the mod I'm working on yesterday, similar approach attaching directly to a cage door so it would auto-close after a few seconds. It wasn't clear to me that you could do soft dependencies this way without having to compile against the other mod's sources, but I guess directly poking values without calling that mod's script functions makes it unnecessary. Thanks for the timely example!
vaultbait Posted July 9, 2022 Posted July 9, 2022 23 hours ago, spicydoritos said: I thought this was a neat idea so I cobbled together a demo script and plugin for fellow modders/tinkerers. Attach the script to any NPC(s) in CK. Just fill in the morality value where you would normally populate script properties and you're good to go. Default value is 0 so FPSH can still take over if you forget this step. No need to edit the script or recompile. Your plugin won't require Sexual Harassment as a master. Script text is in the spoiler. This example worked great! I hard-coded it to set evil morality and also a high confidence on some unique super mutants, and created a similar script to give them the "Breeder Virus" STD perk from FPER (that was slightly trickier since it shares the same plugin name with FPE, so I added an additional check for the presence of the Wasteland Offspring plugin in order to tell FPER apart from normal FPE). My next leap in scripting soft Harassment related integration is to make my teleport activator which sends the player to that cell also preemptively increase the FPSH_Value_HypnoLevel as well as reduce FPA_Value_Spirit and FPA_Value_Willpower (the premise is you've triggered a trap which gasses you unconscious, and you wake up drugged in your new "home"). 3
spicydoritos Posted July 9, 2022 Posted July 9, 2022 1 hour ago, vaultbait said: This example worked great! I hard-coded it to set evil morality and also a high confidence on some unique super mutants, and created a similar script to give them the "Breeder Virus" STD perk from FPER (that was slightly trickier since it shares the same plugin name with FPE, so I added an additional check for the presence of the Wasteland Offspring plugin in order to tell FPER apart from normal FPE). My next leap in scripting soft Harassment related integration is to make my teleport activator which sends the player to that cell also preemptively increase the FPSH_Value_HypnoLevel as well as reduce FPA_Value_Spirit and FPA_Value_Willpower (the premise is you've triggered a trap which gasses you unconscious, and you wake up drugged in your new "home"). I like the idea! And if you aren't already aware, the second post of the Sex Attributes thread contains loads of guidance for modders/scripting/integration. :-)
ispammail Posted July 10, 2022 Posted July 10, 2022 Anyone has an idea how to resolve that race conflict, with my main player no longer being human? ../../page/87/#comment-3797922
deathmorph Posted July 10, 2022 Posted July 10, 2022 I have a suggestion about the gag dialogues. Normally you click away as quickly as possible to get to the actual dialogues. The "Hmm Hmm Hmm" doesn't make sense. But they would get the sense if, for example, no conversations are possible with Gag. Neither to traders nor to other NPCs. Eating and drinking should also be impossible when wearing a gag. Then the gag would have a meaning. To compensate, it would be useful if the option "take off a gag for sex or money" comes up a little more often when spoken to. But since I'm playing with standard settings, I may have overlooked an option here. I know there was a workaround to disable the gag dialogs somewhere here. But I didn't use it, because I don't reject this feature in principle.
vaultbait Posted July 10, 2022 Posted July 10, 2022 49 minutes ago, deathmorph said: I have a suggestion about the gag dialogues. Normally you click away as quickly as possible to get to the actual dialogues. The "Hmm Hmm Hmm" doesn't make sense. But they would get the sense if, for example, no conversations are possible with Gag. Neither to traders nor to other NPCs. Eating and drinking should also be impossible when wearing a gag. Then the gag would have a meaning. This is really more about the Devious Devices mod than Harassment, it just happens to have some features which take advantage of DD (though yes, Harassment could in theory change its own dialogue scenes if the player is wearing a gag, and it already does have some gag-specific interactions where the player can only mumble in response). 49 minutes ago, deathmorph said: I know there was a workaround to disable the gag dialogs somewhere here. But I didn't use it, because I don't reject this feature in principle. DD RC8 does at least make this toggleable, and also less intrusive (requires activation to initiate the gag dialogue, no more forced greets).
deathmorph Posted July 11, 2022 Posted July 11, 2022 OK, I didn't know that. I thought DD brought the hardware and SH the dialogs.
vaultbait Posted July 11, 2022 Posted July 11, 2022 11 hours ago, deathmorph said: OK, I didn't know that. I thought DD brought the hardware and SH the dialogs. SH does have (quite a lot of) unique dialogue, but if you're talking about the general case of wearing a gag causing your initial interaction with another character to be a choice of four different mumbles after which they respond that they don't understand what you said, that's an affect applied by DD itself. In order to not more generally break game functionality, it lets you talk to an NPC a second time and get their normal dialogue prompts instead, though I suppose you could change that (and make the game a lot more unplayable in the process).
deathmorph Posted July 11, 2022 Posted July 11, 2022 Yes, that's what I mean. The second dialog after the first with "Hmmm" actually makes the first dialog meaningless. Likewise, if a harasser walks up to my actress, sees the gag, and then says they don't get the words through the gag, and leaves. If "sex" or "money" comes up more often as compensation, then it wouldn't be unplayable. In the meantime I've managed to avoid the second dialogue and I also don't eat or drink during the gag time. It's also fun, in a way.
vaultbait Posted July 11, 2022 Posted July 11, 2022 2 hours ago, deathmorph said: Yes, that's what I mean. The second dialog after the first with "Hmmm" actually makes the first dialog meaningless. Likewise, if a harasser walks up to my actress, sees the gag, and then says they don't get the words through the gag, and leaves. If "sex" or "money" comes up more often as compensation, then it wouldn't be unplayable. Got it. Yes that's two separate mods handling dialogue in that case. The first dialogue is being intercepted by DD because you're wearing a gag. Harasser approach dialogue is provided by SH. 2 hours ago, deathmorph said: In the meantime I've managed to avoid the second dialogue and I also don't eat or drink during the gag time. It's also fun, in a way. That's basically what I do to role play it as well. No eating, drinking, smoking, or approaching people for conversation until I can get the damned thing off! 1
Fialych Posted July 12, 2022 Posted July 12, 2022 On 6/13/2022 at 3:40 AM, asdfer1234 said: Slap stuff does really weird things to camera in first person. Any chance for future update to force the camera to be into zoomed-out/3rd person before slap event? +1 Please 1
vaultbait Posted July 12, 2022 Posted July 12, 2022 (edited) On 7/9/2022 at 8:24 PM, spicydoritos said: I like the idea! And if you aren't already aware, the second post of the Sex Attributes thread contains loads of guidance for modders/scripting/integration. ? Yep, that much is working great. I was also able to leverage the same pattern for soft dependency calls into some functions from Harassment's main quest script as well. Unfortunately, I'm running into challenges doing the same for Family Planning Enhanced (Redux really, but the functions in question are unchanged in this case). invoking its CallPlayerFunction utility function (details in a spoiler since it's getting off-topic). Spoiler This is the relevant bit of script from an activator which, among other things, is meant to heal damage to a fetus in the player's womb: Scriptname My_Activator extends ObjectReference Const Event OnActivate(ObjectReference akActionRef) If (akActionRef == Game.GetPlayer() as ObjectReference) If Game.IsPluginInstalled("FP_FamilyPlanningEnhanced.esp") Quest FPE = Game.GetFormFromFile(0x00000F99, "FP_FamilyPlanningEnhanced.esp") as Quest ScriptObject fpe_script = FPE.CastAs("FPFP_Player_Script") var[] Subcommand = new var[1] Subcommand[0] = "FullyHealBaby" fpe_script.CallFunction("CallPlayerFunction", Subcommand) EndIf EndIf EndEvent Similarly running cqf FPE CallPlayerFunction FullyHealBaby from the console works though, so I know the function is plumbed into the game correctly. Injecting debug messages into the script I know it's reaching the fpe_script.CallFunction() too, and there's nothing related erroring in the Papyrus log. I've stared at the Papyrus scripting docs for all the relevant syntax, but must still be getting something subtly wrong. Edited July 12, 2022 by vaultbait
spicydoritos Posted July 12, 2022 Posted July 12, 2022 32 minutes ago, vaultbait said: Yep, that much is working great. I was also able to leverage the same pattern for soft dependency calls into some functions from Harassment's main quest script as well. Unfortunately, I'm running into challenges doing the same for Family Planning Enhanced (Redux really, but the functions in question are unchanged in this case). invoking its CallPlayerFunction utility function (details in a spoiler since it's getting off-topic). Hide contents This is the relevant bit of script from an activator which, among other things, is meant to heal damage to a fetus in the player's womb: Scriptname My_Activator extends ObjectReference Const Event OnActivate(ObjectReference akActionRef) If (akActionRef == Game.GetPlayer() as ObjectReference) If Game.IsPluginInstalled("FP_FamilyPlanningEnhanced.esp") Quest FPE = Game.GetFormFromFile(0x00000F99, "FP_FamilyPlanningEnhanced.esp") as Quest ScriptObject fpe_script = FPE.CastAs("FPFP_Player_Script") var[] Subcommand = new var[1] Subcommand[0] = "FullyHealBaby" fpe_script.CallFunction("CallPlayerFunction", Subcommand) EndIf EndIf EndEvent Similarly running cqf FPE CallPlayerFunction FullyHealBaby from the console works though, so I know the function is plumbed into the game correctly. Injecting debug messages into the script I know it's reaching the fpe_script.CallFunction() too, and there's nothing related erroring in the Papyrus log. I've stared at the Papyrus scripting docs for all the relevant syntax, but must still be getting something subtly wrong. Silly question, but is the relevant FPER quest actually at FormID F99? Nothing else really leaps out as incorrect.
vaultbait Posted July 13, 2022 Posted July 13, 2022 45 minutes ago, spicydoritos said: Silly question, but is the relevant FPER quest actually at FormID F99? Nothing else really leaps out as incorrect. Yep, no idea if that's a "standard" or a classic cargo cult phenomenon, but the main quests in FPSH, FPA and FPE(R) are all form F99 according to FO4Edit. Thanks for looking though! I'll keep fiddling and asking around.
Cookiemonsta234 Posted July 13, 2022 Posted July 13, 2022 On 5/26/2022 at 3:13 PM, twistedtrebla said: 1.16.5 CHANGED: Updated new animation (introduced in 1.16.4) to a quicker one that slaps the player quicker. Meant to make slaps less disruptive when player is being slapped on the move. Was a fan of the previous animation where it was slower. Can I revert back to that without having to install older version?
vaultbait Posted July 14, 2022 Posted July 14, 2022 On 7/12/2022 at 11:40 PM, spicydoritos said: Nothing else really leaps out as incorrect. So I was very close! Available documentation isn't real clear about the fact that the parameter array you pass in has to have exactly the same number of elements as the number of parameters the function accepts, even if some of those are optional. Padding out the array with a Null element did the trick. Working example in the spoiler in case anyone else ends up needing to do something similar. Spoiler Scriptname My_Activator extends ObjectReference Const Event OnActivate(ObjectReference akActionRef) If (akActionRef == Game.GetPlayer() as ObjectReference) If Game.IsPluginInstalled("FP_FamilyPlanningEnhanced.esp") Quest FPE = Game.GetFormFromFile(0x00000F99, "FP_FamilyPlanningEnhanced.esp") as Quest ScriptObject fpe_script = FPE.CastAs("FPFP_Player_Script") var[] Subcommand = new var[2] Subcommand[1] = Null Subcommand[0] = "FullyHealBaby" fpe_script.CallFunction("CallPlayerFunction", Subcommand) EndIf EndIf EndEvent 1
spicydoritos Posted July 14, 2022 Posted July 14, 2022 9 hours ago, vaultbait said: So I was very close! Available documentation isn't real clear about the fact that the parameter array you pass in has to have exactly the same number of elements as the number of parameters the function accepts, even if some of those are optional. Padding out the array with a Null element did the trick. Working example in the spoiler in case anyone else ends up needing to do something similar. Reveal hidden contents Scriptname My_Activator extends ObjectReference Const Event OnActivate(ObjectReference akActionRef) If (akActionRef == Game.GetPlayer() as ObjectReference) If Game.IsPluginInstalled("FP_FamilyPlanningEnhanced.esp") Quest FPE = Game.GetFormFromFile(0x00000F99, "FP_FamilyPlanningEnhanced.esp") as Quest ScriptObject fpe_script = FPE.CastAs("FPFP_Player_Script") var[] Subcommand = new var[2] Subcommand[1] = Null Subcommand[0] = "FullyHealBaby" fpe_script.CallFunction("CallPlayerFunction", Subcommand) EndIf EndIf EndEvent Fascinating... I would not have expected the optional parameters to require null input. Always more to learn! And thank you very much for spreading the knowledge.
Fialych Posted July 14, 2022 Posted July 14, 2022 Hello! My companion has his own non-standard race. Animations from your mod are not played on it. Is it possible to add a race to the animation package? Thanks. Sorry for my English, google translator...
MrPayne Posted July 15, 2022 Posted July 15, 2022 Hey everyone, so I was working on robo voices for SH for the past couple of days, and I was wondering if I can post it here if I can figure out how, if anyone is interested and of course if the author @twistedtrebla is cool with it. Trying to learn moding and this is the first thing I learned, for some reason. In Short: VoiceFemale is Nora Approacher and hacker are random, some including Nate's voice. Unfortunately, no mutants, creatures or "robots".
Slorm Posted July 16, 2022 Posted July 16, 2022 I'm doing a bit of tuning on how long to keep the bimbo effect going, does anyone know how to check how much time is remaining. I have tried searching in console against morph, bimbo and fpsh but aside from the global that holds the the value for how long the effect should run, I cannot find a countdown timer so I could calculate the remaining time I currently have fpsh_setting_morphduration=1.00 as I don't want it to go on for too long. At 0.5 it seemed a bit too short but I can't fine tune it easily without knowing how much time is still remaining
spicydoritos Posted July 16, 2022 Posted July 16, 2022 31 minutes ago, Slorm said: I'm doing a bit of tuning on how long to keep the bimbo effect going, does anyone know how to check how much time is remaining. I have tried searching in console against morph, bimbo and fpsh but aside from the global that holds the the value for how long the effect should run, I cannot find a countdown timer so I could calculate the remaining time I currently have fpsh_setting_morphduration=1.00 as I don't want it to go on for too long. At 0.5 it seemed a bit too short but I can't fine tune it easily without knowing how much time is still remaining Unfortunately it looks like you'll have a tough time of that. Here's the relevant script function from FPSH_Main: Spoiler Function UpdateBimboPerk() if playerRef.hasPerk(FPSH_Bimbo) ; Calculate how many ticks are needed for player to lose bimbo serum float ticksPerDay = FPSH_Setting_ScansPerHour.GetValue() * 24 float ticksNeeded = FPSH_Setting_MorphDuration.GetValue() * ticksPerDay if ticksSinceLastSexCount >= ticksNeeded ; Player managed to not have sex for perk duration. remove perk debug.notification("You feel the bimbo serum effects fading away!") playerRef.removePerk(FPSH_Bimbo) RemoveMorph() endif endif EndFunction "ticksSinceLastSexCount" is a persistent variable within the script, rather than a global variable or actor value, which means you won't find it with just a console search. Even if you managed to dump the value, "ticksNeeded" is calculated on the fly within this function and is not persistent. I don't see a method of acquiring the remaining bimbo time without modifying the script and/or adding a custom function. 1
Slorm Posted July 16, 2022 Posted July 16, 2022 (edited) 22 minutes ago, spicydoritos said: Unfortunately it looks like you'll have a tough time of that. Here's the relevant script function from FPSH_Main: Hide contents Function UpdateBimboPerk() if playerRef.hasPerk(FPSH_Bimbo) ; Calculate how many ticks are needed for player to lose bimbo serum float ticksPerDay = FPSH_Setting_ScansPerHour.GetValue() * 24 float ticksNeeded = FPSH_Setting_MorphDuration.GetValue() * ticksPerDay if ticksSinceLastSexCount >= ticksNeeded ; Player managed to not have sex for perk duration. remove perk debug.notification("You feel the bimbo serum effects fading away!") playerRef.removePerk(FPSH_Bimbo) RemoveMorph() endif endif EndFunction "ticksSinceLastSexCount" is a persistent variable within the script, rather than a global variable or actor value, which means you won't find it with just a console search. Even if you managed to dump the value, "ticksNeeded" is calculated on the fly within this function and is not persistent. I don't see a method of acquiring the remaining bimbo time without modifying the script and/or adding a custom function. That's a great pity but many thanks for your reply. It will save me from chasing a phantom EDIT: I've found a very rough empirical way to check as I have the game time from the save I left Homeplate, then the save after going through Wilson Atomatoys. I did fast travel to Sanctuary (ticks wouldn't be changed for that) and if I change the duration from 1.00 to 0.5 I can get the time when 12 game hours have elapsed. It's real kludgy but it gives me some idea and seems to work Edited July 16, 2022 by Slorm
megaera Posted July 18, 2022 Posted July 18, 2022 (edited) Can't get rid of the bimbo effect for some reason. Set at "2" (body morph duration) and 72+ hours of sleeping (or fast travel) doesn't seem to cure it. Anyone have any idea what might be wrong? Edited July 18, 2022 by ylurkes
deathmorph Posted July 18, 2022 Posted July 18, 2022 The 2 days are playing time. Sleep time is not taken into account. Your character must be active. 1
someguy64461 Posted July 18, 2022 Posted July 18, 2022 Hey, I'm having a issue during approaches. There is no voices or subtitles, I have no idea what type of approach or requests are being asked. Is there something I'm doing wrong?
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now