Jump to content

Recommended Posts

Posted

In Scriptname DD:DD_TentacleDevice extends DD:DD_RestraintScript

This doesn't work if you have a custom special cream. Seems like the default special cream is hard coded somewhere
 

.,...

Bool Function HasRemovalPaste()
	if libs.Player.GetItemCount(c_Acid_scrap) >= 5 && libs.Player.GetItemCount(c_Antiseptic_scrap) >= 5 && libs.Player.GetItemCount(c_Oil_scrap) >= 1
		return true
	else
		return false
	endif
EndFunction

Message Property DD_Device_ParasiteMSG Auto
Message Property DD_Device_ParasiteWornMSG Auto 
Message Property DD_EscapeParasiteMSG Auto
Message Property DD_RemoveParasiteMSG Auto

MiscObject Property c_Acid_scrap Auto 
MiscObject Property c_Antiseptic_scrap Auto 
MiscObject Property c_Oil_scrap Auto
MiscObject Property DD_Special_Cream Auto

 

Suggested Change

Bool Function HasRemovalPaste()
	Return (libs.Player.GetItemCount(c_Acid_scrap) >= 5 && libs.Player.GetItemCount(c_Antiseptic_scrap) >= 5 && libs.Player.GetItemCount(c_Oil_scrap) >= 1) || libs.Player.GetItemCount(DD_Special_Cream) >= 1
EndFunction

 

Posted

Is there a way to force unequip a device?

I've made a few devices that are an extension of a main device.

  1. These supplemental devices must have the main device equipped to be equipped
  2. They cannot be removed with the the main device equipped.

When the main device is unequipped the supplemental devices should be removed with it. I have  while loop with the main device at index 0 of the array. That unequips but the rest do not.

 

  Int iArmorIdx = 0
  while( iArmorIdx < DD_TentacleMonster.Length )
    Int  iSanity  = 5
    Bool bSuccess = False
    ; Hit it with s hammer 5 times?
    while( !bSuccess && iSanity > 0 )
      iSanity -= 1
      ; CheckDependencies = False does nothing. forced true w/in RemoveDevice()
      bSuccess = Tools.libs.RemoveDevice( akActor, DD_TentacleMonster[ iArmorIdx ], DestroyDevice = True )
      Utility.Wait( 0.25 )
    endWhile
    iArmorIdx += 1
  endWhile

 

Posted
27 minutes ago, jbezorg said:

Is there a way to force unequip a device?

I've made a few devices that are an extension of a main device.

  1. These supplemental devices must have the main device equipped to be equipped
  2. They cannot be removed with the the main device equipped.

When the main device is unequipped the supplemental devices should be removed with it. I have  while loop with the main device at index 0 of the array. That unequips but the rest do not.

 

  Int iArmorIdx = 0
  while( iArmorIdx < DD_TentacleMonster.Length )
    Int  iSanity  = 5
    Bool bSuccess = False
    ; Hit it with s hammer 5 times?
    while( !bSuccess && iSanity > 0 )
      iSanity -= 1
      ; CheckDependencies = False does nothing. forced true w/in RemoveDevice()
      bSuccess = Tools.libs.RemoveDevice( akActor, DD_TentacleMonster[ iArmorIdx ], DestroyDevice = True )
      Utility.Wait( 0.25 )
    endWhile
    iArmorIdx += 1
  endWhile

 


D'oh!

The first item removed is has the script that's removing the items 🤦‍♂️

Posted (edited)
19 hours ago, Dont Tell My Parents said:

 

If you're still stuck say "sorry I'm an idiot, can you help me <insert problem here>?". The RC isn't made by the original mod author so it's not on the mod page but you were linked to what that mod page would look like and are still giving shit for what reason? 

 

 

Who's being rude now?

I asked for help and received the response I expected: "It doesn't take a rocket scientist to find it."

I had already figured out what I needed before they replied, anyway.

To be fair, this is why there aren't many mods here. It's not because we’re expected to find each mod manually—despite possibly having over 100 different mods from this site—but because we’re expected to go through each one individually, monitor for any new posts, and read every single thread to ensure we have the most up-to-date version of every mod, manually.

If that’s what you enjoy doing, no judgment here. Do what you want; I fully support you and your decision. But some of us actually like playing the games.

 

 

Edited by ThisNameHasntBeenTaken
Posted

Removed my "Tools.libs" references
 

Function ForceRemoveDevice( Actor akActor, Armor kInventoryDevice, Bool bDestroyDevice = False )
  ObjectReference tmpORef       = Player.PlaceAtMe( kInventoryDevice, abInitiallyDisabled = True )
  DD:DD_RestraintScript tmpZRef = tmpORef as DD:DD_RestraintScript
  Armor kRenderedDevice         = tmpZRef.RenderedDevice
  removaltoken                  = True

  if akActor.IsEquipped( kInventoryDevice )
    svu = True
    akActor.Unequipitem( kInventoryDevice, abSilent = True )
    
    if bDestroyDevice
      akActor.RemoveItem( kInventoryDevice, 1, True )
    endIf
  endIf

  if akActor.IsEquipped( kRenderedDevice )
    akActor.UnEquipItem( kRenderedDevice, abSilent = True )
    akActor.RemoveItem( kRenderedDevice, -1, True )

    if kInventoryDevice.HasKeyword( DD_kw_ItemType_Suit )
      akActor.UnEquipItemSlot( 33 )
    endIf
  endIf

  tmpZRef.UnregisterForAllEvents()
  tmpZRef = None

  tmpORef.Delete()
  tmpORef = None

  if akActor == Player
    DD_PlayerEquippedItems.RemoveAddedForm( kInventoryDevice )
  endIf
endFunction

 

Posted (edited)

 

3 hours ago, ThisNameHasntBeenTaken said:

But some of us actually like playing the games.


We all do. 

 

3 hours ago, ThisNameHasntBeenTaken said:

we’re expected to go through each one individually, monitor for any new posts, and read every single thread to ensure we have the most up-to-date version of every mod, manually.


You asked for help and Elsidia when out of their way to do so. Pointed you right at the thing you needed. Asking for help wasn't the issue.

 

On 5/16/2024 at 6:18 PM, ThisNameHasntBeenTaken said:

You sent me to a page, that left me to another page. Not even ChatGPT decrypting this message could figure out what's going on in that post. 


This is the issue. The response when they did go out of their way to help you.

 

3 hours ago, ThisNameHasntBeenTaken said:

I had already figured out what I needed before they replied, anyway.

 

Especially when all it took was a little bit of effort on your part to begin with.

To be honest. Adding Mods to a game will be PITA. "will" not "can". Not a question of "if" but "when" your game won't load. It's your own unique problem you've created yourself and no one else is responsible for maintaining your modded game. Feel free to ask for help but don't be a jerk about it when some effort is required on your part when someone offers it.

From. https://www.loverslab.com/guidelines/

  1. The biggest and most important thing of this community is that the modders come first. They are the ones who make this community worth coming to, they are the ones enabling you to even play these mods.  Meaning if you don't like the way a mod is going, don't be a jerk about it, they can take the mod in whatever direction they want. Don't like it? Then make your own release and put the work in yourself. Find a bug or issue that needs to be fixed? Don't be a jerk about it and raise your concerns and feedback in a constructive manner.
     
  2. Don't be a jerk. Seriously, does this really need to be said?
Edited by jbezorg
Posted (edited)
13 hours ago, jbezorg said:
Bool Function HasRemovalPaste()

This function is from DD 2.0 RC8 and never trigger - in  DD 2.0 RC9 call this function is remarked.

Instead of that there is changed Displaydialogue DD_RemoveParasiteMSG [MESG:092DAF67] where is added check is player have DD_Special_Cream "Special Cream" [MISC:092DE27F]

This cream is crafted in alchemist bench (Sanctuary). Recipe DD_Co_Special_Cream [COBJ:092DE280]

To change it to Yours you need made own custom tentacles device and change this dialogue to Yours and add new crafting recipe for cream.

12 hours ago, jbezorg said:
; CheckDependencies = False does nothing. forced true w/in RemoveDevice()

It was removed in DD 2.0 RC9 due to split script trigger from player activated remove device. So if this check is skipped, then it made problems with correct equipped devices. Devices is damaged in remove process.

12 hours ago, jbezorg said:
Int iArmorIdx = 0
  while( iArmorIdx < DD_TentacleMonster.Length )
    Int  iSanity  = 5
    Bool bSuccess = False
    ; Hit it with s hammer 5 times?
    while( !bSuccess && iSanity > 0 )
      iSanity -= 1
      ; CheckDependencies = False does nothing. forced true w/in RemoveDevice()
      bSuccess = Tools.libs.RemoveDevice( akActor, DD_TentacleMonster[ iArmorIdx ], DestroyDevice = True )
      Utility.Wait( 0.25 )
    endWhile
    iArmorIdx += 1
  endWhile

Hmm.... if i understand right - you made own DD_TentacleMonster formlist, where is stored all devices for remove. So if you want work this part as it is, in list first put items what need removed first and as last main device. Then in theory it will work as first is removed items what depend on main armor, and then removed main armor (now DD device protection will allow freely remove it)

Edited by Elsidia
Posted
10 hours ago, jbezorg said:
Function ForceRemoveDevice

Will trigger player rendered device protection system as you remove rendered device before remove inventory device from DD_PlayerEquippedItems. To work this part correct, you need before remove rendered device, remove inventory device from list.

 

Posted (edited)
4 hours ago, Elsidia said:

Instead of that there is changed Displaydialogue DD_RemoveParasiteMSG [MESG:092DAF67] where is added check is player have DD_Special_Cream "Special Cream" [MISC:092DE27F]

This cream is crafted in alchemist bench (Sanctuary). Recipe DD_Co_Special_Cream [COBJ:092DE280]

To change it to Yours you need made own custom tentacles device and change this dialogue to Yours and add new crafting recipe for cream.


Got it! Thanks!

 

4 hours ago, Elsidia said:

Will trigger player rendered device protection system as you remove rendered device before remove inventory device from DD_PlayerEquippedItems. To work this part correct, you need before remove rendered device, remove inventory device from list.

 



Worked okay with "DD_PlayerEquippedItems.RemoveAddedForm( kInventoryDevice )" at the end. Didn't trigger device protection.

Maybe "removaltoken = True" or "svu = True" has the same effect as "DD_PlayerEquippedItems.RemoveAddedForm( kInventoryDevice )" at the beginning? Still, won't hurt to make the suggested change.

Moved it into my own tool library and made the suggested changes.  The DD "libs" reference wasn't removed. 

Function ForceRemoveDevice( Actor akActor, Armor kInventoryDevice, Bool bDestroyDevice = True )
  ObjectReference tmpORef       = libs.Player.PlaceAtMe( kInventoryDevice, abInitiallyDisabled = True )
  DD:DD_RestraintScript tmpZRef = tmpORef as DD:DD_RestraintScript
  Armor kRenderedDevice         = tmpZRef.RenderedDevice
  libs.removaltoken             = True

  if akActor == libs.Player
    libs.DD_PlayerEquippedItems.RemoveAddedForm( kInventoryDevice )
  endIf

  if akActor.IsEquipped( kInventoryDevice )
    libs.svu = True
    akActor.Unequipitem( kInventoryDevice, abSilent = True )
    
    if bDestroyDevice
      akActor.RemoveItem( kInventoryDevice, -1, True )
    endIf
  endIf

  if akActor.IsEquipped( kRenderedDevice )
    akActor.UnEquipItem( kRenderedDevice, abSilent = True )
    akActor.RemoveItem( kRenderedDevice, -1, True )

    if kInventoryDevice.HasKeyword( libs.DD_kw_ItemType_Suit )
      akActor.UnEquipItemSlot( 33 )
    endIf
  endIf

  tmpZRef.UnregisterForAllEvents()
  tmpZRef = None

  tmpORef.Delete()
  tmpORef = None
endFunction


 

Edited by jbezorg
Posted

I created the parasite script a while ago. But the approach with the custom keyword seems more dynamic in hindsight. If you want to create your own for a quest you can copy the device and just change the keyword property to a keyword from something you choose. 

 

@Elsidia if you want to change my script for a new RC9 patch you can. Everything I made for RC8 is free to use for everyone.

Posted
22 hours ago, jbezorg said:

Is there a way to force unequip a device?

I've made a few devices that are an extension of a main device.

  1. These supplemental devices must have the main device equipped to be equipped
  2. They cannot be removed with the the main device equipped

 

have you heard of Latex Collar Curse??  https://www.loverslab.com/topic/229616-latex-collar-curse/ by awesomeSPAS

 

 

it may very well have some information that will be helpful as that mod is based on a collar that cannot be removed if certain other

items are worn (which it usually puts on  you).  the collar can unequip itself if you meet certain conditions.

 

 

Posted

Hi everyone!

I use the Kziitd Fetish Toolset and the standard Devious Devices. I recently stumbled upon the unofficial update of the Devious Devices (RC9, Beta 2).

Since thiss update, when the feet are restrained, the walking speed increases every time when I switch to first person view (by increasing the "av speedmult"). Each time I switch from third person to first person a factor is multiplied (this now also applies to the Kziitd Fetish Toolset restraints.

 

I could reset the speedmult everytime in the console, but this very anoying. Do you know a better solution for this?

Posted
8 minutes ago, Khaledanon said:

Hi everyone!

I use the Kziitd Fetish Toolset and the standard Devious Devices. I recently stumbled upon the unofficial update of the Devious Devices (RC9, Beta 2).

Since thiss update, when the feet are restrained, the walking speed increases every time when I switch to first person view (by increasing the "av speedmult"). Each time I switch from third person to first person a factor is multiplied (this now also applies to the Kziitd Fetish Toolset restraints.

 

I could reset the speedmult everytime in the console, but this very anoying. Do you know a better solution for this?

 

My recommendation is to just disable speedmult diddling in every mod you can. The more mods you have messing with that value, the more likely it is they'll race one another or otherwise step on each other's state tracking for it.

 

I've had so many problems with mods making conflicting changes to speedmult leaving me unable to move at all (or with The Flash's lightning speed superpowers), that for my own mods I've simply stuck with InputEnableLayers to temporarily block sprinting or running. At least those (if managed properly) can be applied and removed independently by multiple mods at the same time without interfering with each other, and without eventually making the game unplayable.

Posted
1 hour ago, vaultbait said:

 

My recommendation is to just disable speedmult diddling in every mod you can. The more mods you have messing with that value, the more likely it is they'll race one another or otherwise step on each other's state tracking for it.

 

I've had so many problems with mods making conflicting changes to speedmult leaving me unable to move at all (or with The Flash's lightning speed superpowers), that for my own mods I've simply stuck with InputEnableLayers to temporarily block sprinting or running. At least those (if managed properly) can be applied and removed independently by multiple mods at the same time without interfering with each other, and without eventually making the game unplayable.

I tweaked the MCM of Devious Devices, so the speed reduction is zero to deactivate it. It didn't help.

There I noticed, that regardless of the speed reduction, it doubles my current speed and adds the setting's speed reduction value on top.

 

I'm not proficient enough with mods to deactivate the speed modification of Devious Devices totally...

Posted
4 hours ago, vaultbait said:

My recommendation is to just disable speedmult diddling in every mod you can. The more mods you have messing with that value, the more likely it is they'll race one another or otherwise step on each other's state tracking for it.

 

This.

There was a Power Armor Training mod that set the av speedmult to 0 when entering powered armor if you never read the manual. I really liked it because it gave me another RP reason not to use powered armor.

There was also another mod that removed the world borders.

...

Insane speedmult + no world borders = orbit

 
 

Posted
On 5/3/2024 at 11:04 AM, stas2503 said:

these are different items

 

Edit: I made sliders. I can upload it here.

  Reveal hidden contents

Fallout42024-05-0323-21-49-93.jpg.103e84641b7251f79d85df90ccc2041b.jpg

 

If I'm reading this correctly, you're saying you've made an FG conversion of RC9?

could you please share it?

Posted
19 hours ago, jbezorg said:

"removaltoken = True"

This thing is from DD 2.0 original. I still not understand completely how it work, but it's mostly used for NPC items remove not to trigger scripts. possibly in RC9 it used a less.

19 hours ago, jbezorg said:

"svu = True"

RC9 variable to manage script triggering. "sv" just my imagination. "u" - unequip - prevents trigger DD item script when you unequip it. "e" - equip - prevents trigger DD item script when you equip item. Using standard equip unequip command. It's necessary for not run script double time when you equip or unequip items. In original DD it runs 2 or 3 times and mostly have problems (one of it was spawn 2 rendered devices of one item) There is more secret variables of that for corectly NPC work.

19 hours ago, jbezorg said:

Maybe "removaltoken = True" or "svu = True" has the same effect as "DD_PlayerEquippedItems.RemoveAddedForm( kInventoryDevice )" at the beginning?

It's not really that. Protected system is as event in DD_PlayerRefScript and it triggers in any rendered device unequip. Event OnItemUnequipped(Form akBaseObject, ObjectReference akReference). So i can only guess, that Fallout4 have own script trigger order - as it first completes your script and remove item from list and then trigger this event from another script.

 

Posted
4 hours ago, Immortanengineer said:

If I'm reading this correctly, you're saying you've made an FG conversion of RC9?

could you please share it?

I did it, but I haven't received permission to publish it yet. After the Droids Commonwealth story, I don't want to take any risks.

Posted
15 minutes ago, stas2503 said:

I did it, but I haven't received permission to publish it yet. After the Droids Commonwealth story, I don't want to take any risks.

 

I think it's sorely needed, please publish them. Just add the usual disclaimer "I will immediately remove if this seen as inappropriate" and add credits, this should be good enough.

Pretty please!

Posted
40 minutes ago, kurotatsu said:

 

I think it's sorely needed, please publish them. Just add the usual disclaimer "I will immediately remove if this seen as inappropriate" and add credits, this should be good enough.

Pretty please!

Oh yeah. Fuck all the guidelines, rules, etc. so long as you get what you want. Very cool.

Posted
52 minutes ago, kurotatsu said:

 

I think it's sorely needed, please publish them. Just add the usual disclaimer "I will immediately remove if this seen as inappropriate" and add credits, this should be good enough.

Pretty please!

 

Posted
9 hours ago, Immortanengineer said:

If I'm reading this correctly, you're saying you've made an FG conversion of RC9?

could you please share it?

 

There are already two FG conversions (one with HHS and one without) which include everything in RC8, they're just missing the handful of new items from RC9 because nobody's taken time to update them.

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
×
×
  • Create New...