[NEED HELP] Problem with model I ported into GMOD

So basically I ported model from old Wolfenstein game, everything is fine about it, but there is one very stange problem

Its impossible to manipulate with models hands below cubit and it also can went throught model body like its nocolide

But NPC and Animations works fine

I riged model in 3D max, using Skin. Any suggestion ?

Did you properly rig the hands and fingers to their appropriate bones?
Did you also use $definebone on the every bone to make sure nothing is overwritten or deleted during the compiling process?

Well yes, fingers is a bit messed up, but overall everything is seems fine about them and rigged as it should be (or not, I’m not sure), at least all meshes around hands and fingers is more or less rigged as they should be.

About $definebone … well I used qc file of another model and I took skeleton from its model aswell and just rigged my model to this skeleton. During compilation there was no errors.

If you open up your QC, you can add the $definebone for each bone to prevent any problems with the skeleton. Source compilers often delete bones that they think are “unnecessary” which ruins the entire model.
More detailed explanation for the $definebone command can be found on the wiki here.

If you successfully use $definebone and this continues happening, consider editing the rigging on the bones.

I added $definebone and model fucked up totaly, lol

So any suggestions here ? Should I totaly re-reg model with different skeleton ?

Here is qc file


// Created by Crowbar 0.24.0.0

$modelname "lolzp\specialforce.mdl"

$bodygroup "spacemarine"
{
	studio "warhammer1player2_reference.smd"
}


$poseparameter "move_yaw" -180 180 0
$poseparameter "body_pitch" -90 90 0
$poseparameter "body_yaw" -90 90 0

$cdmaterials "models\lolrp"

$surfaceprop "flesh"

$contents "solid"

$eyeposition 0 0 73


// NOTE: The following commented-out $definebone lines might be needed, as is often the case for view models. When needed, simply remove the two slashes '//' from the start of each line.
 $definebone "ValveBiped.Bip01_Pelvis" "" 0 -0.57095 41.266598 1.570796 0 0 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Thigh" "ValveBiped.Bip01_Pelvis" 4.162778 0 0 -1.570425 0.051839 -1.56558 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Calf" "ValveBiped.Bip01_L_Thigh" 19.097538 0 0 0 0 0.0342 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Foot" "ValveBiped.Bip01_L_Calf" 17.682011 0 0 -0.023996 -0.041104 -1.071631 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Toe0" "ValveBiped.Bip01_L_Foot" 7.36101 0.000001 0.000001 -0.009979 -0.005353 -0.584358 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Thigh" "ValveBiped.Bip01_Pelvis" -4.162778 0 0 -1.57101 0.051839 -1.576015 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Calf" "ValveBiped.Bip01_R_Thigh" 19.097542 0 0 0 0 0.0342 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Foot" "ValveBiped.Bip01_R_Calf" 17.682011 0 0 0.04234 0.040968 -1.071635 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Toe0" "ValveBiped.Bip01_R_Foot" 7.361015 0 0 -0.084358 -0.004949 -0.584361 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_Spine" "ValveBiped.Bip01_Pelvis" 0 3.579292 -3.190631 1.570796 0.083193 1.570796 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_Spine1" "ValveBiped.Bip01_Spine" 4.275543 0 0 0 0 -0.028816 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_Spine2" "ValveBiped.Bip01_Spine1" 3.76672 0 0 0 0 0.097307 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_Spine4" "ValveBiped.Bip01_Spine2" 9.545975 0 0 0 0 0.186413 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_Neck1" "ValveBiped.Bip01_Spine4" 3.537796 -0.000001 0 3.14159 0 0.406109 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_Head1" "ValveBiped.Bip01_Neck1" 3.854137 0.000008 0 0 -0.000001 0.405033 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Clavicle" "ValveBiped.Bip01_Spine4" 2.203682 1.046375 2.073298 1.58974 -1.286515 2.950147 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_UpperArm" "ValveBiped.Bip01_L_Clavicle" 6.450112 0 0 -1.432532 0.052018 0.292082 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Forearm" "ValveBiped.Bip01_L_UpperArm" 12.511033 0.000001 0.000004 0 0 -0.060372 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Hand" "ValveBiped.Bip01_L_Forearm" 12.2854 0.000001 -0.000031 1.568292 -0.038709 0.036022 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger2" "ValveBiped.Bip01_L_Hand" 4.153065 0.229733 0.42828 0.087707 0.031641 -0.519952 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger21" "ValveBiped.Bip01_L_Finger2" 1.839952 -0.000008 -0.000003 0 0.005005 -0.366486 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger22" "ValveBiped.Bip01_L_Finger21" 1.293819 0 0.000002 0 0.002798 -0.216403 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger1" "ValveBiped.Bip01_L_Hand" 4.142284 0.125656 1.391971 0.352467 -0.032975 -0.463848 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger11" "ValveBiped.Bip01_L_Finger1" 1.839783 0.000008 0.000004 0.000001 0.005107 -0.362997 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger12" "ValveBiped.Bip01_L_Finger11" 1.176636 0.000004 0 0.000001 0.003256 -0.244323 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger0" "ValveBiped.Bip01_L_Hand" 0.897545 -0.321297 1.404672 -1.251009 -0.6698 -0.720133 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger01" "ValveBiped.Bip01_L_Finger0" 1.91507 0 0 0 -0.002159 0.22863 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_L_Finger02" "ValveBiped.Bip01_L_Finger01" 1.291494 -0.000008 -0.000008 0 -0.0033 0.363014 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Clavicle" "ValveBiped.Bip01_Spine4" 2.20369 1.046376 -2.073298 -1.661569 1.286515 2.950147 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_UpperArm" "ValveBiped.Bip01_R_Clavicle" 6.450113 0.000008 0 1.525136 -0.072601 0.28708 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Forearm" "ValveBiped.Bip01_R_UpperArm" 12.511042 0.000001 -0.000004 0 0 -0.060372 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Hand" "ValveBiped.Bip01_R_Forearm" 12.285418 0.000003 -0.000004 -1.559993 0.038701 0.036022 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger2" "ValveBiped.Bip01_R_Hand" 4.153038 0.226158 -0.430167 -0.087717 -0.035763 -0.519702 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger21" "ValveBiped.Bip01_R_Finger2" 1.839951 0.000008 -0.000002 0 -0.007584 -0.366445 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger22" "ValveBiped.Bip01_R_Finger21" 1.293816 0 -0.000001 0 -0.004241 -0.216381 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger1" "ValveBiped.Bip01_R_Hand" 4.142235 0.11409 -1.392962 -0.352486 0.029262 -0.464072 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger11" "ValveBiped.Bip01_R_Finger1" 1.83979 0 -0.000004 0 -0.007737 -0.362954 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger12" "ValveBiped.Bip01_R_Finger11" 1.17664 -0.000008 -0.000004 0 -0.004929 -0.244296 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger0" "ValveBiped.Bip01_R_Hand" 0.89753 -0.332973 -1.401956 1.248034 0.66431 -0.725028 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger01" "ValveBiped.Bip01_R_Finger0" 1.915079 0.000004 0.000008 0 0.003279 0.228617 0 0 0 0 0 0
 $definebone "ValveBiped.Bip01_R_Finger02" "ValveBiped.Bip01_R_Finger01" 1.291492 0.000002 -0.000008 0 0.00501 0.362995 0 0 0 0 0 0




$sequence "ragdoll" "warhammer1player_anims\ragdoll.smd" {
	fps 30
	activity "ACT_DIERAGDOLL" 1
}

$includemodel "Police_animations.mdl"
$includemodel "Police_ss.mdl"
$includemodel "humans/male_shared.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 "warhammer1player_physics.smd"
{
	$mass 100
	$inertia 10
	$damping 0.05
	$rotdamping 5
	$rootbone "valvebiped.bip01_pelvis"

	$jointrotdamping "ValveBiped.Bip01_Pelvis" 3

	$jointmassbias "ValveBiped.Bip01_Spine1" 8
	$jointconstrain "ValveBiped.Bip01_Spine1" x limit -10 10 0
	$jointconstrain "ValveBiped.Bip01_Spine1" y limit -16 16 0
	$jointconstrain "ValveBiped.Bip01_Spine1" z limit -20 30 0

	$jointmassbias "ValveBiped.Bip01_Spine2" 9
	$jointconstrain "ValveBiped.Bip01_Spine2" x limit -10 10 0
	$jointconstrain "ValveBiped.Bip01_Spine2" y limit -10 10 0
	$jointconstrain "ValveBiped.Bip01_Spine2" z limit -20 20 0

	$jointmassbias "ValveBiped.Bip01_R_Clavicle" 4
	$jointrotdamping "ValveBiped.Bip01_R_Clavicle" 6
	$jointconstrain "ValveBiped.Bip01_R_Clavicle" x limit -15 15 0
	$jointconstrain "ValveBiped.Bip01_R_Clavicle" y limit -10 10 0
	$jointconstrain "ValveBiped.Bip01_R_Clavicle" z limit 0 45 0

	$jointmassbias "ValveBiped.Bip01_L_Clavicle" 4
	$jointrotdamping "ValveBiped.Bip01_L_Clavicle" 6
	$jointconstrain "ValveBiped.Bip01_L_Clavicle" x limit -15 15 0
	$jointconstrain "ValveBiped.Bip01_L_Clavicle" y limit -10 10 0
	$jointconstrain "ValveBiped.Bip01_L_Clavicle" z limit 0 45 0

	$jointmassbias "ValveBiped.Bip01_L_UpperArm" 5
	$jointrotdamping "ValveBiped.Bip01_L_UpperArm" 2
	$jointconstrain "ValveBiped.Bip01_L_UpperArm" x limit -15 20 0
	$jointconstrain "ValveBiped.Bip01_L_UpperArm" y limit -40 32 0
	$jointconstrain "ValveBiped.Bip01_L_UpperArm" z limit -80 25 0

	$jointmassbias "ValveBiped.Bip01_L_Forearm" 4
	$jointrotdamping "ValveBiped.Bip01_L_Forearm" 4
	$jointconstrain "ValveBiped.Bip01_L_Forearm" x limit -40 15 0
	$jointconstrain "ValveBiped.Bip01_L_Forearm" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_L_Forearm" z limit -120 10 0

	$jointrotdamping "ValveBiped.Bip01_L_Hand" 1
	$jointconstrain "ValveBiped.Bip01_L_Hand" x limit -25 25 0
	$jointconstrain "ValveBiped.Bip01_L_Hand" y limit -35 35 0
	$jointconstrain "ValveBiped.Bip01_L_Hand" z limit -50 50 0

	$jointmassbias "ValveBiped.Bip01_R_UpperArm" 5
	$jointrotdamping "ValveBiped.Bip01_R_UpperArm" 2
	$jointconstrain "ValveBiped.Bip01_R_UpperArm" x limit -15 20 0
	$jointconstrain "ValveBiped.Bip01_R_UpperArm" y limit -40 32 0
	$jointconstrain "ValveBiped.Bip01_R_UpperArm" z limit -80 25 0

	$jointmassbias "ValveBiped.Bip01_R_Forearm" 4
	$jointrotdamping "ValveBiped.Bip01_R_Forearm" 4
	$jointconstrain "ValveBiped.Bip01_R_Forearm" x limit -40 15 0
	$jointconstrain "ValveBiped.Bip01_R_Forearm" y limit 0 0 0
	$jointconstrain "ValveBiped.Bip01_R_Forearm" z limit -120 10 0

	$jointrotdamping "ValveBiped.Bip01_R_Hand" 1
	$jointconstrain "ValveBiped.Bip01_R_Hand" x limit -25 25 0
	$jointconstrain "ValveBiped.Bip01_R_Hand" y limit -35 35 0
	$jointconstrain "ValveBiped.Bip01_R_Hand" z limit -50 50 0

	$jointmassbias "ValveBiped.Bip01_R_Thigh" 7
	$jointrotdamping "ValveBiped.Bip01_R_Thigh" 7
	$jointconstrain "ValveBiped.Bip01_R_Thigh" x limit -25 25 0
	$jointconstrain "ValveBiped.Bip01_R_Thigh" y limit -10 15 0
	$jointconstrain "ValveBiped.Bip01_R_Thigh" z limit -55 25 0

	$jointmassbias "ValveBiped.Bip01_R_Calf" 4
	$jointconstrain "ValveBiped.Bip01_R_Calf" x limit -10 25 0
	$jointconstrain "ValveBiped.Bip01_R_Calf" y limit -5 5 0
	$jointconstrain "ValveBiped.Bip01_R_Calf" z limit -10 115 0

	$jointmassbias "ValveBiped.Bip01_L_Thigh" 7
	$jointrotdamping "ValveBiped.Bip01_L_Thigh" 7
	$jointconstrain "ValveBiped.Bip01_L_Thigh" x limit -25 25 0
	$jointconstrain "ValveBiped.Bip01_L_Thigh" y limit -10 15 0
	$jointconstrain "ValveBiped.Bip01_L_Thigh" z limit -55 25 0

	$jointmassbias "ValveBiped.Bip01_L_Calf" 4
	$jointconstrain "ValveBiped.Bip01_L_Calf" x limit -10 25 0
	$jointconstrain "ValveBiped.Bip01_L_Calf" y limit -5 5 0
	$jointconstrain "ValveBiped.Bip01_L_Calf" z limit -10 115 0

	$jointmassbias "ValveBiped.Bip01_Head1" 4
	$jointrotdamping "ValveBiped.Bip01_Head1" 3
	$jointconstrain "ValveBiped.Bip01_Head1" x limit -50 50 0
	$jointconstrain "ValveBiped.Bip01_Head1" y limit -20 20 0
	$jointconstrain "ValveBiped.Bip01_Head1" z limit -26 30 0
}



You’re missing the bones “ValveBiped.forward”, “ValveBiped.Anim_Attachment_RH”, “ValveBiped.Anim_Attachment_LH”, “ValveBiped.Bip01_L_Finger3”, “ValveBiped.Bip01_L_Finger31”, “ValveBiped.Bip01_L_Finger32”, “ValveBiped.Bip01_L_Finger4”, “ValveBiped.Bip01_L_Finger41”, “ValveBiped.Bip01_L_Finger42”, “ValveBiped.Bip01_R_Finger3”, “ValveBiped.Bip01_R_Finger31”, “ValveBiped.Bip01_R_Finger32”, “ValveBiped.Bip01_R_Finger4”, “ValveBiped.Bip01_R_Finger41”, “ValveBiped.Bip01_R_Finger42”.
These would explain a lot as to your hand problems.

If you added those bones and removed the $definebone commands, I’m sure it’ll work perfectly.

Ok I tryed to recompile it with another skeleton, and it look much better now, not perfect, because arms looks still kinda strange, but at least its possible to pose them.

Hmm, now see if using $definebone on the bones works better, considering you were missing them before might help.