Jump to content

Recommended Posts

12 hours ago, vjck2 said:

it is great work.

i use CBBE but found some wrong polygon under the arm. (same as icebee001's image)

any plan to fix this?

 

 

 

While I don't have this problem in third person, I do notice it in first person if I force the camera to the side. Here. 

 

Spoiler

2135552116_Capturadepantalla2023-05-1905_15_57.png.56e5e349222d2c54264b3c95f1247a14.png

 

 

 

 

Testing a little, I notice that it does disappear when firing the script. I presume that this happens in your case as well. As you can see, in this capture the arm disappeared and so did the pipboy.

 

Spoiler

902131473_Capturadepantalla2023-05-1912_07_43.png.27cee1ddec52e4c6855d2cd8473f50bc.png

 

1653645107_Capturadepantalla2023-05-1912_07_24.png.bac4574298042ab597c52a08a5e73a17.png

 

But when leaving the MCM, that piece of node returns. Maybe the game is bringing it back? Maybe because it's related to pipboy management?

 

So I said, fuck it, I'm going to shrink all the nodes on the left side, including their offsets. Look at this monster I created just to amputate the left arm. I put in absolutely every node that could be put in. 

 

Spoiler

Function AmputateLeftArm(Actor Ao)
	If  Ao==Game.GetPlayer()
  
		_Amp_Amputee_Global.SetValue(1)
		ResetAmputeeLayer()
		Var[] kargs = new Var[1]
		kargs[0] = 1
		SendCustomEvent("OnAmputationEvent", Kargs)

   SetNodeScale(Ao, "LArm_ForeArm1", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_Hand", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperArm_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperFat_skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm1_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Hand_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperFat_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperArm_Skin_Offset", 0.0, 1)

   SetNodeScale(Ao, "LArm_ForeArm1", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperArm_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperFat_skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_Hand", 0.0, 2)
   SetNodeScale(Ao, "LArm_Hand_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm1_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperArm_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperFat_Skin_Offset", 0.0, 2)

   SetNodeScale(Ao, "LArm_UpperTwist1_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperTwist2_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperTwist1_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperTwist2_Skin_Offset", 0.0, 1)

   SetNodeScale(Ao, "LArm_Finger11", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger12", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger13", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger21", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger22", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger23", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger31", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger32", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger33", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger41", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger42", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger43", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger51", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger52", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger53", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger11_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger12_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger13_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger21_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger22_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger23_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger31_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger32_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger33_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger41_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger42_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger43_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger51_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger52_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger53_Offset", 0.0, 1)

   SetNodeScale(Ao, "LArm_Finger11", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger12", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger13", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger21", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger22", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger23", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger31", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger32", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger33", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger41", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger42", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger43", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger51", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger52", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger53", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger11_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger12_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger13_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger21_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger22_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger23_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger31_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger32_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger33_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger41_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger42_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger43_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger51_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger52_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger53_Offset", 0.0, 2)


   SetNodeScale(Ao, "PipboyBone", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL1", 0.0,2)
   SetNodeScale(Ao, "AnimObjectL2", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL3", 0.0, 2)
   SetNodeScale(Ao, "PipboyBone_Offset", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL1_Offset", 0.0,2)
   SetNodeScale(Ao, "AnimObjectL2_Offset", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL3_Offset", 0.0, 2)
   SetNodeScale(Ao, "PipboyBone", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL1", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL2", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL3", 0.0, 1)
   SetNodeScale(Ao, "PipboyBone_Offset", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL1_Offset", 0.0,1)
   SetNodeScale(Ao, "AnimObjectL2_Offset", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL3_Offset", 0.0, 1)

   
   Else; NPCs
   
   SetNodeScale(Ao, "LArm_ForeArm1", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin", 0.0)
   SetNodeScale(Ao, "LArm_UpperArm_Skin", 0.0)
   SetNodeScale(Ao, "LArm_UpperFat_skin", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm1_Offset", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_UpperArm_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_UpperFat_skin_Offset", 0.0)

	EndIf

If _Amp_ArmBandages.GetValueInt()==0 
    Ao.EquipItem(_Amp_Amputee_LeftArm,true,true)
Else
EndIf
EndFunction

 

 

Did it work? 
No. 
Absolutely not. ?


I still see that bit in first person (it doesn't bother me honestly) but I presume you and others will see it in third person. 

 

My suspicion is that this is hardcoded in the game and we won't be able to do this. ?

 

 

Link to comment
3 hours ago, JB. said:

 

 

While I don't have this problem in third person, I do notice it in first person if I force the camera to the side. Here. 

 

  Hide contents

2135552116_Capturadepantalla2023-05-1905_15_57.png.56e5e349222d2c54264b3c95f1247a14.png

 

 

 

 

Testing a little, I notice that it does disappear when firing the script. I presume that this happens in your case as well. As you can see, in this capture the arm disappeared and so did the pipboy.

 

  Hide contents

902131473_Capturadepantalla2023-05-1912_07_43.png.27cee1ddec52e4c6855d2cd8473f50bc.png

 

1653645107_Capturadepantalla2023-05-1912_07_24.png.bac4574298042ab597c52a08a5e73a17.png

 

But when leaving the MCM, that piece of node returns. Maybe the game is bringing it back? Maybe because it's related to pipboy management?

 

So I said, fuck it, I'm going to shrink all the nodes on the left side, including their offsets. Look at this monster I created just to amputate the left arm. I put in absolutely every node that could be put in. 

 

  Hide contents

Function AmputateLeftArm(Actor Ao)
	If  Ao==Game.GetPlayer()
  
		_Amp_Amputee_Global.SetValue(1)
		ResetAmputeeLayer()
		Var[] kargs = new Var[1]
		kargs[0] = 1
		SendCustomEvent("OnAmputationEvent", Kargs)

   SetNodeScale(Ao, "LArm_ForeArm1", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_Hand", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperArm_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperFat_skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm1_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Hand_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperFat_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperArm_Skin_Offset", 0.0, 1)

   SetNodeScale(Ao, "LArm_ForeArm1", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperArm_Skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperFat_skin", 0.0, 2)
   SetNodeScale(Ao, "LArm_Hand", 0.0, 2)
   SetNodeScale(Ao, "LArm_Hand_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm1_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperArm_Skin_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_UpperFat_Skin_Offset", 0.0, 2)

   SetNodeScale(Ao, "LArm_UpperTwist1_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperTwist2_Skin", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperTwist1_Skin_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_UpperTwist2_Skin_Offset", 0.0, 1)

   SetNodeScale(Ao, "LArm_Finger11", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger12", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger13", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger21", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger22", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger23", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger31", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger32", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger33", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger41", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger42", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger43", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger51", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger52", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger53", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger11_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger12_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger13_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger21_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger22_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger23_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger31_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger32_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger33_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger41_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger42_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger43_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger51_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger52_Offset", 0.0, 1)
   SetNodeScale(Ao, "LArm_Finger53_Offset", 0.0, 1)

   SetNodeScale(Ao, "LArm_Finger11", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger12", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger13", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger21", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger22", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger23", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger31", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger32", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger33", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger41", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger42", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger43", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger51", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger52", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger53", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger11_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger12_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger13_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger21_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger22_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger23_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger31_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger32_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger33_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger41_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger42_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger43_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger51_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger52_Offset", 0.0, 2)
   SetNodeScale(Ao, "LArm_Finger53_Offset", 0.0, 2)


   SetNodeScale(Ao, "PipboyBone", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL1", 0.0,2)
   SetNodeScale(Ao, "AnimObjectL2", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL3", 0.0, 2)
   SetNodeScale(Ao, "PipboyBone_Offset", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL1_Offset", 0.0,2)
   SetNodeScale(Ao, "AnimObjectL2_Offset", 0.0, 2)
   SetNodeScale(Ao, "AnimObjectL3_Offset", 0.0, 2)
   SetNodeScale(Ao, "PipboyBone", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL1", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL2", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL3", 0.0, 1)
   SetNodeScale(Ao, "PipboyBone_Offset", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL1_Offset", 0.0,1)
   SetNodeScale(Ao, "AnimObjectL2_Offset", 0.0, 1)
   SetNodeScale(Ao, "AnimObjectL3_Offset", 0.0, 1)

   
   Else; NPCs
   
   SetNodeScale(Ao, "LArm_ForeArm1", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin", 0.0)
   SetNodeScale(Ao, "LArm_UpperArm_Skin", 0.0)
   SetNodeScale(Ao, "LArm_UpperFat_skin", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm1_Offset", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm1_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm2_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_ForeArm3_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_UpperArm_Skin_Offset", 0.0)
   SetNodeScale(Ao, "LArm_UpperFat_skin_Offset", 0.0)

	EndIf

If _Amp_ArmBandages.GetValueInt()==0 
    Ao.EquipItem(_Amp_Amputee_LeftArm,true,true)
Else
EndIf
EndFunction

 

 

Did it work? 
No. 
Absolutely not. ?


I still see that bit in first person (it doesn't bother me honestly) but I presume you and others will see it in third person. 

 

My suspicion is that this is hardcoded in the game and we won't be able to do this. ?

 

 

Maybe you can't completely scale a node to 0, like an open interval [x, 0[

Edited by lee3310
Link to comment
On 5/17/2023 at 9:21 PM, JB. said:

 

@icebee001

 

I have managed to replicate your problem and basically it looks like I have to ask for another requirement. 

 

Zex Skeleton - a must for all Loverslab mods, anyway.

 

 

For those who want a version without bandages. It seems that it will not be possible. Here a couple of screenshots of how the arm looks without the bandages. It doesn't look natural enough to me. Especially the hole. ?

 

 

  Hide contents

Photo131.png.10e3c67892ed00ae263f35cd2a00892d.pngPhoto132.png.69585eeab5c54571e337285ce85235a9.png

 

You can edit polygon vertices in OS to close them, and then use a carving brush to decorate them, which will be even better.
---------------------
1589415502_36020230520075027069.jpg.234bbf0bef8540f107685d79330be419.jpg

 

Set aside 4-5 layers of polygon vertices according to the position you want to cut off

190806349_36020230520071439054.jpg.81bda3080e94fdf9d522eef3766e4ae0.jpg
 

Select first layer polygon vertices

 

1946428914_36020230520071549316.jpg.9c63716c423af5855f21719a95411a02.jpg

 

Zoom xyz together to the minimum using the edit zoom tool, and they fly together to another position, but almost merge together.

 

1953736420_36020230520071740973.jpg.7ef406fce95651c345b6bc42c45eaa98.jpg

 

Use the moving tool to pull them back together to the approximate correct position.

 

903750235_36020230520071955903.jpg.97fdcbf7f548e089f358cab30f75a869.jpg

1990955777_36020230520072331407.jpg.4185464555de731ebe2519881214055b.jpg

2100026802_36020230520072437598.jpg.25f87c01ecb93d0574a141e33f09e4a3.jpg

 

The remaining layers will be done in the same way, but the scaling ratio will gradually increase.

 

1140599837_36020230520072843512.jpg.5b795c7652d62af242602a271dabca43.jpg

 

Once again, select only the first layer of polygon vertices and use a brush to squeeze them into the position where the second layer vertices are close.

 

1867004450_36020230520073046381.jpg.99ec02ee9372c6df83c67f0de992c9cf.jpg

 

The appearance of all layers after rough adjustment.

 

776216896_36020230520073113229.jpg.d8f857939c0ee5186609a1cc783a9440.jpg

146150623_36020230520073230955.jpg.d2cf67248817083c4e1616ccba887857.jpg

 

Reduce the size of the brush and randomly apply the appearance to an irregular and more natural appearance.

 

1264941339_36020230520073642810.jpg.30bac0a22089205e5362d0b3a807cadd.jpg

1618495398_36020230520073800668.jpg.470b24ea4ce1e1668793027001ce1302.jpg

 

If the perspective is very close to the vertices of the first layer of polygons, you will find that there are still very small holes that can be repeatedly applied with a smooth brush until they are almost together (this is a dirty edit, as the correct way is to merge the polygon vertices into one using other 3D software)

 

1561594262_36020230520074002282.jpg.4e27b2afba4132ebd13752ce3f743eda.jpg

 

But as a game appearance, it is already sufficient.

Also pay attention to the weights of these edited polygon vertices, assigning them only one "upper limb" bone can ensure the appearance remains unchanged (small holes are almost imperceptible and will not become easily noticeable)

-----------

 

Finally, if you need a bs file for this body, then you can load the non amputated version as a reference body for slider deformation. By masking the polygons on the amputated arm and applying all the referenced deformation sliders, the appearance of the amputated arm can be stabilized. Fortunately, regardless of body shape, there are not many deformation projects for the slider of the upper limbs and arms. If there are very special deformation results, such as the arm becoming thicker in a certain slider, edit the corresponding area with an expansion brush while the slider is in editing mode.

 

Edited by kziitd
Link to comment
4 hours ago, lee3310 said:

Maybe you can't completely scale a node to 0, like an open interval [x, 0[

It's a posibility. But I have my doubts because Fallout is so similar to Skyrim (where the nodes do disappear).

Link to comment

@kziitd Thanks! But what I want to avoid with this mod is having to create different meshes for each body type. I'm looking for a more universal solution.

 

With the Amputator you can use the vanilla body, Fusion Girl, CBBE, TWB, Atomic Muscle, BodyTalk, and whatever other body is out there. You don't need to build anything in Bodyslide you don't even have to create specific outfits. This mod is right now compatible with Vtaw, EasyGirl, with absolutely ALL the outfits that exist and will exist. See the advantage?

 

This mod grabs (roughly) the nodes and shrinks them to the maximum.

 

Of course, it has its drawbacks. You can't tailor amputations to your liking. That's why I had to add the bandages, to hide the horrible result of the node shrinkage.

 

To do what you say, you have to create versions for FG, CBBE, TWB, etc

.

 

And it's just the naked body.

 

If you start thinking about all the outfits that have to be adapted, you can faint.?

Link to comment
7 hours ago, JB. said:

@kziitd Thanks! But what I want to avoid with this mod is having to create different meshes for each body type. I'm looking for a more universal solution.

 

With the Amputator you can use the vanilla body, Fusion Girl, CBBE, TWB, Atomic Muscle, BodyTalk, and whatever other body is out there. You don't need to build anything in Bodyslide you don't even have to create specific outfits. This mod is right now compatible with Vtaw, EasyGirl, with absolutely ALL the outfits that exist and will exist. See the advantage?

 

This mod grabs (roughly) the nodes and shrinks them to the maximum.

 

Of course, it has its drawbacks. You can't tailor amputations to your liking. That's why I had to add the bandages, to hide the horrible result of the node shrinkage.

 

To do what you say, you have to create versions for FG, CBBE, TWB, etc

.

 

And it's just the naked body.

 

If you start thinking about all the outfits that have to be adapted, you can faint.?

Yes, your goal is to make all clothing automatically appear amputated.

Perhaps the player's curiosity is to see what it really looks like after taking off all their clothing.:joy:

Or when taking a shower, or in summer, wear underwear and shorts that do not use slot 33?

It would be great if a script could be used to automatically put on amputated nudity.

Link to comment
  • 1 month later...

Hey @Kziitd sorry to bother but could you release that? I may be missing something but it looks like you made a better rendered version of this mod's meshes with that arm and all you posted. Would it be possible to release that to us uneducated masses? I for one would be very thankful.

Link to comment

Right now when I use the MCM to amputate a limb I can (sensibly) not equip anything on them anymore. I assume part of the script disables amputated limb equipment slots. Could you tell us what part of it is involved in that? I want to make some modifications on my end to allow you to equip the CROSS Cybernetics gear on amputated limbs, so you can use the them as proper prosthetics.

Link to comment

After digging into the .pex and mod I was able to get the equipment on, but I now realize the node adjustments are going to clip off whatever you actually put on as the cybernetic arm vanishes at the same length of the stump. I was hoping I'd be able to hack up something the way I did with the original W&B version but the way this works isn't quite the same. I guess I could toggle the amputation off and on as needed.

Hmm, I wonder if I could make a script that triggers the amputation when I remove the prosthetic...

Link to comment
  • 3 weeks later...
  • 3 weeks later...
1 hour ago, cyrslash said:

Hi all.

 

I have an issue : the mod works first, but when I save and quit, then reload my save, only the hand is missing. I have downloaded all requested mods and I use MO2. I dont know what I have made wrong. Any help would be welcome. Thanks !

I will check it out. I think something like this happened to me while testing Slavers. For the time being, use the MCM functions to correct it. 

Link to comment
2 hours ago, cyrslash said:

Hi all.

 

I have an issue : the mod works first, but when I save and quit, then reload my save, only the hand is missing. I have downloaded all requested mods and I use MO2. I dont know what I have made wrong. Any help would be welcome. Thanks !

I had that issue at first until I realized I was missing SUP F4SE. Installing it didn't fix it until I then used the Amputator MCM to restore my arm(s) and then remove the one which was supposed to be missing.

Link to comment
47 minutes ago, Karna5 said:

I realized I was missing SUP F4SE.

 

This has happened to so many users of one of my mods I added a startup check so any time the game loads my mod checks to see whether SUP F4SE is present and pops up an annoying messagebox to notify the user if it's not.

 

If anyone wants the same in their mods, feel free to steal my implementation, I basically do this:

 

Spoiler
Function CheckForDependencies()
    If F4SE.GetVersionMinor() == 0
        Debug.MessageBox("Unhealthy Craving can't find F4SE. Make sure the game is started with f4se_loader.exe.")
    ElseIf F4SE.GetPluginVersion("SUP_F4SE") == -1
        Debug.MessageBox("Unhealthy Craving can't find SUP F4SE. Please check your installation.")
    ElseIf F4SE.GetPluginVersion("F4EE") == -1
        Debug.MessageBox("Unhealthy Craving can't find LooksMenu. Please check your installation.")
    ElseIf F4SE.GetPluginVersion("F4MCM") == -1
        Debug.MessageBox("Unhealthy Craving can't find Mod Configuration Menu (MCM). Please check your installation.")
    ElseIf !Game.IsPluginInstalled("DLCCoast.esm")
        Debug.MessageBox("Unhealthy Craving can't find the Far Harbor DLC. Please check your installation.")
    ElseIf !Game.IsPluginInstalled("DLCNukaWorld.esm")
        Debug.MessageBox("Unhealthy Craving can't find the Nuka-World DLC. Please check your installation.")
    ElseIf !Game.IsPluginInstalled("LenA_RadMorphing.esp")
        Debug.MessageBox("Unhealthy Craving can't find Rad Morphing Redux. Please check your installation.")
    EndIf
EndFunction

 

 

Link to comment
7 hours ago, Karna5 said:

I had that issue at first until I realized I was missing SUP F4SE. Installing it didn't fix it until I then used the Amputator MCM to restore my arm(s) and then remove the one which was supposed to be missing.

thks all for the reply. I have installed it but the issue is still existing.

Link to comment
26 minutes ago, cyrslash said:

thks all for the reply. I have installed it but the issue is still existing.

I don't think your bug is related to that. I have uploaded a new update. I have not been able to reproduce your error, but I have added one more line to the script. Let me know how that went for you and if it still doesn't work I'd like to know what type of amputation you have. 

Link to comment

Hi, JB. I've been using this mod fairly extensively the last several days, and I love it a lot. Even after completing your amazing Commonwealth Slavers story line I decided to continue playing with no arms for now. Actually in the past I've had several no-arm playthroughs using meshes, but this is better.

 

There's one issue, however, which is making this difficult. I find myself in combat mode sometimes (not through this mod, of course). But this mod is blocking me from exiting combat mode. It's incredibly hard to figure out work arounds to exit combat mode.

 

Is there a way for this mod to block the combat mode toggle if you're not in combat but to allow the combat mode toggle if you're in it?

Link to comment
42 minutes ago, Karna5 said:

Hi, JB. I've been using this mod fairly extensively the last several days, and I love it a lot. Even after completing your amazing Commonwealth Slavers story line I decided to continue playing with no arms for now. Actually in the past I've had several no-arm playthroughs using meshes, but this is better.

 

There's one issue, however, which is making this difficult. I find myself in combat mode sometimes (not through this mod, of course). But this mod is blocking me from exiting combat mode. It's incredibly hard to figure out work arounds to exit combat mode.

 

Is there a way for this mod to block the combat mode toggle if you're not in combat but to allow the combat mode toggle if you're in it?

 

You mean VATS mode? 

 

Does it happen to you when you have any of the amputations? What specific amputation? I will try to reproduce it.

Link to comment
26 minutes ago, JB. said:

You mean VATS mode? 

 

Does it happen to you when you have any of the amputations? What specific amputation? I will try to reproduce it.

 

No, you successfully block VATS mode. When I have both arms missing, certain actions throw me into combat mode, and it's hard to get out of it. I know one of the actions is stealth submission (I think with MCG), but I've found myself in combat mode other times, too. And it's incredibly hard to get out of combat mode.

 

On a side note, I use the wonderful Kicks and Punches (Kicks And Punches - Unarmed Animations mod at Fallout 4 Nexus - Mods and community (nexusmods.com)) mod for melee combat, and you could consider having an option to allow melee combat without arms since we can still kick (obviously Commonwealth Slavers would not allow that). If we could still go in and out of combat mode without arms it would solve the issue of not being able to get out of combat mode.

 

If you'd like an example of the kicks, around 36 seconds into this film my character is fighting a death claw with it:

 

51874024213_5f4ce37861_o.jpgDemoness by Guglielmo Earthbound, on Flickr

 

Edit: In your Commonweath Slavers mod, there is a scene where I had to fight a bloat fly, but it was out of reach for me to hit it. So I had to use back flips to reach and kill it. I had one arm in that fight so was allowed to enter combat mode :)

 

Edited by Karna5
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   0 members

    • No registered users viewing this page.
×
×
  • 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