Jump to content

Recommended Posts

1 hour ago, DevilGod05 said:

Still a noob at using the outfit studio.

Select fusiongirl green part, mask arm vertices with mask vertices tool, invert selection, press right mouse button on fusiongirl green part and choose delete vertices. it will delete all unmask vertices.

Then save a project with new name and build into bodyslide saved new project.

 

Link to comment
9 minutes ago, Person1 said:

I have a device equipped after some raiders assaulted me and both types of keys are in my inventory but i still cant unequip the device. 

 

does anyone know what causes this? 

 

What device is it?

Link to comment
34 minutes ago, Person1 said:

I have a device equipped after some raiders assaulted me and both types of keys are in my inventory but i still cant unequip the device. 

 

does anyone know what causes this? 

If Violate put a collar on your PC, then one of the Raiders has a note with the unlock code. Or, you can use the Real Handcuffs MCM debug to force it off.
Or .. use Boston Devious Helper to remove any device.

Link to comment
4 minutes ago, izzyknows said:

If Violate put a collar on your PC, then one of the Raiders has a note with the unlock code. Or, you can use the Real Handcuffs MCM debug to force it off.
Or .. use Boston Devious Helper to remove any device.

I dont have a collar on me and ive left the location and long killed any of the raiders, would i have to buy one off of Kimmy then go back to the place it happened?

Link to comment
8 minutes ago, izzyknows said:

Restraint key should unlock it. Do you get the popup about unlocking it?

Whatever you do, do not use console commands to remove it.

I have the key and nothing happens when i click the hood. it just shifts for a second on my pip-boy screen and is still equipped. 

Link to comment
2 hours ago, Person1 said:

I have the key and nothing happens when i click the hood. it just shifts for a second on my pip-boy screen and is still equipped. 

you need the key from the raiders that put the device on you. Or, buy a restraints key from Kimy in the Memory Den - this will then allow you to unlock it.

 

and no, you don't have to be in the place it happened to do it.

Link to comment
6 hours ago, Person1 said:

I have the key and nothing happens when i click the hood. it just shifts for a second on my pip-boy screen and is still equipped. 

You should get a popup.

Try crafting a hood at the restraints workbench, put it on, manipulating the lock, walk around a few seconds, then take it off.

Link to comment
9 hours ago, Person1 said:

I have the key and nothing happens when i click the hood. it just shifts for a second on my pip-boy screen and is still equipped. 

You have a mod what block DD scripts or wrong DD install.

As example mod what makes unpause in pipboy (you open a pipboy and enemies can attack you) not compatible with DD and unlock menu if  DD items not appear while you remove this mod.

 

Link to comment
On 7/28/2021 at 11:42 AM, Elsidia said:

You have a mod what block DD scripts or wrong DD install.

As example mod what makes unpause in pipboy (you open a pipboy and enemies can attack you) not compatible with DD and unlock menu if  DD items not appear while you remove this mod.

 

Oh, thats what it is...

 

Im using Fallsouls XD fuck sake 

Link to comment
On 7/28/2021 at 11:42 AM, Elsidia said:

You have a mod what block DD scripts or wrong DD install.

As example mod what makes unpause in pipboy (you open a pipboy and enemies can attack you) not compatible with DD and unlock menu if  DD items not appear while you remove this mod.

 

Thank you so much! :D

Link to comment
17 hours ago, Person1 said:

Im using Fallsouls XD fuck sake 

If Fallsouls is what makes a unpaused game in then i study DD scripts and still can't find solution how to fix it. There is complicated equip system what's test if you are in pipboy (script operand: isinmenu) And seems Fallsouls completely ignore this operand and DD always think, that you arn't in menu. I think you can made a fix by using F4SE commands to check if you are in pipboy. I think it stil lcan works. But also seems it can completely destroy NPC DD  equip menu because there you not in pipboy but in NPC menu, what can lead to more bugs.

Anyway if you are strong in scripting you can write a patch for DD to change isinmenu checking to F4SE check if you are in pipboy and hope that will not break other part.

Link to comment
1 hour ago, Elsidia said:

If Fallsouls is what makes a unpaused game in then i study DD scripts and still can't find solution how to fix it. There is complicated equip system what's test if you are in pipboy (script operand: isinmenu) And seems Fallsouls completely ignore this operand and DD always think, that you arn't in menu. I think you can made a fix by using F4SE commands to check if you are in pipboy. I think it stil lcan works. But also seems it can completely destroy NPC DD  equip menu because there you not in pipboy but in NPC menu, what can lead to more bugs.

Anyway if you are strong in scripting you can write a patch for DD to change isinmenu checking to F4SE check if you are in pipboy and hope that will not break other part.

 

You should be able to replace Utility.IsInMenuMode() with

 

UI.IsMenuOpen("ContainerMenu") || UI.IsMenuOpen("PipboyMenu") || UI.IsMenuOpen("Console")

 

That will handle trading with NPCs, the pip-boy, and the console.

Link to comment
21 hours ago, Person1 said:

Im using Fallsouls XD fuck sake 

Ok i upload DD_Restraintsscript.psc

You need it put into D:\Games\Fallout 4\Data\Scripts\Source\User\DD or in your mods folder if you use MO2 and compile in CK or other compilator. Also compiled script file must be put in MO2 script folder.

 

If anyone compile script for you then you need put DD_restraintscript.pex into D:\Games\Fallout 4\Data\Scripts\DD fif you don't use MO2. Wit°th it you must put this pex into MO2 script folder.

 

What there is changed:

1)

Original:

Spoiler

Event OnEquipped(Actor akActor)
    ; This function is not getting called when the item is equipped via scripting. Silly Bethesda!
    If akActor != Libs.Player && !libs.bProcessing
        If (IsEquipDeviceConflict(akActor) || IsEquipRequiredDeviceConflict(akActor) || (libs.IsWearingDevice(akActor, RenderedDevice, DeviceKeyword) > 0))
            akActor.UnEquipItem(InventoryDevice)
        Else
            libs.EquipDevice(akActor, InventoryDevice, RenderedDevice)
            ; we force the NPC inventory to update...
            akActor.AddItem(libs.BobbyPin, 1)
            akActor.RemoveItem(libs.BobbyPin, 1)
        EndIf
        return
    EndIf
    Bool Silent = !Utility.IsInMenuMode()
    ; check if this device is already worn
    if !akActor.IsEquipped(RenderedDevice)
        If !Silent ; let's see if its being equipped voluntarily
            ; check for device conflicts
            If (IsEquipDeviceConflict(akActor) || IsEquipRequiredDeviceConflict(akActor))
                akActor.UnequipItem(InventoryDevice, false, true)
                return
            EndIf
            if !libs.bProcessing
                DisplayMessage()
            endif
        EndIf
    Endif
EndEvent

Changed:

Spoiler

Event OnEquipped(Actor akActor)
    ; This function is not getting called when the item is equipped via scripting. Silly Bethesda!
    If akActor != Libs.Player && !libs.bProcessing
        If (IsEquipDeviceConflict(akActor) || IsEquipRequiredDeviceConflict(akActor) || (libs.IsWearingDevice(akActor, RenderedDevice, DeviceKeyword) > 0))
            akActor.UnEquipItem(InventoryDevice)
        Else
            libs.EquipDevice(akActor, InventoryDevice, RenderedDevice)
            ; we force the NPC inventory to update...
            akActor.AddItem(libs.BobbyPin, 1)
            akActor.RemoveItem(libs.BobbyPin, 1)
        EndIf
        return
    EndIf
    Bool Silent = !UI.IsMenuOpen("ContainerMenu") || !UI.IsMenuOpen("PipboyMenu")
    ; check if this device is already worn
    if !akActor.IsEquipped(RenderedDevice)
        If !Silent ; let's see if its being equipped voluntarily
            ; check for device conflicts
            If (IsEquipDeviceConflict(akActor) || IsEquipRequiredDeviceConflict(akActor))
                akActor.UnequipItem(InventoryDevice, false, true)
                return
            EndIf
            if !libs.bProcessing
                DisplayMessage()
            endif
        EndIf
    Endif
EndEvent

 

2)

Original

Spoiler

Event OnUnequipped(Actor akActor)
    if libs.bProcessing
        Return
    endif
    If akActor != Libs.Player
    ; the actor in question is not the player.
        if !utility.IsInMenuMode()
        ; the player is not currently in menu mode, thus not in the actor inventory.
            if akActor.IsEquipped(RenderedDevice)
                if !libs.removaltoken
                    ; the actor is not permitted to remove the device!
                    akActor.EquipItem(InventoryDevice)
                Else
                    ; everything is in order - remove the device!
                    RemoveDevice(akActor)
                    OnItemUnequipped(akActor)
                    libs.removaltoken = False
                EndIf        
            EndIf
        Else
            if (!DeviceKey || libs.Player.GetItemCount(DeviceKey) >= NumberOfKeysNeeded) || akActor.IsDead()
                ; the device doesn't need keys or the player has keys - removing the device!
                If !IsUnEquipDeviceConflict(akActor)
                    libs.notify("You unlock the " + DeviceName)
                    libs.RemoveDevice(akActor, InventoryDevice, RenderedDevice)
                    if akActor != libs.Player
                        akActor.AddItem(libs.dummyArmor, 1)
                        akActor.AddItem(libs.BobbyPin, 1)
                        akActor.EquipItem(libs.dummyArmor)
                        akActor.RemoveItem(libs.BobbyPin, 1)
                        utility.wait(0.1)
                        akActor.RemoveItem(libs.dummyArmor, 1)
                        libs.Player.RemoveItem(libs.dummyArmor, 1, true)
                    endif
                    return
                EndIf
            else
            ; the player doesn't have the key and the device can't be unlocked
                libs.Notify("You lack the key to unlock " + DeviceName)
                libs.bProcessing = true
                utility.waitMenuMode(0.1)
                if akActor.GetItemCount(InventoryDevice) == 0 && libs.Player.GetItemCount(InventoryDevice) > 0
                ; the player removed a locked device - it needs to be added.
                ; the cringy implementation below is to work around a nasty glitch in f4's engine.
                ; it's not great, but it's the best i got.
                    libs.player.RemoveItem(InventoryDevice, 1, true, akActor)
                    akActor.EquipItem(InventoryDevice)
                    akActor.AddItem(libs.dummyArmor, 1)
                    akActor.AddItem(libs.BobbyPin, 1)
                    akActor.EquipItem(libs.dummyArmor)
                    akActor.RemoveItem(libs.BobbyPin, 1)
                    utility.wait(0.1)
                    akActor.RemoveItem(libs.dummyArmor, 1)
                    libs.Player.RemoveItem(libs.dummyArmor, 1, true)
                    libs.bProcessing = False
                    return
                endif
                ; the player just unequipped a locked device - we're reequipping it!
                akActor.EquipItem(InventoryDevice)
                ; we add and remove a bobby pin to force the actor inventory to update.
                akActor.AddItem(libs.BobbyPin, 1)
                akActor.RemoveItem(libs.BobbyPin, 1)
                libs.bProcessing = false
                return
            EndIf
        endif
        return
    EndIf
    ; can unequip only if the item is actually worn:
    if akActor.IsEquipped(RenderedDevice)
        if libs.removaltoken && akActor != libs.Player
            RemoveDevice(akActor)
            OnItemUnequipped(akActor)
            libs.removaltoken = False
        Else
            ;reequip
            akActor.equipitem(InventoryDevice, False, True)
            If Utility.IsInMenuMode()
                DisplayMessage()
            EndIf            
        EndIf
    EndIf
EndEvent

 

Changed:

Spoiler

Event OnUnequipped(Actor akActor)
    if libs.bProcessing
        Return
    endif
    If akActor != Libs.Player
    ; the actor in question is not the player.
        if !UI.IsMenuOpen("PipboyMenu") || !UI.IsMenuOpen("ContainerMenu")
        ; the player is not currently in menu mode, thus not in the actor inventory.
            if akActor.IsEquipped(RenderedDevice)
                if !libs.removaltoken
                    ; the actor is not permitted to remove the device!
                    akActor.EquipItem(InventoryDevice)
                Else
                    ; everything is in order - remove the device!
                    RemoveDevice(akActor)
                    OnItemUnequipped(akActor)
                    libs.removaltoken = False
                EndIf        
            EndIf
        Else
            if (!DeviceKey || libs.Player.GetItemCount(DeviceKey) >= NumberOfKeysNeeded) || akActor.IsDead()
                ; the device doesn't need keys or the player has keys - removing the device!
                If !IsUnEquipDeviceConflict(akActor)
                    libs.notify("You unlock the " + DeviceName)
                    libs.RemoveDevice(akActor, InventoryDevice, RenderedDevice)
                    if akActor != libs.Player
                        akActor.AddItem(libs.dummyArmor, 1)
                        akActor.AddItem(libs.BobbyPin, 1)
                        akActor.EquipItem(libs.dummyArmor)
                        akActor.RemoveItem(libs.BobbyPin, 1)
                        utility.wait(0.1)
                        akActor.RemoveItem(libs.dummyArmor, 1)
                        libs.Player.RemoveItem(libs.dummyArmor, 1, true)
                    endif
                    return
                EndIf
            else
            ; the player doesn't have the key and the device can't be unlocked
                libs.Notify("You lack the key to unlock " + DeviceName)
                libs.bProcessing = true
                utility.waitMenuMode(0.1)
                if akActor.GetItemCount(InventoryDevice) == 0 && libs.Player.GetItemCount(InventoryDevice) > 0
                ; the player removed a locked device - it needs to be added.
                ; the cringy implementation below is to work around a nasty glitch in f4's engine.
                ; it's not great, but it's the best i got.
                    libs.player.RemoveItem(InventoryDevice, 1, true, akActor)
                    akActor.EquipItem(InventoryDevice)
                    akActor.AddItem(libs.dummyArmor, 1)
                    akActor.AddItem(libs.BobbyPin, 1)
                    akActor.EquipItem(libs.dummyArmor)
                    akActor.RemoveItem(libs.BobbyPin, 1)
                    utility.wait(0.1)
                    akActor.RemoveItem(libs.dummyArmor, 1)
                    libs.Player.RemoveItem(libs.dummyArmor, 1, true)
                    libs.bProcessing = False
                    return
                endif
                ; the player just unequipped a locked device - we're reequipping it!
                akActor.EquipItem(InventoryDevice)
                ; we add and remove a bobby pin to force the actor inventory to update.
                akActor.AddItem(libs.BobbyPin, 1)
                akActor.RemoveItem(libs.BobbyPin, 1)
                libs.bProcessing = false
                return
            EndIf
        endif
        return
    EndIf
    ; can unequip only if the item is actually worn:
    if akActor.IsEquipped(RenderedDevice)
        if libs.removaltoken && akActor != libs.Player
            RemoveDevice(akActor)
            OnItemUnequipped(akActor)
            libs.removaltoken = False
        Else
            ;reequip
            akActor.equipitem(InventoryDevice, False, True)
            If UI.IsMenuOpen("PipboyMenu")
                DisplayMessage()
            EndIf            
        EndIf
    EndIf
EndEvent

 

Also @EgoBallistic here is question. I'm not strong with complicate compare functions this line will work correct?

 

Bool Silent = !UI.IsMenuOpen("ContainerMenu") || !UI.IsMenuOpen("PipboyMenu")

 

Silent got false if player is in NPC or pipboy?

 

If not maybe you have idea how to write it?

And maybe you can compile this script and publish?

 

I can't because i have heavy modified DD scripts (fixed bugs and add new content) If i compile myself it will end with broken DD for you.

DD_RestraintScript.psc

Link to comment
57 minutes ago, Elsidia said:

Bool Silent = !UI.IsMenuOpen("ContainerMenu") || !UI.IsMenuOpen("PipboyMenu")

 

Not quite.  Silent should only be true if neither menu is open.  So you need this:

 

Bool Silent = !(UI.IsMenuOpen("ContainerMenu") || UI.IsMenuOpen("PipboyMenu"))

 

or this, which is the same thing logically:

 

Bool Silent = !UI.IsMenuOpen("ContainerMenu") && !UI.IsMenuOpen("PipboyMenu")

 

To keep it simple, just replace this

 

Utility.IsInMenuMode()

 

with

 

(UI.IsMenuOpen("ContainerMenu") || UI.IsMenuOpen("PipboyMenu"))

 

then, if there is a ! in front of it, it will still work as intended.

 

Edited by EgoBallistic
Link to comment
3 hours ago, EgoBallistic said:

then, if there is a ! in front of it, it will still work as intended.

I'm curious why mod author use this expression bool silent=!Util.isInMenuMode() if in next line it's convert it back: If !Silent ......

 

In other places i not put other check because there is check only for player (that means it works only if in pipboy for equip unequip.)

 

But thanks for fixing scripts.

Link to comment

Is there a way to change the frequency of stimulation events from plug and vibrator? Right now, it seems to be pretty much constantly happening. It would be nice to have it happen every 5 minutes or so, but listening to an endless loop of moans gets pretty annoying.

Also I can not seem to get nipple vice and clamp mesh to fit correctly? All items look correct but the nipple things equip above the nipples, even though I've built them like everything else in BodySlide. I use CBBE Curvy

Edited by gadgetzan
addition
Link to comment
47 minutes ago, gadgetzan said:

Also I can not seem to get nipple vice and clamp mesh to fit correctly? All items look correct but the nipple things equip above the nipples, even though I've built them like everything else in BodySlide. I use CBBE Curvy

 

Make sure you're building them with the exact same preset - don't build the clamps with the "CBBE Curvy (Outfit)" preset if your body is built with "CBBE Curvy".

Link to comment
2 hours ago, gadgetzan said:

Is there a way to change the frequency of stimulation events from plug and vibrator? Right now, it seems to be pretty much constantly happening. It would be nice to have it happen every 5 minutes or so, but listening to an endless loop of moans gets pretty annoying.

 

For that, it looks like you'll need to edit the constants at the top of DD_Event_Vibrate.psc and recompile it with PapyrusCompiler from the FO4CK.

Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   1 member

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use