• Writing a basic QC
    8 replies, posted
i was wondering if i could get some help completing a QC for a ragdoll. i have some of it done, im just not sure if it has any problems i should fix(probably) ive been looking through decompiled model QC. and pasting together what i would think of a basic QC looks like. i would hope to have someone guide me through and see what i need to do to get this done heres what i have so far: [code]$cd "C:\Users\sprevatte\Desktop\3dsFILES\spacepirate\gunslinger\M0dels" $modelname "models\Spacepirate\slinger_ref.mdl" $model "slinger_ref" "slinger_ref.smd" $cdmaterials "models\Spacepirate" // Model uses material "gunslinger_diffuse1.vmt" // Model uses material "eyedevice_dif.vmt" // Model uses material "eyedevice_tube_dif.vmt" $surfaceprop "flesh" $illumposition -0.646 -2.292 34.398 $sequence ragdoll "ragdoll" ACT_DIERAGDOLL 1 fps 30.00 $collisionjoints "phymodel.smd" { $mass 90.0 $inertia 10.00 $damping 0.01 $rotdamping 1.50 $rootbone "valvebiped.bip01_pelvis" $jointmerge "ValveBiped.Bip01_Pelvis" "ValveBiped.Bip01_Spine1" $jointconstrain "valvebiped.bip01_l_thigh" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" y limit -55.00 90.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" z limit -110.00 120.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 -12.00 145.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" y limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" z limit -55.00 35.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" y limit -90.00 55.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" z limit -110.00 125.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 -12.00 145.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" y limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" z limit -55.00 35.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" z limit -46.00 46.00 0.00 $jointconstrain "valvebiped.bip01_spine2" x limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_spine2" y limit -25.00 25.00 0.00 $jointconstrain "valvebiped.bip01_spine2" z limit -65.00 95.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" y limit -115.00 150.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" z limit -135.00 135.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" z limit -140.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" y limit -150.00 115.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" z limit -135.00 135.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" z limit -140.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" x limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" z limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" x limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" z limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_head1" x limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_head1" y limit -25.00 25.00 0.00 $jointconstrain "valvebiped.bip01_head1" z limit -65.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" z limit -46.00 46.00 0.00 $animatedfriction 1.000 400.000 0.500 0.000 0.300 } [/code] im trying to get in two other bodygroups and three other skins..
I recommend you use a QC generated by Crowbar instead, it'll give you a much better reference. For example, you don't need $cd or $illumposition, and your $texturegroup has nothing in it. [URL="https://developer.valvesoftware.com/wiki/$texturegroup"]Look on the wiki if you need help with a specific command[/URL].
ok i was reading on the wiki, should i change the $model to $body considering the model has no faceposing?
It doesn't make a difference, but I'd stick with $model.
does this look okay, its mainly based off crowbar decompiles [code] $modelname "models\Spacepirate\slinger_ref.mdl" $model "slinger_ref" "slinger_ref.smd" $bodygroup "model" { studio "slinger_ref.smd" } $bodygroup "hat" { blank studio "slinger_pir_hat.smd" } $cdmaterials "models\Spacepirate\" $surfaceprop "flesh" $contents "solid" $sequence "ragdoll" "M0dels\ragdoll.smd" { fps 30 "ACT_DIERAGDOLL" 1 } $collisionjoints "pir_phymodel.smd" { $mass 90.0 $inertia 10.00 $damping 0.01 $rotdamping 1.50 $rootbone "valvebiped.bip01_pelvis" $jointmerge "ValveBiped.Bip01_Pelvis" "ValveBiped.Bip01_Spine1" $jointconstrain "valvebiped.bip01_l_thigh" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" y limit -55.00 90.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" z limit -110.00 120.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 -12.00 145.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" y limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" z limit -55.00 35.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" y limit -90.00 55.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" z limit -110.00 125.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 -12.00 145.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" y limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" z limit -55.00 35.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" z limit -46.00 46.00 0.00 $jointconstrain "valvebiped.bip01_spine2" x limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_spine2" y limit -25.00 25.00 0.00 $jointconstrain "valvebiped.bip01_spine2" z limit -65.00 95.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" y limit -115.00 150.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" z limit -135.00 135.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" z limit -140.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" y limit -150.00 115.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" z limit -135.00 135.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" z limit -140.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" x limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" z limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" x limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" z limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_head1" x limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_head1" y limit -25.00 25.00 0.00 $jointconstrain "valvebiped.bip01_head1" z limit -65.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" z limit -46.00 46.00 0.00 $animatedfriction 1.000 400.000 0.500 0.000 0.300 } [/code]
That looks fine for compiling a ragdoll; make sure M[B]0[/B]dels\ragdoll.smd exists and that it's supposed to be a 0.
Yup, much better. Although [CODE]$model "slinger_ref" "slinger_ref.smd"[/CODE] [CODE]$bodygroup "model" { studio "slinger_ref.smd" }[/CODE] Those two blocks are the exact same thing, you'll end up slinger_ref duplicated. If you only have one SMD it's better to use $model.
oh wow silly me, thanks you guys for the help, i just want to check once more [code] $modelname "models\Spacepirate\slinger_ref.mdl" $bodygroup "Helmet" { studio "slinger_helmet.smd" } $bodygroup "hat" { blank studio "slinger_pir_hat.smd" } $texturegroup "skin" { { "gunslinger_diffuse1" } { "gunslinger_diffuse2" } { "gunslinger_diffuse3" } { "gunslinger_diffuse4" } } $cdmaterials "models\Spacepirate\" $surfaceprop "flesh" $contents "solid" $sequence "ragdoll" "M0dels\ragdoll.smd" { fps 30 "ACT_DIERAGDOLL" 1 } $collisionjoints "pir_phymodel.smd" { $mass 90.0 $inertia 10.00 $damping 0.01 $rotdamping 1.50 $rootbone "valvebiped.bip01_pelvis" $jointmerge "ValveBiped.Bip01_Pelvis" "ValveBiped.Bip01_Spine1" $jointconstrain "valvebiped.bip01_l_thigh" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" y limit -55.00 90.00 0.00 $jointconstrain "valvebiped.bip01_l_thigh" z limit -110.00 120.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 -12.00 145.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" y limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" z limit -55.00 35.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" y limit -90.00 55.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" z limit -110.00 125.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 -12.00 145.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" y limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" z limit -55.00 35.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_toe0" z limit -46.00 46.00 0.00 $jointconstrain "valvebiped.bip01_spine2" x limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_spine2" y limit -25.00 25.00 0.00 $jointconstrain "valvebiped.bip01_spine2" z limit -65.00 95.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" y limit -115.00 150.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" z limit -135.00 135.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" z limit -140.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" x limit -40.00 40.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" y limit -150.00 115.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" z limit -135.00 135.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" x limit -30.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" z limit -140.00 30.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" x limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" z limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" x limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" y limit -60.00 60.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" z limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_head1" x limit -70.00 70.00 0.00 $jointconstrain "valvebiped.bip01_head1" y limit -25.00 25.00 0.00 $jointconstrain "valvebiped.bip01_head1" z limit -65.00 40.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_toe0" z limit -46.00 46.00 0.00 $animatedfriction 1.000 400.000 0.500 0.000 0.300 } [/code] so for texture groups, how do i know which ones the base texture?
[QUOTE=cheesecurls;45437209] so for texture groups, how do i know which ones the base texture? [/QUOTE] Whichever texture(s) listed in the smd are the default ones.
Sorry, you need to Log In to post a reply to this thread.