Garry's Mod

Garry's Mod

Toothless Playermodel
 This topic has been pinned, so it's probably important
2XMM2  [developer] 5 Jun, 2016 @ 1:20pm
.QC file
this is the entire QC file for this playermodel, in case anyone finds it useful.

It's all just in the qc file because I'm too lazy to make QCIs

// hacked from alduins qc // toothless $ModelName "toothlesspm/toothlesspm.mdl" $Model "toothless" "toothless_ref.smd" { eyeball "eye_right" "ValveBiped.Bip01_Head1" -3.70857 -33.46037 65.98976 "eyeball_r" 5.194 10 "iris_unused" 4 eyeball "eye_left" "ValveBiped.Bip01_Head1" 3.80872 -33.46037 65.98976 "eyeball_l" 5.194 -10 "iris_unused" 4 // unused eyeballs whree the eye sphere is located more or less in the center of the oval //eyeball "eye_right" "ValveBiped.Bip01_Head1" -1.12211 -1.90903 68.1315 "R_eye" 1.23 4 "iris_unused" 1.23 //eyeball "eye_left" "ValveBiped.Bip01_Head1" 1.12211 -1.90903 68.1315 "L_eye" 1.23 -4 "iris_unused" 1.23 flexfile "toothless_ref.vta" { defaultflex frame 0 flex "smile" frame 1 flex "anger" frame 2 flex "blink" frame 3 flex "ohgod" frame 4 flex "blank" frame 5 } flexcontroller "smile" range 0 1 "smile" flexcontroller "anger" range 0 1 "anger" flexcontroller "blink" range 0 1 "blink" flexcontroller "ohgod" range 0 1 "ohgod" flexcontroller blank range 0 1 blank flexcontroller eyes range -45 45 eyes_updown flexcontroller eyes range -45 45 eyes_rightleft // // %smile = smile %anger = anger %blink = blink %ohgod = ohgod %blank = blank } //$Model "skydrg" "dragon_alduinreftest.smd" { // eyeball "eye_right" "ValveBiped.Bip01_Head1" -1.71029 -5.32494 68.61740 "eyeball_r1" 1 15 "iris_unused" 1 // eyeball "eye_left" "ValveBiped.Bip01_Head1" 1.71029 -5.32494 68.61740 "eyeball_l1" 1 -15 "iris_unused" 1 //} $SurfaceProp "flesh" $Contents "solid" $EyePosition 0 0 70 $MostlyOpaque $CDMaterials "models\toothless\pm\" $Attachment "eyes" "ValveBiped.Bip01_Head1" 3.67 -4.32 0 rotate 0 -80.1 -90 $Attachment "mouth" "ValveBiped.Bip01_Head1" 1 -6.5 0 rotate 0 -80 -90 $Attachment "chest" "ValveBiped.Bip01_Spine1" 5 4 0 rotate 0 90 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 $illumposition 0.000 0.000 30.000 // .qc block generated by HLMV begins. $hboxset "default" $hbox 3 "ValveBiped.Bip01_Pelvis" -8.50 -5.50 -14.00 8.50 1.50 6.00 $hbox 3 "ValveBiped.Bip01_Spine2" -3.50 -5.00 -12.50 9.50 7.00 12.50 $hbox 1 "ValveBiped.Bip01_Head1" -8.00 -19.00 -8.00 4.00 1.00 8.00 $hbox 4 "ValveBiped.Bip01_R_UpperArm" 0.50 -2.00 -2.00 7.50 2.00 2.00 $hbox 4 "ValveBiped.Bip01_R_Forearm" -1.50 -2.00 -2.00 11.50 2.00 2.00 $hbox 4 "ValveBiped.Bip01_R_Hand" 0.00 -1.50 -1.50 4.00 0.50 1.50 $hbox 5 "ValveBiped.Bip01_L_UpperArm" 0.50 -2.00 -2.00 7.50 2.00 2.00 $hbox 5 "ValveBiped.Bip01_L_Forearm" -1.50 -2.00 -2.00 11.50 2.00 2.00 $hbox 5 "ValveBiped.Bip01_L_Hand" 0.00 -2.00 -3.00 8.00 1.00 3.00 $hbox 7 "ValveBiped.Bip01_R_Thigh" -5.00 -3.50 -2.50 13.00 2.50 2.50 $hbox 7 "ValveBiped.Bip01_R_Calf" 0.00 -1.75 -1.00 10.00 1.75 3.00 $hbox 7 "ValveBiped.Bip01_R_Foot" 1.50 -0.50 -2.50 6.50 2.50 2.50 $hbox 6 "ValveBiped.Bip01_L_Thigh" -5.00 -2.50 -2.50 13.00 3.50 2.50 $hbox 6 "ValveBiped.Bip01_L_Calf" 0.00 -1.75 -2.00 10.00 1.75 2.00 $hbox 6 "ValveBiped.Bip01_L_Foot" 1.50 -0.50 -2.50 6.50 2.50 2.50 $hbox 3 "ValveBiped.Bip01_Spine" -8.50 -13.50 -10.00 6.50 9.50 10.00 $hbox 1 "ValveBiped.Bip01_Neck1" -2.00 -2.50 -5.50 6.00 6.50 7.50 $hbox 1 "ValveBiped.Bip01_Head1" -5.50 -25.50 -6.00 3.50 -18.50 6.00 $hbox 7 "ValveBiped.Bip01_R_Toe0" -1.50 -1.25 -3.50 3.50 1.25 3.50 $hbox 6 "ValveBiped.Bip01_L_Toe0" -1.50 -1.25 -3.50 3.50 1.25 3.50 $hbox 3 "ValveBiped.Bip01_Spine1" -6.50 -8.00 -10.00 4.50 12.00 10.00 $hbox 2 "ValveBiped.Bip01_Spine4" -2.50 -7.00 -10.00 6.50 11.00 10.00 $hbox 3 "ValveBiped.Bip01_Spine2" -1.50 2.00 -10.00 7.50 14.00 10.00 // .qc block generated by HLMV ends. $BoneMerge "ValveBiped.Bip01_Pelvis" $BoneMerge "ValveBiped.Bip01_Spine" $BoneMerge "ValveBiped.Bip01_Spine1" $BoneMerge "ValveBiped.Bip01_Spine2" $BoneMerge "ValveBiped.Bip01_Spine4" $BoneMerge "ValveBiped.Bip01_R_Clavicle" $BoneMerge "ValveBiped.Bip01_R_UpperArm" $BoneMerge "ValveBiped.Bip01_R_Forearm" $BoneMerge "ValveBiped.Bip01_R_Hand" $BoneMerge "ValveBiped.Anim_Attachment_RH" $collisionjoints "phys.smd" { $mass 90.0 $inertia 10.00 $damping 0.01 $rotdamping 1.00 $rootbone "ValveBiped.Bip01_Pelvis" // joint constraints here pls $jointconstrain "valvebiped.bip01_l_thigh" x limit -50.00 15.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" y limit -30.00 10.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" z limit -82.00 41.00 0.00 $jointconstrain "valvebiped.bip01_l_calf" x limit -21.00 21.00 0.00 $jointconstrain "valvebiped.bip01_l_calf" y limit -17.00 17.00 0.00 $jointconstrain "valvebiped.bip01_l_calf" z limit 0.00 66.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" x limit -15.00 50.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" y limit -10.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" z limit -82.00 41.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" x limit -21.00 21.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" y limit -17.00 17.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" z limit 0.00 66.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" x limit -1.00 1.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" y limit -19.00 19.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" z limit -39.00 39.00 0.00 $jointconstrain "valvebiped.bip01_spine" x limit -26.00 26.00 0.00 $jointconstrain "valvebiped.bip01_spine" y limit -32.00 32.00 0.00 $jointconstrain "valvebiped.bip01_spine" z limit -44.00 44.00 0.00 $jointconstrain "valvebiped.bip01_spine2" x limit -26.00 26.00 0.00 $jointconstrain "valvebiped.bip01_spine2" y limit -23.00 23.00 0.00 $jointconstrain "valvebiped.bip01_spine2" z limit -39.00 39.00 0.00 $jointconstrain "valvebiped.bip01_spine4" x limit -26.00 26.00 0.00 $jointconstrain "valvebiped.bip01_spine4" y limit -23.00 23.00 0.00 $jointconstrain "valvebiped.bip01_spine4" z limit -39.00 39.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" x limit -10.00 10.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" y limit -39.00 39.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" z limit -93.00 59.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" x limit -10.00 10.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" y limit -39.00 39.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" z limit -93.00 59.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" x limit -10.00 10.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" y limit -61.00 10.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" z limit -100.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" x limit -50.00 50.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" y limit -19.00 19.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" z limit -100.00 50.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" x limit -10.00 10.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" y limit -10.00 61.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" z limit -100.00 0.00 0.00 $jointconstrain "valvebiped.bip01_head1" x limit -50.00 50.00 0.00 $jointconstrain "valvebiped.bip01_head1" y limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_head1" z limit -55.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" x limit -50.00 50.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" y limit -19.00 19.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" z limit -100.00 50.00 0.00 // $jointconstrain "valvebiped.bip01_head1" x limit -46.00 46.00 0.00 // $jointconstrain "valvebiped.bip01_head1" y limit -32.00 32.00 0.00 // $jointconstrain "valvebiped.bip01_head1" z limit -35.00 35.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" y limit -19.00 19.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" z limit -39.00 39.00 0.00 } //jiggles here pls $jigglebone "Wing.L" { is_flexible { length 100 yaw_stiffness 100 yaw_damping 7 pitch_stiffness 150 pitch_damping 10 angle_constraint 60 } } $jigglebone "Wing2.L" { is_flexible { length 100 yaw_stiffness 50 yaw_damping 7 pitch_stiffness 80 pitch_damping 10 angle_constraint 60 } } $jigglebone "Wing.R" { is_flexible { length 100 yaw_stiffness 100 yaw_damping 7 pitch_stiffness 150 pitch_damping 10 angle_constraint 60 } } $jigglebone "Wing2.R" { is_flexible { length 100 yaw_stiffness 50 yaw_damping 7 pitch_stiffness 80 pitch_damping 10 angle_constraint 60 } } $JiggleBone "Flap.L" { is_flexible { length 50 tip_mass 0 pitch_stiffness 45 pitch_damping 8 yaw_stiffness 45 yaw_damping 8 angle_constraint 40.000001 } } $JiggleBone "Flap.R" { is_flexible { length 50 tip_mass 0 pitch_stiffness 45 pitch_damping 8 yaw_stiffness 45 yaw_damping 8 angle_constraint 40.000001 } } $JiggleBone "Flap2.L" { is_flexible { length 50 tip_mass 0 pitch_stiffness 45 pitch_damping 8 yaw_stiffness 45 yaw_damping 8 angle_constraint 40.000001 } } $JiggleBone "Flap2.R" { is_flexible { length 50 tip_mass 0 pitch_stiffness 45 pitch_damping 8 yaw_stiffness 45 yaw_damping 8 angle_constraint 40.000001 } } $JiggleBone "Jaw" { is_flexible { length 50 tip_mass 0 pitch_stiffness 45 pitch_damping 8 yaw_stiffness 100 yaw_damping 10 pitch_constraint -8 60 angle_constraint 60.000001 } } $JiggleBone "Flapcenter" { is_flexible { length 50 tip_mass 0 pitch_stiffness 45 pitch_damping 8 yaw_stiffness 45 yaw_damping 8 angle_constraint 40.000001 } } $JiggleBone "Tail1" { is_flexible { length 60 tip_mass 0 pitch_stiffness 60 pitch_damping 9 yaw_stiffness 60 yaw_damping 9 angle_constraint 30.000001 } } $JiggleBone "Tail2" { is_flexible { length 60 tip_mass 0 pitch_stiffness 60 pitch_damping 9 yaw_stiffness 60 yaw_damping 9 angle_constraint 30.000001 } } $JiggleBone "Tail3" { is_flexible { length 60 tip_mass 0 pitch_stiffness 60 pitch_damping 9 yaw_stiffness 60 yaw_damping 9 angle_constraint 30.000001 } } $JiggleBone "Tail4" { is_flexible { length 60 tip_mass 0 pitch_stiffness 60 pitch_damping 9 yaw_stiffness 60 yaw_damping 9 angle_constraint 30.000001 } } $JiggleBone "Tail5" { is_flexible { length 60 tip_mass 0 pitch_stiffness 60 pitch_damping 9 yaw_stiffness 60 yaw_damping 9 angle_constraint 30.000001 } } // declaration of what animation a_proportions is // here you just inser the smd of the model with the offset bones $Animation "a_proportions" "toothless_ref.smd" { fps 30 } // this needs to be the default bone locations. // in this case, i just pulled the "reference.smd" animation from the default male skeleton $Sequence "reference" { "anims\reference.smd" fadein 0.2 fadeout 0.2 fps 1 } // the sequence that makes the bones be offset // the "autoplay" command ensures that it is running at all times (so the skeleton is always proportional) $Sequence "proportions" { "a_proportions" autoplay predelta fadein 0.2 fadeout 0.2 fps 30 subtract "reference" 0 } // the ragdoll sequence: just use the model directly, seeing as it has the correct bone locations $Sequence "ragdoll" { "toothless_ref.smd" activity "ACT_DIERAGDOLL" 1 fadein 0.2 fadeout 0.2 fps 30 } $IncludeModel "m_anm.mdl" $IncludeModel "m_shd.mdl" $IncludeModel "m_pst.mdl" $IncludeModel "m_gst.mdl" $IncludeModel "cs_fix.mdl" $IncludeModel "m_ss.mdl" //$IncludeModel "combine_soldier_anims.mdl" $IncludeModel "humans/male_shared.mdl" $IncludeModel "humans/male_ss.mdl" $IncludeModel "humans/male_gestures.mdl" $IncludeModel "humans/male_postures.mdl" $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
< >
Showing 1-15 of 16 comments
\:Stupid:/ 5 Jun, 2016 @ 2:09pm 
Thank you so much! :D:
Just one more question, is there a QC just for a simple ragdoll? I don't really plan on making player models, unless I change my mind.
2XMM2  [developer] 5 Jun, 2016 @ 2:14pm 
Originally posted by \:Stupid:/:
Thank you so much! :D:
Just one more question, is there a QC just for a simple ragdoll? I don't really plan on making player models, unless I change my mind.
For ragdolls, the main three things you need are:
• $model: specifies what .smd model the model is, and if it has face poses
• $collisionjoints: specifies what .smd the collision mesh is, and how far the joints can tilt (in degrees)
• $sequence: you only need one sequence for ragdolls, which is assigned to the "ACT_DIERAGDOLL" activity
\:Stupid:/ 5 Jun, 2016 @ 2:16pm 
Originally posted by 2XMM2:
Originally posted by \:Stupid:/:
Thank you so much! :D:
Just one more question, is there a QC just for a simple ragdoll? I don't really plan on making player models, unless I change my mind.
For ragdolls, the main three things you need are:
• $model: specifies what .smd model the model is, and if it has face poses
• $collisionjoints: specifies what .smd the collision mesh is, and how far the joints can tilt (in degrees)
• $sequence: you only need one sequence for ragdolls, which is assigned to the "ACT_DIERAGDOLL" activity
Alright, thank you! :D:
Frosty Dr. 6 Jun, 2016 @ 2:02am 
I got excited when I saw that you use the proportion method. I've been trying for ages to get it work...but...its not just to do with the QC. I have to create special anims, yes? (I know how to make anims, duh, but specifically for proportions to work) If so, would you kindly tell me how to deal with the actual anims? I use Blender.

Every time I've done it (even now with your codes), it's fine in reference/ragdoll mode, but when I look at it in-game, and HLMV, the model stretches:

http://image.prntscr.com/image/df90674b45ec4f9495b71dba1e4a47c2.png
http://image.prntscr.com/image/22cdc93f7a4a434ea5b3fb199e59713e.png
Last edited by Frosty Dr.; 6 Jun, 2016 @ 2:12am
2XMM2  [developer] 6 Jun, 2016 @ 6:32am 
Originally posted by The Frosty_Engine:
I got excited when I saw that you use the proportion method. I've been trying for ages to get it work...but...its not just to do with the QC. I have to create special anims, yes? (I know how to make anims, duh, but specifically for proportions to work) If so, would you kindly tell me how to deal with the actual anims? I use Blender.

Every time I've done it (even now with your codes), it's fine in reference/ragdoll mode, but when I look at it in-game, and HLMV, the model stretches:
Would you mind showing me the QC file for your playermodel? It sounds like you're leaving out something.

Also, make sure that you use a reference.smd from the default human model, otherwise the proportion code does not know what skeleton to use as a basis when it's changing the bone locations to fit those of the model at hand.
Frosty Dr. 6 Jun, 2016 @ 11:26pm 
$modelname "frosty/pm/bionicle/2015/Eki_Plm.mdl" $model "rigged_mesh" "rigged_mesh.smd" $cdmaterials "models\2015\" $mostlyopaque $attachment "eyes" "ValveBiped.Bip01_Head1" 5.30 -6.00 0.00 rotate 0 -80 -90 $attachment "mouth" "ValveBiped.Bip01_Head1" 3.00 -5.00 0.00 rotate 0 -80 -90 $attachment "chest" "ValveBiped.Bip01_Spine2" 5.00 4.00 0.00 rotate -0 90 90 $attachment "forward" "ValveBiped.Bip01_Head1" 5.00 -3.00 0.00 rotate 0 -76 -90 $attachment "anim_attachment_RH" "ValveBiped.Bip01_R_Hand" 2.68 -1.71 0 rotate 0 0 180 $attachment "anim_attachment_LH" "ValveBiped.Bip01_L_Hand" 2.68 -1.71 0 rotate 0 -0.01 0 $attachment "anim_attachment_head" "ValveBiped.Bip01_Head1" 0 0 0 rotate -90 -90 0 $surfaceprop "metal" $contents "solid" // declaration of what animation a_proportions is // here you just inser the smd of the model with the offset bones $Animation "a_proportions" "rigged_mesh.smd" { fps 30 } // this needs to be the default bone locations. // in this case, i just pulled the "reference.smd" animation from the default male skeleton $Sequence "reference" { "anims\reference.smd" fadein 0.2 fadeout 0.2 fps 1 } // the sequence that makes the bones be offset // the "autoplay" command ensures that it is running at all times (so the skeleton is always proportional) $Sequence "proportions" { "a_proportions" autoplay predelta fadein 0.2 fadeout 0.2 fps 30 subtract "reference" 0 } // the ragdoll sequence: just use the model directly, seeing as it has the correct bone locations $Sequence "ragdoll" { "rigged_mesh.smd" activity "ACT_DIERAGDOLL" 1 fadein 0.2 fadeout 0.2 fps 30 } $IncludeModel "m_anm.mdl" $IncludeModel "m_shd.mdl" $IncludeModel "m_pst.mdl" $IncludeModel "m_gst.mdl" $IncludeModel "cs_fix.mdl" $IncludeModel "m_ss.mdl" //$IncludeModel "combine_soldier_anims.mdl" $IncludeModel "humans/male_shared.mdl" $IncludeModel "humans/male_ss.mdl" $IncludeModel "humans/male_gestures.mdl" $IncludeModel "humans/male_postures.mdl" $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 $collisionjoints "ekimu_physics.smd" { $mass 75 $inertia 5 $damping 0.01 $rotdamping 1.5 $rootbone "valvebiped.bip01_pelvis" $jointconstrain "valvebiped.bip01_r_thigh" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" y limit -12.00 68.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" z limit -100.00 50.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" y limit -12.00 12.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" z limit -10.00 120.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" x limit -32.00 32.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" y limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" z limit -53.00 97.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" y limit -68.00 12.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" z limit -100.00 50.00 0.00 $jointconstrain "valvebiped.bip01_l_calf" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_l_calf" y limit -12.00 12.00 0.00 $jointconstrain "valvebiped.bip01_l_calf" z limit -10.00 120.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" x limit -32.00 32.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" y limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" z limit -53.00 97.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" x limit -48.00 48.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" y limit -39.00 68.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" z limit -88.00 57.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" x limit -28.00 28.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" y limit -12.00 12.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" z limit -131.00 12.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" x limit -91.00 91.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" y limit -35.00 35.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" z limit -93.00 93.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" x limit -48.00 48.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" y limit -68.00 39.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" z limit -88.00 57.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" x limit -28.00 28.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" y limit -12.00 12.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" z limit -131.00 12.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" x limit -91.00 91.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" y limit -35.00 35.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" z limit -93.00 93.00 0.00 $jointconstrain "valvebiped.bip01_head1" x limit -64.00 55.00 0.00 $jointconstrain "valvebiped.bip01_head1" y limit -82.00 82.00 0.00 $jointconstrain "valvebiped.bip01_head1" z limit -41.00 41.00 0.00 $jointconstrain "ValveBiped.Bip01_Spine4" x limit -20 20 0 $jointconstrain "ValveBiped.Bip01_Spine4" y limit -20 20 0 $jointconstrain "ValveBiped.Bip01_Spine4" z limit -20 20 0 }

Also, you do mean the reference.smd is just the anim of the default human model, or the actual human model itself (with skeleton)?
2XMM2  [developer] 7 Jun, 2016 @ 12:05am 
This is the reference.smd that I use. Paste it into your reference.smd and see if it works

version 1 nodes 0 "ValveBiped.Bip01_Pelvis" -1 1 "ValveBiped.Bip01_Spine" 0 2 "ValveBiped.Bip01_Spine1" 1 3 "ValveBiped.Bip01_Spine2" 2 4 "ValveBiped.Bip01_Spine4" 3 5 "ValveBiped.Bip01_Neck1" 4 6 "ValveBiped.Bip01_Head1" 5 7 "ValveBiped.forward" 6 8 "ValveBiped.Bip01_R_Clavicle" 4 9 "ValveBiped.Bip01_R_UpperArm" 8 10 "ValveBiped.Bip01_R_Forearm" 9 11 "ValveBiped.Bip01_R_Hand" 10 12 "ValveBiped.Anim_Attachment_RH" 11 13 "ValveBiped.Bip01_R_Finger4" 11 14 "ValveBiped.Bip01_R_Finger41" 13 15 "ValveBiped.Bip01_R_Finger42" 14 16 "ValveBiped.Bip01_R_Finger3" 11 17 "ValveBiped.Bip01_R_Finger31" 16 18 "ValveBiped.Bip01_R_Finger32" 17 19 "ValveBiped.Bip01_R_Finger2" 11 20 "ValveBiped.Bip01_R_Finger21" 19 21 "ValveBiped.Bip01_R_Finger22" 20 22 "ValveBiped.Bip01_R_Finger1" 11 23 "ValveBiped.Bip01_R_Finger11" 22 24 "ValveBiped.Bip01_R_Finger12" 23 25 "ValveBiped.Bip01_R_Finger0" 11 26 "ValveBiped.Bip01_R_Finger01" 25 27 "ValveBiped.Bip01_R_Finger02" 26 28 "ValveBiped.Bip01_R_Ulna" 10 29 "ValveBiped.Bip01_R_Wrist" 10 30 "ValveBiped.Bip01_R_Shoulder" 9 31 "ValveBiped.Bip01_R_Bicep" 9 32 "ValveBiped.Bip01_R_Elbow" 9 33 "ValveBiped.Bip01_R_Trapezius" 8 34 "ValveBiped.Bip01_L_Clavicle" 4 35 "ValveBiped.Bip01_L_UpperArm" 34 36 "ValveBiped.Bip01_L_Forearm" 35 37 "ValveBiped.Bip01_L_Hand" 36 38 "ValveBiped.Anim_Attachment_LH" 37 39 "ValveBiped.Bip01_L_Finger4" 37 40 "ValveBiped.Bip01_L_Finger41" 39 41 "ValveBiped.Bip01_L_Finger42" 40 42 "ValveBiped.Bip01_L_Finger3" 37 43 "ValveBiped.Bip01_L_Finger31" 42 44 "ValveBiped.Bip01_L_Finger32" 43 45 "ValveBiped.Bip01_L_Finger2" 37 46 "ValveBiped.Bip01_L_Finger21" 45 47 "ValveBiped.Bip01_L_Finger22" 46 48 "ValveBiped.Bip01_L_Finger1" 37 49 "ValveBiped.Bip01_L_Finger11" 48 50 "ValveBiped.Bip01_L_Finger12" 49 51 "ValveBiped.Bip01_L_Finger0" 37 52 "ValveBiped.Bip01_L_Finger01" 51 53 "ValveBiped.Bip01_L_Finger02" 52 54 "ValveBiped.Bip01_L_Ulna" 36 55 "ValveBiped.Bip01_L_Wrist" 36 56 "ValveBiped.Bip01_L_Elbow" 35 57 "ValveBiped.Bip01_L_Shoulder" 35 58 "ValveBiped.Bip01_L_Bicep" 35 59 "ValveBiped.Bip01_L_Trapezius" 34 60 "ValveBiped.Bip01_R_Thigh" 0 61 "ValveBiped.Bip01_R_Calf" 60 62 "ValveBiped.Bip01_R_Foot" 61 63 "ValveBiped.Bip01_R_Toe0" 62 64 "ValveBiped.Bip01_L_Thigh" 0 65 "ValveBiped.Bip01_L_Calf" 64 66 "ValveBiped.Bip01_L_Foot" 65 67 "ValveBiped.Bip01_L_Toe0" 66 end skeleton time 0 0 -0.000005 -0.533615 38.566917 1.570796 -0.000000 0.000000 1 0.000005 3.345132 -2.981901 1.570796 0.086294 1.570796 2 4.018323 0.000006 0.000000 0.000000 -0.000000 -0.029250 3 3.518566 0.000032 -0.000001 0.000000 0.000000 0.100349 4 8.942646 -0.000033 -0.000000 0.000000 0.000000 0.194104 5 3.307272 -0.000034 0.000000 3.141590 -0.000000 0.400466 6 3.593703 -0.000008 0.000000 -0.000000 -0.000001 0.406575 7 2.000036 -2.999981 0.000001 -1.570796 0.000000 -1.326439 8 2.033368 1.000751 -1.937610 1.473117 1.855075 -0.198652 9 6.028144 -0.000003 0.000002 1.639474 -0.008068 -0.586846 10 11.692547 -0.000036 0.000006 0.000009 -0.000001 -0.060377 11 11.481702 0.000021 0.000007 -1.564939 0.106608 0.044200 12 2.676084 -1.712459 -0.000014 -1.570794 -0.000002 -1.571118 13 3.859683 -0.132584 1.193087 0.479135 -0.158550 -0.879038 14 1.312566 -0.000004 -0.000008 0.000000 -0.011926 -0.439681 15 0.729360 0.000002 -0.000001 -0.000004 -0.006136 -0.244267 16 3.942294 0.050310 0.431021 0.154995 -0.079308 -0.810202 17 1.539095 -0.000005 -0.000009 -0.000001 -0.005851 -0.247775 18 1.196324 -0.000002 -0.000002 -0.000003 -0.009660 -0.430766 19 3.883655 -0.050345 -0.431066 -0.085908 -0.026403 -0.587694 20 1.719585 -0.000011 -0.000007 -0.000002 -0.007975 -0.366435 21 1.209190 -0.000001 -0.000006 -0.000002 -0.004459 -0.216377 22 3.859824 -0.148950 -1.331305 -0.354422 0.038571 -0.532004 23 1.719426 -0.000005 -0.000005 -0.000002 -0.006619 -0.362966 24 1.099661 0.000001 -0.000009 -0.000003 -0.004202 -0.244317 25 0.806011 -0.359839 -1.318340 1.204192 0.673629 -0.793965 26 1.789788 0.000013 0.000005 -0.000001 -0.006304 0.228567 27 1.206995 -0.000006 -0.000007 0.000004 -0.009620 0.362907 28 5.740857 0.000010 0.000006 0.000083 -0.000001 -0.000005 29 11.481702 0.000021 0.000007 0.000148 -0.000001 0.000000 30 1.499992 -0.000004 -0.000005 0.000003 -0.000001 0.000001 31 5.559986 -0.000017 0.000001 0.000002 -0.000001 -0.000002 32 11.692547 -0.000036 0.000006 0.000007 -0.000001 -0.029500 33 5.166965 0.000000 0.000002 0.000000 -0.000000 0.000002 34 2.033360 1.000747 1.937661 -1.544958 -1.855078 -0.198640 35 6.028146 -0.000014 0.000006 -1.579610 0.047801 -0.585173 36 11.692566 -0.000002 -0.000000 -0.000007 -0.000000 -0.060377 37 11.481686 0.000057 -0.000036 1.573187 -0.106620 0.044200 38 2.676077 -1.712459 0.000005 1.570789 -0.000003 1.570700 39 3.859715 -0.142434 -1.191968 -0.479142 0.152186 -0.879882 40 1.312561 0.000006 -0.000003 -0.000000 0.009662 -0.439726 41 0.729362 0.000010 -0.000003 -0.000002 0.004976 -0.244289 42 3.942334 0.046745 -0.431433 -0.155012 0.073327 -0.810655 43 1.539082 0.000002 -0.000000 -0.000000 0.004463 -0.247793 44 1.196322 -0.000011 0.000003 0.000002 0.007354 -0.430811 45 3.883696 -0.046804 0.431454 0.085903 0.021836 -0.587865 46 1.719582 -0.000010 0.000015 0.000004 0.005511 -0.366481 47 1.209169 -0.000003 0.000003 0.000001 0.003078 -0.216408 48 3.859859 -0.137975 1.332479 0.354449 -0.042753 -0.531723 49 1.719425 0.000004 -0.000004 0.000001 0.004083 -0.363004 50 1.099663 -0.000003 0.000009 0.000001 0.002593 -0.244334 51 0.806042 -0.348930 1.321262 -1.206854 -0.679485 -0.789313 52 1.789788 -0.000014 0.000006 0.000001 0.007386 0.228522 53 1.207004 -0.000010 0.000000 0.000002 0.011264 0.362847 54 5.740854 0.000028 -0.000003 0.000698 0.000000 0.000007 55 11.481711 0.000056 -0.000006 0.001276 0.000000 0.000000 56 11.692566 -0.000002 -0.000000 -0.000005 -0.000000 -0.029505 57 1.499999 -0.000000 0.000002 -0.000001 -0.000000 0.000001 58 5.559998 -0.000001 0.000003 -0.000000 -0.000000 0.000002 59 5.166962 -0.000009 0.000005 -0.000000 -0.000000 -0.000002 60 -3.890452 0.000007 0.000007 -1.570796 0.051846 -1.576021 61 17.848167 -0.000017 -0.000000 0.000001 0.000000 0.034181 62 16.525253 0.000084 0.000000 0.038612 0.040779 -1.071624 63 6.879450 -0.000021 0.000002 -0.081333 -0.002952 -0.584376 64 3.890452 -0.000000 -0.000003 -1.570796 0.051846 -1.565574 65 17.848171 -0.000124 -0.000002 -0.000001 0.000000 0.034199 66 16.525248 -0.000101 -0.000001 -0.027915 -0.040782 -1.071644 67 6.879450 -0.000002 -0.000001 -0.007300 -0.002952 -0.584374 end
Frosty Dr. 7 Jun, 2016 @ 5:29pm 
O_O Thank you, it fixed it.

BUT (there's always a but), There are two problems I notice with it:

http://image.prntscr.com/image/29d882a8e78649fc847fc62e69e6ad08.png

http://image.prntscr.com/image/1522a523991248f68a60c495b0b78e59.png (how it's default idle pose looks like)

http://image.prntscr.com/image/d316c2bd159449adaf9a47fa420d84c3.png (ragdoll, but honestly I don't care about this, no one is going to be using the ragdoll because they already have a ragdoll version on workshop)

The forearms and hands aren't connected like they should be, and the thighs and calves of the legs are twisted the wrong way. Any idea how this can be fixed? I mean, of course I wouldn't expect everything to be 100% perfect...but still, any idea? (perhaps I got something else slightly wrong?)
2XMM2  [developer] 7 Jun, 2016 @ 11:50pm 
Originally posted by The Frosty_Engine:
O_O Thank you, it fixed it.

(ragdoll, but honestly I don't care about this, no one is going to be using the ragdoll because they already have a ragdoll version on workshop)

The forearms and hands aren't connected like they should be, and the thighs and calves of the legs are twisted the wrong way. Any idea how this can be fixed? I mean, of course I wouldn't expect everything to be 100% perfect...but still, any idea? (perhaps I got something else slightly wrong?)

Don't worry, the ragdoll only looks like that in hlmv, it will look perfect in-game.

As for the legs, that issue happens when the leg bones (ValveBiped.Bip01_L/R_Foot) are too different from the regular human model. It can be 'fixed' by making sure those two bones have exactly the same position as in the default model

If you're using blender, these are the default transforms for the foot bones[i.imgur.com] (when in edit mode)


For the hands, I'm not sure if it's the actual animations that are offsetting the hands instead of just rotating them, or you may have put the "wrist" bones too far behind the circular joint?
Last edited by 2XMM2; 7 Jun, 2016 @ 11:51pm
Frosty Dr. 8 Jun, 2016 @ 8:21pm 
Well, here's a picture of it in Blender if that helps:

http://image.prntscr.com/image/15053d06d5b146f09be7c2896b1c9243.png

I reckon the legs are probably like that because the calf bones aren't in the center of the thigh and foot bones like normal humans...maybe...just a thought.

I'd still need to test in-game though.
Last edited by Frosty Dr.; 8 Jun, 2016 @ 8:22pm
Frosty Dr. 10 Jun, 2016 @ 5:56pm 
Well, I did test in game, weird arms and legs. Should I edit the foot bones and set them to the default thing like you showed in the pic above? But, which skeleton would I do that with, the proportions, or the model's skeleton (not default human, but the actual skeleton that I edited for the model). Also, I don't actually have every bone, weighted on the model, like, the spine bones mostly (only one spine bone is, beside pelvis), or the clavicles, they are very complicated on this type of model, including the wrist bone, would that be causing anything?
Last edited by Frosty Dr.; 10 Jun, 2016 @ 5:57pm
2XMM2  [developer] 10 Jun, 2016 @ 6:51pm 
Originally posted by The Frosty_Engine:
Well, I did test in game, weird arms and legs. Should I edit the foot bones and set them to the default thing like you showed in the pic above? But, which skeleton would I do that with, the proportions, or the model's skeleton (not default human, but the actual skeleton that I edited for the model). Also, I don't actually have every bone, weighted on the model, like, the spine bones mostly (only one spine bone is, beside pelvis), or the clavicles, they are very complicated on this type of model, including the wrist bone, would that be causing anything?

The bones you will edit are the ones in the model's skeleton.

Bones not being weighted does pose an issue, but I think you can get around that by just deleting the unused bones in both the model's skeleton AND the proportion skeleton. The wrist bone is a procedural bone that isn't used unless you specify it in the QC file, so you can safely delete it from the model's skeleton.

The reason for the hands being offset might lie in the fact that your clavicle bones aren't weighted. You can try to delete the clavicle bones in both skeletons, (and setting the UpperArm bones as children of the spine bone you use) and see how it turns out.
Frosty Dr. 27 Aug, 2016 @ 6:33pm 
Me again after some time. I hope you can give me a bit of help, I recently have been trying a different model on the proportion trick, everything is fine with it, except the arms. I have no idea why the arms are like this:

http://image.prntscr.com/image/fd9dc90301c54ce3b547cbbf9673b9a3.png

The hands are ok, even left arm is somewhat ok (but forearm is twisted, everything is normal in the reference sequence), the right arm is the biggest problem. I have no idea why it does that, I've done everything according to the proportion trick, and stuff that you've said in above comments. This is a model that is already pretty close to the default male, but I wanted to use proportions because I don't want to ruin the model at all (because it has multiple bodygroups).

So when it came to the posing of the skeleton the model is parented to, I didn't need to rotate the arms much.

Skeleton comparisons:

http://image.prntscr.com/image/f5a71b77b61a486e841e3955d6e3224e.png

The one selected is the custom model's skeleton (which I have posed to fit the default male skeleton, but I'm just showing it without being posed). Another thing I did to make sure the bones were all rotated correctly, was bring in the default male skeleton, and edit it according to the custom skeleton of my model.

I really hope you can help. :)
2XMM2  [developer] 27 Aug, 2016 @ 6:41pm 
oh god it's an arms issue.

arms and legs ...sometimes... get twisted when using the proportion trick. I don't know why it does that, or how to fix it, but it seems to have something to do with the IK (the solver that makes sure legs stay on the ground and hands hold guns).

your best bet to avoid any further frustration is to reset the bones that get twisted to their original position and hope that the model will still look acceptable

tl;dr: save yourself the frustration and move the conflicting bones back to the positions they have in the reference skeleton.
Frosty Dr. 27 Aug, 2016 @ 6:47pm 
Alright, will do.
< >
Showing 1-15 of 16 comments
Per page: 1530 50