Problem with Eyes Rolling Back on Custom Player Model I Created

This is my first time trying to make an addon for Gmod. I’ve gone through a lot of trial and error to get this far, and other treads on this forum have helped immensely. I can’t find anyone here (or anywhere else) with my specific issue, to I decided to make an account and start my own thread.

My problem is that I’ve managed to cobble together a player model (using a workshop model originally for SFM and a similar model of a different character made for Gmod), but something is wrong with the eyes. They follow the camera normally in the character selection menu, and look normal on non-player ragdolls. However, after spawning as my model, the eyes point straight up relative to the world. They still spin horizontally, and if the head of the model is also facing directly up, they look normal. It’s almost as if they’re tracking an invisible point that hovers far over the model. It will probably be requested, so here is the .qc:


$ModelName "player/Sombra_LosMuertosv2.mdl"


$attachment "eyes" "ValveBiped.Bip01_Head1" 0.00 -1.61 62.30 absolute
$attachment "mouth" "ValveBiped.Bip01_Head1" 0.80 -5.80 -0.15 rotate 0 -80 -90

$Model "Face" "sombra_losmuertos_body8_model0.smd" {

	eyeball "eye_right" "ValveBiped.Bip01_Head1" -1.140000 -1.613003 62.30146 "eyeball_r" 1 2 "iris_unused" 0.63
	eyeball "eye_left" "ValveBiped.Bip01_Head1" 1.140000 -1.613003 62.30146 "eyeball_l" 1 -2 "iris_unused" 0.63

	eyelid  upper_right "sombra_losmuertos_body8_model0.vta" lowerer 1 -62.30 neutral 0 -62.30 raiser 2 -62.30 split 0.1 eyeball righteye
	eyelid  lower_right "sombra_losmuertos_body8_model0.vta" lowerer 3 -62.30 neutral 0 -62.30 raiser 4 -62.30 split 0.1 eyeball righteye
	eyelid  upper_left "sombra_losmuertos_body8_model0.vta" lowerer 1 -62.30 neutral 0 -62.30 raiser 2 -62.30 split -0.1 eyeball lefteye
	eyelid  lower_left "sombra_losmuertos_body8_model0.vta" lowerer 3 -62.30 neutral 0 -62.30 raiser 4 -62.30 split -0.1 eyeball lefteye
	
	mouth 0 "mouth" "ValveBiped.Bip01_Head1" 0 1 0
	flexfile "sombra_losmuertos_body8_model0.vta" {
		defaultflex frame 0
		// Already in eyelid lines: flex "" frame 1
		// Already in eyelid lines: flex "" frame 2
		// Already in eyelid lines: flex "lower_right" frame 3
		// Already in eyelid lines: flex "lower_right" frame 4
		// Already in eyelid lines: flex "upper_left" frame 5
		// Already in eyelid lines: flex "upper_left" frame 6
		// Already in eyelid lines: flex "lower_left" frame 7
		// Already in eyelid lines: flex "lower_left" frame 8
		flex "AU42" frame 9
		flexpair "AU1" 1 frame 10
		flexpair "AU2" 1 frame 11
		flexpair "AU4" 1 frame 12
		flexpair "AU1AU2" 1 frame 13
		flexpair "AU12" 1 frame 14
		flexpair "AU12" 1 frame 15
		flex "AU12AU25" frame 16
		flexpair "AU15" 1 frame 17
		flexpair "AU17" 1 frame 18
		flexpair "AU10" 1 frame 19
		flex "AU16" frame 20
		flexpair "AU6" 1 frame 21
		flexpair "AU9" 1 frame 22
		flexpair "AU25" 1 frame 23
		flexpair "AU18" 1 frame 24
		flexpair "AU18" 1 frame 25
		flexpair "AU22" 1 frame 26
		flexpair "AU20" 1 frame 27
		flex "AU32" frame 28
		flex "AU24" frame 29
		flex "AU38" frame 30
		flex "AU31" frame 31
		flexpair "AU26" 1 frame 32
		flexpair "AU27" 1 frame 33
		flexpair "AU26Z" 1 frame 34
	}
	flexcontroller eyelid range 0 1 right_lid_raiser
	flexcontroller eyelid range 0 1 left_lid_raiser
	flexcontroller eyelid range 0 1 right_lid_tightener
	flexcontroller eyelid range 0 1 left_lid_tightener
	flexcontroller eyelid range 0 1 right_lid_droop
	flexcontroller eyelid range 0 1 left_lid_droop
	flexcontroller eyelid range 0 1 right_lid_closer
	flexcontroller eyelid range 0 1 left_lid_closer
	flexcontroller eyelid range 0 1 half_closed
	flexcontroller eyelid range 0 1 blink
	flexcontroller brow range 0 1 right_inner_raiser
	flexcontroller brow range 0 1 left_inner_raiser
	flexcontroller brow range 0 1 right_outer_raiser
	flexcontroller brow range 0 1 left_outer_raiser
	flexcontroller brow range 0 1 right_lowerer
	flexcontroller brow range 0 1 left_lowerer
	flexcontroller nose range 0 1 right_cheek_raiser
	flexcontroller nose range 0 1 left_cheek_raiser
	flexcontroller nose range 0 1 wrinkler
	flexcontroller nose range 0 1 dilator
	flexcontroller mouth range 0 1 right_upper_raiser
	flexcontroller mouth range 0 1 left_upper_raiser
	flexcontroller mouth range 0 1 right_corner_puller
	flexcontroller mouth range 0 1 left_corner_puller
	flexcontroller mouth range 0 1 right_corner_depressor
	flexcontroller mouth range 0 1 left_corner_depressor
	flexcontroller mouth range 0 1 chin_raiser
	flexcontroller phoneme range 0 1 right_part
	flexcontroller phoneme range 0 1 left_part
	flexcontroller phoneme range 0 1 right_puckerer
	flexcontroller phoneme range 0 1 left_puckerer
	flexcontroller phoneme range 0 1 right_funneler
	flexcontroller phoneme range 0 1 left_funneler
	flexcontroller phoneme range 0 1 right_stretcher
	flexcontroller phoneme range 0 1 left_stretcher
	flexcontroller phoneme range 0 1 bite
	flexcontroller phoneme range 0 1 presser
	flexcontroller phoneme range 0 1 tightener
	flexcontroller phoneme range 0 1 jaw_clencher
	flexcontroller phoneme range 0 1 jaw_drop
	flexcontroller phoneme range 0 1 right_mouth_drop
	flexcontroller phoneme range 0 1 left_mouth_drop
	flexcontroller mouth range 0 1 smile
	flexcontroller mouth range 0 1 lower_lip
	flexcontroller eyes range -20 20 eyes_updown
	flexcontroller eyes range -30 30 eyes_rightleft
	flexcontroller phoneme range 0 1 blank2

	localvar blank2
	localvar right_open
	localvar left_open
	localvar right_lip_suppressor
	localvar left_lip_suppressor
	localvar right_depressor_suppressor
	localvar left_depressor_suppressor
	localvar right_corner_suppressor
	localvar left_corner_suppressor
	localvar right_drop_suppressor
	localvar left_drop_suppressor
	localvar right_drop
	localvar left_drop
	%upper_right_raiser = right_lid_raiser * (1 - right_lid_droop * 0.8) * (1 - right_lid_closer) * (1 - blink)
	%upper_right_neutral = (1 - right_lid_droop * 0.8) * (1 - right_lid_raiser) * (1 - right_lid_closer) * (1 - blink)
	%upper_right_lowerer = right_lid_closer + blink * (1 - right_lid_closer)
	%upper_left_raiser = left_lid_raiser * (1 - left_lid_droop * 0.8) * (1 - left_lid_closer) * (1 - blink)
	%upper_left_neutral = (1 - left_lid_droop * 0.8) * (1 - left_lid_raiser) * (1 - left_lid_closer) * (1 - blink)
	%upper_left_lowerer = left_lid_closer + blink * (1 - left_lid_closer)
	%lower_right_raiser = right_lid_closer * 0.25 + blink * 0.25 * (1 - right_lid_closer * 0.25)
	%lower_right_neutral = (1 - right_lid_closer * 0.25) * (1 - 0.5 * blink * 0.25) * (1 - right_lid_tightener * 0.5) * (1 - right_cheek_raiser * 0.25)
	%lower_right_lowerer = 0
	%lower_left_raiser = left_lid_closer * 0.25 + blink * 0.25 * (1 - left_lid_closer * 0.25)
	%lower_left_neutral = (1 - left_lid_closer * 0.25) * (1 - 0.5 * blink * 0.25) * (1 - left_lid_tightener * 0.5) * (1 - left_cheek_raiser * 0.25)
	%lower_left_lowerer = 0
	%AU1R = right_inner_raiser * (1 - right_outer_raiser) * (1 - right_lowerer)
	%AU1L = left_inner_raiser * (1 - left_outer_raiser) * (1 - left_lowerer)
	%AU2R = right_outer_raiser * (1 - right_inner_raiser) * (1 - right_lowerer)
	%AU2L = left_outer_raiser * (1 - left_inner_raiser) * (1 - left_lowerer)
	%AU1AU2R = right_inner_raiser * right_outer_raiser * (1 - right_lowerer)
	%AU1AU2L = left_inner_raiser * left_outer_raiser * (1 - left_lowerer)
	%AU4R = right_lowerer
	%AU4L = left_lowerer
	%AU6R = right_cheek_raiser
	%AU6L = left_cheek_raiser
	%AU9R = wrinkler
	%AU9L = wrinkler
	%AU38 = dilator
	%right_open = smile + right_part * (1 - smile) + right_puckerer + right_funneler + right_upper_raiser * 0.5 + lower_lip * 0.5
	%left_open = smile + left_part * (1 - smile) + left_puckerer + left_funneler + left_upper_raiser * 0.5 + lower_lip * 0.5
	%right_lip_suppressor = 1 / %right_open * (1 - presser) * (1 - bite)
	%left_lip_suppressor = 1 / %left_open * (1 - presser) * (1 - bite)
	%AU10R = right_upper_raiser * right_upper_raiser * 0.5 * %right_lip_suppressor
	%AU10L = left_upper_raiser * left_upper_raiser * 0.5 * %left_lip_suppressor
	%AU25R = right_part * right_part * %right_lip_suppressor * (1 - smile)
	%AU25L = left_part * left_part * %left_lip_suppressor * (1 - smile)
	%AU12AU25 = smile * smile * 0.5 * (%right_lip_suppressor + %left_lip_suppressor)
	%AU18R = right_puckerer * right_puckerer * %right_lip_suppressor
	%AU18L = left_puckerer * left_puckerer * %left_lip_suppressor
	%AU22R = right_funneler * right_funneler * %right_lip_suppressor
	%AU22L = left_funneler * left_funneler * %left_lip_suppressor
	%AU17R = chin_raiser * (1 - jaw_drop * 0.5) * (1 - bite) * (1 - 0.6 * (%AU25R + %AU18R + %AU22R)) * (1 - smile)
	%AU17L = chin_raiser * (1 - jaw_drop * 0.5) * (1 - bite) * (1 - 0.6 * (%AU25L + %AU18L + %AU22L)) * (1 - smile)
	%right_depressor_suppressor = 1 / (%AU18R * 0.8 + %AU22R * 0.8 + %AU17R + bite + right_corner_puller + right_stretcher + right_corner_depressor) * (1 - jaw_drop * 0.5) * (1 - smile * 0.5)
	%left_depressor_suppressor = 1 / (%AU18L * 0.8 + %AU22L * 0.8 + %AU17L + bite + left_corner_puller + left_stretcher + left_corner_depressor) * (1 - jaw_drop * 0.5) * (1 - smile * 0.5)
	%AU15R = right_corner_depressor * right_corner_depressor * %right_depressor_suppressor
	%AU15L = left_corner_depressor * left_corner_depressor * %left_depressor_suppressor
	%right_corner_suppressor = 1 / (%AU18R * 0.8 + %AU22R * 0.8 + %AU17R + bite + right_corner_puller + right_stretcher + right_corner_depressor) * (1 - jaw_drop * 0.5) * (1 - smile)
	%left_corner_suppressor = 1 / (%AU18L * 0.8 + %AU22L * 0.8 + %AU17L + bite + left_corner_puller + left_stretcher + left_corner_depressor) * (1 - jaw_drop * 0.5) * (1 - smile)
	%AU12R = right_corner_puller * right_corner_puller * %right_corner_suppressor
	%AU12L = left_corner_puller * left_corner_puller * %left_corner_suppressor
	%AU20R = right_stretcher * right_stretcher * %right_corner_suppressor
	%AU20L = left_stretcher * left_stretcher * %left_corner_suppressor
	%AU32 = bite
	%AU24 = presser + (1 - presser) * tightener
	%AU31 = jaw_clencher * jaw_clencher / (jaw_clencher + jaw_drop)
	%right_drop_suppressor = 1 / (0.5 * %right_open + right_mouth_drop) * (1 - presser) * (1 - bite)
	%left_drop_suppressor = 1 / (0.5 * %left_open + left_mouth_drop) * (1 - presser) * (1 - bite)
	%right_drop = right_mouth_drop * right_mouth_drop * %right_drop_suppressor
	%left_drop = left_mouth_drop * left_mouth_drop * %left_drop_suppressor
	%AU26R = jaw_drop * (1 - %right_drop) * jaw_drop / (jaw_clencher + jaw_drop)
	%AU26L = jaw_drop * (1 - %left_drop) * jaw_drop / (jaw_clencher + jaw_drop)
	%AU27R = jaw_drop * %right_drop * jaw_drop / (jaw_clencher + jaw_drop)
	%AU27L = jaw_drop * %left_drop * jaw_drop / (jaw_clencher + jaw_drop)
	%AU16 = lower_lip * lower_lip * 0.25 * (%right_lip_suppressor + %left_lip_suppressor) * (1 - 0.5 * (%AU27R + %AU27L))
	%mouth = %AU27R * 0.5 + %AU27L * 0.5 + %AU22R * 0.35 + %AU22L * 0.35 + %AU18R * 0.25 + %AU18L * 0.25 + %AU25R * 0.35 + %AU25L * 0.35 + %AU32 * 0.5 + %AU12AU25 + %AU16 * 0.4
	%blank2 = blank2

	flexcontroller eyes range -20 20 eyes_updown
	flexcontroller eyes range -30 30 eyes_rightleft
}

$BodyGroup "Suit"
{
	studio "sombra_losmuertos_body2_model0.smd"
	blank
}
$BodyGroup "Body"
{
	studio "sombra_losmuertos_body1_model0.smd"
	blank
}
$BodyGroup "Hair"
{
	studio "sombra_losmuertos_body5_model0.smd"
	blank
}
$BodyGroup "Skaket"
{
	studio "sombra_losmuertos_body3_model0.smd"
	blank
}
$BodyGroup "Earrings"
{
	studio "sombra_losmuertos_body4_model0.smd"
	blank
}

$SurfaceProp "flesh"

$Contents "solid"

$EyePosition 0 0 70

$MaxEyeDeflection 90

$AmbientBoost

$MostlyOpaque

$CDMaterials "models	fa\overwatch_n\sombra\"

$Attachment "eyes" "ValveBiped.Bip01_Head1" 3.3 -2.5 0 rotate 0 -90 -90
$Attachment "mouth" "ValveBiped.Bip01_Head1" -0.2 -5.8 0 rotate 0 -80 -90
$Attachment "chest" "ValveBiped.Bip01_Spine2" 4 4 0 rotate 0 95 90
$Attachment "forward" "ValveBiped.forward" 0 0 0 rotate 0 0 0
$Attachment "anim_attachment_RH" "ValveBiped.Anim_Attachment_RH" 0 0 0 rotate -90 -90 0
$Attachment "anim_attachment_LH" "ValveBiped.Anim_Attachment_LH" 0 0 0 rotate -90 -90 0
$Attachment "anim_attachment_head" "ValveBiped.Bip01_Head1" 0 0 0 rotate -90 -90 0

$CBox 0 0 0 0 0 0

$BBox -13 -13 0 13 13 72


$JiggleBone "Hair_Front.1"
{
	is_flexible
	{
		length 10
		tip_mass 30
		pitch_stiffness 100
		pitch_damping 8
		yaw_stiffness 150
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Front.2"
{
	is_flexible
	{
		length 10
		tip_mass 30
		pitch_stiffness 200
		pitch_damping 8
		yaw_stiffness 150
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Left.1"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 200
		pitch_damping 8
		yaw_stiffness 150
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Left.2"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 100
		pitch_damping 7
		yaw_stiffness 150
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Right.1"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 100
		pitch_damping 8
		yaw_stiffness 150
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Right.2"
{
	is_flexible
	{
		length 10
		tip_mass 30
		pitch_stiffness 150
		pitch_damping 8
		yaw_stiffness 100
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Right.3"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 200
		pitch_damping 7
		yaw_stiffness 150
		yaw_damping 6
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Right.4"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 200
		pitch_damping 7
		yaw_stiffness 100
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Tail.1"
{
	is_flexible
	{
		length 30
		tip_mass 50
		pitch_stiffness 100
		pitch_damping 8
		yaw_stiffness 100
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 2.5
	}
}
$JiggleBone "Hair_Tail.2"
{
	is_flexible
	{
		length 20
		tip_mass 50
		pitch_stiffness 125
		pitch_damping 7
		yaw_stiffness 125
		yaw_damping 7
		along_stiffness 100
		along_damping 1
		angle_constraint 10
	}
}
$JiggleBone "Hair_Tail.3"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 150
		pitch_damping 6
		yaw_stiffness 150
		yaw_damping 6
		along_stiffness 100
		along_damping 1
		angle_constraint 15.000001
	}
}
$JiggleBone "Hair_Tail.4"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 200
		pitch_damping 6
		yaw_stiffness 200
		yaw_damping 6
		along_stiffness 100
		along_damping 1
		angle_constraint 15.000001
	}
}
$JiggleBone "Hair_Tail.5"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 250
		pitch_damping 5
		yaw_stiffness 250
		yaw_damping 5
		along_stiffness 100
		along_damping 1
		angle_constraint 16
	}
}
$JiggleBone "Hair_Tail.6"
{
	is_flexible
	{
		length 10
		tip_mass 50
		pitch_stiffness 200
		pitch_damping 5
		yaw_stiffness 200
		yaw_damping 5
		along_stiffness 100
		along_damping 1
		angle_constraint 15.000001
	}
}
$JiggleBone "Glute_L"
{
	is_flexible
	{
		length 30
		tip_mass 10
		pitch_stiffness 500
		pitch_damping 6
		yaw_stiffness 500
		yaw_damping 6
		along_stiffness 300
		along_damping 0
		angle_constraint 2.5
	}
}
$JiggleBone "Glute_R"
{
	is_flexible
	{
		length 30
		tip_mass 10
		pitch_stiffness 500
		pitch_damping 6
		yaw_stiffness 500
		yaw_damping 6
		along_stiffness 300
		along_damping 0
		angle_constraint 2.5
	}
}
$JiggleBone "Breast_L"
{
	is_flexible
	{
		length 30
		tip_mass 10
		pitch_stiffness 250
		pitch_damping 6
		yaw_stiffness 250
		yaw_damping 6
		along_stiffness 100
		along_damping 0
		angle_constraint 5
	}
}
$JiggleBone "Breast_R"
{
	is_flexible
	{
		length 30
		tip_mass 10
		pitch_stiffness 250
		pitch_damping 6
		yaw_stiffness 250
		yaw_damping 6
		along_stiffness 100
		along_damping 0
		angle_constraint 5
	}
}

$IncludeModel "f_anm.mdl"

$Sequence "reference" {
	"sombra_losmuertos_anims\reference"
	fadein 0.2
	fadeout 0.2
	fps 1
}



$Sequence "ragdoll" {
	"sombra_losmuertos_anims\ragdoll.smd"
	activity "ACT_DIERAGDOLL" 1
	fadein 0.2
	fadeout 0.2
	fps 30
}

$Animation "a_proportions" "sombra_losmuertos_anims\a_proportions.smd" {
	subtract "reference" 0
}

$Sequence "proportions" {
	"a_proportions"
	predelta
	autoplay
	fadein 0.2
	fadeout 0.2
	fps 30
	//subtract "a_proportions" 0
	
}


$IKChain "rhand" "ValveBiped.Bip01_R_Hand" knee 0.707 0.707 0
$IKChain "lhand" "ValveBiped.Bip01_L_Hand" knee 0.707 0.707 0
$IKChain "rfoot" "ValveBiped.Bip01_R_Foot" knee 0.707 -0.707 0
$IKChain "lfoot" "ValveBiped.Bip01_L_Foot" knee 0.707 -0.707 0

$IKAutoPlayLock "rfoot" 1 0.1
$IKAutoPlayLock "lfoot" 1 0.1

$CollisionJoints "sombra_losmuertos_physics.smd"
{
	$mass 80
	$inertia 10
	$damping 0.01
	$rotdamping 1.5
	$rootbone " "


	$jointconstrain "ValveBiped.Bip01_R_Thigh" x limit -12 12 0
	$jointconstrain "ValveBiped.Bip01_R_Thigh" y limit -8 75 0
	$jointconstrain "ValveBiped.Bip01_R_Thigh" z limit -97 32 0

	$jointconstrain "ValveBiped.Bip01_R_Calf" x limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_R_Calf" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_R_Calf" z limit -12 126 0

	$jointconstrain "ValveBiped.Bip01_L_Thigh" x limit -12 12 0
	$jointconstrain "ValveBiped.Bip01_L_Thigh" y limit -73 6 0
	$jointconstrain "ValveBiped.Bip01_L_Thigh" z limit -93 30 0

	$jointconstrain "ValveBiped.Bip01_L_Calf" x limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_L_Calf" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_L_Calf" z limit -8 126 0

	$jointconstrain "ValveBiped.Bip01_L_Foot" x limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_L_Foot" y limit -19 19 0
	$jointconstrain "ValveBiped.Bip01_L_Foot" z limit -15 35 0

	$jointconstrain "ValveBiped.Bip01_Spine2" x limit -48 48 0
	$jointconstrain "ValveBiped.Bip01_Spine2" y limit -25 25 0
	$jointconstrain "ValveBiped.Bip01_Spine2" z limit -25 50 0

	$jointconstrain "ValveBiped.Bip01_R_UpperArm" x limit -39 39 0
	$jointconstrain "ValveBiped.Bip01_R_UpperArm" y limit -79 95 0
	$jointconstrain "ValveBiped.Bip01_R_UpperArm" z limit -93 23 0

	$jointconstrain "ValveBiped.Bip01_R_Forearm" x limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_R_Forearm" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_R_Forearm" z limit -149 4 0

	$jointconstrain "ValveBiped.Bip01_L_UpperArm" x limit -30 30 0
	$jointconstrain "ValveBiped.Bip01_L_UpperArm" y limit -95 84 0
	$jointconstrain "ValveBiped.Bip01_L_UpperArm" z limit -86 26 0

	$jointconstrain "ValveBiped.Bip01_L_Forearm" x limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_L_Forearm" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_L_Forearm" z limit -149 4 0

	$jointconstrain "ValveBiped.Bip01_L_Hand" x limit -37 37 0
	$jointconstrain "ValveBiped.Bip01_L_Hand" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_L_Hand" z limit -57 59 0

	$jointconstrain "ValveBiped.Bip01_Head1" x limit -20 20 0
	$jointconstrain "ValveBiped.Bip01_Head1" y limit -25 25 0
	$jointconstrain "ValveBiped.Bip01_Head1" z limit -13 30 0

	$jointconstrain "ValveBiped.Bip01_R_Hand" x limit -60 60 0
	$jointconstrain "ValveBiped.Bip01_R_Hand" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_R_Hand" z limit -57 70 0

	$jointconstrain "ValveBiped.Bip01_R_Foot" x limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_R_Foot" y limit -25 6 0
	$jointconstrain "ValveBiped.Bip01_R_Foot" z limit -15 35 0
}

Being new to this, I can’t spot what the issue is. I don’t even know if it’s the .qc or the model itself. Any help is greatly appreciated.

I don’t know how the forum works, I apologize.

I’m sorry! It was never my intention to publish it. If I was going to, I definitely would have asked. I only made it for personal use.

As to the rigging, It was there, and I don’t know what I’m doing.

Once again, I’m sorry. I’m only using it as a reference to teach myself the tools.

Sorry, a miscommunication about the rigging. I used the skeleton from your Mercy skin from the workshop, and copied the bone weights. I didn’t realize both models were yours (thus the “they were there”).

I’m just trying to throw a functional Sombra skin together until someone makes a better one.

[editline]15th February 2017[/editline]

I can’t open the model in HLMV (Error Loading Model).

Man, I suck at this.

You fail, you try again.
Never give up, unless giving up is the only option (which in most cases its not).

Do some research, go on youtube, even ask for help from TFA.
Failing can go a long way to completion, telling yourself you suck then why are you even trying?
If you don’t want to succeed why try?
And why are you making a Sombra model when there is like 5 on the workshop?

Oh, come on! There wasn’t one when I started working on it. I just looked again, and you’re right, someone posted one since I started.

Oh, well. I was only making a placeholder anyhow. :smile:

I’m going to go test the other options.

Thank you for the positive response. I found the others a bit disheartening.

Fixed.

I couldn’t find a Sombra player model that included the Los Muertos skin, so I decided to keep working on it. I got HLMV working (turns out I was using the wrong version), and the red line is forward and the blue line is up. However, seeing it there led me to notice two issues.

  1. I had two ‘$attachment “eye”’ lines in my .qc. This was extremely easy to fix.

  2. The rotation of the attachment was decent, and not causing the issue. The translation, on the other hand, was really messed up. The functional translation I have now is ‘3.50 -3.00 0.00’, compared to the translation in the old .qc above which is ‘0.00 -1.61 62.30’. I believe this placed the attachment (which seems to affect where the eyes look, rather than where they are) far above the model, causing the eyes to stare straight up. I’m not entirely sure where I got the erroneous numbers, so I’ll just chalk it up to being a beginner’s mistake.

I hope this helps anyone else who encounters this issue, no matter how rare it may be.

Thank you, TFA, for pointing me in the right direction, and jacobcooper18, for encouraging me.

P.S.: I got rid of the extra jiggle bones, thank you for pointing them out.