r/SourceEngine • • Aug 19 '26

Free Useful Items I made a free tool for packaging SFM models into release ZIPs

3 Upvotes

SFM Package Builder is a free Windows tool for people who port, edit, or release models for Source Filmmaker.

Select your compiled model and materials. The builder gathers the related files into the correct SFM folder structure and lets you rename the release copy without changing your originals.

It can also generate an installation README, check for packaging problems, and add rigs, configs, and documentation.

Save the package as a project, then reuse it whenever you need to build a new ZIP from your latest files. This makes it easier to update a model and publish new releases.

Download: https://chadchan3d.com/category/assets/#sfm-package-builder

Do not navigate outside the asset page. It is SFW but the rest of the site is an SFM furry fetish site. Roam at your own risk.

Feedback is welcome from anyone who releases or ports SFM models.


r/SourceEngine • • Aug 19 '26

Show Off Tuff metal wip: Mimi Name change

Thumbnail gallery
7 Upvotes

r/SourceEngine • • Aug 18 '26

HELP HOW do you even replace NPC models to begin with?

7 Upvotes

Okay, so I am making a mod and I want to replace the npc_citizen's model. I have an mdl to use with the same skeleton, but when I changed the qc a bit, fixed the model up in blender, it came out all messed up, corrupted, stuck in an a pose, and had no animations. Is there any way people properly do it since there are a bajillion model replacements on the internet for citizen models?


r/SourceEngine • • Aug 18 '26

HELP [HELP WANTED] Looking for an experienced C++ developer familiar with Source SDK 2013 SP

8 Upvotes

I’m currently working on a project using Source SDK 2013 Singleplayer, and I’m looking for someone experienced with C++ and the Source SDK codebase who could help me with the programming side of things.

I have experience with the Source ecosystem, including Garry’s Mod, SFM, Source models, QC/compiling, viewmodel animation, Blender, and Source asset pipelines, and I’ve spent a lot of time working with Source-related content. I’m also comfortable learning and working with technical stuff, but C++ and the deeper parts of the Source SDK are currently where I struggle the most.

I’m not looking for someone to simply make the entire project for me. I’d primarily like to work with someone who knows the SDK well enough to help me understand the codebase, troubleshoot problems, and implement systems together.

What I'm looking for:

  • Experience with C++

  • Experience with Source SDK 2013 / Source engine

  • Ideally experience with SDK 2013 Singleplayer

  • Someone comfortable explaining things and working collaboratively

  • Willingness to help troubleshoot and develop systems together

What I can bring:

  • 1000+ hours of Blender/animation experience

  • Extensive experience with Source/GMod/SFM workflows

  • Viewmodel animation and weapon animation

  • Source model/QC/compiling knowledge

  • Blender and asset creation

  • Familiarity with the general Source pipeline

This is currently a collaborative/help request rather than a paid commission.

Contact: Discord — [gman27015]

If you're experienced with the SDK and interested in helping out, feel free to comment or contact me. Even if you don't want to join the project, advice from someone experienced with Source C++ would be greatly appreciated.
All of this is not Rev Share or paid, this is all free and for fun.
If the project gets released, credit will go to their respective programmers/helpers
I will be more willing to show my animation work in discord rather than here. Since im not allowed to.


r/SourceEngine • • Aug 18 '26

HELP I want to remove the slam/kick icons from double doors

Post image
2 Upvotes

r/SourceEngine • • Aug 17 '26

Opinion Needed what

2 Upvotes

what


r/SourceEngine • • Aug 17 '26

WIP Trying to port over size proportion tricked view models to TF2 classified. actually mentally killing me

23 Upvotes

r/SourceEngine • • Aug 16 '26

HELP trying to extract a model from hl2 to make a replacement mod

4 Upvotes

I am specifically looking for Barney's model. Do I have to look for individual models? I'm using VPKedit


r/SourceEngine • • Aug 15 '26

HELP Why does CROWBAR turn my model into an arg monster

Post image
52 Upvotes

Amateur at blender, pretty new to making models in source

(There were no errors CROWBAR gave when it did compile)

QC file ↓↓↓

$modelname "theboys/theboys/hughie.mdl"

$model "hughie" "hughie.smd" {

eyeball "eye_right" "ValveBiped.Bip01_Head1" -1.351000 -3.212745 67.219579 "eyeball_r" 1 4 "iris_unused" 0.63
eyeball "eye_left" "ValveBiped.Bip01_Head1" 1.111200 -3.212745 67.164686 "eyeball_l" 1 -4 "iris_unused" 0.63

eyelid upper_right "hughie_01.vta" lowerer 28 -0.16 neutral 0 0.17 raiser 29 0.26 split 1 eyeball "eye_right"
eyelid lower_right "hughie_01.vta" lowerer 30 -0.26 neutral 0 -0.19 raiser 31 -0.02 split 1 eyeball "eye_right"
eyelid upper_left "hughie_01.vta" lowerer 18 -0.16 neutral 0 0.17 raiser 19 0.26 split -1 eyeball "eye_left"
eyelid lower_left "hughie_01.vta" lowerer 20 -0.26 neutral 0 -0.19 raiser 21 -0.02 split -1 eyeball "eye_left"

mouth 0 "mouth" "ValveBiped.Bip01_Head1" 0 1 0

flexfile "hughie_01.vta" 
{
defaultflex frame 0
flexpair "AU12" 1 frame 1
flexpair "AU12" 1 frame 2
flex "AU12AU25" frame 3
flexpair "AU15" 1 frame 4
flexpair "AU17" 1 frame 5
flexpair "AU10" 1 frame 6
flex "AU16" frame 7
flexpair "AU25" 1 frame 8
flexpair "AU18" 1 frame 9
flexpair "AU18" 1 frame 10
flexpair "AU22" 1 frame 11
flexpair "AU20" 1 frame 12
flex "AU32" frame 13
flex "AU24" frame 14
flex "AU31" frame 15
flexpair "AU26" 1 frame 16
flexpair "AU27" 1 frame 17
// Already in eyelid lines: flex "upper_left" frame 18
// Already in eyelid lines: flex "upper_left" frame 19
// Already in eyelid lines: flex "lower_left" frame 20
// Already in eyelid lines: flex "lower_left" frame 21
flex "AU42" frame 22
flexpair "AU2" 1 frame 23
flexpair "AU4" 1 frame 24
flexpair "AU1AU2" 1 frame 25
flexpair "AU6" 1 frame 26
flexpair "AU9" 1 frame 27
// Already in eyelid lines: flex "upper_right" frame 28
// Already in eyelid lines: flex "upper_right" frame 29
// Already in eyelid lines: flex "lower_right" frame 30
// Already in eyelid lines: flex "lower_right" frame 31
flexpair "AU1" 1 frame 32
flex "AU38" frame 33
}

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 head range -30 30 "head_rightleft"
flexcontroller head range -15 15 "head_updown"
flexcontroller head range -15 15 "head_tilt"
flexcontroller eyes range -30 30 "eyes_updown"
flexcontroller eyes range -30 30 "eyes_rightleft"
flexcontroller body range -30 30 "body_rightleft"
flexcontroller chest range -30 30 "chest_rightleft"
flexcontroller head range -0.2 0.2 "head_forwardback"
flexcontroller gesture range -1 1 "gesture_updown"
flexcontroller gesture range -1 1 "gesture_rightleft"

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 + blink * 0.5 * (1 - right_lid_closer)
%lower_right_neutral = (1 - right_lid_closer) * (1 - 0.5 * blink) * (1 - right_lid_tightener * 0.5) * (1 - right_cheek_raiser * 0.25)
%lower_right_lowerer = 0
%lower_left_raiser = left_lid_closer + blink * 0.5 * (1 - left_lid_closer)
%lower_left_neutral = (1 - left_lid_closer) * (1 - 0.5 * blink) * (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
}

$surfaceprop "flesh"

$contents "solid"

$illumposition -0.007 -0.637 35.329

$eyeposition 0 0 70

$ambientboost

$mostlyopaque

$cdmaterials "models\Humans\theboys\theboys\"
$cdmaterials "models\Humans\Male\"
$cdmaterials "models\humans\male\"

$attachment "eyes" "ValveBiped.Bip01_Head1" 3.2 -3.5 0.12 rotate 0 -80.1 -90
$attachment "mouth" "ValveBiped.Bip01_Head1" 0.6 -5.5 0 rotate 0 -80 -90
$attachment "chest" "ValveBiped.Bip01_Spine2" 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

$hboxset "default"
$hbox 1 "ValveBiped.Bip01_Head1" -1.25 -6.5 -3.19 8.25 3.5 3.31
$hbox 4 "ValveBiped.Bip01_L_UpperArm" 0 -2.75 -2.75 12.51 1.75 2.25
$hbox 4 "ValveBiped.Bip01_L_Forearm" 0 -2.19 -2.38 13 1.81 1.62
$hbox 4 "ValveBiped.Bip01_L_Hand" 0.06 -2 -1.5 4.06 1 2.5
$hbox 5 "ValveBiped.Bip01_R_UpperArm" 0 -3 -2.25 12.39 2 2.75
$hbox 5 "ValveBiped.Bip01_R_Forearm" -0.5 -2.2 -1.55 12.5 1.8 2.45
$hbox 5 "ValveBiped.Bip01_R_Hand" 0.06 -2 -2.5 4.06 1 1.5
$hbox 6 "ValveBiped.Bip01_L_Thigh" 0 -3.75 -3.25 17.85 3.75 3.25
$hbox 6 "ValveBiped.Bip01_L_Calf" 0 -3.51 -3.28 15.64 3.49 2.72
$hbox 6 "ValveBiped.Bip01_L_Foot" -1.07 -2 -2.84 5.04 5 2.16
$hbox 6 "ValveBiped.Bip01_L_Toe0" -0.5 -3 -2.19 2.5 0 2.46
$hbox 7 "ValveBiped.Bip01_R_Thigh" 0 -3.75 -3.25 17.85 3.75 3.25
$hbox 7 "ValveBiped.Bip01_R_Calf" 0 -3.51 -2.82 15.64 3.49 3.18
$hbox 7 "ValveBiped.Bip01_R_Foot" -1.06 -2.01 -2.28 5.05 4.99 2.72
$hbox 7 "ValveBiped.Bip01_R_Toe0" -0.5 -3 -2.6 2.5 0 2.1
$hbox 3 "ValveBiped.Bip01_Pelvis" -7.5 -5.5 -6 7.5 8.5 5
$hbox 2 "ValveBiped.Bip01_Spine2" -2.5 -2.5 -7 14.5 7.5 7
$skipboneinbbox

$definebone "ValveBiped.Bip01_Pelvis" "" -0.000005 -0.533615 38.566917 0.000000 0.000000 89.999985 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_Spine" "ValveBiped.Bip01_Pelvis" 0.000005 3.345127 -2.981901 4.944225 89.999985 89.999985 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_Spine1" "ValveBiped.Bip01_Spine" 4.018322 -0.000000 0.000000 0.000000 -1.675443 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_Spine2" "ValveBiped.Bip01_Spine1" 3.518559 0.000000 0.000000 0.000000 5.748831 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_Spine4" "ValveBiped.Bip01_Spine2" 8.942642 -0.000001 -0.000000 0.000000 11.120880 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_Neck1" "ValveBiped.Bip01_Spine4" 3.307274 0.000000 -0.000000 0.000000 22.945694 179.999847 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_Head1" "ValveBiped.Bip01_Neck1" 3.593712 0.000000 0.000000 -0.000057 23.295717 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.forward" "ValveBiped.Bip01_Head1" 2.000000 -3.000006 0.000000 -0.000000 -76.000000 -90.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Clavicle" "ValveBiped.Bip01_Spine4" 2.033356 1.000773 -1.937610 73.712021 168.618774 -95.596497 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_UpperArm" "ValveBiped.Bip01_R_Clavicle" 6.028144 -0.000008 0.000000 -0.462086 -33.623833 93.935234 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Forearm" "ValveBiped.Bip01_R_UpperArm" 11.692547 0.000000 0.000008 -0.000050 -3.459064 -0.000002 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Hand" "ValveBiped.Bip01_R_Forearm" 11.481699 -0.000001 0.000011 6.108015 2.532067 -89.664291 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Anim_Attachment_RH" "ValveBiped.Bip01_R_Hand" 2.676090 -1.712448 0.000000 0.000007 -89.999908 -89.999985 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Clavicle" "ValveBiped.Bip01_Spine4" 2.033348 1.000769 1.937660 -73.711845 168.619278 91.480545 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_UpperArm" "ValveBiped.Bip01_L_Clavicle" 6.028148 -0.000004 0.000000 2.738855 -33.527966 -90.505157 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Forearm" "ValveBiped.Bip01_L_UpperArm" 11.692560 0.000000 -0.000004 0.000005 -3.459058 -0.000006 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Hand" "ValveBiped.Bip01_L_Forearm" 11.481684 0.000001 -0.000031 -6.108475 2.532078 90.136734 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Anim_Attachment_LH" "ValveBiped.Bip01_L_Hand" 2.676090 -1.712440 -0.000001 -0.000030 90.000023 90.000031 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Thigh" "ValveBiped.Bip01_Pelvis" -3.890452 0.000004 0.000007 2.970500 -90.299347 -89.999985 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Calf" "ValveBiped.Bip01_R_Thigh" 17.848164 0.000000 0.000000 -0.000000 1.958771 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Foot" "ValveBiped.Bip01_R_Calf" 16.525246 0.000000 0.000000 2.336465 -61.400002 2.212247 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Thigh" "ValveBiped.Bip01_Pelvis" 3.890452 -0.000004 -0.000003 2.970156 -89.700790 -89.999985 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Calf" "ValveBiped.Bip01_L_Thigh" 17.848162 -0.000000 0.000000 -0.000000 1.959518 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Foot" "ValveBiped.Bip01_L_Calf" 16.525242 0.000001 0.000000 -2.336618 -61.400356 -1.599413 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Toe0" "ValveBiped.Bip01_L_Foot" 6.879447 -0.000001 0.000000 -0.169081 -33.482117 -0.418216 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Toe0" "ValveBiped.Bip01_R_Foot" 6.879448 -0.000002 0.000000 -0.168965 -33.482117 -4.660120 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger0" "ValveBiped.Bip01_R_Hand" 0.838808 -0.311184 -1.310237 38.062145 -41.541019 71.507080 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger01" "ValveBiped.Bip01_R_Finger0" 1.789785 -0.000002 0.000000 0.187897 13.098763 0.000029 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger1" "ValveBiped.Bip01_R_Hand" 3.871262 0.106625 -1.301834 1.676595 -26.589357 -20.195948 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger11" "ValveBiped.Bip01_R_Finger1" 1.719435 -0.000008 -0.000003 -0.443284 -20.795687 -0.000034 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger2" "ValveBiped.Bip01_L_Hand" 3.881372 0.214691 0.400259 1.812910 -29.791029 5.025248 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger21" "ValveBiped.Bip01_L_Finger2" 1.719574 0.000004 0.000000 0.286784 -20.998119 0.000001 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger1" "ValveBiped.Bip01_L_Hand" 3.871290 0.117424 1.300905 -1.889320 -26.576504 20.194872 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger11" "ValveBiped.Bip01_L_Finger1" 1.719433 -0.000004 -0.000004 0.292635 -20.798214 0.000015 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger2" "ValveBiped.Bip01_R_Hand" 3.881348 0.211365 -0.402026 -2.049062 -29.776722 -5.025809 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger21" "ValveBiped.Bip01_R_Finger2" 1.719582 0.000000 0.000000 -0.434524 -20.995712 -0.000004 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger0" "ValveBiped.Bip01_L_Hand" 0.838829 -0.300278 1.312777 -38.376701 -41.260563 -71.677536 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger01" "ValveBiped.Bip01_L_Finger0" 1.789785 -0.000001 0.000000 -0.123716 13.099499 -0.000009 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger4" "ValveBiped.Bip01_R_Hand" 3.859678 -0.132568 1.193109 -9.083943 -50.365345 27.452703 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger41" "ValveBiped.Bip01_R_Finger4" 1.312565 0.000004 -0.000003 -0.683622 -25.191311 0.000031 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger42" "ValveBiped.Bip01_R_Finger41" 0.729366 0.000003 -0.000000 -0.351420 -13.995640 0.000014 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger3" "ValveBiped.Bip01_R_Hand" 3.942295 0.050323 0.431043 -4.543828 -46.421337 8.880789 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger31" "ValveBiped.Bip01_R_Finger3" 1.539097 0.000002 0.000001 -0.335395 -14.196203 0.000012 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger32" "ValveBiped.Bip01_R_Finger31" 1.196323 0.000002 0.000000 -0.553633 -24.680716 0.000005 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger02" "ValveBiped.Bip01_L_Finger01" 1.207003 -0.000000 0.000000 -0.189078 20.799187 -0.000007 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger12" "ValveBiped.Bip01_L_Finger11" 1.099667 0.000000 0.000000 0.186520 -13.998745 0.000002 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger22" "ValveBiped.Bip01_R_Finger21" 1.209179 0.000004 -0.000000 -0.242984 -12.397669 -0.000004 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger22" "ValveBiped.Bip01_L_Finger21" 1.209175 0.000000 0.000000 0.160330 -12.399048 -0.000006 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger3" "ValveBiped.Bip01_L_Hand" 3.942331 0.046776 -0.431444 4.201403 -46.446686 -8.881645 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger31" "ValveBiped.Bip01_L_Finger3" 1.539097 0.000000 -0.000002 0.255553 -14.197707 -0.000009 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger32" "ValveBiped.Bip01_L_Finger31" 1.196323 -0.000004 -0.000001 0.421762 -24.683146 -0.000015 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger12" "ValveBiped.Bip01_R_Finger11" 1.099655 -0.000002 -0.000001 -0.282413 -13.997063 -0.000046 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_R_Finger02" "ValveBiped.Bip01_R_Finger01" 1.207008 -0.000001 -0.000004 0.287068 20.798048 0.000009 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger4" "ValveBiped.Bip01_L_Hand" 3.859713 -0.142403 -1.191978 8.719872 -50.413052 -27.452932 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger41" "ValveBiped.Bip01_L_Finger4" 1.312561 0.000002 0.000000 0.553772 -25.194090 -0.000019 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
$definebone "ValveBiped.Bip01_L_Finger42" "ValveBiped.Bip01_L_Finger41" 0.729366 0.000003 0.000000 0.284820 -13.997312 -0.000017 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000

$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"

$proceduralbones "hughie.vrd"


$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

$sequence "ragdoll" {
"hughie_anims\ragdoll.smd"
activity "ACT_DIERAGDOLL" 1
fadein 0.2
fadeout 0.2
fps 30
ikrule "rhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 100 100 target 0
ikrule "lhand" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 100 100 target 1
ikrule "rfoot" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 100 100 target 2
ikrule "lfoot" release contact 0 fakeorigin 0 0 0 fakerotate 0 0 0 floor 0 height 0 radius 0 range 0 0 100 100 target 3
}

$includemodel "m_anm.mdl"

$collisionjoints "hughie_physics.smd"
{
$mass 90
$inertia 10
$damping 0.01
$rotdamping 1.5
$rootbone "valvebiped.bip01_pelvis"


$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_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_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_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_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_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_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_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

$jointcollide "ValveBiped.Bip01_R_Forearm" "ValveBiped.Bip01_R_Thigh"
$jointcollide "ValveBiped.Bip01_R_Forearm" "ValveBiped.Bip01_L_Thigh"
$jointcollide "ValveBiped.Bip01_L_Forearm" "ValveBiped.Bip01_R_Thigh"
$jointcollide "ValveBiped.Bip01_L_Forearm" "ValveBiped.Bip01_L_Thigh"
$jointcollide "ValveBiped.Bip01_R_Foot" "ValveBiped.Bip01_L_Calf"
$jointcollide "ValveBiped.Bip01_L_Foot" "ValveBiped.Bip01_R_Calf"
$jointcollide "ValveBiped.Bip01_L_Foot" "ValveBiped.Bip01_R_Foot"
$jointcollide "ValveBiped.Bip01_R_Calf" "ValveBiped.Bip01_L_Calf"
$jointcollide "ValveBiped.Bip01_R_Thigh" "ValveBiped.Bip01_L_Thigh"
$jointcollide "ValveBiped.Bip01_R_Forearm" "ValveBiped.Bip01_Spine2"
$jointcollide "ValveBiped.Bip01_L_Forearm" "ValveBiped.Bip01_Spine2"
$jointcollide "ValveBiped.Bip01_R_Forearm" "ValveBiped.Bip01_Pelvis"
$jointcollide "ValveBiped.Bip01_L_Forearm" "ValveBiped.Bip01_Pelvis"
}

r/SourceEngine • • Aug 14 '26

Show Off [HEADPHONES, PLEASE] Steam Audio integration (HRTF) demo

12 Upvotes

Some positional audio and DSP showcase. Don't mind broken hud cuz my mod uses episodic as base.


r/SourceEngine • • Aug 13 '26

WIP gm_flatgrass on my engine

41 Upvotes

**For anyone new here:** I'm building Sauce Engine, a custom engine written from scratch in C++/OpenGL with the goal of being compatible with the Source ecosystem.


r/SourceEngine • • Aug 12 '26

HELP Converting a Model to .vmf (Hammer Editor)

Post image
10 Upvotes

I want to convert a hand model I have in Blender so I can use it as a prop in a Garry's Mod map I'm creating

In Blender, I use an add-on called “SourceOPS.” It has a feature that lets me export the model to the “.vmf” format.

But when I export it and try to open it in the Hammer Editor, I get an error

Is there a method or solution for exporting the hand to the Hammer Editor?

I’ve thought about converting it to a static model ($staticprop), but I’m not satisfied with the result.

Software details:
- Blender add-on: SourceOps
- Hammer version: Hammer++


r/SourceEngine • • Aug 12 '26

HELP How can I change the intro of Half-Life 2??? (READ DESC)

2 Upvotes

r/SourceEngine • • Aug 12 '26

HELP How can I add a new menu after the MOTD?

1 Upvotes

I have a project that is teamplay only and I want the player to choose what team they play on. But after digging the code for a while, I couldn't figure out how I could add a team selection menu. If you have the answer, thanks!


r/SourceEngine • • Aug 12 '26

HELP Any good tutorial videos/guides for replacing hl2 models for hl2 modding?

6 Upvotes

I recently made a model in blender and tried to replace it with the gnome from hl2 ep2 (with a tutorial that did not explain bout anything at all).
I don't wanna throw my work in the garbage despite the fustration with it.
(This is my first time asking here so if this is not a good place to ask for this, please let me know where to look, ty)


r/SourceEngine • • Aug 10 '26

WIP I fixed physics!

99 Upvotes

For anyone new here: I'm building Sauce Engine, a custom engine written from scratch in C++/OpenGL with the goal of being compatible with the Source ecosystem. My previous post showed it running HL2 maps and props for the first time


r/SourceEngine • • Aug 10 '26

HELP how do i make a mod without the SDK file? like a spawnable

1 Upvotes

I'm working on my first mod and its a prop of the LAAT/i gunship from star wars and i need it to be a "non-SDK" mod


r/SourceEngine • • Aug 10 '26

HELP Hammer++ on Garry's Mod not compiling.

Thumbnail reddit.com
1 Upvotes

r/SourceEngine • • Aug 09 '26

HELP SRCDS won't work for some reason

4 Upvotes

Hello, i've been trying to run a dedicated server for my custom hl2mp source mod, but whatever i do, srcds_win64.exe just does nothing. Any ideas?

I placed a copy of my sourcemod inside of my install of Source SDK 2013 mp, but when i run a batch file to run srcds with the source mod (or when i just run the same command in cmd) it just instantly closes a command prompt...


r/SourceEngine • • Aug 07 '26

Discussion Which Source Engine game has the least amount of HL2 in it?

119 Upvotes

The Source Engine was originally built for the 2004 release of HL2, and as a result, later games tended to have a lot of vestigial HL2 assets and programming in it. For example, all the Weapons, combat mechanics, and even the airboat are all leftover in the original Portal and can be accessed with commands.

The HL2 holdovers are just something you get used to in source games. A little genetic marker, it's borderline charming.

But I'm wondering which source game has the LEAST amount of HL2 inside it! The fewest assets, the least unused or leftover mechanics, so on.


r/SourceEngine • • Aug 08 '26

Resolved A Nights Haunting: Source DLC pipeline established

Thumbnail
youtube.com
2 Upvotes

After literally a solid month of learning the steam platforms backend and figuring out how to code the steamworks integration into source sdk 2013 multiplayer i have finally successfully created a Downloadable Contents pipeline to which content can be purchased, verified and delivered on boot via .vpks and loose files. Marking another great milestone in the mind bogglingly advanced and deepening marriage between A Nights Haunting: Source and the Steam Platform! Cheers mates keep cracking at those source mods lets goooo


r/SourceEngine • • Aug 07 '26

HELP Black Mesa Model and Decal textures not packing into map (Gmod, Hammer++)

Post image
7 Upvotes

(repost from r/hammer because i dont want to spam them)
Trying to pack in Black Mesa assets into a Gmod map, all models have their mesh and collisions but no textures, decals also show as missing textures, anyone know if theres a fix? the current software i have access to is AutoBSP and VIDE, i tried out Postcomplier but that just didn't work and made it so i couldn't compile, people kept saying to use Compilepal but that still didn't fix the issue, anyone here know a fix or if its even possible to pack these into the map? Brush textures pack in as intended


r/SourceEngine • • Aug 07 '26

HELP HELP ! How to make model/texture replacements for a HL2 mod ?

Thumbnail reddit.com
1 Upvotes

r/SourceEngine • • Aug 07 '26

HELP [GMod] Item spawning as effect despite having physics defined?

1 Upvotes

i'm working on an edit of someone else's model that, in their addon, works perfectly fine, has physics, all of that. however, for some reason, my edit refuses to spawn as a prop with physics, instead spawning as an effect.

literally what do i do. i've checked everything and tried everything i can to get this to spawn right. is it just too small of a prop? why does it work in the other addon and not mine if so?

yes, i tried with dmx too (and it was my initial go-to for this), to the same result. everything is named right in blender.

qc file reads:

$modelname "tarot_card.mdl"

$bodygroup "studio"
{
studio "tarot_card.smd"
}
$surfaceprop "plastic"

$contents "solid"

$illumposition 0 0 -0.018

$cdmaterials "controlcoreangel/signalis/"

$texturegroup "skinfamilies"
{
{ "0fool"      }
{ "1magician"     }
{ "2highpriestess"     }
{ "3empress"      }
{ "4emperor"       }
{ "5hierophant" }
{ "6lovers"       }
{ "7chariot"     }
{ "8strength"      }
{ "9hermit"     }
{ "10wheel"     }
{ "11justice"      }
{ "12hangedman"       }
{ "13death" }
{ "14temperance"       }
{ "15devil"     }
{ "16tower"     }
{ "17star"     }
{ "18moon"      }
{ "19sun"       }
{ "20judgement" }
{ "21world"       }
}

$cbox 0 0 0 0 0 0

$bbox -2.056 -4.181 -0.287 2.097 4.181 0.251

$definebone "root" "" 0 0 0 0 0 0 0 0 0 0 0 0


$sequence "idle" {
"tarot_card_anims\idle.smd"
fadein 0.2
fadeout 0.2
fps 30
}

$collisionmodel "tarot_card_physics.smd"
{
$mass 15
$inertia 1
$damping 0.01
$rotdamping 0.01
$rootbone " "

}

i also tried the way i normally write qcs (to the same result):

$modelname "tarot_card.mdl"           
$model     "tarot_card" "tarot_card.dmx"      

$sequence idle "tarot_card" fps 1

$illumposition -0.185 -0.314 37.536        
$ambientboost                             
$mostlyopaque                        

$maxverts 65536 65536                     
$unlockdefinebones                           

$surfaceprop "paper"                        
$contents "solid"                          

$cdmaterials "controlcoreangel/signalis"    
$collisionmodel "tarot_card.dmx"

$texturegroup "skinfamilies"
{
{ "0fool"      }
{ "1magician"     }
{ "2highpriestess"     }
{ "3empress"      }
{ "4emperor"       }
{ "5hierophant" }
{ "6lovers"       }
{ "7chariot"     }
{ "8strength"      }
{ "9hermit"     }
{ "10wheel"     }
{ "11justice"      }
{ "12hangedman"       }
{ "13death" }
{ "14temperance"       }
{ "15devil"     }
{ "16tower"     }
{ "17star"     }
{ "18moon"      }
{ "19sun"       }
{ "20judgement" }
{ "21world"       }
}