├── .gitignore ├── src ├── hc │ ├── 2hhc_bootstrap_program.xlsx │ ├── hc_sa_drills.csv │ ├── hc_2h_progression.csv │ ├── hc_sa_progression.puml │ ├── hc_2h_progression_1.puml │ ├── hc_2h_progression_ALT.puml │ └── hc_2h_progression_ALL.puml ├── kb │ ├── kb_bootstrap_program.xlsx │ ├── kb_progression_3.puml │ ├── kb_progression_2_tgu.puml │ ├── kb_progression_1.puml │ ├── kb_progression_4.puml │ ├── kb_progression.csv │ └── kb_progression_ALL.puml └── mace │ ├── mace_warrior_subsequence.puml │ ├── mace_progression.csv │ ├── mace_progression_sa.puml │ └── mace_progression_ALL.puml ├── psakefile.ps1 ├── README.md └── LICENSE.txt /.gitignore: -------------------------------------------------------------------------------- 1 | # LibreOffice Calc lock file 2 | .~lock* 3 | # VSCode settings 4 | .vscode 5 | -------------------------------------------------------------------------------- /src/hc/2hhc_bootstrap_program.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dznz/wildman-skill-trees/HEAD/src/hc/2hhc_bootstrap_program.xlsx -------------------------------------------------------------------------------- /src/kb/kb_bootstrap_program.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dznz/wildman-skill-trees/HEAD/src/kb/kb_bootstrap_program.xlsx -------------------------------------------------------------------------------- /src/hc/hc_sa_drills.csv: -------------------------------------------------------------------------------- 1 | ID,Graph_Name,Label,Skill_Developed,URL 2 | SAHC-01,mov_01_s2s,Side to Side Swing,ELBOWS LOCKED,https://www.youtube.com/watch?v=cosgyt2BQG4 3 | SAHC-02,mov_02_incircle,Inside Circle,,https://www.youtube.com/watch?v=-gtRj1KEUmw 4 | SAHC-03,mov_03_outcircle,Outside Circle,,https://www.youtube.com/watch?v=Mf2QuZvRtQ4 5 | SAHC-04,mov_04_pullover,Pullover,,https://www.youtube.com/watch?v=HHT6TrTLJM8 6 | SAHC-05,mov_05_backs2s,Back Position Swing,THUMB TO SHIRT,https://www.youtube.com/watch?v=sxePeWDR1U0 7 | SAHC-06,mov_06_perry,Perry Cast\naka Bailout,SAFE FAILURE,https://www.youtube.com/watch?v=FpUecSrX_AI 8 | SAHC-07,mov_07_sc,Shield Cast,,https://www.youtube.com/watch?v=huwc0g3yLWk 9 | SAHC-08,mov_08_sideswingl2h,Side Swing\nLow to High\nwith Stop,HIP SNAP,https://www.youtube.com/watch?v=0_wHseV7B-o 10 | SAHC-09,mov_09_s2srockit,Side to Side Rockit,,https://www.youtube.com/watch?v=I26O1ct_hik 11 | SAHC-10,mov_10_sideswingl2hcont,Side Swing\nLow to High\nContinuous,,https://www.youtube.com/watch?v=_Yd8I7U44mw 12 | SAHC-11,mov_11_altcircle,Alternating Circle,,https://www.youtube.com/watch?v=yuJNSETl-tI 13 | SAHC-12,mov_12_outpend,Outside Pendulum,,https://www.youtube.com/watch?v=q8l1G7UoERA 14 | SAHC-13,mov_13_inpend,Inside Pendulum,,https://www.youtube.com/watch?v=4LqqrNosRiI 15 | SAHC-14,mov_14_outpull,Outside Pullover,+ EXT ROTATION,https://www.youtube.com/watch?v=sJ5XCgdCMx8 16 | SAHC-15,mov_15_inpull,Inside Pullover,+ INT ROTATION,https://www.youtube.com/watch?v=DQg80eX08hg 17 | SAHC-16,mov_16_altpend,Alternating Pendulum,,https://www.youtube.com/watch?v=eIkqXJ5d7V4 18 | SAHC-17,mov_17_millprep,Mill Prep,,https://www.youtube.com/watch?v=TSjIEfyJGKY 19 | SAHC-18,mov_18_alt180pull,Alternating 180 Degree\nPullover,,https://www.youtube.com/watch?v=brM1Ybg9v7E 20 | SAHC-19,mov_19_mill,Mill,,https://www.youtube.com/watch?v=0fm3VX0iKnA 21 | SAHC-20,mov_20_revmill,Reverse Mill,,https://www.youtube.com/watch?v=B8YWWwRB8fo 22 | SAHC-21,mov_21_outcirclesc,Outside Circle\nShield Cast,ORDER POS IN MILL,https://www.youtube.com/watch?v=NdJlzFTbQwo 23 | SAHC-22,mov_22_outpendoutpull,Outside Pendulum\nOutside Pullover,,https://www.youtube.com/watch?v=b0Ztc-54C_Y 24 | SAHC-23,mov_23_outpull3count,Outside Pullover\n3 Count,,https://www.youtube.com/watch?v=_hJaJVaMPtE 25 | SAHC-24,mov_24_outpendoutpull3c,Outside Pendulum\nOutside Pullover\n3 Count,,https://www.youtube.com/watch?v=FauiblV5PHg 26 | SAHC-25,mov_25_inpendinpull,Inside Pendulum\nInside Pullover,,https://www.youtube.com/watch?v=VFaO93BsNaA 27 | SAHC-26,mov_26_inpull3count,Inside Pullover\n3 Count,,https://www.youtube.com/watch?v=lBKIaQ6iej8 28 | SAHC-27,mov_27_inpendinpull3c,Inside Pendulum\nInside Pullover\n3 Count,,https://www.youtube.com/watch?v=Vv4rdCks2f8 29 | SAHC-28,mov_28_outpend180pull,Outside Pendulum\n180 Pullover,,https://www.youtube.com/watch?v=dATAyVyvbnw 30 | SAHC-29,mov_29_kneelbackswing,Half Kneeling\nBack Position Swing,CONNECT HIP\nTO SHOULDER,https://www.youtube.com/watch?v=H590if5eTeE 31 | -------------------------------------------------------------------------------- /psakefile.ps1: -------------------------------------------------------------------------------- 1 | Include ".\build_utils.ps1" 2 | 3 | Properties { 4 | $DistDir = (Join-Path $PSScriptRoot "dist") 5 | $SrcRoot = (Join-Path $PSScriptRoot "src") 6 | 7 | # By default, produce only SVG diagrams as output 8 | [string[]] $script:OutputFormats = ,"svg" 9 | 10 | # PlantUML/Dot diagrams to compile 11 | $DiagramFiles = @{ 12 | hc = ( 13 | "hc_2h_progression_1.puml", 14 | "hc_2h_progression_ALL.puml", 15 | "hc_2h_progression_ALT.puml", 16 | "hc_sa_progression.puml" 17 | ) 18 | kb = ( 19 | "kb_progression_1.puml", 20 | "kb_progression_2_tgu.puml", 21 | "kb_progression_3.puml", 22 | "kb_progression_4.puml", 23 | "kb_progression_ALL.puml" 24 | ) 25 | mace = ( 26 | "mace_progression_ALL.puml", 27 | "mace_progression_sa.puml", 28 | "mace_warrior_subsequence.puml" 29 | ) 30 | } 31 | 32 | # Files copied directly to Dist 33 | $StaticFiles = @{ 34 | hc = ( 35 | "2hhc_bootstrap_program.xlsx", 36 | "hc_2h_progression.csv", 37 | "hc_sa_drills.csv") 38 | kb = ( 39 | "kb_bootstrap_program.xlsx", 40 | "kb_progression.csv") 41 | mace = ( 42 | "mace_progression.csv" 43 | ) 44 | } 45 | } 46 | 47 | Task default -Depends Quick 48 | 49 | Task Quick -Depends Compile ` 50 | -Description "Build only SVG files for quick updates." 51 | 52 | Task Full -Depends Clean, SetReleaseFormats, Compile, CopyStaticFiles ` 53 | -Description "Prepare a full release of diagrams and static files" 54 | 55 | # Releases include SVG & PNG formats for accessibility 56 | Task SetReleaseFormats ` 57 | -Description "Set to the supported image formats for releases." ` 58 | { 59 | $script:OutputFormats = "svg", "png" 60 | } 61 | 62 | Task Compile ` 63 | -Description "Use PlantUML to produce diagram images." ` 64 | -Depends CompileHeavyClub, ` 65 | CompileKettlebell, ` 66 | CompileMace ` 67 | 68 | Task CompileHeavyClub { Compile-PumlDiagram -ToolName "hc" } 69 | 70 | Task CompileKettlebell { Compile-PumlDiagram -ToolName "kb" } 71 | 72 | Task CompileMace { Compile-PumlDiagram -ToolName "mace" } 73 | 74 | Task CopyStaticFiles ` 75 | -Description "Copy unprocessed files to Dist directory." ` 76 | -Depends CopyStaticHeavyClub, ` 77 | CopyStaticKettlebell, ` 78 | CopyStaticMace 79 | 80 | Task CopyStaticHeavyClub { Copy-StaticFiles -ToolName "hc" } 81 | 82 | Task CopyStaticKettlebell { Copy-StaticFiles -ToolName "kb" } 83 | 84 | Task CopyStaticMace { Copy-StaticFiles -ToolName "mace" } 85 | 86 | Task Clean -Description "Remove all files in Dist." { 87 | Remove-Item -Path (Join-Path $DistDir "*") 88 | } 89 | 90 | function Compile-PumlDiagram { 91 | param ( 92 | [string] $ToolName 93 | ) 94 | $ToolRoot = (Join-Path $SrcRoot $ToolName) 95 | foreach ($SrcFile in $DiagramFiles[$ToolName]) { 96 | Write-Host "Rendering $SrcFile" 97 | Puml -SrcFilePath (Join-Path $ToolRoot $SrcFile) ` 98 | -OutputDirPath $DistDir ` 99 | -OutputFormatList $script:OutputFormats 100 | } 101 | } 102 | 103 | function Copy-StaticFiles { 104 | param ( 105 | [string] $ToolName 106 | ) 107 | $ToolRoot = (Join-Path $SrcRoot $ToolName) 108 | $FilesToCopy = $StaticFiles[$ToolName] 109 | foreach ($SrcFile in $FilesToCopy) { 110 | Copy-Item -Path (Join-Path $ToolRoot $SrcFile) ` 111 | -Destination $DistDir 112 | } 113 | } 114 | -------------------------------------------------------------------------------- /src/mace/mace_warrior_subsequence.puml: -------------------------------------------------------------------------------- 1 | @startdot mace_warrior_subsequence 2 | digraph mace_warrior_subsequence { 3 | 4 | label=< 5 | Mace Warrior Stance Subsequence

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [shape=record] 19 | node [style="rounded,filled"] 20 | node [color=12, fillcolor=11] 21 | 22 | subgraph aux { 23 | node [color=10, fillcolor=9] 24 | 25 | } 26 | 27 | subgraph ext { 28 | node [color=2, fillcolor=1] 29 | ext_180pull [label="180 Degree Pullover"] 30 | mov_02_alt360 31 | mov_31_frcircle, mov_32_bkcircle 32 | mov_22_incircle2sameflip 33 | mov_23_outcircle2sameflip 34 | mov_23_outcircle2sameflip [label="{{23 |Outside circle to\nsame side flip catch}}" URL="https://www.youtube.com/watch?v=UwR4uFqvUyY" ] 35 | mov_27_inflip180pull [label="{{27 |Inside flip catch mill with\nsword grip across the top}}" URL="https://www.youtube.com/watch?v=uFsPwnClx-M" ] 36 | mov_28_outflipmill [label="{{28 |Outside flip catch mill\naka flip catch reverse mill}}" URL="https://www.youtube.com/watch?v=jKbelC2dZVo" ]; 37 | } 38 | 39 | subgraph isolated { 40 | node [color=4, fillcolor=3] 41 | mov_33_warfrcircle, mov_36_warbkcircle 42 | } 43 | 44 | mov_02_alt360 [label="{{02 |Alternating 360\n(Gama Cast/10 to 2)}}" URL="https://www.youtube.com/watch?v=ccifkBh2JSI" ] 45 | mov_22_incircle2sameflip [label="{{22 |Inside circle to\nsame hand flip catch}}" URL="https://www.youtube.com/watch?v=xlClTZRbmc0" ] 46 | mov_31_frcircle [label="{{31 |Symmetrical stance\nFront Circles}}" URL="https://www.youtube.com/watch?v=ULozVN0nz_U" ]; 47 | mov_32_bkcircle [label="{{32 |Backward Circle}}" URL="https://www.youtube.com/watch?v=KSja97kaEHY" ]; 48 | mov_33_warfrcircle [label="{{33 |Warrior Stance\nFront circle}}" URL="https://www.youtube.com/watch?v=-4GMydVrlSk" ]; 49 | 50 | mov_35_waralt360 [label="{{35 |Warrior stance\nalternating 360 / Gama cast}}" URL="https://www.youtube.com/watch?v=IgJXJy3zPGk" ]; 51 | mov_36_warbkcircle [label="{{36 |Warrior stance\nbackward circle}}" URL="https://www.youtube.com/watch?v=ZfGdlIsWKXQ" ]; 52 | mov_37_waraltcircle [label="{{37 |Warrior stance\nalternating circles}}" URL="https://www.youtube.com/watch?v=h_wcGKGlCus" ]; 53 | mov_38_war180pull [label="{{38 |Warrior stance\n180 degree rotating pullover\nfrom sword grip}}" URL="https://www.youtube.com/watch?v=P5lbQmeVZn8" ]; 54 | mov_39_warfrcircleflip [label="{{39 |Warrior stance\nfront circle flip catch}}" URL="https://www.youtube.com/watch?v=8hvIwt9EshQ" ]; 55 | mov_40_warbkcircleflip [label="{{40 |Warrior stance\nbackward circle to\nflip catch}}" URL="https://www.youtube.com/watch?v=Eb5Ci22BqmI" ]; 56 | mov_41_warfwdmill [label="{{41 |Warrior stance\nforward mill}}" URL="https://www.youtube.com/watch?v=ydXgS363htk" ]; 57 | mov_42_warbwdmill [label="{{42 |Warrior stance\nbackward mill}}" URL="https://www.youtube.com/watch?v=HaQqkf-cSHE" ]; 58 | 59 | // LAYOUT HACKS 60 | 61 | { 62 | node [style=invis] 63 | edge [style=invis] 64 | 65 | mov_15_3602bar2sq -> lay_end2h -> mov_16_saincircle 66 | } 67 | 68 | {rank=same;ext_180pull,mov_02_alt360} 69 | 70 | // GRAPH 71 | 72 | // Precursor 73 | mov_02_alt360 -> mov_35_waralt360 74 | ext_180pull -> mov_27_inflip180pull 75 | 76 | // Circles 77 | mov_22_incircle2sameflip -> mov_27_inflip180pull 78 | {mov_23_outcircle2sameflip, mov_27_inflip180pull} -> mov_28_outflipmill 79 | {mov_31_frcircle -> mov_32_bkcircle} -> mov_33_warfrcircle 80 | 81 | subgraph cluster_war { 82 | label="Warrior stance" 83 | mov_33_warfrcircle -> mov_36_warbkcircle -> mov_37_waraltcircle; 84 | mov_33_warfrcircle -> mov_37_waraltcircle; 85 | mov_37_waraltcircle -> mov_39_warfrcircleflip -> mov_40_warbkcircleflip 86 | {mov_38_war180pull,mov_39_warfrcircleflip} -> mov_41_warfwdmill 87 | {mov_41_warfwdmill,mov_40_warbkcircleflip} -> mov_42_warbwdmill 88 | mov_35_waralt360 89 | } 90 | ext_180pull -> mov_38_war180pull 91 | mov_22_incircle2sameflip -> mov_39_warfrcircleflip 92 | mov_23_outcircle2sameflip -> mov_40_warbkcircleflip 93 | mov_27_inflip180pull -> mov_41_warfwdmill 94 | mov_28_outflipmill -> mov_42_warbwdmill 95 | 96 | // LEGEND 97 | 98 | { rank = sink; 99 | Legend [shape=none, margin=0, label=< 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 |
Legend
Prerequisites and next steps     
Isolated Drills
Integrated Drills
Learning drills
121 | >]; 122 | } 123 | } 124 | @enddot 125 | -------------------------------------------------------------------------------- /src/hc/hc_2h_progression.csv: -------------------------------------------------------------------------------- 1 | ID,Graph_Name,Label,Skill_Developed,Movement_Family,URL,Notes 2 | 2HHC-01,mov_01_sidetoside,Side to Side\nSwing,ELBOWS LOCKED,Side Swing,https://www.youtube.com/watch?v=LMau5vr7qx4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds, 3 | 2HHC-02,mov_02_sideswinglowtohigh,Side Swing\nLow to High,,Side Swing,https://www.youtube.com/watch?v=NoZCHTlmrCg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=2, 4 | 2HHC-03,mov_03_hangsidelowtohigh,Hang Side Swing\nLow to High,LEG DRIVE & HIP SNAP,Side Swing,https://www.youtube.com/watch?v=RD1zOWaTjhQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=3, 5 | 2HHC-04,mov_04_deadclean,Dead Clean,ORDER POSITION,C&P,https://www.youtube.com/watch?v=69RGME9RTcY&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=4, 6 | 2HHC-05,mov_05_insidecircle,Inside Circle,,Mill,https://www.youtube.com/watch?v=Mh6iWcLbE3k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=5, 7 | 2HHC-06,mov_06_outsidecircle,Outside Circle,,Mill,https://www.youtube.com/watch?v=QzMzCal-MYM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=6, 8 | 2HHC-07,mov_07_pullover,Pullover,CLUB BEHIND HEAD,Swipe,https://www.youtube.com/watch?v=jpIn1Sumg78&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=7, 9 | 2HHC-08,mov_08_backpossidetoside,Back Position\nSide to Side Swing,SWING BEHIND HEAD,,https://www.youtube.com/watch?v=GKwGiB2UwyM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=8, 10 | 2HHC-09,mov_09_sc,Shield Cast,,,https://www.youtube.com/watch?v=W-iHvrjn72k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=9, 11 | 2HHC-10,mov_10_squat,Balance Squat,,Squat,https://www.youtube.com/watch?v=LSXticZ67Pw&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=11, 12 | 2HHC-11,mov_11_swingclean,Swing Clean,DECELERATE WEIGHT,Swipe,https://www.youtube.com/watch?v=0oRuCQOkPRo&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=12, 13 | 2HHC-12,mov_12_robotsc,Robot Shield Cast,,,https://www.youtube.com/watch?v=LDGi_lmzGR8&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=13, 14 | 2HHC-13,mov_13_frontpress,Front Press,,C&P,https://www.youtube.com/watch?v=HBRWtm3tTp4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=15, 15 | 2HHC-14,mov_14_revrobotsc,Reverse Robot\nShield Cast,,,https://www.youtube.com/watch?v=Fun_Lscq5go&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=23, 16 | 2HHC-15,mov_15_rockit,Side to Side\nRockit,,Side Swing,https://www.youtube.com/watch?v=4gvF-gARAIs&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=24, 17 | 2HHC-16,mov_16_outpend,Outside Pendulum\n(aka Outside Hang\nPower Clean,,Side Swing,https://www.youtube.com/watch?v=SRNTrFvHgz0&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=25, 18 | 2HHC-17,mov_17_stepbacklunge,Balance Step\nBack Lunge,,Lunge,https://www.youtube.com/watch?v=dNrYT5iU7BQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=26, 19 | 2HHC-18,mov_18_altcircle,Alternating Circle,DECELERATE &\nCHANGE DIRECTION,Mill,https://www.youtube.com/watch?v=ukkrHxGTGtI&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=31, 20 | 2HHC-19,mov_19_inpend,Inside Pendulum,,Side Swing,https://www.youtube.com/watch?v=pV0Hh335Csg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=34, 21 | 2HHC-20,mov_20_3csc,Three-Count\nShield Cast,,,https://www.youtube.com/watch?v=ABQij0Zpt0U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=35, 22 | 2HHC-21,mov_21_gama,Gamma Cast\naka Gama Cast,,,https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=39, 23 | 2HHC-22,mov_22_scsquat,Shield Cast Squat,,,https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=41, 24 | 2HHC-23,mov_23_kneelsc,Half-Kneeling Shield Cast,,,https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=42, 25 | 2HHC-24,mov_24_sblungepull,Step-Back Lunge\nPullover at Top,,,https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=44, 26 | 2HHC-25,mov_25_kneelbackswing,Half-Kneeling\nBack Position Swing,,Lunge,https://www.youtube.com/watch?v=XH_HFWZQt4c, 27 | 2HHC-26,mov_26_fbpull,Flat Back Pullover,,Getup,https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=45, 28 | 2HHC-27,mov_27_fbpullsit,Flat Back Pullover Situp,,Getup,https://www.youtube.com/watch?v=Ii2WZgl5mHA, 29 | 2HHC-28,mov_28_sblungepullbot,Step-Back Lunge\nPullover at Bottom,,Lunge,https://www.youtube.com/watch?v=UpY9zHuTZds, 30 | 2HHC-29,mov_29_fbpullsitpress,Flat Back Pullover\nSitup Press,,Getup,https://www.youtube.com/watch?v=8VL8tvinc28, 31 | 2HHC-30,mov_30_sbfrontpress,Step-Back Lunge\nFront Press,,Lunge,,Guessed as actual video missing 32 | 2HHC-31,mov_31_altshinbox,Balance\nAlternating Shin Box,,Getup,https://www.youtube.com/watch?v=jogIwgDj0KM, 33 | 2HHC-32,mov_32_incirclesquat,Inside Circle Squat,,Squat,https://www.youtube.com/watch?v=icFHo5ufhUc, 34 | 2HHC-33,mov_33_altshinboxfrpress,Alt Shinbox Front Press,,Getup,https://www.youtube.com/watch?v=D2AJzIVufeY&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=47, 35 | 2HHC-34,mov_34_outcirclesquat,Outside Circle Squat,,Squat,https://www.youtube.com/watch?v=z916C16iK54&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=49, 36 | 2HHC-35,mov_35_sblungepullsbpress,Step-Back Lunge Pullover\nStep-Back Press,,Lunge,https://www.youtube.com/watch?v=1cXPBXfKNhU, 37 | 2HHC-36,mov_36_squatpress,Squat Press,,Squat,https://www.youtube.com/watch?v=6p1niExqXSA, 38 | 2HHC-37,mov_37_cap,Clean & Press,,C&P,https://www.youtube.com/watch?v=6kpEYglMJ1c, 39 | 2HHC-38,mov_38_millprep,Mill Prep,,Mill,https://www.youtube.com/watch?v=G_OXuFs2bRs, 40 | 2HHC-39,mov_39_pullsquat,Pullover Squat,,Squat,https://www.youtube.com/watch?v=3yf3VO2sd-4, 41 | 2HHC-40,mov_40_swipe,Technical Swipe,,Swipe,https://www.youtube.com/watch?v=nQ7npb0krRg, 42 | 2HHC-41,mov_41_sblungepress,Step Back Lunge\nFront Press at Bottom,,Lunge,https://www.youtube.com/watch?v=mf2dOl-QzEs, 43 | 2HHC-42,mov_42_kneelpull,Half Kneeling\nPullover,,Lunge,https://www.youtube.com/watch?v=FhIn5to6NmM, 44 | 2HHC-43,mov_43_pullsquatpress,Pullover Squat Press,,Squat,https://www.youtube.com/watch?v=pHjBhj7SHWo, 45 | 2HHC-44,mov_44_clockshoulder,Clockwork Shoulder,PROTECT COLLARBONE,Mill,https://www.youtube.com/watch?v=XjaBfgQW1qw, 46 | 2HHC-45,mov_45_deadcleansquat,Dead Clean Squat,,Squat,https://www.youtube.com/watch?v=V1V6PTM5TQ0 47 | -------------------------------------------------------------------------------- /src/kb/kb_progression_3.puml: -------------------------------------------------------------------------------- 1 | @startdot kb_progression_3 2 | digraph kb_progression { 3 | 4 | label=< 5 | Kettlebell Basic Skill Progression - Part 3/4

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [shape=record] 19 | node [style="rounded,filled"] 20 | node [color=12, fillcolor=11] 21 | 22 | subgraph pre { 23 | node [color=2, fillcolor=1] 24 | ext_bw_squat [label="{{BW|Squat}}"] 25 | ext_bw_altshinbox [label="{{BW|Alt Shin Box}}"] 26 | mov_12_clean [label="KB-12|Swing Clean" URL="https://www.youtube.com/watch?v=_nIsSXWs5iU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=12"] 27 | mov_17_cap [label="KB-17|Clean & Press" URL="https://www.youtube.com/watch?v=SSxB3m5qRas&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=17"] 28 | mov_19_startstopcap [label="{{KB-19|Start Stop\nClean & Press}|START & END C&P}" URL="https://www.youtube.com/watch?v=dSj3kqbuois&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=19"] 29 | mov_22_gobsquathalo [label="{{22|Goblet Squat\nwith Halo}|FULL DEPTH}" URL="https://www.youtube.com/watch?v=cnZ8Mx8NQPE&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=22"] 30 | mov_23_racksquat [label="{{KB-23|Single-Bell Front Squat}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=23"] 31 | } 32 | 33 | mov_39_boxsquat2boat [label="{{39|Box Squat to Boat Pose}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=41"] 34 | mov_40_bwspinalrock [label="{{40|Spinal Rock\n(Bodyweight)}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=42"] 35 | mov_41_flatbackpullover [label="{{41|Flat Back Pullover}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=43"] 36 | // 42 in TGU diagram 37 | mov_43_spinalrock [label="{{43|Spinal Rock}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=48"] 38 | mov_44_pushpress [label="{{44|Push Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=49"] 39 | mov_45_gobsquatcurl [label="{{45|Rock-Bottom\nCurl with Goblet Squat}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=50"] 40 | // Missing 46 41 | mov_47_racksquatpickup [label="{{47|Rock-Bottom\nFront Squat Pickup}|PAUSE AT BOTTOM}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=52"] 42 | mov_48_thruster [label="{{48|Thruster}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=48"] 43 | mov_49_seatedpress [label="{{49|Seated Two-Handed\nOverhead Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=54"] 44 | mov_50_2hdeadclean2rack [label="{{50|Two-Handed Dead Clean\nto Double Front Rack}}" URL="https://www.youtube.com/watch?v=acqKxfMGAbk&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=55"] 45 | mov_51_fourcountsquat [label="{{51|Four-Count Squat\n(Bodyweight)}}" URL="https://www.youtube.com/watch?v=1rkGfL1EdWI"] 46 | mov_52_rackaltshinbox [label="{{52|Rack Alt Shinbox}}" URL="https://www.youtube.com/watch?v=AoEYX36Q2Zg"] 47 | mov_53_hornygobsquat [label="{{53|Handle Up\nGoblet Squat}}" URL="https://www.youtube.com/watch?v=i2AtDi4yZSA"] 48 | mov_54_shinboxpress [label="{{54|Contra Shinbox Press}}" URL="https://www.youtube.com/watch?v=FEbi2lKVEHU"] 49 | mov_55_backpullsituppress [label="{{55|Flat Back Pullover Situp Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=57"] 50 | 51 | mov_72_deck [label="{{72|Deck Squat}}" URL="https://www.youtube.com/watch?v=vUJ3sZVwZ4Y"]; 52 | 53 | 54 | // Precursor dependencies 55 | ext_bw_squat -> mov_51_fourcountsquat 56 | ext_bw_altshinbox -> mov_52_rackaltshinbox; 57 | mov_22_gobsquathalo -> mov_23_racksquat; 58 | mov_12_clean -> mov_50_2hdeadclean2rack; 59 | mov_12_clean -> mov_17_cap; 60 | mov_17_cap -> mov_19_startstopcap; 61 | mov_19_startstopcap -> mov_44_pushpress; 62 | mov_45_gobsquatcurl -> mov_39_boxsquat2boat; 63 | mov_53_hornygobsquat -> mov_39_boxsquat2boat; 64 | mov_22_gobsquathalo -> mov_45_gobsquatcurl; 65 | mov_22_gobsquathalo -> mov_53_hornygobsquat; 66 | mov_23_racksquat -> mov_47_racksquatpickup; 67 | mov_23_racksquat -> mov_48_thruster; 68 | 69 | 70 | // Ungrouped drills 71 | mov_44_pushpress -> mov_48_thruster; 72 | mov_55_backpullsituppress -> mov_72_deck; 73 | 74 | subgraph cluster_squat { 75 | label="Squats & Getup" 76 | 77 | // Getups 78 | mov_52_rackaltshinbox -> mov_54_shinboxpress 79 | mov_41_flatbackpullover -> mov_55_backpullsituppress; 80 | mov_49_seatedpress -> mov_55_backpullsituppress; 81 | 82 | // Squats 83 | mov_39_boxsquat2boat -> mov_72_deck; 84 | mov_40_bwspinalrock -> mov_43_spinalrock; 85 | mov_43_spinalrock -> mov_72_deck; 86 | mov_45_gobsquatcurl 87 | mov_47_racksquatpickup 88 | mov_51_fourcountsquat 89 | mov_53_hornygobsquat 90 | } 91 | 92 | { rank = sink; 93 | Legend [shape=none, margin=0, label=< 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 |
Legend
Prerequisites and next steps     
Drills
107 | >]; 108 | } 109 | } 110 | @enddot 111 | -------------------------------------------------------------------------------- /src/kb/kb_progression_2_tgu.puml: -------------------------------------------------------------------------------- 1 | @startdot kb_progression_2_tgu 2 | digraph kb_progression { 3 | 4 | label=< 5 | Kettlebell Basic Skill Progression - Part 2/4
6 | - Turkish Get Up


7 | Diagram by dznz based on Mark Wildman's teachings.

8 | Source: https://github.com/dznz/wildman-skill-trees

9 | More by Mark Wildman - https://www.wildmanathletica.com

10 | 11 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
12 | http://creativecommons.org/licenses/by-nc-sa/4.0/
13 |
14 | > 15 | graph [labeljust=r] 16 | graph [fontname="Helvetica,Arial,sans-serif"] 17 | 18 | node [colorscheme="paired12"] 19 | node [shape=record] 20 | node [style="rounded,filled"] 21 | node [color=12, fillcolor=11] 22 | 23 | subgraph pre { 24 | node [color=2, fillcolor=1] 25 | mov_23_racksquat 26 | mov_17_cap, mov_19_startstopcap 27 | mov_12_clean, mov_16_startstopclean 28 | 29 | // Implied 30 | mov_tgd [label="{{|Turkish Get Down}}"] 31 | mov_tgu [label="{{|Turkish Get Up}}"] 32 | } 33 | 34 | // Precursor drills 35 | mov_12_clean [label="{{KB-12|Swing Clean}}" URL="https://www.youtube.com/watch?v=_nIsSXWs5iU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=12"] 36 | mov_16_startstopclean [label="{{KB-16|Start Stop Clean}|START & END CLEAN}" URL="https://www.youtube.com/watch?v=XbK3jxI0WNQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=16"] 37 | mov_17_cap [label="{{KB-17|Clean & Press}}" URL="https://www.youtube.com/watch?v=SSxB3m5qRas&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=17"] 38 | mov_19_startstopcap [label="{{KB-19|Start Stop\nClean & Press}|START & END C&P}" URL="https://www.youtube.com/watch?v=dSj3kqbuois&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=19"] 39 | mov_23_racksquat [label="{{KB-23|Single-Bell Front Squat}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=23"] 40 | 41 | // Sequence 42 | 43 | mov_24_racklunge [label="{{24|Rack Opposite Leg\nStep-Back Lunge}|VERTICAL SPINE}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=24"] 44 | mov_25_clean2sblunge [label="{{25|Clean Step-Back Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=25"] 45 | mov_26_halfkneelclean [label="{{26|Half-Kneeling Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=26"] 46 | mov_27_cleansblungeclean [label="{{27|Clean Step-Back\nLunge Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=27"] 47 | mov_28_floorpress [label="{{28|Single-Bell Floor Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=28"] 48 | mov_29_halfkneelcap [label="{{29|Half-Kneeling\nClean & Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=29"] 49 | mov_30_floorpressroll [label="{{30|Floor Press with Roll}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=30"] 50 | mov_31_kneelwindmill [label="{{31|Half-Kneeling Windmill}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=31"] 51 | mov_32_quartgu [label="{{32|Quarter Turkish Get-Up}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=32"] 52 | mov_33_kneelcapwindmill [label="{{33|Half-Kneeling\nClean & Press Windmill}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=34"] 53 | mov_34_halfgu [label="{{34|Half Get-Up}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=35"] 54 | 55 | mov_35_cap2ohsblunge [label="{{35|Clean & Press to Overhead\nStep-Back Lunge}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=37"] 56 | mov_36_kneelhipdrop [label="{{36|Half-Kneeling Hip Drop}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=38"] 57 | mov_37_halfgu2hip [label="{{37|Half Get-Up\nto Hip Pass}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=39"] 58 | mov_38_kneelcap2hip [label="{{38|Half-Kneeling Clean & Press\nto Hip Drop}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=40"] 59 | // 42 fits better with this diagram 60 | mov_42_halfgu2kneel [label="{{42|Half Get-Up to Hip Pass\n(to Half-Kneeling)}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=45"] 61 | 62 | 63 | // Precursor dependencies 64 | mov_12_clean -> mov_16_startstopclean; 65 | mov_12_clean -> mov_17_cap; 66 | mov_17_cap -> mov_19_startstopcap; 67 | mov_23_racksquat -> mov_24_racklunge; 68 | mov_19_startstopcap -> mov_29_halfkneelcap; 69 | mov_16_startstopclean -> mov_25_clean2sblunge; 70 | 71 | subgraph cluster_tgd { 72 | label="Turkish Get Down" 73 | mov_24_racklunge -> mov_25_clean2sblunge; 74 | mov_25_clean2sblunge -> mov_26_halfkneelclean; 75 | mov_26_halfkneelclean -> mov_27_cleansblungeclean; 76 | mov_26_halfkneelclean -> mov_29_halfkneelcap; 77 | mov_29_halfkneelcap -> mov_31_kneelwindmill; 78 | mov_31_kneelwindmill -> mov_33_kneelcapwindmill; 79 | mov_33_kneelcapwindmill -> mov_35_cap2ohsblunge; 80 | mov_27_cleansblungeclean -> mov_35_cap2ohsblunge; 81 | mov_33_kneelcapwindmill -> mov_36_kneelhipdrop; 82 | mov_36_kneelhipdrop -> mov_38_kneelcap2hip; 83 | } 84 | 85 | mov_35_cap2ohsblunge -> mov_tgd; 86 | mov_35_cap2ohsblunge -> mov_tgu; 87 | mov_38_kneelcap2hip -> mov_tgd; 88 | mov_38_kneelcap2hip -> mov_tgu; 89 | mov_42_halfgu2kneel -> mov_tgd; 90 | mov_42_halfgu2kneel -> mov_tgu; 91 | 92 | subgraph cluster_tgu { 93 | label="Turkish Get Up" 94 | mov_28_floorpress -> mov_30_floorpressroll; 95 | mov_30_floorpressroll -> mov_32_quartgu; 96 | mov_32_quartgu -> mov_34_halfgu; 97 | mov_34_halfgu -> mov_37_halfgu2hip; 98 | mov_37_halfgu2hip -> mov_42_halfgu2kneel; 99 | } 100 | { rank = sink; 101 | Legend [shape=none, margin=0, label=< 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 |
Legend
Prerequisites and next steps     
Drills
115 | >]; 116 | } 117 | } 118 | @enddot 119 | -------------------------------------------------------------------------------- /src/kb/kb_progression_1.puml: -------------------------------------------------------------------------------- 1 | @startdot kb_progression_1 2 | digraph kb_progression { 3 | 4 | label=< 5 | Kettlebell Basic Skill Progression - Part 1/4

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [shape=record] 19 | node [style="rounded,filled"] 20 | node [color=12, fillcolor=11] 21 | 22 | subgraph warmup { 23 | node [color=8, fillcolor=7] 24 | mov_03_atw; mov_04_halo, mov_05_atwf2b, mov_06_atwb2f 25 | } 26 | 27 | subgraph aux { 28 | node [color=10, fillcolor=9] 29 | mov_08_2hu1hd; mov_11_2hucleandown; mov_15_news; 30 | } 31 | 32 | subgraph post { 33 | node [color=2, fillcolor=1] 34 | mov_24_racklunge 35 | mov_25_clean2sblunge 36 | mov_26_halfkneelclean 37 | mov_29_halfkneelcap 38 | } 39 | 40 | mov_01_deadlift [label="{{01|Two Hand Deadlift}|HIP HINGE}" URL="https://www.youtube.com/watch?v=x0XkmM34BPI&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=1"]; 41 | mov_02_swing [label="{{02|Two Hand Swing}|LEG DRIVE &\nHIP SNAP}" URL="https://www.youtube.com/watch?v=m-S9H2XVvYg&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=2"] 42 | mov_03_atw [label="{{03|Around the World}|HAND TRANSITION}" URL="https://www.youtube.com/watch?v=XaegZzSbtr0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=3"] 43 | mov_04_halo [label="{{04|Halo}|GLOBE UP\nORDER POSITION}" URL="https://www.youtube.com/watch?v=25xdtjbFPtw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=4"] 44 | mov_05_atwf2b [label="{{05|Around the World\nFront to Back}}" URL="https://www.youtube.com/watch?v=TwlQQXAQpaQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=5"] 45 | mov_06_atwb2f [label="{{06|Around the World\nBack to Front}}" URL="https://www.youtube.com/watch?v=GrRO00YOIWM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=6"] 46 | mov_07_althalo [label="{{07|Alternating Halo}}" URL="https://www.youtube.com/watch?v=SMpquy5zSL4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=7"] 47 | mov_08_2hu1hd [label="{{08|Two Hand Pickup\nOne Hand Putdown}|RACK POSITION}" URL="https://www.youtube.com/watch?v=eMkDP9VmMc0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=8"] 48 | mov_09_saswing [label="{{09|Single Arm Swing}|THUMB POINTS BACK}" URL="https://www.youtube.com/watch?v=ejPpyLKZ1L4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=9"] 49 | mov_10_h2h [label="{{10|Hand to Hand\nTransition}}" URL="https://www.youtube.com/watch?v=0Uk0Rdm3QFs&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=10"] 50 | 51 | mov_11_2hucleandown [label="{{11|Two Hand Pickup\nClean Putdown}}" URL="https://www.youtube.com/watch?v=cQC2y-ByaAw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=11"] 52 | mov_12_clean [label="{{12|Swing Clean}}" URL="https://www.youtube.com/watch?v=_nIsSXWs5iU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=12"] 53 | mov_13_cleanh2h [label="{{13|Clean with\nHand Transition}}" URL="https://www.youtube.com/watch?v=6TVqHl2gtuM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=13"] 54 | mov_14_press [label="{{14|Single Arm\nOverhead Press}}" URL="https://www.youtube.com/watch?v=XHkI03S6Pls&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=14"] 55 | mov_15_news [label="{{15|Newspaper drill}}" URL="https://www.youtube.com/watch?v=htByOXjHLXE&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=15"] 56 | mov_16_startstopclean [label="{{16|Start Stop Clean}|START & END CLEAN}" URL="https://www.youtube.com/watch?v=XbK3jxI0WNQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=16"] 57 | mov_17_cap [label="{{17|Clean & Press}}" URL="https://www.youtube.com/watch?v=SSxB3m5qRas&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=17"] 58 | mov_18_caph2h [label="{{18|Clean & Press with\nHand Transition}}" URL="https://www.youtube.com/watch?v=5Q4vMOYvAGg&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=18"] 59 | mov_19_startstopcap [label="{{19|Start Stop\nClean & Press}|START & END C&P}" URL="https://www.youtube.com/watch?v=dSj3kqbuois&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=19"] 60 | mov_20_gobboxsquat [label="{{20|Bottoms-Up Goblet\nBox Squat}|SQUAT BACK}" URL="https://www.youtube.com/watch?v=k5Bc7pkEmrU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=20"] 61 | 62 | mov_21_boxsquathalo [label="{{21|Goblet Box Squat\nwith Halo}|STAND AT TOP}" URL="https://www.youtube.com/watch?v=Aik5-BStbnc&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=21"] 63 | mov_22_gobsquathalo [label="{{22|Goblet Squat\nwith Halo}|FULL DEPTH}" URL="https://www.youtube.com/watch?v=cnZ8Mx8NQPE&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=22"] 64 | mov_23_racksquat [label="{{23|Single-Bell Front Squat}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=23"] 65 | 66 | // Next skills 67 | mov_24_racklunge [label="{{KB-24|Rack Opposite Leg\nStep-Back Lunge}|VERTICAL SPINE}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=24"] 68 | mov_25_clean2sblunge [label="{{KB-25|Clean Step-Back Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=25"] 69 | mov_26_halfkneelclean [label="{{KB-26|Half-Kneeling Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=26"] 70 | mov_29_halfkneelcap [label="{{KB-29|Half-Kneeling\nClean & Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=29"] 71 | 72 | mov_01_deadlift -> mov_02_swing; 73 | mov_01_deadlift -> mov_03_atw; 74 | mov_01_deadlift -> mov_04_halo; 75 | mov_03_atw -> mov_05_atwf2b; 76 | mov_05_atwf2b -> mov_06_atwb2f; 77 | mov_04_halo -> mov_07_althalo; 78 | mov_01_deadlift -> mov_08_2hu1hd; 79 | mov_02_swing -> mov_09_saswing; 80 | mov_09_saswing -> mov_10_h2h; 81 | mov_08_2hu1hd -> mov_11_2hucleandown; 82 | mov_09_saswing -> mov_11_2hucleandown; 83 | mov_11_2hucleandown -> mov_12_clean; 84 | mov_12_clean -> mov_13_cleanh2h; 85 | mov_10_h2h -> mov_13_cleanh2h; 86 | mov_08_2hu1hd -> mov_14_press; 87 | mov_12_clean -> mov_15_news; 88 | mov_12_clean -> mov_16_startstopclean; 89 | mov_12_clean -> mov_17_cap; 90 | mov_14_press -> mov_17_cap; 91 | mov_17_cap -> mov_18_caph2h; 92 | mov_13_cleanh2h -> mov_18_caph2h; 93 | mov_17_cap -> mov_19_startstopcap; 94 | mov_04_halo -> mov_20_gobboxsquat; 95 | mov_20_gobboxsquat -> mov_21_boxsquathalo; 96 | mov_21_boxsquathalo -> mov_22_gobsquathalo; 97 | mov_22_gobsquathalo -> mov_23_racksquat; 98 | mov_08_2hu1hd -> mov_23_racksquat; 99 | mov_23_racksquat -> mov_24_racklunge; 100 | mov_24_racklunge -> mov_25_clean2sblunge; 101 | mov_16_startstopclean -> mov_25_clean2sblunge; 102 | mov_25_clean2sblunge -> mov_26_halfkneelclean; 103 | mov_19_startstopcap -> mov_29_halfkneelcap; 104 | mov_26_halfkneelclean -> mov_29_halfkneelcap; 105 | 106 | { rank = sink; 107 | Legend [shape=none, margin=0, label=< 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 |
Legend
Prerequisites and next steps     
Drills
Warmup drills
Learning drills
129 | >]; 130 | } 131 | } 132 | @enddot 133 | -------------------------------------------------------------------------------- /src/kb/kb_progression_4.puml: -------------------------------------------------------------------------------- 1 | @startdot kb_progression_4 2 | digraph kb_progression { 3 | 4 | label=< 5 | Kettlebell Basic Skill Progression - Part 4/4

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [shape=record] 19 | node [style="rounded,filled"] 20 | node [color=12, fillcolor=11] 21 | 22 | subgraph pre { 23 | node [color=2, fillcolor=1] 24 | ext_hc_dblswing [label="{{HC|Double Swing}}"] 25 | ext_hc_dblrockit [label="{{HC|Double Rockit}}"] 26 | ext_hc_s2sswing [label="{{2HHC-01|Side to Side\nSwing}}"] 27 | 28 | mov_01_deadlift [label="{{KB-01|Two Hand Deadlift}|HIP HINGE}" URL="https://www.youtube.com/watch?v=x0XkmM34BPI&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=1"]; 29 | mov_10_h2h [label="{{KB-10|Hand to Hand\nTransition}}" URL="https://www.youtube.com/watch?v=0Uk0Rdm3QFs&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=10"] 30 | mov_12_clean [label="KB-12|Swing Clean" URL="https://www.youtube.com/watch?v=_nIsSXWs5iU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=12"] 31 | mov_16_startstopclean [label="{{KB-16|Start Stop Clean}|START & END CLEAN}" URL="https://www.youtube.com/watch?v=XbK3jxI0WNQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=16"] 32 | mov_17_cap [label="KB-17|Clean & Press" URL="https://www.youtube.com/watch?v=SSxB3m5qRas&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=17"] 33 | mov_19_startstopcap [label="{{KB-19|Start Stop\nClean & Press}|START & END C&P}" URL="https://www.youtube.com/watch?v=dSj3kqbuois&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=19"] 34 | 35 | } 36 | 37 | mov_56_suitcasedl [label="{{56|Suitcase Deadlift}}" URL="https://www.youtube.com/watch?v=d6i6MwVOmk0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=58"]; 38 | mov_57_dblsuitcase [label="{{57|Double Suitcase}}" URL="https://www.youtube.com/watch?v=4PSOSrDcGfc&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=59"]; 39 | mov_58_dblsumodl [label="{{58|Double Sumo Deadlift}}" URL="https://www.youtube.com/watch?v=gdutIla6nMw"]; 40 | mov_59_halfsnatchdown [label="{{59|Half Snatch Down}}" URL="https://www.youtube.com/watch?v=u2NbMtX_Rb0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=60"]; 41 | mov_60_dblswing [label="{{60|Double Swing}}" URL="https://www.youtube.com/watch?v=P5IFTJySA_s&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=61"]; 42 | mov_61_halfsnatchup [label="{{61|Half Snatch Up}}" URL="https://www.youtube.com/watch?v=3HEmUyLYjjc"]; 43 | mov_62_dblclean [label="{{62|Double Clean}}" URL="https://www.youtube.com/watch?v=Qe9ejhAtdGY&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=62"]; 44 | //63 is missing, so we put the Double Rockit in its place 45 | mov_63_dblrockit [label="{{63|Double Rockit}}" URL="https://www.youtube.com/watch?v=zXB6hFrrBkA&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=63"]; 46 | mov_64_dbloutswing [label="{{64|Double\nOutside Swing}}" URL="https://www.youtube.com/watch?v=yr_fRgGevsE"]; 47 | mov_65_dblcap [label="{{65|Double\nClean & Press}}" URL="https://www.youtube.com/watch?v=RizGV8ef--s"]; 48 | mov_66_snatch [label="{{66|Full Snatch}}" URL="https://www.youtube.com/watch?v=f-zkPiAlpQw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=65"]; 49 | mov_67_dblsquat [label="{{67|Double\nFront Squat}}" URL="https://www.youtube.com/watch?v=dX5yXJa5Dm0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=66"]; 50 | mov_68_dblclean2squat [label="{{68|Double Clean\nto Front Squat}}" URL="https://www.youtube.com/watch?v=R3s6Wb_ApHM"]; 51 | mov_69_snatchpress [label="{{69|Snatch Press}}" URL="https://www.youtube.com/watch?v=IzFPa_Q1yHM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=67"]; 52 | mov_70_kneelsnatchup [label="{{70|Half-Kneeling Snatch Up}}" URL="https://www.youtube.com/watch?v=1_UrK5SopL4"]; 53 | mov_71_deaddblclean [label="{{71|Dead Stop\nDouble Clean}}" URL="https://www.youtube.com/watch?v=22bKQqMqAQY"]; 54 | // 72|Deck Squat is in part 3 55 | mov_73_2hsbldl [label="{{73|Two Hand Single\nBent Leg Deadlift}}" URL="https://www.youtube.com/watch?v=-RD1qqe7P8M"]; 56 | mov_74_dblhangclean2squat [label="{{74|Double Hang Clean\nTo Squat}}" URL="https://www.youtube.com/watch?v=SdPEkv56Lt8"]; 57 | mov_75_2hssldl [label="{{75|Two Hand Single\nStraight Leg Deadlift}}" URL="https://www.youtube.com/watch?v=tMt2hzfFGzo"]; 58 | mov_76_dblhangcap [label="{{76|Double Dead Hang\nClean & Press}|SLOW DOWN TO ENDURE}" URL="https://www.youtube.com/watch?v=ieDA4V9WGNQ"]; 59 | mov_77_shsldl [label="{{77|Single Hand\nSingle Leg Deadlift}|ONE-SIDE BALANCE}" URL="https://www.youtube.com/watch?v=1K4hgXfUinU"]; 60 | mov_78_dblcleansqpress [label="{{78|Double Clean Squat Press}}" URL="https://www.youtube.com/watch?v=fWPDPBliCEk"]; 61 | mov_79_kneelsnatchdown [label="{{79|Half-Kneeling Snatch Down}|KB CLOSE TO BODY}" URL="https://www.youtube.com/watch?v=okO-7womT5Q"]; 62 | mov_80_dblhangcsp [label="{{80|Double Dead\nHang Clean\nSquat Press}}" URL="https://www.youtube.com/watch?v=DpGOSw7kGO0"]; 63 | mov_81_kneelsnatch [label="{{81|Half Kneeling\nFull Snatch}}" URL="https://www.youtube.com/watch?v=axx4kfUzkl4"]; 64 | mov_82_dblcleanpresssq [label="{{82|Double Clean\nPress Squat}}" URL="https://www.youtube.com/watch?v=t5fDkX3vjiU"]; 65 | mov_83_dblcleansblunge [label="{{83|Double Clean\nRack Step Back Lunge}}" URL="https://www.youtube.com/watch?v=mNt7guHRP4U"]; 66 | mov_84_s2sswing [label="{{84|Side to Side Swing}|LATERAL ROTATION}" URL="https://www.youtube.com/watch?v=W_04Zv3p2HM"]; 67 | 68 | // Precursor dependencies 69 | ext_hc_dblswing -> ext_hc_dblrockit; 70 | ext_hc_dblrockit -> mov_63_dblrockit; 71 | ext_hc_s2sswing -> mov_84_s2sswing; 72 | mov_10_h2h -> mov_60_dblswing; 73 | 74 | mov_12_clean -> mov_16_startstopclean; 75 | mov_12_clean -> mov_17_cap; 76 | mov_17_cap -> mov_19_startstopcap; 77 | 78 | mov_16_startstopclean -> mov_62_dblclean; 79 | mov_16_startstopclean -> mov_59_halfsnatchdown; 80 | mov_19_startstopcap -> mov_65_dblcap; 81 | mov_01_deadlift -> mov_56_suitcasedl; 82 | 83 | 84 | // Ungrouped drills 85 | mov_56_suitcasedl -> mov_57_dblsuitcase; 86 | 87 | subgraph cluster_deadlift { 88 | label="Deadlifts" 89 | mov_56_suitcasedl -> mov_73_2hsbldl; 90 | mov_73_2hsbldl -> mov_75_2hssldl -> mov_77_shsldl; 91 | mov_75_2hssldl -> mov_84_s2sswing; 92 | } 93 | 94 | subgraph cluster_double { 95 | label="Doubles" 96 | mov_64_dbloutswing -> mov_63_dblrockit 97 | mov_57_dblsuitcase -> mov_58_dblsumodl; 98 | mov_60_dblswing -> mov_62_dblclean; 99 | mov_62_dblclean -> mov_65_dblcap; 100 | mov_62_dblclean -> mov_67_dblsquat; 101 | mov_67_dblsquat -> mov_68_dblclean2squat; 102 | mov_62_dblclean -> mov_71_deaddblclean; 103 | mov_58_dblsumodl -> mov_60_dblswing; 104 | mov_60_dblswing -> mov_64_dbloutswing; 105 | mov_68_dblclean2squat -> mov_74_dblhangclean2squat; 106 | mov_65_dblcap -> mov_76_dblhangcap; 107 | {mov_76_dblhangcap, mov_68_dblclean2squat} -> mov_78_dblcleansqpress; 108 | {mov_74_dblhangclean2squat, mov_78_dblcleansqpress} -> mov_80_dblhangcsp; 109 | {mov_78_dblcleansqpress} -> mov_82_dblcleanpresssq 110 | {mov_68_dblclean2squat} -> mov_83_dblcleansblunge 111 | } 112 | 113 | subgraph cluster_snatch { 114 | label="Snatch" 115 | mov_59_halfsnatchdown -> mov_61_halfsnatchup -> mov_66_snatch; 116 | mov_70_kneelsnatchup -> mov_79_kneelsnatchdown -> mov_81_kneelsnatch -> mov_66_snatch 117 | mov_66_snatch -> mov_69_snatchpress; 118 | } 119 | mov_19_startstopcap -> mov_70_kneelsnatchup; 120 | 121 | { rank = sink; 122 | Legend [shape=none, margin=0, label=< 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 |
Legend
Prerequisites and next steps     
Drills
136 | >]; 137 | } 138 | } 139 | @enddot 140 | -------------------------------------------------------------------------------- /src/mace/mace_progression.csv: -------------------------------------------------------------------------------- 1 | ID,Graph_Name,Label,URL,VariationCount,VariationDescription,VarIcon,Hands,IsolateOrIntegrate 2 | M-01,mov_01_360,360,https://www.youtube.com/watch?v=TyZ8iYv6Ip0,4,(Left/Right) * (Cross/Straight),LX,2,S 3 | M-02,mov_02_alt360,Alternating 360\n(Gama Cast/10 to 2),https://www.youtube.com/watch?v=ccifkBh2JSI,2,(Left-hand Low/Right-hand Low),L,2,N 4 | M-03-1,mov_031_prayer,Prayer transition,https://www.youtube.com/watch?v=0fjn0vidH2M,1,,,2,S 5 | M-03-2,mov_032_pray2360,Prayer transition\nto 360,https://www.youtube.com/watch?v=0fjn0vidH2M,1,,,2,N 6 | M-04-1,mov_041_barbell,Barbell transition,https://www.youtube.com/watch?v=WQjHBHoC-MQ,1,,,2,S 7 | M-04-2,mov_042_barbell2360,Barbell transition to 360,https://www.youtube.com/watch?v=WQjHBHoC-MQ,1,,,2,N 8 | M-05-1,mov_051_sabackswing,Single arm\nback position swing,https://www.youtube.com/watch?v=XN-5l6SiSZU,2,Left/Right,L,2,S 9 | M-05-2,mov_052_backswing,Back position swing,https://www.youtube.com/watch?v=XN-5l6SiSZU,2,Left/Right,L,1,S 10 | M-06-1,mov_061_uppercut,90 degree pivot uppercut,https://www.youtube.com/watch?v=ULFal2-zDt0,1,Left/Right,L,2,S 11 | M-06-2,mov_062_uppercut2360,90 degree pivot uppercut to 360,https://www.youtube.com/watch?v=ULFal2-zDt0,1,,,2,N 12 | M-07,mov_07_invs2sswing,Inverted side to side swings,https://www.youtube.com/watch?v=bLA2KSghSdc,2,,,2,S 13 | M-08-1,mov_081_lowblockspin,Low block spin,https://www.youtube.com/watch?v=fk8AG0s1-UI,2,Left/Right,L,2,S 14 | M-08-2,mov_082_lowblockspinwpray,Low block spin with\nprayer transition,https://www.youtube.com/watch?v=fk8AG0s1-UI,1,,,2,N 15 | M-09,mov_09_lowblockspinw360,Low block spin with\n360 transition,https://www.youtube.com/watch?v=GXMSVSDtJVc,1,,,2,N 16 | M-10-1,mov_101_martialspin,Simple martial spin,https://www.youtube.com/watch?v=p_VgqCIGb-E,2,Left/Right,L,2,S 17 | M-10-2,mov_102_samartialspin,Single arm martial spin,https://www.youtube.com/watch?v=p_VgqCIGb-E,2,Left/Right,L,1,S 18 | M-11,mov_11_paddlerow2upblock,Paddle row to upper block,https://www.youtube.com/watch?v=4or7Sb8HyaU,2,Left/Right,L,2,S 19 | M-13,mov_13_pray23602sq,Horizontal prayer transition to 360 to squat,https://www.youtube.com/watch?v=2yUz84zdBlk,2,(Box squat/Free squat),T,2,N 20 | M-14,mov_14_barpress2sq,Barbell transition press\nto squat,https://www.youtube.com/watch?v=kZK8Eq6ka0U,4,(Left/Right) * (Box squat/Free squat),LT,2,S 21 | M-15,mov_15_3602bar2sq,360 to barbell transition\nto squat,https://www.youtube.com/watch?v=S6LDBK1o48U,2,(Target squat/No-target squat),LT,2,N 22 | M-16,mov_16_saincircle,Single arm\ninside circle,https://www.youtube.com/watch?v=MSt1cYAiLzI,2,Left/Right,L,1,S 23 | M-17,mov_17_saoutcircle,Single arm\noutside circle,https://www.youtube.com/watch?v=ZuaKcM41dP4,2,Left/Right,L,1,S 24 | M-18,mov_18_saaltcircle,Single arm\nalternating circles,https://www.youtube.com/watch?v=XWIFyifqSr8,4,(Left/Right) * (Technical/Performance),LF,1,N 25 | M-19,mov_19_incircle2altcoin,Inside circle to\nalternate hand coin flip,https://www.youtube.com/watch?v=opgqoNcD1Ds,2,Left/Right,L,1,S 26 | M-20,mov_20_outcircle2altcoin,Outside circle to\nalternate hand coin flip,https://www.youtube.com/watch?v=qX0nE-3VMN0,2,Left/Right,L,1,S 27 | M-21,mov_21_altcirclewinandoutcoin,Alt circle with\ninside and outside coin flip,https://www.youtube.com/watch?v=as46Zm9oibE,1,,,1,N 28 | M-22,mov_22_incircle2sameflip,Inside circle to\nsame hand flip catch,https://www.youtube.com/watch?v=xlClTZRbmc0,2,Left/Right,L,1,S 29 | M-23,mov_23_outcircle2sameflip,Outside circle to\nsame side flip catch,https://www.youtube.com/watch?v=UwR4uFqvUyY,2,Left/Right,L,1,S 30 | M-24-1,mov_241_altcircle2sameflip,Alt circle with\nsame side flip catch,https://www.youtube.com/watch?v=T5x3xsfHqs8,2,Left/Right,L,1,N 31 | M-24-2,mov_242_outflip,Outside flip catch balance,https://www.youtube.com/watch?v=T5x3xsfHqs8,2,Left/Right,L,1,S 32 | M-24-3,mov_243_inflip,Inside flip catch balance,https://www.youtube.com/watch?v=T5x3xsfHqs8,2,Left/Right,L,1,S 33 | M-25,mov_25_cincirclewaltnunchuck,Continuous inside circle with\nalt hand nunchuck flip,https://www.youtube.com/watch?v=rCgrNJLsrBM,2,Left/Right,L,1,N 34 | M-26,mov_26_coutcirclewaltflip,Continous outside circle with\nalternate hand flip catch,https://www.youtube.com/watch?v=T5lfsHi1rDY,4,Left/Right * (Let go/Don't let go),L,1,N 35 | M-27,mov_27_inflip180pull,Inside flip catch mill with\nsword grip across the top,https://www.youtube.com/watch?v=uFsPwnClx-M,2,Left/Right,L,1,N 36 | M-28,mov_28_outflipmill,Outside flip catch mill\naka flip catch reverse mill,https://www.youtube.com/watch?v=jKbelC2dZVo,2,Left/Right,L,1,N 37 | M-29,mov_29_inmillwflip,Inside mill with\nflip catch hand change,https://www.youtube.com/watch?v=Hmk80iWQHjM,2,Left/Right,L,1,N 38 | M-30,mov_30_outmillwflip,Outside mill with\nflip catch hand change,https://www.youtube.com/watch?v=aIxKwvzj9Hk,2,Left/Right,L,1,N 39 | M-31,mov_31_frcircle,Symmetrical stance\nFront Circles,https://www.youtube.com/watch?v=ULozVN0nz_U,2,Left/Right,L,1,S 40 | M-32,mov_32_bkcircle,Backward Circle,https://www.youtube.com/watch?v=KSja97kaEHY,2,Left/Right,L,1,S 41 | M-33,mov_33_warfrcircle,Warrior Stance\nFront circle,https://www.youtube.com/watch?v=-4GMydVrlSk,2,Left/Right,L,1,S 42 | M-34,mov_34_altfrbkcircle,Alternating front to\nback circles,https://www.youtube.com/watch?v=MsrcRGT0YzA,2,Left/Right,L,1,N 43 | M-35,mov_35_waralt360,Warrior stance\nalternating 360 / Gama cast,https://www.youtube.com/watch?v=IgJXJy3zPGk,4,Left/Right * (Left leg fwd/Right leg fwd),L,2,S 44 | M-36,mov_36_warbkcircle,Warrior stance\nbackward circle,https://www.youtube.com/watch?v=ZfGdlIsWKXQ,2,Left/Right,L,1,S 45 | M-37,mov_37_waraltcircle,Warrior stance\nalternating circles,https://www.youtube.com/watch?v=h_wcGKGlCus,2,Left/Right,L,1,N 46 | M-38,mov_38_war180pull,Warrior stance\n180 degree rotating pullover\nfrom sword grip,https://www.youtube.com/watch?v=P5lbQmeVZn8,2,Left/Right,L,1,N 47 | M-39,mov_39_warfrcircleflip,Warrior stance\nfront circle flip catch,https://www.youtube.com/watch?v=8hvIwt9EshQ,2,Left/Right,L,1,N 48 | M-40,mov_40_warbkcircleflip,Warrior stance\nbackward circle to\nflip catch,https://www.youtube.com/watch?v=Eb5Ci22BqmI,2,Left/Right,L,1,N 49 | M-41,mov_41_warfwdmill,Warrior stance\nforward mill,https://www.youtube.com/watch?v=ydXgS363htk,2,Left/Right,L,1,N 50 | M-42,mov_42_warbwdmill,Warrior stance\nbackward mill,https://www.youtube.com/watch?v=HaQqkf-cSHE,2,Left/Right,L,1,N 51 | M-43,mov_43_sifpivotwincircle,Step in front pivot with\ninside circle,https://www.youtube.com/watch?v=i2Zj4t-uIB8,2,Left/Right,L,1,N 52 | M-44,mov_44_sifpivotwoutcircle,Forward pivot step with\noutside circle,https://www.youtube.com/watch?v=VqW8JavN1g4,2,Left/RIght,L,1,N 53 | M-45,mov_45_sifpivotwflip,Inside stepping pivot with\ncoin flip and nunchuck return,https://www.youtube.com/watch?v=vU-BHGVejhs,2,Left/Right,L,1,N 54 | M-46,mov_46_sifpivotwoutcircleflip,Inside stepping pivot with\noutside circle coin flip,https://www.youtube.com/watch?v=YSHMJu7VWkg,2,Left/Right,L,1,N 55 | M-47,mov_47_sifpivotwincircleout180,Inside front step pivot with\ninside circle and\noutside 180 degree mill top,https://www.youtube.com/watch?v=zuen0CLdwMU,2,Left/Right,L,1,N 56 | M-48,mov_48_frspear,Front spear catch,https://www.youtube.com/watch?v=hwQlmjHQsrg,2,Left/Right,L,1,S 57 | M-49,mov_49_frspearwchange,Front spear catch with\ndescending side change,https://www.youtube.com/watch?v=xzPiZZV2K4E,1,,,1,N 58 | M-50,mov_50_f2bxbodhipull,Front to back\ncross-body high pull,https://www.youtube.com/watch?v=AoUxg7QE-xU,2,Left/Right,L,1,S 59 | M-51,mov_51_xbodspear,Cross-body\nspear catch isolations,https://www.youtube.com/watch?v=VkwN58PBBSs,2,Left/Right,L,1,S 60 | M-52,mov_52_altxbodspear,Cross-body\nspear catch\nalternating sides,https://www.youtube.com/watch?v=-Z8YfWYfepQ,1,,,1,N 61 | M-53,mov_53_outswordflair,Outside sword flair,https://www.youtube.com/watch?v=HxItsGvz-e4,2,Left/Right,L,1,S 62 | M-54,mov_54_inswordflair,Inside tip away\nsword flair,https://www.youtube.com/watch?v=8I7KaLuNaEs,2,Left/Right,L,1,S 63 | M-55,mov_55_out180pullwflair,Outside\n180 degree pullover with\nsword flair,https://www.youtube.com/watch?v=hh3393-eXrs,2,Left/Right,L,1,N 64 | M-56,mov_56_in180pullwflair,Inside\n180 degree pullover with\nsword flair,https://www.youtube.com/watch?v=Sqw6YyBTgOQ,2,Left/Right,L,1,N 65 | M-57,mov_57_alt180pullwflair,Inside & outside\n180 degree pullover with\nsword flairs,https://www.youtube.com/watch?v=XriSUPQ4Ql4,2,Left/Right,L,1,N 66 | M-58,mov_58_outswordmillwflair,Outside sword grip mill with\ntip-away sword flair,https://www.youtube.com/watch?v=bKldH_In6SI,2,Left/Right,L,1,N 67 | M-59,mov_59_inswordmillwflair,Inside sword grip mill with\ninside sword flair,https://www.youtube.com/watch?v=uMLwGxhbt2Y,2,Left/Right,L,1,N 68 | M-60,mov_60_altswordmillwflair,Alternating\nsword grip mill with\nsword flairs,https://www.youtube.com/watch?v=_GBln0VGekg,2,Left/Right,L,1,N 69 | M-61,mov_61_clockupper2180outpull,Front clockwork\nupper cut to\n180 degree outside pullover,https://www.youtube.com/watch?v=XP7abuBs_V0,2,Left/Right,L,1,N 70 | M-62,mov_62_clockupper2180outwflair,Clockwork uppercut to\noutside rotating 180 +\ntip away sword flair,https://www.youtube.com/watch?v=VjnRZIYV2H8,2,Left/Right,L,1,N 71 | M-63,mov_63_clockupperwsasc,Clockwork uppercut +\nsingle arm shield cast,https://www.youtube.com/watch?v=FQFBXlIjcDo,2,Left/Right,L,1,N 72 | M-64,mov_64_altclockupperw360,Alternating\nclockwork uppercut with\ntwo-hand 360 shield cast,https://www.youtube.com/watch?v=uE1DaKTf6SI,1,,,1,N 73 | M-65,mov_65_kneel360,Half-kneeling 2 hand mace 360,https://www.youtube.com/watch?v=HCCyUmShxYw,8,Left/Right * Cross/Straight * Left Leg/Right Leg,LX,2,S 74 | M-66,mov_66_kneelalt360,Half-kneeling\n10 to 2,https://www.youtube.com/watch?v=1sYBqQ1Ll_E,4,Left/Right * Left Leg/Right Leg,L,2,S 75 | -------------------------------------------------------------------------------- /src/hc/hc_sa_progression.puml: -------------------------------------------------------------------------------- 1 | @startdot hc_sa_progression 2 | digraph HCSA { 3 | 4 | // YouTube Playlist: https://www.youtube.com/playlist?list=PLk4oYPJ7TXKgCH_TpdUCNs2-m5ZCqx-Pw 5 | label=< 6 | Single Arm Heavy Club Skill Progression

7 | Diagram by dznz based on Mark Wildman's teachings.

8 | Source: https://github.com/dznz/wildman-skill-trees

9 | More by Mark Wildman - https://www.wildmanathletica.com

10 | 11 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
12 | http://creativecommons.org/licenses/by-nc-sa/4.0/
13 |
14 | > 15 | graph [labeljust=r] 16 | graph [fontname="Helvetica,Arial,sans-serif"] 17 | 18 | node [colorscheme="paired12"] 19 | node [shape=record] 20 | node [style="rounded,filled"] 21 | node [color=12, fillcolor=11] 22 | 23 | subgraph warmup { 24 | node [color=8, fillcolor=7] 25 | } 26 | 27 | subgraph aux { 28 | node [color=10, fillcolor=9] 29 | mov_05_backs2s, mov_06_perry, mov_17_millprep, mov_23_outpull3count 30 | mov_24_outpendoutpull3c, mov_26_inpull3count, mov_27_inpendinpull3c 31 | mov_29_kneelbackswing 32 | } 33 | 34 | // Movements external to this diagram 35 | subgraph ext { 36 | node [color=4, fillcolor=3] 37 | ext_2h_s2s, ext_2h_sideswingl2h, ext_2h_sc, ext_2h_pullover 38 | ext_2h_s2srockit 39 | ext_2h_incircle, ext_2h_outcircle 40 | ext_2h_outpend, ext_2h_inpend, ext_2h_altpend 41 | } 42 | 43 | ext_2h_s2s [label="{{2H-01|Two-Hand\nSide to Side Swing}}"] 44 | ext_2h_incircle [label="{{2H-05|Two-Hand\nInside Circle}}"] 45 | ext_2h_outcircle [label="{{2H-06|Two-Hand\nOutside Circle}}"] 46 | ext_2h_sc [label="{{2H-09|Two-Hand\nShield Cast}}"] 47 | ext_2h_sideswingl2h [label="{{2H-02|Two-Hand\nSide Swing\nLow to High}}" ] 48 | ext_2h_s2srockit [label="{{2H-15|Two-Hand\nSide to Side\nRockit}}" URL=""]; 49 | ext_2h_pullover [label="{{2H-07|Two-Hand\nPullover}}" URL="https://www.youtube.com/watch?v=jpIn1Sumg78&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=7"] 50 | ext_2h_outpend [label="{{2H-16|Two-Hand\nOutside Pendulum}}"] 51 | ext_2h_inpend [label="{{2H-16|Two-Hand\nInside Pendulum}}"] 52 | ext_2h_altpend [label="{{2H-??|Two-Hand\nAlternating Pendulum}}" URL="https://www.youtube.com/watch?v=GULjXPS_ba4"] 53 | 54 | mov_01_s2s [label="{{01|Side to Side Swing}|ELBOWS LOCKED}" URL="https://www.youtube.com/watch?v=cosgyt2BQG4"]; 55 | mov_02_incircle [label="{{02|Inside Circle}}" URL="https://www.youtube.com/watch?v=-gtRj1KEUmw"]; 56 | mov_03_outcircle [label="{{03|Outside Circle}}" URL="https://www.youtube.com/watch?v=Mf2QuZvRtQ4"]; 57 | mov_04_pullover [label="{{04|Pullover}}" URL="https://www.youtube.com/watch?v=HHT6TrTLJM8"]; 58 | mov_05_backs2s [label="{{05|Back Position Swing}|THUMB TO SHIRT}" URL="https://www.youtube.com/watch?v=sxePeWDR1U0"]; 59 | mov_06_perry [label="{{06|Perry Cast\naka Bailout}|SAFE FAILURE}" URL="https://www.youtube.com/watch?v=FpUecSrX_AI"]; 60 | mov_07_sc [label="{{07|Shield Cast}}" URL="https://www.youtube.com/watch?v=huwc0g3yLWk"]; 61 | mov_08_sideswingl2h [label="{{08|Side Swing\nLow to High\nwith Stop}|HIP SNAP}" URL="https://www.youtube.com/watch?v=0_wHseV7B-o"]; 62 | mov_09_s2srockit [label="{{09|Side to Side Rockit}}" URL="https://www.youtube.com/watch?v=I26O1ct_hik"]; 63 | mov_10_sideswingl2hcont [label="{{10|Side Swing\nLow to High\nContinuous}}" URL="https://www.youtube.com/watch?v=_Yd8I7U44mw"]; 64 | mov_11_altcircle [label="{{11|Alternating Circle}}" URL="https://www.youtube.com/watch?v=yuJNSETl-tI"]; 65 | mov_12_outpend [label="{{12|Outside Pendulum}}" URL="https://www.youtube.com/watch?v=q8l1G7UoERA"]; 66 | mov_13_inpend [label="{{13|Inside Pendulum}}" URL="https://www.youtube.com/watch?v=4LqqrNosRiI"]; 67 | mov_14_outpull [label="{{14|Outside Pullover}|+ EXT ROTATION}" URL="https://www.youtube.com/watch?v=sJ5XCgdCMx8"]; 68 | mov_15_inpull [label="{{15|Inside Pullover}|+ INT ROTATION}" URL="https://www.youtube.com/watch?v=DQg80eX08hg"]; 69 | mov_16_altpend [label="{{16|Alternating Pendulum}}" URL="https://www.youtube.com/watch?v=eIkqXJ5d7V4"]; 70 | mov_17_millprep [label="{{17|Mill Prep}}" URL="https://www.youtube.com/watch?v=TSjIEfyJGKY"]; 71 | mov_18_alt180pull [label="{{18|Alternating 180 Degree\nPullover}}" URL="https://www.youtube.com/watch?v=brM1Ybg9v7E"]; 72 | mov_19_mill [label="{{19|Mill}}" URL="https://www.youtube.com/watch?v=0fm3VX0iKnA"]; 73 | mov_20_revmill [label="{{20|Reverse Mill}}" URL="https://www.youtube.com/watch?v=B8YWWwRB8fo"]; 74 | mov_21_outcirclesc [label="{{21|Outside Circle\nShield Cast}|ORDER POS IN MILL}" URL="https://www.youtube.com/watch?v=NdJlzFTbQwo"]; 75 | mov_22_outpendoutpull [label="{{22|Outside Pendulum\nOutside Pullover}}" URL="https://www.youtube.com/watch?v=b0Ztc-54C_Y"]; 76 | mov_23_outpull3count [label="{{23|Outside Pullover\n3 Count}}" URL="https://www.youtube.com/watch?v=_hJaJVaMPtE"]; 77 | mov_24_outpendoutpull3c [label="{{24|Outside Pendulum\nOutside Pullover\n3 Count}}" URL="https://www.youtube.com/watch?v=FauiblV5PHg"]; 78 | mov_25_inpendinpull [label="{{25|Inside Pendulum\nInside Pullover}}" URL="https://www.youtube.com/watch?v=VFaO93BsNaA"]; 79 | mov_26_inpull3count [label="{{26|Inside Pullover\n3 Count}}" URL="https://www.youtube.com/watch?v=lBKIaQ6iej8"]; 80 | mov_27_inpendinpull3c [label="{{27|Inside Pendulum\nInside Pullover\n3 Count}}" URL="https://www.youtube.com/watch?v=Vv4rdCks2f8"]; 81 | mov_28_outpend180pull [label="{{28|Outside Pendulum\n180 Pullover}}" URL="https://www.youtube.com/watch?v=dATAyVyvbnw"]; 82 | mov_29_kneelbackswing [label="{{29|Half Kneeling\nBack Position Swing}|CONNECT HIP\nTO SHOULDER}" URL="https://www.youtube.com/watch?v=H590if5eTeE"]; 83 | 84 | // external skill links 85 | ext_2h_s2s -> ext_2h_sideswingl2h -> ext_2h_s2srockit; 86 | ext_2h_outpend -> ext_2h_inpend -> ext_2h_altpend; 87 | ext_2h_incircle -> ext_2h_outcircle; 88 | ext_2h_pullover -> ext_2h_sc; 89 | 90 | // external skill dependencies 91 | ext_2h_s2s -> mov_01_s2s; 92 | ext_2h_incircle -> mov_02_incircle; 93 | ext_2h_outcircle -> mov_03_outcircle; 94 | ext_2h_sc -> mov_07_sc; 95 | ext_2h_pullover -> mov_04_pullover; 96 | ext_2h_sideswingl2h -> mov_08_sideswingl2h; 97 | ext_2h_s2srockit -> mov_09_s2srockit; 98 | ext_2h_outpend -> mov_12_outpend; 99 | ext_2h_inpend -> mov_13_inpend; 100 | ext_2h_altpend -> mov_16_altpend; 101 | 102 | mov_01_s2s -> mov_08_sideswingl2h; 103 | mov_01_s2s -> mov_02_incircle; 104 | mov_02_incircle -> mov_03_outcircle; 105 | mov_08_sideswingl2h -> mov_09_s2srockit; 106 | mov_09_s2srockit -> mov_12_outpend; 107 | mov_03_outcircle -> mov_12_outpend; 108 | mov_08_sideswingl2h -> mov_10_sideswingl2hcont; 109 | mov_03_outcircle -> mov_11_altcircle; 110 | mov_12_outpend -> mov_13_inpend -> mov_16_altpend; 111 | mov_04_pullover -> mov_07_sc; 112 | mov_04_pullover -> mov_05_backs2s -> mov_07_sc; 113 | mov_04_pullover -> mov_06_perry -> mov_07_sc; 114 | mov_29_kneelbackswing -> mov_07_sc; 115 | mov_05_backs2s -> mov_14_outpull; 116 | mov_06_perry -> mov_14_outpull; 117 | mov_04_pullover -> mov_14_outpull; 118 | mov_14_outpull -> mov_15_inpull; 119 | mov_02_incircle -> mov_17_millprep; 120 | mov_07_sc -> mov_17_millprep; 121 | mov_17_millprep -> mov_18_alt180pull; 122 | mov_15_inpull -> mov_18_alt180pull; 123 | mov_18_alt180pull -> mov_19_mill; 124 | mov_11_altcircle -> mov_19_mill; 125 | {mov_11_altcircle, mov_18_alt180pull, mov_26_inpull3count} -> mov_20_revmill; 126 | 127 | mov_03_outcircle -> mov_21_outcirclesc; 128 | mov_17_millprep -> mov_21_outcirclesc; 129 | {mov_12_outpend, mov_14_outpull, mov_24_outpendoutpull3c} -> mov_22_outpendoutpull; 130 | mov_14_outpull -> mov_23_outpull3count -> mov_19_mill 131 | {mov_23_outpull3count} -> mov_24_outpendoutpull3c 132 | {mov_15_inpull} -> mov_26_inpull3count 133 | mov_26_inpull3count -> mov_27_inpendinpull3c 134 | {mov_13_inpend, mov_15_inpull, mov_22_outpendoutpull, mov_27_inpendinpull3c} -> mov_25_inpendinpull 135 | {mov_18_alt180pull, mov_22_outpendoutpull} -> mov_28_outpend180pull 136 | mov_05_backs2s -> mov_29_kneelbackswing 137 | 138 | // Layout Hacks 139 | { rank=same; mov_22_outpendoutpull; mov_16_altpend} 140 | 141 | // LEGEND 142 | { rank = sink; 143 | Legend [shape=none, margin=0, label=< 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 |
Legend
Two-Handed Prerequisites
Regular Drills     
Learning drills
161 | >]; 162 | } 163 | } 164 | @enddot 165 | -------------------------------------------------------------------------------- /src/hc/hc_2h_progression_1.puml: -------------------------------------------------------------------------------- 1 | @startdot 2 | digraph HC2H { 3 | 4 | label=< 5 | Two-Handed Heavy Club Skill Progression - Part 1/2

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [fontname="Helvetica,Arial,sans-serif"] 19 | node [shape=record,style="rounded,filled"] 20 | edge [fontname="Helvetica,Arial,sans-serif"] 21 | node [color=2, fillcolor=1]; 22 | 23 | subgraph "primary" { 24 | node [color=12, fillcolor=11] 25 | ' node [fontname="Helvetica Bold,Arial Bold,sans-serif",fontsize=16] 26 | node [margin=0.2] 27 | mov_09_sc; mov_mill; mov_07_pullover; mov_05_insidecircle; mov_06_outsidecircle; mov_10_squat; mov_19_inpend; mov_16_outpend; mov_17_stepbacklunge; mov_21_gama; 28 | } 29 | subgraph "secondary" { 30 | node [color=8, fillcolor=7] 31 | mov_01_sidetoside; mov_02_sideswinglowtohigh; mov_04_deadclean; mov_15_rockit; mov_03_hangsidelowtohigh; mov_millprep; mov_08_backpossidetoside; mov_13_frontpress; mov_11_swingclean; mov_180pullover; mov_alt180pullover; mov_22_scsquat; 32 | } 33 | 34 | subgraph "prereq" { 35 | node [color=2, fillcolor=1] 36 | node [shape=box,style="rounded,filled"] 37 | pre_deadlift [label="Deadlift Position"] 38 | pre_order [label="Order Position"] 39 | pre_shouldercatch [label="Shoulder Catch\nHand Change"] 40 | } 41 | 42 | subgraph "post" { 43 | node [color=4, fillcolor=3] 44 | } 45 | 46 | subgraph "extra" { 47 | node [color=6, fillcolor=5] 48 | mov_pulloversquat; mov_clockwork; mov_clockworksquat; mov_clockworkstepbacklunge; mov_18_altcircle; mov_altpendulum; mov_altmill 49 | } 50 | 51 | subgraph "aux" { 52 | node [color=10, fillcolor=9]; 53 | mov_12_robotsc; mov_14_revrobotsc; mov_20_3csc 54 | } 55 | 56 | // Heavy Club Sequence 57 | mov_01_sidetoside [label="{{01|Side to Side\nSwing}|ELBOWS LOCKED}" URL="https://www.youtube.com/watch?v=LMau5vr7qx4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds"] 58 | mov_02_sideswinglowtohigh [label="{{02|Side Swing\nLow to High}}" URL="https://www.youtube.com/watch?v=NoZCHTlmrCg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=2"] 59 | mov_03_hangsidelowtohigh [label="{{03|Hang Side Swing\nLow to High}|LEG DRIVE & HIP SNAP}" URL="https://www.youtube.com/watch?v=RD1zOWaTjhQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=3"] 60 | mov_04_deadclean [label="{{04|Dead Clean}}" URL="https://www.youtube.com/watch?v=69RGME9RTcY&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=4"] 61 | mov_05_insidecircle [label="{{05|Inside Circle}}" URL="https://www.youtube.com/watch?v=Mh6iWcLbE3k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=5"]; 62 | mov_06_outsidecircle [label="{{06|Outside Circle}}" URL="https://www.youtube.com/watch?v=QzMzCal-MYM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=6"]; 63 | mov_07_pullover [label="{{07|Pullover}|CLUB BEHIND HEAD}" URL="https://www.youtube.com/watch?v=jpIn1Sumg78&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=7"] 64 | mov_08_backpossidetoside [label="{{08|Back Position\nSide to Side Swing}|SWING BEHIND HEAD}" URL="https://www.youtube.com/watch?v=GKwGiB2UwyM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=8"] 65 | mov_09_sc [label="{{09|Shield Cast}}" URL="https://www.youtube.com/watch?v=W-iHvrjn72k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=9"]; 66 | mov_10_squat [label="{{10|Balance Squat}}" URL="https://www.youtube.com/watch?v=LSXticZ67Pw&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=11"] 67 | mov_11_swingclean [label="{{11|Swing Clean}|DECELERATE WEIGHT}" URL="https://www.youtube.com/watch?v=0oRuCQOkPRo&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=12"] 68 | mov_12_robotsc [label="{{12|Robot Shield Cast}}" URL="https://www.youtube.com/watch?v=LDGi_lmzGR8&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=13"]; 69 | mov_13_frontpress [label="{{13|Front Press}}" URL="https://www.youtube.com/watch?v=HBRWtm3tTp4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=15"] 70 | mov_14_revrobotsc [label="{{14|Reverse Robot\nShield Cast}}" URL="https://www.youtube.com/watch?v=Fun_Lscq5go&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=23"]; 71 | mov_15_rockit [label="{{15|Side to Side\nRockit}}" URL="https://www.youtube.com/watch?v=4gvF-gARAIs&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=24"] 72 | mov_16_outpend [label="{{16|Outside Pendulum\n(aka Outside Hang\nPower Clean)}}" URL="https://www.youtube.com/watch?v=SRNTrFvHgz0&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=25"] 73 | mov_17_stepbacklunge [label="{{17|Balance Step\nBack Lunge}}" URL="https://www.youtube.com/watch?v=dNrYT5iU7BQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=26"] 74 | mov_18_altcircle [label="{{18|Alternating Circle}|DECELERATE &\nCHANGE DIRECTION}" URL="https://www.youtube.com/watch?v=ukkrHxGTGtI&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=31"] 75 | mov_19_inpend [label="{{19|Inside Pendulum}}" URL="https://www.youtube.com/watch?v=pV0Hh335Csg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=34"] 76 | mov_20_3csc [label="{{20|Three-Count\nShield Cast}}" URL="https://www.youtube.com/watch?v=ABQij0Zpt0U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=35"]; 77 | mov_21_gama [label="{{21|Gamma Cast\naka Gama Cast}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=39"]; 78 | mov_22_scsquat [label="{{22|Shield Cast Squat}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=41"]; 79 | 80 | // Unsequenced 81 | mov_mill [label="{{|Mill}}" URL="https://www.youtube.com/watch?v=iFtaPBDwG7w"] 82 | mov_millprep [label="{{|Mill Prep}}" URL="https://www.youtube.com/watch?v=iFtaPBDwG7w"] 83 | mov_180pullover [label="{{|180 Degree\nPullover}}"] 84 | mov_alt180pullover [label="{{|Alternating 180 Degree\nPullover}}" URL="https://www.youtube.com/watch?v=uz2tKevdtzE"] 85 | mov_pulloversquat [label="{{|Pullover Squat}}" URL="https://www.youtube.com/watch?v=2Cejb6rcqis"] 86 | mov_clockwork [label="{{|Clockwork Catch}}" URL="https://www.youtube.com/watch?v=opvYcUfzymI"] 87 | mov_clockworksquat [label="{{|Clockwork Squat}}" URL="https://www.youtube.com/watch?v=VVFQ5SkrMvM"] 88 | mov_clockworkstepbacklunge [label="{{|Clockwork Step Back Lunge}}" URL="https://www.youtube.com/watch?v=-LQFwOehs74"] 89 | mov_altpendulum [label="{{|Alternating Pendulum}}" URL="https://www.youtube.com/watch?v=GULjXPS_ba4"] 90 | mov_altmill [label="{{|Alternating Mill}}"] 91 | 92 | // Prerequisite skills 93 | pre_deadlift -> mov_04_deadclean; 94 | pre_order -> mov_04_deadclean; 95 | pre_shouldercatch -> mov_05_insidecircle; 96 | pre_deadlift -> mov_01_sidetoside; 97 | pre_shouldercatch -> mov_07_pullover; 98 | 99 | mov_04_deadclean -> mov_05_insidecircle; 100 | mov_05_insidecircle -> mov_06_outsidecircle; 101 | mov_01_sidetoside -> mov_02_sideswinglowtohigh; 102 | mov_02_sideswinglowtohigh -> mov_03_hangsidelowtohigh; 103 | mov_01_sidetoside -> mov_05_insidecircle; 104 | mov_03_hangsidelowtohigh -> mov_05_insidecircle; 105 | mov_04_deadclean -> mov_07_pullover; 106 | mov_07_pullover -> mov_180pullover; 107 | mov_180pullover -> mov_alt180pullover; 108 | mov_180pullover -> mov_mill; 109 | mov_07_pullover -> mov_08_backpossidetoside; 110 | mov_07_pullover -> mov_09_sc; 111 | mov_08_backpossidetoside -> mov_09_sc; 112 | mov_04_deadclean -> mov_10_squat; 113 | mov_04_deadclean -> mov_11_swingclean; 114 | mov_07_pullover -> mov_12_robotsc; 115 | mov_12_robotsc -> mov_14_revrobotsc; 116 | mov_14_revrobotsc -> mov_09_sc; 117 | mov_04_deadclean -> mov_13_frontpress; 118 | mov_03_hangsidelowtohigh -> mov_15_rockit 119 | mov_01_sidetoside -> mov_15_rockit; 120 | mov_15_rockit -> mov_16_outpend; 121 | mov_11_swingclean -> mov_16_outpend; 122 | mov_06_outsidecircle -> mov_16_outpend; 123 | mov_10_squat -> mov_17_stepbacklunge; 124 | mov_05_insidecircle -> mov_18_altcircle; 125 | mov_06_outsidecircle -> mov_18_altcircle; 126 | mov_16_outpend -> mov_19_inpend; 127 | mov_19_inpend -> mov_altpendulum; 128 | mov_16_outpend -> mov_altpendulum; 129 | mov_09_sc -> mov_20_3csc; 130 | mov_08_backpossidetoside -> mov_20_3csc; 131 | mov_10_squat -> mov_pulloversquat; 132 | mov_07_pullover -> mov_pulloversquat; 133 | mov_05_insidecircle -> mov_millprep; 134 | mov_09_sc:s -> mov_millprep; 135 | mov_millprep -> mov_mill; 136 | mov_18_altcircle -> mov_clockwork; 137 | mov_clockwork -> mov_clockworksquat; 138 | mov_10_squat -> mov_clockworksquat; 139 | mov_clockworksquat -> mov_clockworkstepbacklunge; 140 | mov_17_stepbacklunge -> mov_clockworkstepbacklunge; 141 | mov_alt180pullover -> mov_altmill; 142 | mov_mill -> mov_altmill; 143 | mov_09_sc:s -> mov_21_gama; 144 | mov_09_sc:s -> mov_22_scsquat; 145 | mov_10_squat -> mov_22_scsquat; 146 | 147 | { rank = sink; 148 | Legend [shape=none, margin=0, label=< 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 |
Legend
Prerequisite Skills     
Primary Drills
Secondary Drills
Auxiliary Drills
Unsequenced Extra Drills
174 | >]; 175 | } 176 | } 177 | @enddot 178 | -------------------------------------------------------------------------------- /src/kb/kb_progression.csv: -------------------------------------------------------------------------------- 1 | "ID","Graph_Name","Label","Skill_Developed","Playlist_URL","Standalone_URL" 2 | KB-01,mov_01_deadlift,"Two Hand Deadlift","HIP HINGE","https://www.youtube.com/watch?v=x0XkmM34BPI&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=1", 3 | KB-02,mov_02_swing,"Two Hand Swing","LEG DRIVE &\nHIP SNAP","https://www.youtube.com/watch?v=m-S9H2XVvYg&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=2", 4 | KB-03,mov_03_atw,"Around the World","HAND TRANSITION","https://www.youtube.com/watch?v=XaegZzSbtr0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=3", 5 | KB-04,mov_04_halo,"Halo","GLOBE UP\nORDER POSITION","https://www.youtube.com/watch?v=25xdtjbFPtw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=4", 6 | KB-05,mov_05_atwf2b,"Around the World\nFront to Back",,"https://www.youtube.com/watch?v=TwlQQXAQpaQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=5", 7 | KB-06,mov_06_atwb2f,"Around the World\nBack to Front",,"https://www.youtube.com/watch?v=GrRO00YOIWM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=6", 8 | KB-07,mov_07_althalo,"Alternating Halo",,"https://www.youtube.com/watch?v=SMpquy5zSL4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=7", 9 | KB-08,mov_08_2hu1hd,"Two Hand Pickup\nOne Hand Putdown","RACK POSITION","https://www.youtube.com/watch?v=eMkDP9VmMc0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=8", 10 | KB-09,mov_09_saswing,"Single Arm Swing","THUMB POINTS BACK","https://www.youtube.com/watch?v=ejPpyLKZ1L4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=9", 11 | KB-10,mov_10_h2h,"Hand to Hand\nTransition",,"https://www.youtube.com/watch?v=0Uk0Rdm3QFs&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=10", 12 | KB-11,mov_11_2hucleandown,"Two Hand Pickup\nClean Putdown",,"https://www.youtube.com/watch?v=cQC2y-ByaAw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=11", 13 | KB-12,mov_12_clean,"Swing Clean",,"https://www.youtube.com/watch?v=_nIsSXWs5iU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=12", 14 | KB-13,mov_13_cleanh2h,"Clean with\nHand Transition",,"https://www.youtube.com/watch?v=6TVqHl2gtuM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=13", 15 | KB-14,mov_14_press,"Single Arm\nOverhead Press",,"https://www.youtube.com/watch?v=XHkI03S6Pls&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=14", 16 | KB-15,mov_15_news,"Newspaper drill",,"https://www.youtube.com/watch?v=htByOXjHLXE&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=15", 17 | KB-16,mov_16_startstopclean,"Start Stop Clean","START & END CLEAN","https://www.youtube.com/watch?v=XbK3jxI0WNQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=16", 18 | KB-17,mov_17_cap,"Clean & Press",,"https://www.youtube.com/watch?v=SSxB3m5qRas&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=17", 19 | KB-18,mov_18_caph2h,"Clean & Press with\nHand Transition",,"https://www.youtube.com/watch?v=5Q4vMOYvAGg&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=18", 20 | KB-19,mov_19_startstopcap,"Start Stop\nClean & Press","START & END C&P","https://www.youtube.com/watch?v=dSj3kqbuois&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=19", 21 | KB-20,mov_20_gobboxsquat,"Bottoms-Up Goblet\nBox Squat","SQUAT BACK","https://www.youtube.com/watch?v=k5Bc7pkEmrU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=20", 22 | KB-21,mov_21_boxsquathalo,"Goblet Box Squat\nwith Halo","STAND AT TOP","https://www.youtube.com/watch?v=Aik5-BStbnc&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=21", 23 | KB-22,mov_22_gobsquathalo,"Goblet Squat\nwith Halo","FULL DEPTH","https://www.youtube.com/watch?v=cnZ8Mx8NQPE&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=22", 24 | KB-23,mov_23_racksquat,"Single-Bell Front Squat",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=23", 25 | KB-24,mov_24_racklunge,"Rack Opposite Leg\nStep-Back Lunge","VERTICAL SPINE","https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=24", 26 | KB-25,mov_25_clean2sblunge,"Clean Step-Back Clean",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=25", 27 | KB-26,mov_26_halfkneelclean,"Half-Kneeling Clean",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=26", 28 | KB-27,mov_27_cleansblungeclean,"Clean Step-Back\nLunge Clean",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=27", 29 | KB-28,mov_28_floorpress,"Single-Bell Floor Press",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=28", 30 | KB-29,mov_29_halfkneelcap,"Half-Kneeling\nClean & Press",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=29", 31 | KB-30,mov_30_floorpressroll,"Floor Press with Roll",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=30", 32 | KB-31,mov_31_kneelwindmill,"Half-Kneeling Windmill",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=31", 33 | KB-32,mov_32_quartgu,"Quarter Turkish Get-Up",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=32", 34 | KB-33,mov_33_kneelcapwindmill,"Half-Kneeling\nClean & Press Windmill",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=34", 35 | KB-34,mov_34_halfgu,"Half Get-Up",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=35", 36 | KB-35,mov_35_cap2ohsblunge,"Clean & Press to Overhead\nStep-Back Lunge",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=37", 37 | KB-36,mov_36_kneelhipdrop,"Half-Kneeling Hip Drop",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=38", 38 | KB-37,mov_37_halfgu2hip,"Half Get-Up\nto Hip Pass",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=39", 39 | KB-38,mov_38_kneelcap2hip,"Half-Kneeling Clean & Press\nto Hip Drop",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=40", 40 | KB-39,mov_39_boxsquat2boat,"Box Squat to Boat Pose",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=41", 41 | KB-40,mov_40_bwspinalrock,"Spinal Rock\n(Bodyweight)",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=42", 42 | KB-41,mov_41_flatbackpullover,"Flat Back Pullover",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=43", 43 | KB-42,mov_42_halfgu2kneel,"Half Get-Up to Hip Pass\n(to Half-Kneeling)",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=45", 44 | KB-43,mov_43_spinalrock,"Spinal Rock",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=48", 45 | KB-44,mov_44_pushpress,"Push Press",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=49", 46 | KB-45,mov_45_gobsquatcurl,"Rock-Bottom\nCurl with Goblet Squat",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=50", 47 | KB-47,mov_47_racksquatpickup,"Rock-Bottom\nFront Squat Pickup","PAUSE AT BOTTOM","https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=52", 48 | KB-48,mov_48_thruster,"Thruster",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=48", 49 | KB-49,mov_49_seatedpress,"Seated Two-Handed\nOverhead Press",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=54", 50 | KB-50,mov_50_2hdeadclean2rack,"Two-Handed Dead Clean\nto Double Front Rack",,"https://www.youtube.com/watch?v=acqKxfMGAbk&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=55", 51 | KB-51,mov_51_fourcountsquat,"Four-Count Squat\n(Bodyweight)",,,"https://www.youtube.com/watch?v=1rkGfL1EdWI" 52 | KB-52,mov_52_rackaltshinbox,"Rack Alt Shinbox",,,"https://www.youtube.com/watch?v=AoEYX36Q2Zg" 53 | KB-53,mov_53_hornygobsquat,"Handle Up\nGoblet Squat",,,"https://www.youtube.com/watch?v=i2AtDi4yZSA" 54 | KB-54,mov_54_shinboxpress,"Contra Shinbox Press",,,"https://www.youtube.com/watch?v=FEbi2lKVEHU" 55 | KB-55,mov_55_backpullsituppress,"Flat Back Pullover Situp Press",,"https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=57", 56 | KB-56,mov_56_suitcasedl,"Suitcase Deadlift",,"https://www.youtube.com/watch?v=d6i6MwVOmk0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=58", 57 | KB-57,mov_57_dblsuitcase,"Double Suitcase",,"https://www.youtube.com/watch?v=4PSOSrDcGfc&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=59", 58 | KB-58,mov_58_dblsumodl,"Double Sumo Deadlift",,,"https://www.youtube.com/watch?v=gdutIla6nMw" 59 | KB-59,mov_59_halfsnatchdown,"Half Snatch Down",,"https://www.youtube.com/watch?v=u2NbMtX_Rb0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=60", 60 | KB-60,mov_60_dblswing,"Double Swing",,"https://www.youtube.com/watch?v=P5IFTJySA_s&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=61","https://www.youtube.com/watch?v=P5IFTJySA_s" 61 | KB-61,mov_61_halfsnatchup,"Half Snatch Up",,,"https://www.youtube.com/watch?v=3HEmUyLYjjc" 62 | KB-62,mov_62_dblclean,"Double Clean",,"https://www.youtube.com/watch?v=Qe9ejhAtdGY&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=62","https://www.youtube.com/watch?v=Qe9ejhAtdGY" 63 | KB-64,mov_63_dblrockit,"Double Rockit",,"https://www.youtube.com/watch?v=zXB6hFrrBkA&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=63","https://www.youtube.com/watch?v=zXB6hFrrBkA" 64 | KB-64,mov_64_dbloutswing,"Double\nOutside Swing",,,"https://www.youtube.com/watch?v=yr_fRgGevsE" 65 | KB-65,mov_65_dblcap,"Double\nClean & Press",,,"https://www.youtube.com/watch?v=RizGV8ef--s" 66 | KB-66,mov_66_snatch,"Full Snatch",,"https://www.youtube.com/watch?v=f-zkPiAlpQw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=65","https://www.youtube.com/watch?v=f-zkPiAlpQw" 67 | KB-67,mov_67_dblsquat,"Double\nFront Squat",,"https://www.youtube.com/watch?v=dX5yXJa5Dm0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=66","https://www.youtube.com/watch?v=dX5yXJa5Dm0" 68 | KB-68,mov_68_dblclean2squat,"Double Clean\nto Front Squat",,,"https://www.youtube.com/watch?v=R3s6Wb_ApHM" 69 | KB-69,mov_69_snatchpress,"Snatch Press",,"https://www.youtube.com/watch?v=IzFPa_Q1yHM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=67","https://www.youtube.com/watch?v=IzFPa_Q1yHM" 70 | KB-70,mov_70_kneelsnatchup,"Half-Kneeling Snatch Up",,,"https://www.youtube.com/watch?v=1_UrK5SopL4" 71 | KB-71,mov_71_deaddblclean,"Dead Stop\nDouble Clean",,,"https://www.youtube.com/watch?v=22bKQqMqAQY" 72 | KB-72,mov_72_deck,"Deck Squat",,,"https://www.youtube.com/watch?v=vUJ3sZVwZ4Y" 73 | KB-73,mov_73_2hsbldl,"Two Hand Single\nBent Leg Deadlift",,,"https://www.youtube.com/watch?v=-RD1qqe7P8M" 74 | KB-74,mov_74_dblhangclean2squat,"Double Hang Clean\nTo Squat",,,"https://www.youtube.com/watch?v=SdPEkv56Lt8" 75 | KB-75,mov_75_2hssldl,"Two Hand Single\nStraight Leg Deadlift",,"https://www.youtube.com/watch?v=tMt2hzfFGzo&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=70","https://www.youtube.com/watch?v=tMt2hzfFGzo" 76 | KB-76,mov_76_dblhangcap,"Double Dead Hang\nClean & Press",SLOW DOWN TO ENDURE,,"https://www.youtube.com/watch?v=ieDA4V9WGNQ" 77 | KB-77,mov_77_shsldl,"Single Hand\nSingle Leg Deadlift",ONE-SIDE BALANCE,,"https://www.youtube.com/watch?v=1K4hgXfUinU" 78 | KB-78,mov_78_dblcleansqpress,"Double Clean Squat Press",,,"https://www.youtube.com/watch?v=fWPDPBliCEk" 79 | KB-79,mov_79_kneelsnatchdown,"Half-Kneeling Snatch Down",KB CLOSE TO BODY,,"https://www.youtube.com/watch?v=okO-7womT5Q" 80 | KB-80,mov_80_dblhangcsp,"Double Dead\nHang Clean\nSquat Press",,,"https://www.youtube.com/watch?v=DpGOSw7kGO0" 81 | KB-81,mov_81_kneelsnatch,"Half Kneeling\nFull Snatch",,,"https://www.youtube.com/watch?v=axx4kfUzkl4" 82 | KB-82,mov_82_dblcleanpresssq,"Double Clean\nPress Squat",,,"https://www.youtube.com/watch?v=t5fDkX3vjiU" 83 | KB-83,mov_83_dblcleansblunge,"Double Clean\nRack Step Back Lunge",,,"https://www.youtube.com/watch?v=mNt7guHRP4U" 84 | KB-84,mov_84_s2sswing,"Side to Side Swing",LATERAL ROTATION,,"https://www.youtube.com/watch?v=W_04Zv3p2HM" 85 | -------------------------------------------------------------------------------- /src/hc/hc_2h_progression_ALT.puml: -------------------------------------------------------------------------------- 1 | @startdot 2 | digraph HC2H { 3 | 4 | label=< 5 | Two-Handed Heavy Club Skills - ALT View

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="ylgn9"] 18 | node [fontname="Helvetica,Arial,sans-serif"] 19 | node [shape=record,style="rounded,filled"] 20 | edge [fontname="Helvetica,Arial,sans-serif"] 21 | node [color=2, fillcolor=1]; 22 | 23 | subgraph "preAndPost" { 24 | node [color=4, fillcolor=LightSteelBlue] 25 | pre_shinbox [label="Bodyweight Shinbox"] 26 | } 27 | 28 | // Heavy Club Sequence 29 | 30 | subgraph "1-7" { 31 | node [color=11, fillcolor=1] 32 | mov_01_sidetoside [label="{{01|Side to Side\nSwing}|ELBOWS LOCKED}" URL="https://www.youtube.com/watch?v=LMau5vr7qx4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds"] 33 | mov_02_sideswinglowtohigh [label="{{02|Side Swing\nLow to High}}" URL="https://www.youtube.com/watch?v=NoZCHTlmrCg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=2"] 34 | mov_03_hangsidelowtohigh [label="{{03|Hang Side Swing\nLow to High}|LEG DRIVE & HIP SNAP}" URL="https://www.youtube.com/watch?v=RD1zOWaTjhQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=3"] 35 | mov_04_deadclean [label="{{04|Dead Clean}|ORDER POSITION}" URL="https://www.youtube.com/watch?v=69RGME9RTcY&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=4"] 36 | mov_05_insidecircle [label="{{05|Inside Circle}}" URL="https://www.youtube.com/watch?v=Mh6iWcLbE3k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=5"]; 37 | mov_06_outsidecircle [label="{{06|Outside Circle}}" URL="https://www.youtube.com/watch?v=QzMzCal-MYM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=6"]; 38 | mov_07_pullover [label="{{07|Pullover}|CLUB BEHIND HEAD}" URL="https://www.youtube.com/watch?v=jpIn1Sumg78&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=7"] 39 | } 40 | subgraph "8-14" { 41 | node [color=11, fillcolor=2] 42 | mov_08_backpossidetoside [label="{{08|Back Position\nSide to Side Swing}|SWING BEHIND HEAD}" URL="https://www.youtube.com/watch?v=GKwGiB2UwyM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=8"] 43 | mov_09_sc [label="{{09|Shield Cast}}" URL="https://www.youtube.com/watch?v=W-iHvrjn72k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=9"]; 44 | mov_10_squat [label="{{10|Balance Squat}}" URL="https://www.youtube.com/watch?v=LSXticZ67Pw&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=11"] 45 | mov_11_swingclean [label="{{11|Swing Clean}|DECELERATE WEIGHT}" URL="https://www.youtube.com/watch?v=0oRuCQOkPRo&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=12"] 46 | mov_12_robotsc [label="{{12|Robot Shield Cast}}" URL="https://www.youtube.com/watch?v=LDGi_lmzGR8&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=13"]; 47 | mov_13_frontpress [label="{{13|Front Press}}" URL="https://www.youtube.com/watch?v=HBRWtm3tTp4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=15"] 48 | mov_14_revrobotsc [label="{{14|Reverse Robot\nShield Cast}}" URL="https://www.youtube.com/watch?v=Fun_Lscq5go&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=23"]; 49 | } 50 | subgraph "15-21" { 51 | node [color=11, fillcolor=3] 52 | mov_15_rockit [label="{{15|Side to Side\nRockit}}" URL="https://www.youtube.com/watch?v=4gvF-gARAIs&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=24"] 53 | mov_16_outpend [label="{{16|Outside Pendulum\n(aka Outside Hang\nPower Clean)}}" URL="https://www.youtube.com/watch?v=SRNTrFvHgz0&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=25"] 54 | mov_17_stepbacklunge [label="{{17|Balance Step\nBack Lunge}}" URL="https://www.youtube.com/watch?v=dNrYT5iU7BQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=26"] 55 | mov_18_altcircle [label="{{18|Alternating Circle}|DECELERATE &\nCHANGE DIRECTION}" URL="https://www.youtube.com/watch?v=ukkrHxGTGtI&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=31"] 56 | mov_19_inpend [label="{{19|Inside Pendulum}}" URL="https://www.youtube.com/watch?v=pV0Hh335Csg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=34"] 57 | mov_20_3csc [label="{{20|Three-Count\nShield Cast}}" URL="https://www.youtube.com/watch?v=ABQij0Zpt0U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=35"]; 58 | mov_21_gama [label="{{21|Gamma Cast\naka Gama Cast}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=39"]; 59 | } 60 | subgraph "22-28" { 61 | node [color=11, fillcolor=4] 62 | mov_22_scsquat [label="{{22|Shield Cast Squat}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=41"]; 63 | mov_23_kneelsc [label="{{23|Half-Kneeling Shield Cast}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=42"]; 64 | mov_24_sblungepull [label="{{24|Step-Back Lunge\nPullover at Top}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=44"]; 65 | mov_25_kneelbackswing [label="{{25|Half-Kneeling\nBack Position Swing}}" URL="https://www.youtube.com/watch?v=XH_HFWZQt4c"] 66 | mov_26_fbpull [label="{{26|Flat Back Pullover}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=45"]; 67 | mov_27_fbpullsit [label="{{27|Flat Back Pullover Situp}}" URL="https://www.youtube.com/watch?v=Ii2WZgl5mHA"] 68 | mov_28_sblungepullbot [label="{{28|Step-Back Lunge\nPullover at Bottom}}" URL="https://www.youtube.com/watch?v=UpY9zHuTZds"] 69 | } 70 | subgraph "29-35" { 71 | node [color=11, fillcolor=5] 72 | node [fontcolor=1] 73 | mov_29_fbpullsitpress [label="{{29|Flat Back Pullover\nSitup Press}}" URL="https://www.youtube.com/watch?v=8VL8tvinc28"] 74 | // Missing 30, could be step-back front press 75 | mov_30_sbfrontpress [label="{{30?|Step-Back Lunge\nFront Press}}"] 76 | mov_31_altshinbox [label="{{31|Balance\nAlternating Shin Box}}" URL="https://www.youtube.com/watch?v=jogIwgDj0KM"] 77 | mov_32_incirclesquat [label="{{32|Inside Circle Squat}}" URL="https://www.youtube.com/watch?v=icFHo5ufhUc"] 78 | mov_33_altshinboxfrpress [label="{{33|Alt Shinbox Front Press}}" URL="https://www.youtube.com/watch?v=D2AJzIVufeY&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=47"]; 79 | mov_34_outcirclesquat [label="{{34|Outside Circle Squat}}" URL="https://www.youtube.com/watch?v=z916C16iK54&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=49"] 80 | mov_35_sblungepullsbpress [label="{{35|Step-Back Lunge Pullover\nStep-Back Press}}" URL="https://www.youtube.com/watch?v=1cXPBXfKNhU"] 81 | } 82 | subgraph "36-42" { 83 | node [color=11, fillcolor=6] 84 | node [fontcolor=1] 85 | mov_36_squatpress [label="{{36|Squat Press}}" URL="https://www.youtube.com/watch?v=6p1niExqXSA"] 86 | mov_37_cap [label="{{37|Clean & Press}}" URL="https://www.youtube.com/watch?v=6kpEYglMJ1c"] 87 | mov_38_millprep [label="{{38|Mill Prep}}" URL="https://www.youtube.com/watch?v=G_OXuFs2bRs"] 88 | mov_39_pullsquat [label="{{39|Pullover Squat}}" URL="https://www.youtube.com/watch?v=3yf3VO2sd-4"]; 89 | mov_40_swipe [label="{{40|Technical Swipe}}" URL="https://www.youtube.com/watch?v=nQ7npb0krRg"]; 90 | mov_41_sblungepress [label="{{41|Step Back Lunge\nFront Press at Bottom}}" URL="https://www.youtube.com/watch?v=mf2dOl-QzEs"]; 91 | mov_42_kneelpull [label="{{42|Half Kneeling\nPullover}}" URL="https://www.youtube.com/watch?v=FhIn5to6NmM"]; 92 | } 93 | 94 | subgraph "43-51" { 95 | node [color=11, fillcolor=7] 96 | node [fontcolor=1] 97 | mov_43_pullsquatpress [label="{{43|Pullover Squat Press}}" URL="https://www.youtube.com/watch?v=pHjBhj7SHWo"]; 98 | mov_44_clockshoulder [label="{{44|Clockwork Shoulder}|PROTECT COLLARBONE}" URL="https://www.youtube.com/watch?v=XjaBfgQW1qw"]; 99 | mov_45_deadcleansquat [label="{{45|Dead Clean Squat}}" URL="https://www.youtube.com/watch?v=V1V6PTM5TQ0"]; 100 | } 101 | 102 | // Prerequisite skills 103 | pre_shinbox -> mov_31_altshinbox; 104 | 105 | // Between clusters 106 | 107 | mov_05_insidecircle -> mov_32_incirclesquat; 108 | mov_13_frontpress -> mov_36_squatpress; 109 | mov_13_frontpress -> mov_30_sbfrontpress; 110 | mov_03_hangsidelowtohigh -> mov_05_insidecircle; 111 | mov_04_deadclean -> mov_07_pullover; 112 | mov_04_deadclean -> mov_10_squat; 113 | mov_11_swingclean -> mov_16_outpend; 114 | mov_06_outsidecircle -> mov_16_outpend; 115 | mov_10_squat -> mov_17_stepbacklunge; 116 | mov_05_insidecircle -> mov_38_millprep; 117 | mov_09_sc -> mov_38_millprep; 118 | mov_09_sc -> mov_22_scsquat; 119 | mov_04_deadclean -> mov_05_insidecircle; 120 | mov_08_backpossidetoside -> mov_25_kneelbackswing; 121 | mov_20_3csc -> mov_23_kneelsc 122 | mov_07_pullover -> mov_39_pullsquat; 123 | {mov_11_swingclean, mov_07_pullover} -> mov_40_swipe 124 | 125 | subgraph custer_sideswing { 126 | label="Sideswing" 127 | mov_01_sidetoside -> mov_02_sideswinglowtohigh; 128 | mov_02_sideswinglowtohigh -> mov_03_hangsidelowtohigh; 129 | } 130 | 131 | subgraph custer_circles { 132 | label="Circles" 133 | mov_05_insidecircle -> mov_06_outsidecircle; 134 | mov_06_outsidecircle -> mov_18_altcircle; 135 | mov_18_altcircle -> mov_44_clockshoulder 136 | } 137 | 138 | subgraph custer_cap { 139 | label="Clean & Press" 140 | mov_04_deadclean -> mov_11_swingclean; 141 | mov_11_swingclean -> mov_13_frontpress; 142 | mov_13_frontpress -> mov_37_cap; 143 | } 144 | 145 | 146 | subgraph custer_sideswing2 { 147 | label="Sideswing 2" 148 | mov_03_hangsidelowtohigh -> mov_15_rockit 149 | mov_15_rockit -> mov_16_outpend; 150 | mov_16_outpend -> mov_19_inpend; 151 | } 152 | 153 | subgraph custer_sc { 154 | label="Shield Cast" 155 | mov_07_pullover -> mov_12_robotsc; 156 | mov_07_pullover -> mov_09_sc; 157 | mov_08_backpossidetoside -> mov_09_sc; 158 | mov_07_pullover -> mov_08_backpossidetoside; 159 | mov_12_robotsc -> mov_14_revrobotsc; 160 | mov_14_revrobotsc -> mov_09_sc; 161 | mov_09_sc -> mov_20_3csc; 162 | mov_09_sc -> mov_21_gama; 163 | } 164 | 165 | subgraph custer_squat { 166 | label="Squats" 167 | mov_32_incirclesquat -> mov_34_outcirclesquat; 168 | mov_10_squat -> mov_22_scsquat; 169 | mov_10_squat -> mov_32_incirclesquat; 170 | mov_10_squat -> mov_36_squatpress; 171 | mov_10_squat -> mov_39_pullsquat; 172 | {mov_39_pullsquat, mov_36_squatpress} -> mov_43_pullsquatpress 173 | mov_10_squat -> mov_45_deadcleansquat 174 | } 175 | 176 | subgraph custer_lunge { 177 | label="Lunge" 178 | mov_23_kneelsc -> mov_25_kneelbackswing 179 | mov_23_kneelsc -> mov_24_sblungepull; 180 | mov_30_sbfrontpress -> mov_35_sblungepullsbpress; 181 | mov_17_stepbacklunge -> mov_24_sblungepull; 182 | mov_24_sblungepull -> mov_28_sblungepullbot; 183 | mov_28_sblungepullbot -> mov_35_sblungepullsbpress; 184 | mov_30_sbfrontpress -> mov_41_sblungepress 185 | {mov_25_kneelbackswing, mov_28_sblungepullbot} -> mov_42_kneelpull 186 | } 187 | 188 | subgraph custer_getup { 189 | label="Getup" 190 | mov_26_fbpull -> mov_27_fbpullsit; 191 | mov_27_fbpullsit -> mov_29_fbpullsitpress; 192 | mov_31_altshinbox -> mov_33_altshinboxfrpress; 193 | } 194 | 195 | subgraph custer_swipe { 196 | label="Swipe" 197 | mov_40_swipe 198 | } 199 | 200 | // LAYOUT HACKS 201 | 202 | { 203 | node [style=invis] 204 | edge [style=invis] 205 | 206 | mov_34_outcirclesquat -> lay_endsquat 207 | lay_startlunge -> mov_17_stepbacklunge; 208 | mov_clockwork -> lay_endcore; 209 | lay_startss2 -> mov_15_rockit; 210 | } 211 | 212 | { rank=same; mov_06_outsidecircle; mov_07_pullover} 213 | { rank=same; mov_10_squat; mov_09_sc} 214 | { rank=same; mov_15_rockit; mov_13_frontpress} 215 | { rank=same; mov_17_stepbacklunge; mov_18_altcircle; mov_16_outpend} 216 | { rank=same; mov_19_inpend; mov_20_3csc; mov_21_gama; } 217 | { rank=same; mov_22_scsquat; mov_23_kneelsc} 218 | { rank=same; mov_26_fbpull; mov_31_altshinbox} 219 | { rank=same; mov_28_sblungepullbot; mov_30_sbfrontpress; mov_32_incirclesquat;} 220 | { rank=same; mov_34_outcirclesquat; mov_35_sblungepullsbpress; } 221 | { rank=same; mov_36_squatpress; mov_37_cap; mov_38_millprep} 222 | { rank=same; mov_29_fbpullsitpress; mov_41_sblungepress} 223 | { rank=same; mov_43_pullsquatpress; mov_45_deadcleansquat} 224 | 225 | // END LAYOUT HACKS 226 | 227 | 228 | // LEGEND 229 | 230 | { rank = sink; 231 | Legend [shape=none, margin=0, label=< 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 |
Legend
Prerequisites
First Drills
Most Advanced     
265 | >]; 266 | } 267 | } 268 | @enddot 269 | -------------------------------------------------------------------------------- /src/mace/mace_progression_sa.puml: -------------------------------------------------------------------------------- 1 | @startdot mace_progression_sa 2 | digraph mace_progression_sa { 3 | 4 | label=< 5 | Mace Skill Progression - Single-Arm

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [shape=record] 19 | node [style="rounded,filled"] 20 | node [color=12, fillcolor=11] 21 | 22 | subgraph aux { 23 | node [color=10, fillcolor=9] 24 | mov_242_outflip; mov_243_inflip 25 | mov_50_f2bxbodhipull 26 | } 27 | 28 | subgraph ext { 29 | node [color=2, fillcolor=1] 30 | ext_saorder [label="Single-arm\nOrder Position"] 31 | ext_180pull [label="180 Degree Pullover"] 32 | ext_altmill [label="Alternating sword grip mill"] 33 | ext_frswingclean [label="Front swing clean"] 34 | ext_m01_360 [label="{{M-01 |360}}"] 35 | ext_saorder -> ext_180pull 36 | } 37 | 38 | subgraph custer_war { 39 | label="Warrior stance" 40 | node [color=6, fillcolor=5] 41 | mov_33_warfrcircle -> mov_36_warbkcircle -> mov_37_waraltcircle; 42 | mov_33_warfrcircle -> mov_37_waraltcircle; 43 | mov_37_waraltcircle -> mov_39_warfrcircleflip -> mov_40_warbkcircleflip 44 | {mov_38_war180pull,mov_39_warfrcircleflip} -> mov_41_warfwdmill 45 | {mov_41_warfwdmill,mov_40_warbkcircleflip} -> mov_42_warbwdmill 46 | } 47 | 48 | subgraph custer_sifpivot { 49 | label="Step in front pivot" 50 | node [color=8, fillcolor=7] 51 | mov_43_sifpivotwincircle -> mov_44_sifpivotwoutcircle 52 | mov_43_sifpivotwincircle -> mov_45_sifpivotwflip 53 | mov_44_sifpivotwoutcircle -> mov_46_sifpivotwoutcircleflip 54 | mov_45_sifpivotwflip -> mov_46_sifpivotwoutcircleflip 55 | mov_46_sifpivotwoutcircleflip -> mov_47_sifpivotwincircleout180 56 | } 57 | 58 | subgraph custer_flair { 59 | label="Sword flair" 60 | node [color=4, fillcolor=3] 61 | {ext_180pull, mov_53_outswordflair} -> mov_55_out180pullwflair 62 | {mov_55_out180pullwflair, mov_54_inswordflair} -> mov_56_in180pullwflair 63 | {mov_55_out180pullwflair, mov_56_in180pullwflair} -> mov_57_alt180pullwflair 64 | {mov_55_out180pullwflair} -> mov_28_outflipmill 65 | {mov_56_in180pullwflair, mov_58_outswordmillwflair} -> mov_59_inswordmillwflair 66 | {ext_altmill, mov_57_alt180pullwflair, mov_59_inswordmillwflair} -> mov_60_altswordmillwflair 67 | } 68 | 69 | mov_16_saincircle [label="{{16 |Single arm\ninside circle}}" URL="https://www.youtube.com/watch?v=MSt1cYAiLzI" ] 70 | mov_17_saoutcircle [label="{{17 |Single arm\noutside circle}}" URL="https://www.youtube.com/watch?v=ZuaKcM41dP4" ] 71 | mov_18_saaltcircle [label="{{18 |Single arm\nalternating circles}}" URL="https://www.youtube.com/watch?v=XWIFyifqSr8" ] 72 | mov_19_incircle2altcoin [label="{{19 |Inside circle to\nalternate hand coin flip}}" URL="https://www.youtube.com/watch?v=opgqoNcD1Ds" ] 73 | mov_20_outcircle2altcoin [label="{{20 |Outside circle to\nalternate hand coin flip}}" URL="https://www.youtube.com/watch?v=qX0nE-3VMN0" ] 74 | mov_21_altcirclewinandoutcoin [label="{{21 |Alt circle with\ninside and outside coin flip}}" URL="https://www.youtube.com/watch?v=as46Zm9oibE" ] 75 | mov_22_incircle2sameflip [label="{{22 |Inside circle to\nsame hand flip catch}}" URL="https://www.youtube.com/watch?v=xlClTZRbmc0" ] 76 | mov_23_outcircle2sameflip [label="{{23 |Outside circle to\nsame side flip catch}}" URL="https://www.youtube.com/watch?v=UwR4uFqvUyY" ] 77 | mov_241_altcircle2sameflip [label="{{24-1|Alt circle with\nsame side flip catch}}" URL="https://www.youtube.com/watch?v=T5x3xsfHqs8" ] 78 | mov_242_outflip [label="{{24-2|Outside flip catch balance}}" URL="https://www.youtube.com/watch?v=T5x3xsfHqs8" ] 79 | 80 | mov_243_inflip [label="{{24-3|Inside flip catch balance}}" URL="https://www.youtube.com/watch?v=T5x3xsfHqs8" ] 81 | mov_25_cincirclewaltnunchuck [label="{{25 |Continuous inside circle with\nalt hand nunchuck flip}}" URL="https://www.youtube.com/watch?v=rCgrNJLsrBM" ] 82 | mov_26_coutcirclewaltflip [label="{{26 |Continous outside circle with\nalternate hand flip catch}}" URL="https://www.youtube.com/watch?v=T5lfsHi1rDY" ] 83 | mov_27_inflip180pull [label="{{27 |Inside flip catch mill with\nsword grip across the top}}" URL="https://www.youtube.com/watch?v=uFsPwnClx-M" ] 84 | mov_28_outflipmill [label="{{28 |Outside flip catch mill\naka flip catch reverse mill}}" URL="https://www.youtube.com/watch?v=jKbelC2dZVo" ]; 85 | mov_29_inmillwflip [label="{{29 |Inside mill with\nflip catch hand change}}" URL="https://www.youtube.com/watch?v=Hmk80iWQHjM" ]; 86 | mov_30_outmillwflip [label="{{30 |Outside mill with\nflip catch hand change}}" URL="https://www.youtube.com/watch?v=aIxKwvzj9Hk" ]; 87 | mov_31_frcircle [label="{{31 |Symmetrical stance\nFront Circles}}" URL="https://www.youtube.com/watch?v=ULozVN0nz_U" ]; 88 | mov_32_bkcircle [label="{{32 |Backward Circle}}" URL="https://www.youtube.com/watch?v=KSja97kaEHY" ]; 89 | mov_33_warfrcircle [label="{{33 |Warrior Stance\nFront circle}}" URL="https://www.youtube.com/watch?v=-4GMydVrlSk" ]; 90 | 91 | mov_34_altfrbkcircle [label="{{34 |Alternating front to\nback circles}}" URL="https://www.youtube.com/watch?v=MsrcRGT0YzA" ]; 92 | 93 | mov_36_warbkcircle [label="{{36 |Warrior stance\nbackward circle}}" URL="https://www.youtube.com/watch?v=ZfGdlIsWKXQ" ]; 94 | mov_37_waraltcircle [label="{{37 |Warrior stance\nalternating circles}}" URL="https://www.youtube.com/watch?v=h_wcGKGlCus" ]; 95 | mov_38_war180pull [label="{{38 |Warrior stance\n180 degree rotating pullover\nfrom sword grip}}" URL="https://www.youtube.com/watch?v=P5lbQmeVZn8" ]; 96 | mov_39_warfrcircleflip [label="{{39 |Warrior stance\nfront circle flip catch}}" URL="https://www.youtube.com/watch?v=8hvIwt9EshQ" ]; 97 | mov_40_warbkcircleflip [label="{{40 |Warrior stance\nbackward circle to\nflip catch}}" URL="https://www.youtube.com/watch?v=Eb5Ci22BqmI" ]; 98 | mov_41_warfwdmill [label="{{41 |Warrior stance\nforward mill}}" URL="https://www.youtube.com/watch?v=ydXgS363htk" ]; 99 | mov_42_warbwdmill [label="{{42 |Warrior stance\nbackward mill}}" URL="https://www.youtube.com/watch?v=HaQqkf-cSHE" ]; 100 | mov_43_sifpivotwincircle [label="{{43 |Step in front pivot with\ninside circle}}" URL="https://www.youtube.com/watch?v=i2Zj4t-uIB8" ]; 101 | 102 | mov_44_sifpivotwoutcircle [label="{{44 |Forward pivot step with\noutside circle}}" URL="https://www.youtube.com/watch?v=VqW8JavN1g4" ]; 103 | mov_45_sifpivotwflip [label="{{45 |Inside stepping pivot with\ncoin flip and nunchuck return}}" URL="https://www.youtube.com/watch?v=vU-BHGVejhs" ]; 104 | mov_46_sifpivotwoutcircleflip [label="{{46 |Inside stepping pivot with\noutside circle coin flip}}" URL="https://www.youtube.com/watch?v=YSHMJu7VWkg" ]; 105 | mov_47_sifpivotwincircleout180 [label="{{47 |Inside front step pivot with\ninside circle and\noutside 180 degree mill top}}" URL="https://www.youtube.com/watch?v=zuen0CLdwMU" ]; 106 | mov_48_frspear [label="{{48 |Front spear catch}}" URL="https://www.youtube.com/watch?v=hwQlmjHQsrg" ]; 107 | mov_49_frspearwchange [label="{{49 |Front spear catch with\ndescending side change}}" URL="https://www.youtube.com/watch?v=xzPiZZV2K4E" ]; 108 | mov_50_f2bxbodhipull [label="{{50 |Front to back\ncross-body high pull}}" URL="https://www.youtube.com/watch?v=AoUxg7QE-xU" ]; 109 | mov_51_xbodspear [label="{{51 |Cross-body\nspear catch isolations}}" URL="https://www.youtube.com/watch?v=VkwN58PBBSs" ]; 110 | mov_52_altxbodspear [label="{{52 |Cross-body\nspear catch\nalternating sides}}" URL="https://www.youtube.com/watch?v=-Z8YfWYfepQ" ]; 111 | mov_53_outswordflair [label="{{53 |Outside sword flair}}" URL="https://www.youtube.com/watch?v=HxItsGvz-e4" ]; 112 | 113 | mov_54_inswordflair [label="{{54 |Inside tip away\nsword flair}}" URL="https://www.youtube.com/watch?v=8I7KaLuNaEs" ]; 114 | mov_55_out180pullwflair [label="{{55 |Outside\n180 degree pullover with\nsword flair}}" URL="https://www.youtube.com/watch?v=hh3393-eXrs" ]; 115 | mov_56_in180pullwflair [label="{{56 |Inside\n180 degree pullover with\nsword flair}}" URL="https://www.youtube.com/watch?v=Sqw6YyBTgOQ" ]; 116 | mov_57_alt180pullwflair [label="{{57 |Inside & outside\n180 degree pullover with\nsword flairs}}" URL="https://www.youtube.com/watch?v=XriSUPQ4Ql4" ]; 117 | mov_58_outswordmillwflair [label="{{58 |Outside sword grip mill with\ntip-away sword flair}}" URL="https://www.youtube.com/watch?v=bKldH_In6SI" ]; 118 | mov_59_inswordmillwflair [label="{{59 |Inside sword grip mill with\ninside sword flair}}" URL="https://www.youtube.com/watch?v=uMLwGxhbt2Y" ]; 119 | mov_60_altswordmillwflair [label="{{60 |Alternating\nsword grip mill with\nsword flairs}}" URL="https://www.youtube.com/watch?v=_GBln0VGekg" ]; 120 | mov_61_clockupper2180outpull [label="{{61 |Front clockwork\nupper cut to\n180 degree outside pullover}}" URL="https://www.youtube.com/watch?v=XP7abuBs_V0" ]; 121 | mov_62_clockupper2180outwflair [label="{{62 |Clockwork uppercut to\noutside rotating 180 +\ntip away sword flair}}" URL="https://www.youtube.com/watch?v=VjnRZIYV2H8" ]; 122 | mov_63_clockupperwsasc [label="{{63 |Clockwork uppercut +\nsingle arm shield cast}}" URL="https://www.youtube.com/watch?v=FQFBXlIjcDo" ]; 123 | mov_64_altclockupperw360 [label="{{64 |Alternating\nclockwork uppercut with\ntwo-hand 360 shield cast}}" URL="https://www.youtube.com/watch?v=uE1DaKTf6SI" ]; 124 | 125 | // Precursor 126 | ext_180pull -> mov_27_inflip180pull 127 | ext_saorder -> mov_53_outswordflair -> mov_54_inswordflair 128 | 129 | // Core standing movements 130 | subgraph custer_symmetric { 131 | label="Isolated symmetric stance" 132 | mov_16_saincircle -> mov_17_saoutcircle; 133 | mov_16_saincircle -> mov_19_incircle2altcoin 134 | mov_17_saoutcircle -> mov_20_outcircle2altcoin 135 | mov_16_saincircle -> mov_22_incircle2sameflip 136 | mov_17_saoutcircle -> mov_23_outcircle2sameflip 137 | } 138 | // Connections from isolated symmetric to integrated 139 | mov_17_saoutcircle -> mov_18_saaltcircle; 140 | mov_19_incircle2altcoin -> mov_25_cincirclewaltnunchuck 141 | mov_23_outcircle2sameflip -> mov_26_coutcirclewaltflip 142 | mov_20_outcircle2altcoin -> mov_21_altcirclewinandoutcoin 143 | mov_23_outcircle2sameflip -> mov_241_altcircle2sameflip 144 | mov_22_incircle2sameflip -> mov_27_inflip180pull 145 | mov_23_outcircle2sameflip -> mov_28_outflipmill 146 | subgraph custer_symmetric2 { 147 | label="Integrated symmetric stance" 148 | mov_26_coutcirclewaltflip 149 | mov_25_cincirclewaltnunchuck 150 | mov_18_saaltcircle -> mov_21_altcirclewinandoutcoin 151 | {mov_242_outflip; mov_243_inflip} -> mov_241_altcircle2sameflip; 152 | mov_18_saaltcircle -> mov_241_altcircle2sameflip 153 | mov_27_inflip180pull -> mov_29_inmillwflip 154 | mov_27_inflip180pull -> mov_28_outflipmill 155 | {mov_27_inflip180pull, mov_28_outflipmill} -> ext_altmill 156 | {mov_28_outflipmill, mov_29_inmillwflip} -> mov_30_outmillwflip 157 | } 158 | 159 | // Precursor to warrior stance 160 | subgraph custer_frbk { 161 | label="Front & Back Circles" 162 | mov_16_saincircle -> mov_31_frcircle -> mov_32_bkcircle -> mov_34_altfrbkcircle; 163 | mov_17_saoutcircle -> mov_32_bkcircle; 164 | mov_31_frcircle -> mov_34_altfrbkcircle; 165 | } 166 | 167 | // Warrior stance connections 168 | mov_32_bkcircle -> mov_33_warfrcircle 169 | ext_180pull -> mov_38_war180pull 170 | mov_22_incircle2sameflip -> mov_39_warfrcircleflip 171 | mov_23_outcircle2sameflip -> mov_40_warbkcircleflip 172 | mov_27_inflip180pull -> mov_41_warfwdmill 173 | mov_28_outflipmill -> mov_42_warbwdmill 174 | 175 | // Step in front pivot connections 176 | mov_16_saincircle -> mov_43_sifpivotwincircle 177 | mov_17_saoutcircle -> mov_44_sifpivotwoutcircle 178 | mov_27_inflip180pull -> mov_47_sifpivotwincircleout180 179 | 180 | mov_27_inflip180pull ->mov_59_inswordmillwflair 181 | 182 | subgraph custer_spear { 183 | label="Spear catch" 184 | ext_frswingclean -> mov_48_frspear -> mov_49_frspearwchange -> mov_50_f2bxbodhipull -> mov_51_xbodspear -> mov_52_altxbodspear 185 | } 186 | 187 | // Clockwork uppercut 188 | {ext_180pull} -> mov_61_clockupper2180outpull 189 | {mov_55_out180pullwflair, mov_61_clockupper2180outpull} -> mov_62_clockupper2180outwflair 190 | {mov_62_clockupper2180outwflair} -> mov_63_clockupperwsasc 191 | {ext_m01_360, mov_63_clockupperwsasc} -> mov_64_altclockupperw360 192 | 193 | // Rank hacks 194 | {rank=same;mov_23_outcircle2sameflip;mov_36_warbkcircle} 195 | {rank=same;mov_56_in180pullwflair,mov_61_clockupper2180outpull} 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | // LAYOUT HACKS 204 | 205 | { 206 | node [style=invis] 207 | edge [style=invis] 208 | 209 | mov_15_3602bar2sq -> lay_end2h -> mov_16_saincircle 210 | } 211 | 212 | 213 | 214 | // END LAYOUT HACKS 215 | 216 | { rank = sink; 217 | Legend [shape=none, margin=0, label=< 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 |
Legend
Prerequisites and next steps     
Symmetric Stance
Sword Flair
Warrior Stance
Step in front pivot
Learning drills
247 | >]; 248 | } 249 | } 250 | @enddot 251 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # wildman-skill-trees 2 | 3 | How to learn Kettlebells, Clubs, and Maces the Wildman way, visualised. 4 | 5 | [Mark Wildman][4] is the best online coach I know, and has shared vast amounts of his knowledge and experience with Kettlebells, Clubs and Maces via [YouTube][MWYT] and [Instagram][MWIG]. In particular, he has shared his personal approach to teaching these tools, and building towards complex movements and skills. 6 | 7 | This is my humble attempt to coalesce this semi-implicit knowledge into structures that fit my brain. This can be considered a fan work, in that these diagrams contain as little innovation or deviation from Wildman's guidance as possible. They are shared in the hopes that they might also be useful to you. 8 | 9 | [4]: https://www.wildmanathletica.com/ 10 | [MWYT]: https://www.youtube.com/@MarkWildman 11 | [MWIG]: https://www.instagram.com/wildmanathletica/ 12 | 13 | ### Features 14 | 15 | - Skill progressions arranged into progressive tree structure. 16 | - Use of GraphViz allows easy extension and remixing. 17 | - Includes links back to Wildman videos and playlists with full instructions. 18 | - Bootstrap programs for incrementally learning and practicing new skills **[Experimental!]** 19 | - Full CSV lists of sequences, useful for your own experiments 20 | 21 | ### Limitations 22 | 23 | - Movement is infinitely complex, these models are not. Legibility has been preferred over strict accuracy. 24 | - Mark is constantly publishing new material, and these diagrams are likely to fall out of date. 25 | - The URL links to each video will only be present on SVG renderings. 26 | You can open a downloaded SVG diagram directly in most browsers. 27 | 28 | ### Possible Uses 29 | 30 | - Coaches planning a curriculum for student athletes. 31 | - Self-teaching guide. 32 | - Near-endless drill variations to freshen a program. 33 | 34 | ## Table of Contents 35 | 36 | - [The Diagrams](#the-diagrams) 37 | - [Kettlebell Basic Skill Progression](#kettlebell-basic-skill-progression) 38 | - [Two-Handed Heavy Club Skill Progression](#two-handed-heavy-club-skill-progression) 39 | - [Single-Arm Heavy Club Skill Progression](#single-arm-heavy-club-skill-progression) 40 | - [Mace Progression](#mace-progression) 41 | - [Bootstrap Programs](#bootstrap-programs) - *Experimental* 42 | - [Kettlebell Bootstrap Program](#kettlebell-bootstrap-program) 43 | - [Two-Handed Heavy Club Bootstrap Program](#two-handed-heavy-club-bootstrap-program) 44 | - [Sequence Lists](#sequence-lists) 45 | - [Contributing](#contributing) 46 | - [License](#License) 47 | 48 | ## The Diagrams ## 49 | 50 | The format includes the Wildman index order of recommended progression, the Wildman name for the drill (and alternative common names), and an optional field that notes the key idea or skill that should be established by the drill before moving onto more complex drills. 51 | 52 | For the SVG version of the diagrams, links to the video and the playlist it belongs to have been included where possible. Save the SVG locally and open it in a web browser to take advantage of its scalability and links. 53 | 54 | For size considerations, we do not store the PNG versions in the repo directly, but do offer [recent releases](/releases) that include PNG renders. 55 | 56 | ### Kettlebell Basic Skill Progression ### 57 | 58 | The Kettlebell skill tree can be viewed in a single diagram or broken down into four parts (scroll below the full progression to view the parts). 59 | 60 | Here is the full progression, to the best of my abilities. It's quite a lot to take in all at once. 61 | 62 | | Source | SVG | 63 | |------- | --- | 64 | | [`/src/kb/kb_progression_ALL.puml`](/src/kb/kb_progression_ALL.puml) | [`/dist/kb_progression_ALL.svg`](/dist/kb_progression_ALL.svg) | 65 | 66 | ![Tree of every kettlebell drill, arranged in order of learning.](/dist/kb_progression_ALL.svg) 67 | 68 | Because any single diagram will eventually become too complicated to use, I am breaking the KB Basic Skill progression into roughly the order presented, organised by theme (and whim). 69 | 70 | **Part 1, Covers #1 to #23** 71 | 72 | Covers Wildman's Kettlebell Basic Instruction from #1 to #23. 73 | 74 | I have chosen to colour the drills that are specifically highlighted as useful warmup movements (orange), and what I call 'auxiliary' drills that are unlikely to be included in workouts long-term after the core idea has been digested. 75 | 76 | | Source | SVG | 77 | |------- | --- | 78 | | [`/src/kb/kb_progression_1.puml`](/src/kb/kb_progression_1.puml) | [`/dist/kb_progression_1.svg`](/dist/kb_progression_1.svg) | 79 | 80 | ![Tree of kettlebell drills, arranged in order of learning.](/dist/kb_progression_1.svg) 81 | 82 | 83 | **Part 2, Covers #24 to #38, and #42 (TGU)** 84 | 85 | Once the basics have been established, Wildman moves into developing the precursor skills for the Turkish Get-Up and Turkish Get-Down. Wildman prefers to alternate between the getup and getdown lessons to keep it fresh. 86 | 87 | | Source | SVG | 88 | |------- | --- | 89 | | [`/src/kb/kb_progression_2_tgu.puml`](/src/kb/kb_progression_2_tgu.puml) | [`/dist/kb_progression_2_tgu.svg`](/dist/kb_progression_2_tgu.svg) | 90 | 91 | ![Tree of kettlebell drills for TGU skills, arranged in order of learning.](/dist/kb_progression_2_tgu.svg) 92 | 93 | **Part 3** 94 | 95 | Covers #39 to #55, as well as a cheeky #72, the Deck Squat. This is mostly related to improving squat and getup technique, with a sidebar for performance with the Push Press and Thruster. 96 | 97 | | Source | SVG | 98 | |------- | --- | 99 | | [`/src/kb/kb_progression_3.puml`](/src/kb/kb_progression_3.puml) | [`/dist/kb_progression_3.svg`](/dist/kb_progression_3.svg) | 100 | 101 | ![Tree of kettlebell drills for further skills, arranged in order of learning.](/dist/kb_progression_3.svg) 102 | 103 | **Part 4** 104 | 105 | Covers #56 to #73, minus the Deck Squat. Here, the snatch is developed, as well as a range of double KB drills. 106 | 107 | | Source | SVG | 108 | |------- | --- | 109 | | [`/src/kb/kb_progression_4.puml`](/src/kb/kb_progression_4.puml) | [`/dist/kb_progression_4.svg`](/dist/kb_progression_4.svg) | 110 | 111 | ![Tree of kettlebell drills for further skills, arranged in order of learning.](/dist/kb_progression_4.svg) 112 | 113 | ### Two-Handed Heavy Club Skill Progression ### 114 | 115 | Here, we've grouped the sequenced drills into logical clusters, not quite the Seven movements that Wildman speaks of. I've excluded the unsequenced drills for simplicity. 116 | 117 | | Source | SVG | 118 | |------- | --- | 119 | | [`/src/hc/hc_2h_progression_ALL.puml`](/src/hc/hc_2h_progression_ALL.puml) | [`/dist/hc_2h_progression_ALL.svg`](/dist/hc_2h_progression_ALL.svg) | 120 | 121 | ![Tree of two-hand heavy club drills, arranged to highlight sequence.](/dist/hc_2h_progression_ALL.svg) 122 | 123 | **First Steps** 124 | 125 | In this diagram we focus on the drills of the first part of the progression, to make it simpler to get started from scratch. 126 | 127 | | Source | SVG | 128 | |------- | --- | 129 | | [`/src/hc/hc_2h_progression_1.puml`](/src/hc/hc_2h_progression_1.puml) | [`/dist/hc_2h_progression_1.svg`](/dist/hc_2h_progression_1.svg) | 130 | 131 | ![Tree of two-hand heavy club drills, arranged in order of learning.](/dist/hc_2h_progression_1.svg) 132 | 133 | **ALT View** 134 | 135 | I'm experimenting with an alternative view of the full 2HHC graph with the following decisions: 136 | 137 | - Colour gradient from light yellow to dark green to indicate where in the sequence the drill falls 138 | - Remove unsequenced drills, simplified dependencies 139 | - Simplified vertical layout focused on grouping layers together 140 | 141 | | Source | SVG | 142 | |------- | --- | 143 | | [`/src/hc/hc_2h_progression_ALT.puml`](/src/hc/hc_2h_progression_ALT.puml) | [`/dist/hc_2h_progression_ALT.svg`](/dist/hc_2h_progression_ALT.svg) | 144 | 145 | ![Tree of two-hand heavy club drills, arranged to highlight sequence.](/dist/hc_2h_progression_ALT.svg) 146 | 147 | ### Single-Arm Heavy Club Skill Progression ### 148 | 149 | Single-arm Heavy Club is generally developed *after* two-handed heavy club so that the athlete learns to rotate their body correctly. As such, the precursor two-handed skills are included in green to indicate how single-arm heavy club proceeds from them. 150 | 151 | | Source | SVG | 152 | |------- | --- | 153 | | [`/src/hc/hc_sa_progression.puml`](/src/hc/hc_sa_progression.puml) | [`/dist/hc_sa_progression.svg`](/dist/hc_sa_progression.svg) | 154 | 155 | ![Tree of single-arm Heavy Club drills, arranged in order of learning.](/dist/hc_sa_progression.svg) 156 | 157 | ### Mace Progression ### 158 | 159 | This steel mace/macebell progression is a WIP, currently covering ~30 movements of a listed 107. Because this was the first attempt at sequencing that MW put out, it's a bit different from the rest: 160 | 161 | - Many videos cover multiple variations on a movement; in these cases we use XX-X to indicate index + variation. 162 | - The focus rapidly moves to building complex, integrated movements 163 | - Both single hand and two-handed movements are covered in the same sequence 164 | 165 | | Source | SVG | 166 | |------- | --- | 167 | | [`/src/mace/mace_progression_ALL.puml`](/src/mace/mace_progression_ALL.puml) | [`/dist/mace_progression_ALL.svg`](/dist/mace_progression_ALL.svg) | 168 | 169 | ![Tree of mace drills, arranged in order of complexity.](/dist/mace_progression_ALL.svg) 170 | 171 | **Single Arm** 172 | 173 | Once stance changes are added, the single-arm movements start to warrant their own diagram. Here we are experimenting with grouping by non-standing stance - it makes the diagram less pretty but maybe helps with clarity. 174 | 175 | | Source | SVG | 176 | |------- | --- | 177 | | [`/src/mace/mace_progression_sa.puml`](/src/mace/mace_progression_sa.puml) | [`/dist/mace_progression_sa.svg`](/dist/mace_progression_sa.svg) | 178 | 179 | ![Tree of single-arm mace drills, arranged in order of complexity.](/dist/mace_progression_sa.svg) 180 | 181 | **Warrior Stance Sub-Sequence** 182 | 183 | As an experiment, I've broken out the warrior stance mace movements into their own sub-sequence in order make this particular set more legible. 184 | 185 | | Source | SVG | 186 | |------- | --- | 187 | | [`/src/mace/mace_warrior_subsequence.puml`](/src/mace/mace_warrior_subsequence.puml) | [`/dist/mace_warrior_subsequence.svg`](/dist/mace_warrior_subsequence.svg) | 188 | 189 | ![Tree of mace drills related to warrior stance.](/dist/mace_warrior_subsequence.svg) 190 | 191 | ## Bootstrap Programs ## 192 | 193 | Using the skill progression sequences, I've built a couple of experimental programs that one could use to start from scratch with kettlebells or heavy clubs and develop confidence as one learns increasingly complex skills. 194 | 195 | The focus is not on increasing work capacity. While they are (light) real workouts, the idea is to complete the program ready to begin something like MW's Mill Squat program or the Wildfan Free 2H club program. 196 | 197 | The programs are arranged in "levels" based on consecutive blocks of the sequenced drills for each tool, and I am using the [level interlacing idea][interlace] MW presents for his Slam Ball program to approximate a progressive wave of difficulty. 198 | 199 | [interlace]: https://www.youtube.com/watch?v=YarJh0UW7-0 200 | 201 | **Caveats and Disclaimers:** 202 | 203 | - This is currently a WIP and being actively tested. The programs may have major flaws and need drastic changes. 204 | - No warranty, express or implied, is offered by yours truly. 205 | - Because this is still an experiment, only the bare minimum of formatting has been applied to the Excel spreadsheets. No manual is provided, so it might take a minute to orient yourself. 206 | 207 | That said, guinea pigs are more than welcome to assist in proving out the concept with me. If you *do* try out these ideas, please find me on the [Wildfan Discord][wildfan] and let me know how it goes! 208 | 209 | [wildfan]: https://discord.com/invite/Fv7QF6DQ4g 210 | 211 | ### Kettlebell Bootstrap Program ### 212 | 213 | Because of the incremental nature of this idea, the early workouts cannot be described as "full-body", focusing instead on the core movements that might add the most to anyone's existing practice. 214 | 215 | The KB program starts its **Level 1** with warmups and the two-handed swing and then begins to alternate with **Level 2**'s introduction to the Clean and Overhead Press (as separate drills). **Level 3** introduces the combined Clean & Press and four Squat variations, allowing us to model the AB program of MW's first [Tetris of Training][ToT] video. A proposed **Level 4** would then move onto Turkish Getup preparatory movements. 216 | 217 | Rep count is used as a rough guide to track increased work volume over the program. Multiply this by weight to track work capacity. 218 | 219 | [ToT]: https://www.youtube.com/watch?v=sAcBo4H__hE 220 | 221 | Download the program as a spreadsheet here: [`/src/kb/kb_bootstrap_program.xlsx`](/src/kb/kb_bootstrap_program.xlsx) 222 | 223 | ### Two-Handed Heavy Club Bootstrap Program ## 224 | 225 | The key organising idea for the heavy club program is for every workout to cover as much of seven movement families as possible: squat, side swing, clean & press, lunge, mill, swipe, and getup. 226 | 227 | Drills are performed for Time Under Tension, 30 seconds of activity followed by 30 seconds of rest, repeated for two rounds, leading to a workout of between 8 to 12 minutes. 228 | 229 | Download the program as a spreadsheet here: [`/src/hc/2hhc_bootstrap_program.xlsx`](/src/hc/2hhc_bootstrap_program.xlsx) 230 | 231 | ## Sequence Lists ## 232 | 233 | In order to keep track of the totality of the movements, I have created structured lists that one could import as a spreadsheet or use in a script or... whatever. I offer this - as-is - as a kind of bonus feature for other nerds who might want to build upon my work. 234 | 235 | Each row contains, at a minimum: 236 | - `ID` - index ID of the movement e.g. `2HHC-25` 237 | - `Graph_Name` - Programmatic handle e.g. `mov_25_mill` 238 | - `Label` - Text label (with line breaks) 239 | - `URL` - This may contain standalone or playlist links but by default should be standalone. 240 | 241 | Some contain additional fields that may or may not be useful to you. These are easy to strip using Excel or Libre Calc. 242 | 243 | | Sequence | File | 244 | |------- | --- | 245 | | Kettlebell | [`/src/kb/kb_progression.csv`](/src/kb/kb_progression.csv) | 246 | | Two-handed Heavy Club | [`/src/hc/hc_2h_progression.csv`](/src/hc/hc_2h_progression.csv) | 247 | | Single-arm Heavy Club | [`/src/hc/hc_sa_drills.csv`](/src/hc/hc_sa_drills.csv)| 248 | | Mace | [`/src/mace/mace_progression.csv`](/src/mace/mace_progression.csv) | 249 | 250 | If you use these for your own project, do let me know! 251 | 252 | ## Contributing ## 253 | 254 | The diagrams are created using GraphViz's Dot language as supported by the [PlantUML toolset][2]. Dot supports [many image formats][1] and this is also true of the [PlantUML wrapper][7], so if the existing built formats do not suit, it should be easy to render the diagrams into your format of choice. 255 | 256 | The reason for PlantUML rather than straight GraphViz is the prevalence of good PlantUML tool integration with tools like VS Code. 257 | 258 | [1]: https://graphviz.org/docs/outputs/ 259 | [2]: https://plantuml.com/dot 260 | [7]: https://plantuml.com/command-line 261 | 262 | ### Building ### 263 | 264 | I use the Powershell build automation tool, [psake], to run PlantUML render steps. 265 | 266 | [psake]: https://github.com/psake/psake/tree/master 267 | 268 | ```ps1 269 | > Invoke-Psake .\psakefile.ps1 270 | ``` 271 | 272 | The following top-level targets are currently available: 273 | 274 | - `Quick` - Only build SVG diagrams (default) 275 | - `Full` - Build everything for release 276 | - `Clean` - Delete all files from Dist directory 277 | 278 | To see the full list of tasks, run the docs command: 279 | 280 | ```ps1 281 | > Invoke-Psake -docs .\psakefile.ps1 282 | ``` 283 | 284 | Additional/alternative formats can be rendered by overriding the `$OutputFormats` property: 285 | 286 | ```ps1 287 | > Invoke-Psake .\psakefile.ps1 -properties @{"OutputFormats"=@("svg","png")} 288 | ``` 289 | 290 | ## License 291 | 292 | `wildman-skill-trees` © 2023- is licensed under [CC BY-NC-SA 4.0]. 293 | 294 | [CC BY-NC-SA 4.0]: http://creativecommons.org/licenses/by-nc-sa/4.0/ 295 | 296 | For full terms, see the [LICENSE](LICENSE.txt) file. 297 | -------------------------------------------------------------------------------- /src/hc/hc_2h_progression_ALL.puml: -------------------------------------------------------------------------------- 1 | @startdot 2 | digraph HC2H { 3 | 4 | label=< 5 | Two-Handed Heavy Club Skill Progression - ALL

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [fontname="Helvetica,Arial,sans-serif"] 19 | node [shape=record,style="rounded,filled"] 20 | edge [fontname="Helvetica,Arial,sans-serif"] 21 | node [color=2, fillcolor=3]; 22 | 23 | subgraph "primary" { 24 | node [color=12, fillcolor=11] 25 | 26 | mov_09_sc; mov_07_pullover; mov_05_insidecircle; 27 | mov_06_outsidecircle; mov_10_squat; mov_19_inpend; 28 | mov_16_outpend; mov_17_stepbacklunge; mov_21_gama; 29 | mov_37_cap; mov_18_altcircle; 30 | mov_40_swipe; 31 | } 32 | subgraph "secondary" { 33 | node [color=8, fillcolor=7] 34 | // Clean & Press 35 | mov_04_deadclean; mov_11_swingclean; mov_13_frontpress; 36 | // Side Swing 37 | mov_01_sidetoside; mov_02_sideswinglowtohigh; mov_03_hangsidelowtohigh; mov_15_rockit; 38 | // Shield Cast 39 | mov_08_backpossidetoside; mov_22_scsquat 40 | // Mill 41 | mov_38_millprep; mov_44_clockshoulder; 42 | // Getups 43 | mov_31_altshinbox; mov_33_altshinboxfrpress; mov_26_fbpull; mov_27_fbpullsit; mov_29_fbpullsitpress 44 | // Squat 45 | mov_32_incirclesquat; mov_34_outcirclesquat; mov_36_squatpress; mov_39_pullsquat; mov_43_pullsquatpress; mov_45_deadcleansquat 46 | // Lunge 47 | mov_23_kneelsc; mov_25_kneelbackswing; mov_24_sblungepull; mov_28_sblungepullbot; mov_30_sbfrontpress; mov_35_sblungepullsbpress; mov_41_sblungepress; mov_42_kneelpull 48 | } 49 | 50 | subgraph "prereq" { 51 | node [color=2, fillcolor=1] 52 | node [shape=record,style="rounded,filled"] 53 | pre_deadlift [label="Deadlift Position"] 54 | pre_shouldercatch [label="Shoulder Catch\nHand Change"] 55 | pre_shinbox [label="{{BW|Shinbox}}"] 56 | } 57 | 58 | subgraph "extra" { 59 | node [color=6, fillcolor=5] 60 | ' mov_pulloversquat; mov_clockwork; mov_clockworksquat; 61 | ' mov_clockworkstepbacklunge; mov_altpendulum; mov_altmill 62 | } 63 | 64 | subgraph "aux" { 65 | node [color=10, fillcolor=9]; 66 | mov_12_robotsc; mov_14_revrobotsc; mov_20_3csc 67 | } 68 | 69 | // Heavy Club Sequence 70 | mov_01_sidetoside [label="{{01|Side to Side\nSwing}|ELBOWS LOCKED}" URL="https://www.youtube.com/watch?v=LMau5vr7qx4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds"] 71 | mov_02_sideswinglowtohigh [label="{{02|Side Swing\nLow to High}}" URL="https://www.youtube.com/watch?v=NoZCHTlmrCg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=2"] 72 | mov_03_hangsidelowtohigh [label="{{03|Hang Side Swing\nLow to High}|LEG DRIVE & HIP SNAP}" URL="https://www.youtube.com/watch?v=RD1zOWaTjhQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=3"] 73 | mov_04_deadclean [label="{{04|Dead Clean}|ORDER POSITION}" URL="https://www.youtube.com/watch?v=69RGME9RTcY&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=4"] 74 | mov_05_insidecircle [label="{{05|Inside Circle}}" URL="https://www.youtube.com/watch?v=Mh6iWcLbE3k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=5"]; 75 | mov_06_outsidecircle [label="{{06|Outside Circle}}" URL="https://www.youtube.com/watch?v=QzMzCal-MYM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=6"]; 76 | mov_07_pullover [label="{{07|Pullover}|CLUB BEHIND HEAD}" URL="https://www.youtube.com/watch?v=jpIn1Sumg78&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=7"] 77 | mov_08_backpossidetoside [label="{{08|Back Position\nSide to Side Swing}|SWING BEHIND HEAD}" URL="https://www.youtube.com/watch?v=GKwGiB2UwyM&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=8"] 78 | mov_09_sc [label="{{09|Shield Cast}}" URL="https://www.youtube.com/watch?v=W-iHvrjn72k&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=9"]; 79 | mov_10_squat [label="{{10|Balance Squat}}" URL="https://www.youtube.com/watch?v=LSXticZ67Pw&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=11"] 80 | mov_11_swingclean [label="{{11|Swing Clean}|DECELERATE WEIGHT}" URL="https://www.youtube.com/watch?v=0oRuCQOkPRo&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=12"] 81 | mov_12_robotsc [label="{{12|Robot Shield Cast}}" URL="https://www.youtube.com/watch?v=LDGi_lmzGR8&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=13"]; 82 | mov_13_frontpress [label="{{13|Front Press}}" URL="https://www.youtube.com/watch?v=HBRWtm3tTp4&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=15"] 83 | mov_14_revrobotsc [label="{{14|Reverse Robot\nShield Cast}}" URL="https://www.youtube.com/watch?v=Fun_Lscq5go&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=23"]; 84 | mov_15_rockit [label="{{15|Side to Side\nRockit}}" URL="https://www.youtube.com/watch?v=4gvF-gARAIs&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=24"] 85 | mov_16_outpend [label="{{16|Outside Pendulum\n(aka Outside Hang\nPower Clean)}}" URL="https://www.youtube.com/watch?v=SRNTrFvHgz0&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=25"] 86 | mov_17_stepbacklunge [label="{{17|Balance Step\nBack Lunge}}" URL="https://www.youtube.com/watch?v=dNrYT5iU7BQ&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=26"] 87 | mov_18_altcircle [label="{{18|Alternating Circle}|DECELERATE &\nCHANGE DIRECTION}" URL="https://www.youtube.com/watch?v=ukkrHxGTGtI&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=31"] 88 | mov_19_inpend [label="{{19|Inside Pendulum}}" URL="https://www.youtube.com/watch?v=pV0Hh335Csg&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=34"] 89 | mov_20_3csc [label="{{20|Three-Count\nShield Cast}}" URL="https://www.youtube.com/watch?v=ABQij0Zpt0U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=35"]; 90 | mov_21_gama [label="{{21|Gamma Cast\naka Gama Cast}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=39"]; 91 | mov_22_scsquat [label="{{22|Shield Cast Squat}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=41"]; 92 | mov_23_kneelsc [label="{{23|Half-Kneeling Shield Cast}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=42"]; 93 | mov_24_sblungepull [label="{{24|Step-Back Lunge\nPullover at Top}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=44"]; 94 | mov_25_kneelbackswing [label="{{25|Half-Kneeling\nBack Position Swing}}" URL="https://www.youtube.com/watch?v=XH_HFWZQt4c"] 95 | mov_26_fbpull [label="{{26|Flat Back Pullover}}" URL="https://www.youtube.com/watch?v=yHIEZN0Nl_U&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=45"]; 96 | mov_27_fbpullsit [label="{{27|Flat Back Pullover Situp}}" URL="https://www.youtube.com/watch?v=Ii2WZgl5mHA"] 97 | mov_28_sblungepullbot [label="{{28|Step-Back Lunge\nPullover at Bottom}}" URL="https://www.youtube.com/watch?v=UpY9zHuTZds"] 98 | mov_29_fbpullsitpress [label="{{29|Flat Back Pullover\nSitup Press}}" URL="https://www.youtube.com/watch?v=8VL8tvinc28"] 99 | // Missing 30, could be step-back front press 100 | mov_30_sbfrontpress [label="{{30?|Step-Back Lunge\nFront Press}}"] 101 | mov_31_altshinbox [label="{{31|Balance\nAlternating Shin Box}}" URL="https://www.youtube.com/watch?v=jogIwgDj0KM"] 102 | mov_32_incirclesquat [label="{{32|Inside Circle Squat}}" URL="https://www.youtube.com/watch?v=icFHo5ufhUc"] 103 | mov_33_altshinboxfrpress [label="{{33|Alt Shinbox Front Press}}" URL="https://www.youtube.com/watch?v=D2AJzIVufeY&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=47"]; 104 | mov_34_outcirclesquat [label="{{34|Outside Circle Squat}}" URL="https://www.youtube.com/watch?v=z916C16iK54&list=PLk4oYPJ7TXKiueHS7UMPv-DxNMK6UELds&index=49"] 105 | mov_35_sblungepullsbpress [label="{{35|Step-Back Lunge Pullover\nStep-Back Press}}" URL="https://www.youtube.com/watch?v=1cXPBXfKNhU"] 106 | mov_36_squatpress [label="{{36|Squat Press}}" URL="https://www.youtube.com/watch?v=6p1niExqXSA"] 107 | mov_37_cap [label="{{37|Clean & Press}}" URL="https://www.youtube.com/watch?v=6kpEYglMJ1c"] 108 | mov_38_millprep [label="{{38|Mill Prep}}" URL="https://www.youtube.com/watch?v=G_OXuFs2bRs"] 109 | mov_39_pullsquat [label="{{39|Pullover Squat}}" URL="https://www.youtube.com/watch?v=3yf3VO2sd-4"]; 110 | mov_40_swipe [label="{{40|Technical Swipe}}" URL="https://www.youtube.com/watch?v=nQ7npb0krRg"]; 111 | mov_41_sblungepress [label="{{41|Step Back Lunge\nFront Press at Bottom}}" URL="https://www.youtube.com/watch?v=mf2dOl-QzEs"]; 112 | mov_42_kneelpull [label="{{42|Half Kneeling\nPullover}}" URL="https://www.youtube.com/watch?v=FhIn5to6NmM"]; 113 | mov_43_pullsquatpress [label="{{43|Pullover Squat Press}}" URL="https://www.youtube.com/watch?v=pHjBhj7SHWo"]; 114 | mov_44_clockshoulder [label="{{44|Clockwork Shoulder}|PROTECT COLLARBONE}" URL="https://www.youtube.com/watch?v=XjaBfgQW1qw"]; 115 | mov_45_deadcleansquat [label="{{45|Dead Clean Squat}}" URL="https://www.youtube.com/watch?v=V1V6PTM5TQ0"]; 116 | 117 | // Unsequenced 118 | ' mov_mill [label="{{|Mill}}" URL="https://www.youtube.com/watch?v=iFtaPBDwG7w"] 119 | ' mov_180pullover [label="{{|180 Degree\nPullover}}"] 120 | ' mov_alt180pullover [label="{{|Alternating 180 Degree\nPullover}}" URL="https://www.youtube.com/watch?v=uz2tKevdtzE"] 121 | ' mov_pulloversquat [label="{{|Pullover Squat}}" URL="https://www.youtube.com/watch?v=2Cejb6rcqis"] 122 | ' mov_clockwork [label="{{|Clockwork Catch}}" URL="https://www.youtube.com/watch?v=opvYcUfzymI"] 123 | ' mov_clockworksquat [label="{{|Clockwork Squat}}" URL="https://www.youtube.com/watch?v=VVFQ5SkrMvM"] 124 | ' mov_clockworkstepbacklunge [label="{{|Clockwork Step Back Lunge}}" URL="https://www.youtube.com/watch?v=-LQFwOehs74"] 125 | ' mov_altpendulum [label="{{|Alternating Pendulum}}" URL="https://www.youtube.com/watch?v=GULjXPS_ba4"] 126 | ' mov_altmill [label="{{|Alternating Mill}}"] 127 | 128 | // Prerequisite skills 129 | 130 | pre_deadlift -> mov_01_sidetoside; 131 | pre_shouldercatch -> mov_07_pullover; 132 | pre_deadlift -> mov_04_deadclean; 133 | pre_shouldercatch -> mov_05_insidecircle; 134 | pre_shinbox -> mov_31_altshinbox; 135 | 136 | // Between clusters 137 | 138 | mov_03_hangsidelowtohigh -> mov_05_insidecircle; 139 | mov_03_hangsidelowtohigh -> mov_15_rockit 140 | mov_04_deadclean -> mov_07_pullover; 141 | mov_04_deadclean -> mov_10_squat; 142 | mov_04_deadclean -> mov_05_insidecircle; 143 | mov_05_insidecircle -> mov_32_incirclesquat; 144 | mov_05_insidecircle -> mov_38_millprep; 145 | mov_06_outsidecircle -> mov_34_outcirclesquat; 146 | mov_06_outsidecircle -> mov_16_outpend; 147 | mov_08_backpossidetoside -> mov_25_kneelbackswing; 148 | mov_09_sc -> mov_22_scsquat; 149 | mov_09_sc -> mov_38_millprep; 150 | mov_10_squat -> mov_17_stepbacklunge; 151 | mov_11_swingclean -> mov_16_outpend; 152 | mov_13_frontpress -> mov_36_squatpress; 153 | mov_13_frontpress -> mov_30_sbfrontpress; 154 | mov_20_3csc -> mov_23_kneelsc 155 | {mov_11_swingclean, mov_07_pullover} -> mov_40_swipe 156 | 157 | ' mov_07_pullover -> mov_180pullover; 158 | ' mov_07_pullover -> mov_pulloversquat; 159 | ' mov_clockwork -> mov_clockworksquat; 160 | ' mov_clockworksquat -> mov_clockworkstepbacklunge; 161 | 162 | subgraph cluster_sideswing { 163 | label="Sideswing" 164 | mov_01_sidetoside -> mov_02_sideswinglowtohigh; 165 | mov_02_sideswinglowtohigh -> mov_03_hangsidelowtohigh; 166 | } 167 | 168 | subgraph cluster_circles { 169 | label="Circles" 170 | mov_05_insidecircle -> mov_06_outsidecircle; 171 | mov_06_outsidecircle -> mov_18_altcircle; 172 | ' mov_18_altcircle -> mov_clockwork; 173 | mov_18_altcircle -> mov_44_clockshoulder 174 | } 175 | 176 | subgraph cluster_cap { 177 | label="Clean & Press" 178 | mov_04_deadclean -> mov_11_swingclean; 179 | mov_11_swingclean -> mov_13_frontpress; 180 | mov_13_frontpress -> mov_37_cap; 181 | } 182 | 183 | subgraph cluster_sideswing2 { 184 | label="Sideswing 2" 185 | mov_15_rockit -> mov_16_outpend; 186 | mov_16_outpend -> mov_19_inpend; 187 | ' mov_19_inpend -> mov_altpendulum; 188 | 189 | } 190 | 191 | subgraph cluster_sc { 192 | label="Shield Cast" 193 | mov_07_pullover -> mov_12_robotsc; 194 | mov_07_pullover -> mov_09_sc; 195 | mov_08_backpossidetoside -> mov_09_sc; 196 | mov_07_pullover -> mov_08_backpossidetoside; 197 | mov_12_robotsc -> mov_14_revrobotsc; 198 | mov_14_revrobotsc -> mov_09_sc; 199 | mov_09_sc -> mov_20_3csc; 200 | mov_09_sc -> mov_21_gama; 201 | } 202 | 203 | subgraph cluster_squat { 204 | label="Squats" 205 | mov_32_incirclesquat -> mov_34_outcirclesquat; 206 | ' mov_10_squat -> mov_pulloversquat; 207 | ' mov_10_squat -> mov_clockworksquat; 208 | mov_10_squat -> mov_22_scsquat; 209 | mov_10_squat -> mov_32_incirclesquat; 210 | mov_10_squat -> mov_36_squatpress; 211 | mov_22_scsquat -> mov_39_pullsquat; 212 | {mov_39_pullsquat, mov_36_squatpress} -> mov_43_pullsquatpress 213 | mov_10_squat -> mov_45_deadcleansquat 214 | } 215 | 216 | subgraph cluster_lunge { 217 | label="Lunge" 218 | mov_23_kneelsc -> mov_25_kneelbackswing 219 | mov_23_kneelsc -> mov_24_sblungepull; 220 | mov_30_sbfrontpress -> mov_35_sblungepullsbpress; 221 | ' mov_17_stepbacklunge -> mov_clockworkstepbacklunge; 222 | mov_17_stepbacklunge -> mov_24_sblungepull; 223 | mov_24_sblungepull -> mov_28_sblungepullbot; 224 | mov_28_sblungepullbot -> mov_35_sblungepullsbpress; 225 | mov_30_sbfrontpress -> mov_41_sblungepress 226 | {mov_25_kneelbackswing, mov_28_sblungepullbot} -> mov_42_kneelpull 227 | } 228 | 229 | subgraph cluster_mill { 230 | label="Mill" 231 | mov_38_millprep 232 | ' mov_alt180pullover -> mov_altmill; 233 | ' mov_180pullover -> mov_alt180pullover; 234 | ' mov_180pullover -> mov_mill; 235 | ' mov_mill -> mov_altmill; 236 | } 237 | 238 | subgraph cluster_getup { 239 | label="Getup" 240 | mov_26_fbpull -> mov_27_fbpullsit; 241 | mov_27_fbpullsit -> mov_29_fbpullsitpress; 242 | mov_31_altshinbox -> mov_33_altshinboxfrpress; 243 | } 244 | 245 | subgraph cluster_swipe { 246 | label="Swipe" 247 | mov_40_swipe 248 | } 249 | 250 | // LAYOUT HACKS 251 | 252 | { 253 | node [style=invis] 254 | edge [style=invis] 255 | 256 | mov_03_hangsidelowtohigh -> lay_ss2ss -> mov_15_rockit; 257 | mov_34_outcirclesquat -> lay_squat2lunge 258 | lay_squat2lunge -> mov_17_stepbacklunge; 259 | ' lay_squat2lunge -> mov_180pullover; 260 | ' mov_clockwork -> lay_startsquat; 261 | mov_21_gama -> lay_startsquat; 262 | mov_37_cap -> lay_startsquat; 263 | lay_startsquat -> mov_10_squat; 264 | } 265 | 266 | // END LAYOUT HACKS 267 | 268 | // LEGEND 269 | 270 | { rank = sink; 271 | Legend [shape=none, margin=0, label=< 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 |
Legend
Prerequisite Skills     
Target Drills
Secondary Drills
Auxiliary Drills
Unsequenced Extra Drills
297 | >]; 298 | } 299 | } 300 | @enddot 301 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Creative Commons Legal Code 2 | 3 | CC BY-NC-SA 4.0 - Attribution-NonCommercial-ShareAlike 4.0 International 4 | 5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE 6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN 7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS 8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES 9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS 10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM 11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED 12 | HEREUNDER. 13 | 14 | ======================================================================= 15 | 16 | Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License 17 | 18 | By exercising the Licensed Rights (defined below), You accept and agree 19 | to be bound by the terms and conditions of this Creative Commons 20 | Attribution-NonCommercial-ShareAlike 4.0 International Public License 21 | ("Public License"). To the extent this Public License may be 22 | interpreted as a contract, You are granted the Licensed Rights in 23 | consideration of Your acceptance of these terms and conditions, and the 24 | Licensor grants You such rights in consideration of benefits the 25 | Licensor receives from making the Licensed Material available under 26 | these terms and conditions. 27 | 28 | 29 | Section 1 -- Definitions. 30 | 31 | a. Adapted Material means material subject to Copyright and Similar 32 | Rights that is derived from or based upon the Licensed Material 33 | and in which the Licensed Material is translated, altered, 34 | arranged, transformed, or otherwise modified in a manner requiring 35 | permission under the Copyright and Similar Rights held by the 36 | Licensor. For purposes of this Public License, where the Licensed 37 | Material is a musical work, performance, or sound recording, 38 | Adapted Material is always produced where the Licensed Material is 39 | synched in timed relation with a moving image. 40 | 41 | b. Adapter's License means the license You apply to Your Copyright 42 | and Similar Rights in Your contributions to Adapted Material in 43 | accordance with the terms and conditions of this Public License. 44 | 45 | c. BY-NC-SA Compatible License means a license listed at 46 | creativecommons.org/compatiblelicenses, approved by Creative 47 | Commons as essentially the equivalent of this Public License. 48 | 49 | d. Copyright and Similar Rights means copyright and/or similar rights 50 | closely related to copyright including, without limitation, 51 | performance, broadcast, sound recording, and Sui Generis Database 52 | Rights, without regard to how the rights are labeled or 53 | categorized. For purposes of this Public License, the rights 54 | specified in Section 2(b)(1)-(2) are not Copyright and Similar 55 | Rights. 56 | 57 | e. Effective Technological Measures means those measures that, in the 58 | absence of proper authority, may not be circumvented under laws 59 | fulfilling obligations under Article 11 of the WIPO Copyright 60 | Treaty adopted on December 20, 1996, and/or similar international 61 | agreements. 62 | 63 | f. Exceptions and Limitations means fair use, fair dealing, and/or 64 | any other exception or limitation to Copyright and Similar Rights 65 | that applies to Your use of the Licensed Material. 66 | 67 | g. License Elements means the license attributes listed in the name 68 | of a Creative Commons Public License. The License Elements of this 69 | Public License are Attribution, NonCommercial, and ShareAlike. 70 | 71 | h. Licensed Material means the artistic or literary work, database, 72 | or other material to which the Licensor applied this Public 73 | License. 74 | 75 | i. Licensed Rights means the rights granted to You subject to the 76 | terms and conditions of this Public License, which are limited to 77 | all Copyright and Similar Rights that apply to Your use of the 78 | Licensed Material and that the Licensor has authority to license. 79 | 80 | j. Licensor means the individual(s) or entity(ies) granting rights 81 | under this Public License. 82 | 83 | k. NonCommercial means not primarily intended for or directed towards 84 | commercial advantage or monetary compensation. For purposes of 85 | this Public License, the exchange of the Licensed Material for 86 | other material subject to Copyright and Similar Rights by digital 87 | file-sharing or similar means is NonCommercial provided there is 88 | no payment of monetary compensation in connection with the 89 | exchange. 90 | 91 | l. Share means to provide material to the public by any means or 92 | process that requires permission under the Licensed Rights, such 93 | as reproduction, public display, public performance, distribution, 94 | dissemination, communication, or importation, and to make material 95 | available to the public including in ways that members of the 96 | public may access the material from a place and at a time 97 | individually chosen by them. 98 | 99 | m. Sui Generis Database Rights means rights other than copyright 100 | resulting from Directive 96/9/EC of the European Parliament and of 101 | the Council of 11 March 1996 on the legal protection of databases, 102 | as amended and/or succeeded, as well as other essentially 103 | equivalent rights anywhere in the world. 104 | 105 | n. You means the individual or entity exercising the Licensed Rights 106 | under this Public License. Your has a corresponding meaning. 107 | 108 | 109 | Section 2 -- Scope. 110 | 111 | a. License grant. 112 | 113 | 1. Subject to the terms and conditions of this Public License, 114 | the Licensor hereby grants You a worldwide, royalty-free, 115 | non-sublicensable, non-exclusive, irrevocable license to 116 | exercise the Licensed Rights in the Licensed Material to: 117 | 118 | a. reproduce and Share the Licensed Material, in whole or 119 | in part, for NonCommercial purposes only; and 120 | 121 | b. produce, reproduce, and Share Adapted Material for 122 | NonCommercial purposes only. 123 | 124 | 2. Exceptions and Limitations. For the avoidance of doubt, where 125 | Exceptions and Limitations apply to Your use, this Public 126 | License does not apply, and You do not need to comply with 127 | its terms and conditions. 128 | 129 | 3. Term. The term of this Public License is specified in Section 130 | 6(a). 131 | 132 | 4. Media and formats; technical modifications allowed. The 133 | Licensor authorizes You to exercise the Licensed Rights in 134 | all media and formats whether now known or hereafter created, 135 | and to make technical modifications necessary to do so. The 136 | Licensor waives and/or agrees not to assert any right or 137 | authority to forbid You from making technical modifications 138 | necessary to exercise the Licensed Rights, including 139 | technical modifications necessary to circumvent Effective 140 | Technological Measures. For purposes of this Public License, 141 | simply making modifications authorized by this Section 2(a) 142 | (4) never produces Adapted Material. 143 | 144 | 5. Downstream recipients. 145 | 146 | a. Offer from the Licensor -- Licensed Material. Every 147 | recipient of the Licensed Material automatically 148 | receives an offer from the Licensor to exercise the 149 | Licensed Rights under the terms and conditions of this 150 | Public License. 151 | 152 | b. Additional offer from the Licensor -- Adapted Material. 153 | Every recipient of Adapted Material from You 154 | automatically receives an offer from the Licensor to 155 | exercise the Licensed Rights in the Adapted Material 156 | under the conditions of the Adapter's License You apply. 157 | 158 | c. No downstream restrictions. You may not offer or impose 159 | any additional or different terms or conditions on, or 160 | apply any Effective Technological Measures to, the 161 | Licensed Material if doing so restricts exercise of the 162 | Licensed Rights by any recipient of the Licensed 163 | Material. 164 | 165 | 6. No endorsement. Nothing in this Public License constitutes or 166 | may be construed as permission to assert or imply that You 167 | are, or that Your use of the Licensed Material is, connected 168 | with, or sponsored, endorsed, or granted official status by, 169 | the Licensor or others designated to receive attribution as 170 | provided in Section 3(a)(1)(A)(i). 171 | 172 | b. Other rights. 173 | 174 | 1. Moral rights, such as the right of integrity, are not 175 | licensed under this Public License, nor are publicity, 176 | privacy, and/or other similar personality rights; however, to 177 | the extent possible, the Licensor waives and/or agrees not to 178 | assert any such rights held by the Licensor to the limited 179 | extent necessary to allow You to exercise the Licensed 180 | Rights, but not otherwise. 181 | 182 | 2. Patent and trademark rights are not licensed under this 183 | Public License. 184 | 185 | 3. To the extent possible, the Licensor waives any right to 186 | collect royalties from You for the exercise of the Licensed 187 | Rights, whether directly or through a collecting society 188 | under any voluntary or waivable statutory or compulsory 189 | licensing scheme. In all other cases the Licensor expressly 190 | reserves any right to collect such royalties, including when 191 | the Licensed Material is used other than for NonCommercial 192 | purposes. 193 | 194 | 195 | Section 3 -- License Conditions. 196 | 197 | Your exercise of the Licensed Rights is expressly made subject to the 198 | following conditions. 199 | 200 | a. Attribution. 201 | 202 | 1. If You Share the Licensed Material (including in modified 203 | form), You must: 204 | 205 | a. retain the following if it is supplied by the Licensor 206 | with the Licensed Material: 207 | 208 | i. identification of the creator(s) of the Licensed 209 | Material and any others designated to receive 210 | attribution, in any reasonable manner requested by 211 | the Licensor (including by pseudonym if 212 | designated); 213 | 214 | ii. a copyright notice; 215 | 216 | iii. a notice that refers to this Public License; 217 | 218 | iv. a notice that refers to the disclaimer of 219 | warranties; 220 | 221 | v. a URI or hyperlink to the Licensed Material to the 222 | extent reasonably practicable; 223 | 224 | b. indicate if You modified the Licensed Material and 225 | retain an indication of any previous modifications; and 226 | 227 | c. indicate the Licensed Material is licensed under this 228 | Public License, and include the text of, or the URI or 229 | hyperlink to, this Public License. 230 | 231 | 2. You may satisfy the conditions in Section 3(a)(1) in any 232 | reasonable manner based on the medium, means, and context in 233 | which You Share the Licensed Material. For example, it may be 234 | reasonable to satisfy the conditions by providing a URI or 235 | hyperlink to a resource that includes the required 236 | information. 237 | 3. If requested by the Licensor, You must remove any of the 238 | information required by Section 3(a)(1)(A) to the extent 239 | reasonably practicable. 240 | 241 | b. ShareAlike. 242 | 243 | In addition to the conditions in Section 3(a), if You Share 244 | Adapted Material You produce, the following conditions also apply. 245 | 246 | 1. The Adapter's License You apply must be a Creative Commons 247 | license with the same License Elements, this version or 248 | later, or a BY-NC-SA Compatible License. 249 | 250 | 2. You must include the text of, or the URI or hyperlink to, the 251 | Adapter's License You apply. You may satisfy this condition 252 | in any reasonable manner based on the medium, means, and 253 | context in which You Share Adapted Material. 254 | 255 | 3. You may not offer or impose any additional or different terms 256 | or conditions on, or apply any Effective Technological 257 | Measures to, Adapted Material that restrict exercise of the 258 | rights granted under the Adapter's License You apply. 259 | 260 | 261 | Section 4 -- Sui Generis Database Rights. 262 | 263 | Where the Licensed Rights include Sui Generis Database Rights that 264 | apply to Your use of the Licensed Material: 265 | 266 | a. for the avoidance of doubt, Section 2(a)(1) grants You the right 267 | to extract, reuse, reproduce, and Share all or a substantial 268 | portion of the contents of the database for NonCommercial purposes 269 | only; 270 | 271 | b. if You include all or a substantial portion of the database 272 | contents in a database in which You have Sui Generis Database 273 | Rights, then the database in which You have Sui Generis Database 274 | Rights (but not its individual contents) is Adapted Material, 275 | including for purposes of Section 3(b); and 276 | 277 | c. You must comply with the conditions in Section 3(a) if You Share 278 | all or a substantial portion of the contents of the database. 279 | 280 | For the avoidance of doubt, this Section 4 supplements and does not 281 | replace Your obligations under this Public License where the Licensed 282 | Rights include other Copyright and Similar Rights. 283 | 284 | 285 | Section 5 -- Disclaimer of Warranties and Limitation of Liability. 286 | 287 | a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE 288 | EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS 289 | AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF 290 | ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, 291 | IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, 292 | WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR 293 | PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, 294 | ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT 295 | KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT 296 | ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. 297 | 298 | b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE 299 | TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, 300 | NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, 301 | INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, 302 | COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR 303 | USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN 304 | ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR 305 | DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR 306 | IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. 307 | 308 | c. The disclaimer of warranties and limitation of liability provided 309 | above shall be interpreted in a manner that, to the extent 310 | possible, most closely approximates an absolute disclaimer and 311 | waiver of all liability. 312 | 313 | 314 | Section 6 -- Term and Termination. 315 | 316 | a. This Public License applies for the term of the Copyright and 317 | Similar Rights licensed here. However, if You fail to comply with 318 | this Public License, then Your rights under this Public License 319 | terminate automatically. 320 | 321 | b. Where Your right to use the Licensed Material has terminated under 322 | Section 6(a), it reinstates: 323 | 324 | 1. automatically as of the date the violation is cured, provided 325 | it is cured within 30 days of Your discovery of the 326 | violation; or 327 | 328 | 2. upon express reinstatement by the Licensor. 329 | 330 | For the avoidance of doubt, this Section 6(b) does not affect any 331 | right the Licensor may have to seek remedies for Your violations 332 | of this Public License. 333 | 334 | c. For the avoidance of doubt, the Licensor may also offer the 335 | Licensed Material under separate terms or conditions or stop 336 | distributing the Licensed Material at any time; however, doing so 337 | will not terminate this Public License. 338 | 339 | d. Sections 1, 5, 6, 7, and 8 survive termination of this Public 340 | License. 341 | 342 | 343 | Section 7 -- Other Terms and Conditions. 344 | 345 | a. The Licensor shall not be bound by any additional or different 346 | terms or conditions communicated by You unless expressly agreed. 347 | 348 | b. Any arrangements, understandings, or agreements regarding the 349 | Licensed Material not stated herein are separate from and 350 | independent of the terms and conditions of this Public License. 351 | 352 | 353 | Section 8 -- Interpretation. 354 | 355 | a. For the avoidance of doubt, this Public License does not, and 356 | shall not be interpreted to, reduce, limit, restrict, or impose 357 | conditions on any use of the Licensed Material that could lawfully 358 | be made without permission under this Public License. 359 | 360 | b. To the extent possible, if any provision of this Public License is 361 | deemed unenforceable, it shall be automatically reformed to the 362 | minimum extent necessary to make it enforceable. If the provision 363 | cannot be reformed, it shall be severed from this Public License 364 | without affecting the enforceability of the remaining terms and 365 | conditions. 366 | 367 | c. No term or condition of this Public License will be waived and no 368 | failure to comply consented to unless expressly agreed to by the 369 | Licensor. 370 | 371 | d. Nothing in this Public License constitutes or may be interpreted 372 | as a limitation upon, or waiver of, any privileges and immunities 373 | that apply to the Licensor or You, including from the legal 374 | processes of any jurisdiction or authority. 375 | 376 | ======================================================================= 377 | 378 | Creative Commons is not a party to its public 379 | licenses. Notwithstanding, Creative Commons may elect to apply one of 380 | its public licenses to material it publishes and in those instances 381 | will be considered the “Licensor.” The text of the Creative Commons 382 | public licenses is dedicated to the public domain under the CC0 Public 383 | Domain Dedication. Except for the limited purpose of indicating that 384 | material is shared under a Creative Commons public license or as 385 | otherwise permitted by the Creative Commons policies published at 386 | creativecommons.org/policies, Creative Commons does not authorize the 387 | use of the trademark "Creative Commons" or any other trademark or logo 388 | of Creative Commons without its prior written consent including, 389 | without limitation, in connection with any unauthorized modifications 390 | to any of its public licenses or any other arrangements, 391 | understandings, or agreements concerning use of licensed material. For 392 | the avoidance of doubt, this paragraph does not form part of the 393 | public licenses. 394 | 395 | Creative Commons may be contacted at creativecommons.org. 396 | -------------------------------------------------------------------------------- /src/mace/mace_progression_ALL.puml: -------------------------------------------------------------------------------- 1 | @startdot mace_progression_ALL 2 | digraph mace_progression_ALL { 3 | 4 | label=< 5 | Mace Skill Progression - ALL

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [shape=record] 19 | node [style="rounded,filled"] 20 | node [color=12, fillcolor=11] 21 | 22 | subgraph aux { 23 | node [color=10, fillcolor=9] 24 | mov_051_sabackswing; mov_052_backswing 25 | mov_242_outflip; mov_243_inflip 26 | mov_50_f2bxbodhipull 27 | } 28 | 29 | subgraph ext { 30 | node [color=2, fillcolor=1] 31 | ext_sq [label="Balance Squat"] 32 | ext_2horder [label="Two-hand\nOrder Position"] 33 | ext_saorder [label="Single-arm\nOrder Position"] 34 | ext_180pull [label="180 Degree Pullover"] 35 | ext_altmill [label="Alternating sword grip mill"] 36 | ext_frswingclean [label="Front swing clean"] 37 | ext_2horder -> ext_sq 38 | ext_2horder -> ext_saorder -> ext_180pull 39 | } 40 | 41 | subgraph isolated { 42 | node [color=4, fillcolor=3] 43 | mov_01_360, mov_031_prayer, mov_041_barbell, mov_061_uppercut, mov_07_invs2sswing, mov_081_lowblockspin, mov_101_martialspin, mov_102_samartialspin, mov_14_barpress2sq,mov_35_waralt360 44 | mov_051_sabackswing, mov_052_backswing, mov_11_paddlerow2upblock, mov_16_saincircle, mov_17_saoutcircle, mov_19_incircle2altcoin, mov_20_outcircle2altcoin, mov_22_incircle2sameflip, mov_23_outcircle2sameflip, mov_242_outflip, mov_243_inflip, mov_31_frcircle, mov_32_bkcircle, mov_33_warfrcircle, mov_36_warbkcircle, mov_48_frspear, mov_51_xbodspear, mov_53_outswordflair, mov_54_inswordflair, mov_65_kneel360 45 | } 46 | 47 | mov_01_360 [label="{{01 |360}}" URL="https://www.youtube.com/watch?v=TyZ8iYv6Ip0" ] 48 | mov_02_alt360 [label="{{02 |Alternating 360\n(Gama Cast/10 to 2)}}" URL="https://www.youtube.com/watch?v=ccifkBh2JSI" ] 49 | mov_031_prayer [label="{{03-1|Prayer transition}}" URL="https://www.youtube.com/watch?v=0fjn0vidH2M" ] 50 | mov_032_pray2360 [label="{{03-2|Prayer transition\nto 360}}" URL="https://www.youtube.com/watch?v=0fjn0vidH2M" ] 51 | mov_041_barbell [label="{{04-1|Barbell transition}}" URL="https://www.youtube.com/watch?v=WQjHBHoC-MQ" ] 52 | mov_042_barbell2360 [label="{{04-2|Barbell transition to 360}}" URL="https://www.youtube.com/watch?v=WQjHBHoC-MQ" ] 53 | mov_051_sabackswing [label="{{05-1|Single arm\nback position swing}}" URL="https://www.youtube.com/watch?v=XN-5l6SiSZU" ] 54 | mov_052_backswing [label="{{05-2|Back position swing}}" URL="https://www.youtube.com/watch?v=XN-5l6SiSZU" ] 55 | mov_061_uppercut [label="{{06-1|90 degree pivot uppercut}}" URL="https://www.youtube.com/watch?v=ULFal2-zDt0" ] 56 | mov_062_uppercut2360 [label="{{06-2|90 degree pivot uppercut to 360}}" URL="https://www.youtube.com/watch?v=ULFal2-zDt0" ] 57 | 58 | mov_07_invs2sswing [label="{{07 |Inverted side to side swings}}" URL="https://www.youtube.com/watch?v=bLA2KSghSdc" ] 59 | mov_081_lowblockspin [label="{{08-1|Low block spin}}" URL="https://www.youtube.com/watch?v=fk8AG0s1-UI" ] 60 | mov_082_lowblockspinwpray [label="{{08-2|Low block spin with\nprayer transition}}" URL="https://www.youtube.com/watch?v=fk8AG0s1-UI" ] 61 | mov_09_lowblockspinw360 [label="{{09 |Low block spin with\n360 transition}}" URL="https://www.youtube.com/watch?v=GXMSVSDtJVc" ] 62 | mov_101_martialspin [label="{{10-1|Simple martial spin}}" URL="https://www.youtube.com/watch?v=p_VgqCIGb-E" ] 63 | mov_102_samartialspin [label="{{10-2|Single arm martial spin}}" URL="https://www.youtube.com/watch?v=p_VgqCIGb-E" ] 64 | mov_11_paddlerow2upblock [label="{{11 |Paddle row to upper block}}" URL="https://www.youtube.com/watch?v=4or7Sb8HyaU" ] 65 | mov_13_pray23602sq [label="{{13 |Horizontal prayer transition to 360 to squat}}" URL="https://www.youtube.com/watch?v=2yUz84zdBlk" ] 66 | mov_14_barpress2sq [label="{{14 |Barbell transition press\nto squat}}" URL="https://www.youtube.com/watch?v=kZK8Eq6ka0U" ] 67 | mov_15_3602bar2sq [label="{{15 |360 to barbell transition\nto squat}}" URL="https://www.youtube.com/watch?v=S6LDBK1o48U" ] 68 | 69 | mov_16_saincircle [label="{{16 |Single arm\ninside circle}}" URL="https://www.youtube.com/watch?v=MSt1cYAiLzI" ] 70 | mov_17_saoutcircle [label="{{17 |Single arm\noutside circle}}" URL="https://www.youtube.com/watch?v=ZuaKcM41dP4" ] 71 | mov_18_saaltcircle [label="{{18 |Single arm\nalternating circles}}" URL="https://www.youtube.com/watch?v=XWIFyifqSr8" ] 72 | mov_19_incircle2altcoin [label="{{19 |Inside circle to\nalternate hand coin flip}}" URL="https://www.youtube.com/watch?v=opgqoNcD1Ds" ] 73 | mov_20_outcircle2altcoin [label="{{20 |Outside circle to\nalternate hand coin flip}}" URL="https://www.youtube.com/watch?v=qX0nE-3VMN0" ] 74 | mov_21_altcirclewinandoutcoin [label="{{21 |Alt circle with\ninside and outside coin flip}}" URL="https://www.youtube.com/watch?v=as46Zm9oibE" ] 75 | mov_22_incircle2sameflip [label="{{22 |Inside circle to\nsame hand flip catch}}" URL="https://www.youtube.com/watch?v=xlClTZRbmc0" ] 76 | mov_23_outcircle2sameflip [label="{{23 |Outside circle to\nsame side flip catch}}" URL="https://www.youtube.com/watch?v=UwR4uFqvUyY" ] 77 | mov_241_altcircle2sameflip [label="{{24-1|Alt circle with\nsame side flip catch}}" URL="https://www.youtube.com/watch?v=T5x3xsfHqs8" ] 78 | mov_242_outflip [label="{{24-2|Outside flip catch balance}}" URL="https://www.youtube.com/watch?v=T5x3xsfHqs8" ] 79 | 80 | mov_243_inflip [label="{{24-3|Inside flip catch balance}}" URL="https://www.youtube.com/watch?v=T5x3xsfHqs8" ] 81 | mov_25_cincirclewaltnunchuck [label="{{25 |Continuous inside circle with\nalt hand nunchuck flip}}" URL="https://www.youtube.com/watch?v=rCgrNJLsrBM" ] 82 | mov_26_coutcirclewaltflip [label="{{26 |Continous outside circle with\nalternate hand flip catch}}" URL="https://www.youtube.com/watch?v=T5lfsHi1rDY" ] 83 | mov_27_inflip180pull [label="{{27 |Inside flip catch mill with\nsword grip across the top}}" URL="https://www.youtube.com/watch?v=uFsPwnClx-M" ] 84 | mov_28_outflipmill [label="{{28 |Outside flip catch mill\naka flip catch reverse mill}}" URL="https://www.youtube.com/watch?v=jKbelC2dZVo" ]; 85 | mov_29_inmillwflip [label="{{29 |Inside mill with\nflip catch hand change}}" URL="https://www.youtube.com/watch?v=Hmk80iWQHjM" ]; 86 | mov_30_outmillwflip [label="{{30 |Outside mill with\nflip catch hand change}}" URL="https://www.youtube.com/watch?v=aIxKwvzj9Hk" ]; 87 | mov_31_frcircle [label="{{31 |Symmetrical stance\nFront Circles}}" URL="https://www.youtube.com/watch?v=ULozVN0nz_U" ]; 88 | mov_32_bkcircle [label="{{32 |Backward Circle}}" URL="https://www.youtube.com/watch?v=KSja97kaEHY" ]; 89 | mov_33_warfrcircle [label="{{33 |Warrior Stance\nFront circle}}" URL="https://www.youtube.com/watch?v=-4GMydVrlSk" ]; 90 | 91 | mov_34_altfrbkcircle [label="{{34 |Alternating front to\nback circles}}" URL="https://www.youtube.com/watch?v=MsrcRGT0YzA" ]; 92 | mov_35_waralt360 [label="{{35 |Warrior stance\nalternating 360 / Gama cast}}" URL="https://www.youtube.com/watch?v=IgJXJy3zPGk" ]; 93 | mov_36_warbkcircle [label="{{36 |Warrior stance\nbackward circle}}" URL="https://www.youtube.com/watch?v=ZfGdlIsWKXQ" ]; 94 | mov_37_waraltcircle [label="{{37 |Warrior stance\nalternating circles}}" URL="https://www.youtube.com/watch?v=h_wcGKGlCus" ]; 95 | mov_38_war180pull [label="{{38 |Warrior stance\n180 degree rotating pullover\nfrom sword grip}}" URL="https://www.youtube.com/watch?v=P5lbQmeVZn8" ]; 96 | mov_39_warfrcircleflip [label="{{39 |Warrior stance\nfront circle flip catch}}" URL="https://www.youtube.com/watch?v=8hvIwt9EshQ" ]; 97 | mov_40_warbkcircleflip [label="{{40 |Warrior stance\nbackward circle to\nflip catch}}" URL="https://www.youtube.com/watch?v=Eb5Ci22BqmI" ]; 98 | mov_41_warfwdmill [label="{{41 |Warrior stance\nforward mill}}" URL="https://www.youtube.com/watch?v=ydXgS363htk" ]; 99 | mov_42_warbwdmill [label="{{42 |Warrior stance\nbackward mill}}" URL="https://www.youtube.com/watch?v=HaQqkf-cSHE" ]; 100 | mov_43_sifpivotwincircle [label="{{43 |Step in front pivot with\ninside circle}}" URL="https://www.youtube.com/watch?v=i2Zj4t-uIB8" ]; 101 | 102 | mov_44_sifpivotwoutcircle [label="{{44 |Forward pivot step with\noutside circle}}" URL="https://www.youtube.com/watch?v=VqW8JavN1g4" ]; 103 | mov_45_sifpivotwflip [label="{{45 |Inside stepping pivot with\ncoin flip and nunchuck return}}" URL="https://www.youtube.com/watch?v=vU-BHGVejhs" ]; 104 | mov_46_sifpivotwoutcircleflip [label="{{46 |Inside stepping pivot with\noutside circle coin flip}}" URL="https://www.youtube.com/watch?v=YSHMJu7VWkg" ]; 105 | mov_47_sifpivotwincircleout180 [label="{{47 |Inside front step pivot with\ninside circle and\noutside 180 degree mill top}}" URL="https://www.youtube.com/watch?v=zuen0CLdwMU" ]; 106 | mov_48_frspear [label="{{48 |Front spear catch}}" URL="https://www.youtube.com/watch?v=hwQlmjHQsrg" ]; 107 | mov_49_frspearwchange [label="{{49 |Front spear catch with\ndescending side change}}" URL="https://www.youtube.com/watch?v=xzPiZZV2K4E" ]; 108 | mov_50_f2bxbodhipull [label="{{50 |Front to back\ncross-body high pull}}" URL="https://www.youtube.com/watch?v=AoUxg7QE-xU" ]; 109 | mov_51_xbodspear [label="{{51 |Cross-body\nspear catch isolations}}" URL="https://www.youtube.com/watch?v=VkwN58PBBSs" ]; 110 | mov_52_altxbodspear [label="{{52 |Cross-body\nspear catch\nalternating sides}}" URL="https://www.youtube.com/watch?v=-Z8YfWYfepQ" ]; 111 | mov_53_outswordflair [label="{{53 |Outside sword flair}}" URL="https://www.youtube.com/watch?v=HxItsGvz-e4" ]; 112 | 113 | mov_54_inswordflair [label="{{54 |Inside tip away\nsword flair}}" URL="https://www.youtube.com/watch?v=8I7KaLuNaEs" ]; 114 | mov_55_out180pullwflair [label="{{55 |Outside\n180 degree pullover with\nsword flair}}" URL="https://www.youtube.com/watch?v=hh3393-eXrs" ]; 115 | mov_56_in180pullwflair [label="{{56 |Inside\n180 degree pullover with\nsword flair}}" URL="https://www.youtube.com/watch?v=Sqw6YyBTgOQ" ]; 116 | mov_57_alt180pullwflair [label="{{57 |Inside & outside\n180 degree pullover with\nsword flairs}}" URL="https://www.youtube.com/watch?v=XriSUPQ4Ql4" ]; 117 | mov_58_outswordmillwflair [label="{{58 |Outside sword grip mill with\ntip-away sword flair}}" URL="https://www.youtube.com/watch?v=bKldH_In6SI" ]; 118 | mov_59_inswordmillwflair [label="{{59 |Inside sword grip mill with\ninside sword flair}}" URL="https://www.youtube.com/watch?v=uMLwGxhbt2Y" ]; 119 | mov_60_altswordmillwflair [label="{{60 |Alternating\nsword grip mill with\nsword flairs}}" URL="https://www.youtube.com/watch?v=_GBln0VGekg" ]; 120 | mov_61_clockupper2180outpull [label="{{61 |Front clockwork\nupper cut to\n180 degree outside pullover}}" URL="https://www.youtube.com/watch?v=XP7abuBs_V0" ]; 121 | mov_62_clockupper2180outwflair [label="{{62 |Clockwork uppercut to\noutside rotating 180 +\ntip away sword flair}}" URL="https://www.youtube.com/watch?v=VjnRZIYV2H8" ]; 122 | mov_63_clockupperwsasc [label="{{63 |Clockwork uppercut +\nsingle arm shield cast}}" URL="https://www.youtube.com/watch?v=FQFBXlIjcDo" ]; 123 | 124 | mov_64_altclockupperw360 [label="{{64 |Alternating\nclockwork uppercut with\ntwo-hand 360 shield cast}}" URL="https://www.youtube.com/watch?v=uE1DaKTf6SI" ]; 125 | mov_65_kneel360 [label="{{65 |Half-kneeling\n2 hand mace 360}|ISOLATE HIPS}" URL="https://www.youtube.com/watch?v=HCCyUmShxYw" ]; 126 | mov_66_kneelalt360 [label="{{66 |Half-kneeling\n10 to 2}}" URL="https://www.youtube.com/watch?v=1sYBqQ1Ll_E" ]; 127 | 128 | // Ungrouped arrows 129 | 130 | subgraph cluster_sa { 131 | label="Single-Arm" 132 | 133 | // Precursor 134 | ext_saorder -> mov_53_outswordflair -> mov_54_inswordflair 135 | ext_180pull -> mov_27_inflip180pull 136 | 137 | // Core standing movements 138 | subgraph custer_symmetric { 139 | label="Isolated symmetric stance" 140 | mov_16_saincircle -> mov_17_saoutcircle; 141 | mov_16_saincircle -> mov_19_incircle2altcoin 142 | mov_17_saoutcircle -> mov_20_outcircle2altcoin 143 | mov_16_saincircle -> mov_22_incircle2sameflip 144 | mov_17_saoutcircle -> mov_23_outcircle2sameflip 145 | } 146 | // Connections from isolated symmetric to integrated 147 | mov_17_saoutcircle -> mov_18_saaltcircle; 148 | mov_19_incircle2altcoin -> mov_25_cincirclewaltnunchuck 149 | mov_23_outcircle2sameflip -> mov_26_coutcirclewaltflip 150 | mov_20_outcircle2altcoin -> mov_21_altcirclewinandoutcoin 151 | mov_23_outcircle2sameflip -> mov_241_altcircle2sameflip 152 | mov_22_incircle2sameflip -> mov_27_inflip180pull 153 | mov_23_outcircle2sameflip -> mov_28_outflipmill 154 | subgraph custer_symmetric2 { 155 | label="Integrated symmetric stance" 156 | mov_26_coutcirclewaltflip 157 | mov_25_cincirclewaltnunchuck 158 | mov_18_saaltcircle -> mov_21_altcirclewinandoutcoin 159 | {mov_242_outflip; mov_243_inflip} -> mov_241_altcircle2sameflip; 160 | mov_18_saaltcircle -> mov_241_altcircle2sameflip 161 | mov_27_inflip180pull -> mov_29_inmillwflip 162 | mov_27_inflip180pull -> mov_28_outflipmill 163 | {mov_27_inflip180pull, mov_28_outflipmill} -> ext_altmill 164 | {mov_28_outflipmill, mov_29_inmillwflip} -> mov_30_outmillwflip 165 | } 166 | 167 | // Precursor to warrior stance 168 | subgraph custer_frbk { 169 | label="Front & Back Circles" 170 | mov_16_saincircle -> mov_31_frcircle -> mov_32_bkcircle -> mov_34_altfrbkcircle; 171 | mov_17_saoutcircle -> mov_32_bkcircle; 172 | mov_31_frcircle -> mov_34_altfrbkcircle; 173 | } 174 | mov_32_bkcircle -> mov_33_warfrcircle 175 | 176 | subgraph custer_war { 177 | label="Warrior stance" 178 | mov_33_warfrcircle -> mov_36_warbkcircle -> mov_37_waraltcircle; 179 | mov_33_warfrcircle -> mov_37_waraltcircle; 180 | mov_37_waraltcircle -> mov_39_warfrcircleflip -> mov_40_warbkcircleflip 181 | {mov_38_war180pull,mov_39_warfrcircleflip} -> mov_41_warfwdmill 182 | {mov_41_warfwdmill,mov_40_warbkcircleflip} -> mov_42_warbwdmill 183 | } 184 | ext_180pull -> mov_38_war180pull 185 | mov_22_incircle2sameflip -> mov_39_warfrcircleflip 186 | mov_23_outcircle2sameflip -> mov_40_warbkcircleflip 187 | mov_27_inflip180pull -> mov_41_warfwdmill 188 | mov_28_outflipmill -> mov_42_warbwdmill 189 | 190 | mov_16_saincircle -> mov_43_sifpivotwincircle 191 | mov_17_saoutcircle -> mov_44_sifpivotwoutcircle 192 | mov_27_inflip180pull -> mov_47_sifpivotwincircleout180 193 | subgraph custer_sifpivot { 194 | label="Step in front pivot" 195 | mov_43_sifpivotwincircle -> mov_44_sifpivotwoutcircle 196 | mov_43_sifpivotwincircle -> mov_45_sifpivotwflip 197 | mov_44_sifpivotwoutcircle -> mov_46_sifpivotwoutcircleflip 198 | mov_45_sifpivotwflip -> mov_46_sifpivotwoutcircleflip 199 | mov_46_sifpivotwoutcircleflip -> mov_47_sifpivotwincircleout180 200 | } 201 | subgraph custer_spear { 202 | label="Spear catch" 203 | ext_frswingclean -> mov_48_frspear -> mov_49_frspearwchange -> mov_50_f2bxbodhipull -> mov_51_xbodspear -> mov_52_altxbodspear; 204 | } 205 | 206 | {ext_180pull, mov_53_outswordflair} -> mov_55_out180pullwflair 207 | {mov_55_out180pullwflair, mov_54_inswordflair} -> mov_56_in180pullwflair 208 | {mov_55_out180pullwflair, mov_56_in180pullwflair} -> mov_57_alt180pullwflair 209 | {mov_28_outflipmill, mov_55_out180pullwflair} -> mov_58_outswordmillwflair 210 | {mov_27_inflip180pull, mov_56_in180pullwflair, mov_58_outswordmillwflair} -> mov_59_inswordmillwflair 211 | {ext_altmill, mov_57_alt180pullwflair, mov_59_inswordmillwflair} -> mov_60_altswordmillwflair 212 | 213 | {ext_180pull} -> mov_61_clockupper2180outpull 214 | {mov_55_out180pullwflair, mov_61_clockupper2180outpull} -> mov_62_clockupper2180outwflair 215 | {mov_62_clockupper2180outwflair} -> mov_63_clockupperwsasc 216 | {mov_63_clockupperwsasc} -> mov_64_altclockupperw360 217 | 218 | {rank=same;mov_23_outcircle2sameflip;mov_36_warbkcircle} 219 | {rank=same;mov_59_inswordmillwflair,mov_61_clockupper2180outpull} 220 | } 221 | 222 | 223 | // 2h -> sa 224 | mov_01_360 -> mov_64_altclockupperw360 225 | mov_061_uppercut -> mov_61_clockupper2180outpull 226 | 227 | 228 | subgraph cluster_2h { 229 | 230 | label="2H" 231 | // Precursor 232 | ext_sq -> {mov_13_pray23602sq;mov_14_barpress2sq;mov_15_3602bar2sq} 233 | ext_2horder -> {mov_01_360; mov_031_prayer; mov_041_barbell} 234 | 235 | mov_01_360 -> {mov_02_alt360;mov_032_pray2360;mov_042_barbell2360;mov_062_uppercut2360} 236 | mov_031_prayer -> mov_032_pray2360; 237 | mov_041_barbell -> mov_042_barbell2360; 238 | mov_061_uppercut -> mov_062_uppercut2360; 239 | mov_101_martialspin -> mov_102_samartialspin; 240 | 241 | mov_041_barbell -> mov_061_uppercut; 242 | 243 | mov_081_lowblockspin -> {mov_082_lowblockspinwpray; mov_09_lowblockspinw360} 244 | mov_031_prayer -> mov_082_lowblockspinwpray 245 | mov_01_360 -> mov_09_lowblockspinw360 246 | 247 | mov_01_360 -> mov_052_backswing -> mov_051_sabackswing 248 | 249 | // Squats 250 | mov_032_pray2360 -> mov_13_pray23602sq 251 | mov_041_barbell -> mov_14_barpress2sq 252 | mov_042_barbell2360 -> mov_15_3602bar2sq 253 | 254 | // 360 into stances 255 | mov_02_alt360 -> mov_35_waralt360 256 | mov_01_360 -> mov_65_kneel360 257 | {mov_65_kneel360, mov_02_alt360} -> mov_66_kneelalt360 258 | 259 | {rank=same; mov_01_360; mov_031_prayer; mov_041_barbell} 260 | {rank=same; mov_051_sabackswing; mov_061_uppercut; mov_07_invs2sswing; mov_081_lowblockspin} 261 | {rank=same; ext_sq; mov_102_samartialspin} 262 | {rank=same; mov_09_lowblockspinw360; mov_101_martialspin;mov_11_paddlerow2upblock} 263 | {rank=same; mov_13_pray23602sq; mov_14_barpress2sq} 264 | } 265 | 266 | // LAYOUT HACKS 267 | 268 | { 269 | node [style=invis] 270 | edge [style=invis] 271 | 272 | mov_15_3602bar2sq -> lay_end2h -> mov_16_saincircle 273 | } 274 | 275 | 276 | 277 | // END LAYOUT HACKS 278 | 279 | { rank = sink; 280 | Legend [shape=none, margin=0, label=< 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 |
Legend
Prerequisites and next steps     
Isolated Drills
Integrated Drills
Learning drills
302 | >]; 303 | } 304 | } 305 | @enddot 306 | -------------------------------------------------------------------------------- /src/kb/kb_progression_ALL.puml: -------------------------------------------------------------------------------- 1 | @startdot kb_progression_ALL 2 | digraph kb_progression { 3 | // Playlist: https://www.youtube.com/watch?list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA 4 | label=< 5 | Kettlebell Basic Skill Progression - ALL

6 | Diagram by dznz based on Mark Wildman's teachings.

7 | Source: https://github.com/dznz/wildman-skill-trees

8 | More by Mark Wildman - https://www.wildmanathletica.com

9 | 10 | © 2023. This work is openly licensed with CC BY-NC-SA 4.0
11 | http://creativecommons.org/licenses/by-nc-sa/4.0/
12 |
13 | > 14 | graph [labeljust=r] 15 | graph [fontname="Helvetica,Arial,sans-serif"] 16 | 17 | node [colorscheme="paired12"] 18 | node [shape=record] 19 | node [style="rounded,filled"] 20 | node [color=12, fillcolor=11] 21 | 22 | subgraph warmup { 23 | node [color=8, fillcolor=7] 24 | mov_03_atw; mov_04_halo, mov_05_atwf2b, mov_06_atwb2f 25 | } 26 | 27 | subgraph aux { 28 | node [color=10, fillcolor=9] 29 | mov_08_2hu1hd; mov_11_2hucleandown; mov_15_news; 30 | } 31 | 32 | subgraph post { 33 | node [color=2, fillcolor=1] 34 | 35 | ext_bw_squat [label="{{BW|Squat}}"] 36 | ext_bw_altshinbox [label="{{BW|Alt Shin Box}}"] 37 | ext_hc_dblswing [label="{{HC|Double Swing}}"] 38 | ext_hc_dblrockit [label="{{HC|Double Rockit}}"] 39 | ext_hc_s2sswing [label="{{2HHC-01|Side to Side\nSwing}}"] 40 | 41 | // Implied 42 | mov_tgd [label="{{|Turkish Get Down}}"] 43 | mov_tgu [label="{{|Turkish Get Up}}"] 44 | } 45 | 46 | mov_01_deadlift [label="{{1|Two Hand Deadlift}|HIP HINGE}" URL="https://www.youtube.com/watch?v=x0XkmM34BPI&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=1"]; 47 | mov_02_swing [label="{{2|Two Hand Swing}|LEG DRIVE &\nHIP SNAP}" URL="https://www.youtube.com/watch?v=m-S9H2XVvYg&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=2"] 48 | mov_03_atw [label="{{3|Around the World}|HAND TRANSITION}" URL="https://www.youtube.com/watch?v=XaegZzSbtr0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=3"] 49 | mov_04_halo [label="{{4|Halo}|GLOBE UP\nORDER POSITION}" URL="https://www.youtube.com/watch?v=25xdtjbFPtw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=4"] 50 | mov_05_atwf2b [label="{{5|Around the World\nFront to Back}}" URL="https://www.youtube.com/watch?v=TwlQQXAQpaQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=5"] 51 | mov_06_atwb2f [label="{{6|Around the World\nBack to Front}}" URL="https://www.youtube.com/watch?v=GrRO00YOIWM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=6"] 52 | mov_07_althalo [label="{{7|Alternating Halo}}" URL="https://www.youtube.com/watch?v=SMpquy5zSL4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=7"] 53 | mov_08_2hu1hd [label="{{8|Two Hand Pickup\nOne Hand Putdown}|RACK POSITION}" URL="https://www.youtube.com/watch?v=eMkDP9VmMc0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=8"] 54 | mov_09_saswing [label="{{9|Single Arm Swing}|THUMB POINTS BACK}" URL="https://www.youtube.com/watch?v=ejPpyLKZ1L4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=9"] 55 | mov_10_h2h [label="{{10|Hand to Hand\nTransition}}" URL="https://www.youtube.com/watch?v=0Uk0Rdm3QFs&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=10"] 56 | 57 | mov_11_2hucleandown [label="{{11|Two Hand Pickup\nClean Putdown}}" URL="https://www.youtube.com/watch?v=cQC2y-ByaAw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=11"] 58 | mov_12_clean [label="{{12|Swing Clean}}" URL="https://www.youtube.com/watch?v=_nIsSXWs5iU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=12"] 59 | mov_13_cleanh2h [label="{{13|Clean with\nHand Transition}}" URL="https://www.youtube.com/watch?v=6TVqHl2gtuM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=13"] 60 | mov_14_press [label="{{14|Single Arm\nOverhead Press}}" URL="https://www.youtube.com/watch?v=XHkI03S6Pls&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=14"] 61 | mov_15_news [label="{{15|Newspaper drill}}" URL="https://www.youtube.com/watch?v=htByOXjHLXE&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=15"] 62 | mov_16_startstopclean [label="{{16|Start Stop Clean}|START & END CLEAN}" URL="https://www.youtube.com/watch?v=XbK3jxI0WNQ&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=16"] 63 | mov_17_cap [label="{{17|Clean & Press}}" URL="https://www.youtube.com/watch?v=SSxB3m5qRas&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=17"] 64 | mov_18_caph2h [label="{{8|Clean & Press with\nHand Transition}}" URL="https://www.youtube.com/watch?v=5Q4vMOYvAGg&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=18"] 65 | mov_19_startstopcap [label="{{19|Start Stop\nClean & Press}|START & END C&P}" URL="https://www.youtube.com/watch?v=dSj3kqbuois&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=19"] 66 | mov_20_gobboxsquat [label="{{20|Bottoms-Up Goblet\nBox Squat}|SQUAT BACK}" URL="https://www.youtube.com/watch?v=k5Bc7pkEmrU&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=20"] 67 | 68 | mov_21_boxsquathalo [label="{{21|Goblet Box Squat\nwith Halo}|STAND AT TOP}" URL="https://www.youtube.com/watch?v=Aik5-BStbnc&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=21"] 69 | mov_22_gobsquathalo [label="{{22|Goblet Squat\nwith Halo}|FULL DEPTH}" URL="https://www.youtube.com/watch?v=cnZ8Mx8NQPE&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=22"] 70 | mov_23_racksquat [label="{{23|Single-Bell Front Squat}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=23"] 71 | mov_24_racklunge [label="{{24|Rack Opposite Leg\nStep-Back Lunge}|VERTICAL SPINE}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=24"] 72 | mov_25_clean2sblunge [label="{{25|Clean Step-Back Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=25"] 73 | mov_26_halfkneelclean [label="{{26|Half-Kneeling Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=26"] 74 | mov_27_cleansblungeclean [label="{{27|Clean Step-Back\nLunge Clean}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=27"] 75 | mov_28_floorpress [label="{{28|Single-Bell Floor Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=28"] 76 | mov_29_halfkneelcap [label="{{29|Half-Kneeling\nClean & Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=29"] 77 | mov_30_floorpressroll [label="{{30|Floor Press with Roll}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=30"] 78 | 79 | mov_31_kneelwindmill [label="{{31|Half-Kneeling Windmill}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=31"] 80 | mov_32_quartgu [label="{{32|Quarter Turkish Get-Up}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=32"] 81 | mov_33_kneelcapwindmill [label="{{33|Half-Kneeling\nClean & Press Windmill}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=34"] 82 | mov_34_halfgu [label="{{34|Half Get-Up}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=35"] 83 | mov_35_cap2ohsblunge [label="{{35|Clean & Press to Overhead\nStep-Back Lunge}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=37"] 84 | mov_36_kneelhipdrop [label="{{36|Half-Kneeling Hip Drop}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=38"] 85 | mov_37_halfgu2hip [label="{{37|Half Get-Up\nto Hip Pass}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=39"] 86 | mov_38_kneelcap2hip [label="{{38|Half-Kneeling Clean & Press\nto Hip Drop}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=40"] 87 | mov_39_boxsquat2boat [label="{{39|Box Squat to Boat Pose}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=41"] 88 | mov_40_bwspinalrock [label="{{40|Spinal Rock\n(Bodyweight)}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=42"] 89 | 90 | mov_41_flatbackpullover [label="{{41|Flat Back Pullover}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=43"] 91 | mov_42_halfgu2kneel [label="{{42|Half Get-Up to Hip Pass\n(to Half-Kneeling)}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=45"] 92 | mov_43_spinalrock [label="{{43|Spinal Rock}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=48"] 93 | mov_44_pushpress [label="{{44|Push Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=49"] 94 | mov_45_gobsquatcurl [label="{{45|Rock-Bottom\nCurl with Goblet Squat}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=50"] 95 | // Missing 46 96 | mov_47_racksquatpickup [label="{{47|Rock-Bottom\nFront Squat Pickup}|PAUSE AT BOTTOM}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=52"] 97 | mov_48_thruster [label="{{48|Thruster}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=48"] 98 | mov_49_seatedpress [label="{{49|Seated Two-Handed\nOverhead Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=54"] 99 | mov_50_2hdeadclean2rack [label="{{50|Two-Handed Dead Clean\nto Double Front Rack}}" URL="https://www.youtube.com/watch?v=acqKxfMGAbk&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=55"] 100 | 101 | mov_51_fourcountsquat [label="{{51|Four-Count Squat\n(Bodyweight)}}" URL="https://www.youtube.com/watch?v=1rkGfL1EdWI"] 102 | mov_52_rackaltshinbox [label="{{52|Rack Alt Shinbox}}" URL="https://www.youtube.com/watch?v=AoEYX36Q2Zg"] 103 | mov_53_hornygobsquat [label="{{53|Handle Up\nGoblet Squat}}" URL="https://www.youtube.com/watch?v=i2AtDi4yZSA"] 104 | mov_54_shinboxpress [label="{{54|Contra Shinbox Press}}" URL="https://www.youtube.com/watch?v=FEbi2lKVEHU"] 105 | mov_55_backpullsituppress [label="{{55|Flat Back Pullover Situp Press}}" URL="https://www.youtube.com/watch?v=KTDVl0Lkdc4&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=57"] 106 | mov_56_suitcasedl [label="{{56|Suitcase Deadlift}}" URL="https://www.youtube.com/watch?v=d6i6MwVOmk0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=58"]; 107 | mov_57_dblsuitcase [label="{{57|Double Suitcase}}" URL="https://www.youtube.com/watch?v=4PSOSrDcGfc&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=59"]; 108 | mov_58_dblsumodl [label="{{58|Double Sumo Deadlift}}" URL="https://www.youtube.com/watch?v=gdutIla6nMw"]; 109 | mov_59_halfsnatchdown [label="{{59|Half Snatch Down}}" URL="https://www.youtube.com/watch?v=u2NbMtX_Rb0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=60"]; 110 | mov_60_dblswing [label="{{60|Double Swing}}" URL="https://www.youtube.com/watch?v=P5IFTJySA_s&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=61"]; 111 | 112 | mov_61_halfsnatchup [label="{{61|Half Snatch Up}}" URL="https://www.youtube.com/watch?v=3HEmUyLYjjc"]; 113 | mov_62_dblclean [label="{{62|Double Clean}}" URL="https://www.youtube.com/watch?v=Qe9ejhAtdGY&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=62"]; 114 | // Double Rockit is labeled #64 but #63 was missed, so putting here. 115 | mov_63_dblrockit [label="{{64?|Double Rockit}}" URL="https://www.youtube.com/watch?v=zXB6hFrrBkA&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=63"]; 116 | mov_64_dbloutswing [label="{{64|Double\nOutside Swing}}" URL="https://www.youtube.com/watch?v=yr_fRgGevsE"]; 117 | mov_65_dblcap [label="{{65|Double\nClean & Press}}" URL="https://www.youtube.com/watch?v=RizGV8ef--s"]; 118 | mov_66_snatch [label="{{66|Full Snatch}}" URL="https://www.youtube.com/watch?v=f-zkPiAlpQw&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=65"]; 119 | mov_67_dblsquat [label="{{67|Double\nFront Squat}}" URL="https://www.youtube.com/watch?v=dX5yXJa5Dm0&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=66"]; 120 | mov_68_dblclean2squat [label="{{68|Double Clean\nto Front Squat}}" URL="https://www.youtube.com/watch?v=R3s6Wb_ApHM"]; 121 | mov_69_snatchpress [label="{{69|Snatch Press}}" URL="https://www.youtube.com/watch?v=IzFPa_Q1yHM&list=PLk4oYPJ7TXKhX8YqA2AVrfgs_pEF6p7KA&index=67"]; 122 | mov_70_kneelsnatchup [label="{{70|Half-Kneeling Snatch Up}}" URL="https://www.youtube.com/watch?v=1_UrK5SopL4"]; 123 | 124 | mov_71_deaddblclean [label="{{71|Dead Stop\nDouble Clean}}" URL="https://www.youtube.com/watch?v=22bKQqMqAQY"]; 125 | mov_72_deck [label="{{72|Deck Squat}}" URL="https://www.youtube.com/watch?v=vUJ3sZVwZ4Y"]; 126 | mov_73_2hsbldl [label="{{73|Two Hand Single\nBent Leg Deadlift}}" URL="https://www.youtube.com/watch?v=-RD1qqe7P8M"]; 127 | mov_74_dblhangclean2squat [label="{{74|Double Hang Clean\nTo Squat}}" URL="https://www.youtube.com/watch?v=SdPEkv56Lt8"]; 128 | mov_75_2hssldl [label="{{75|Two Hand Single\nStraight Leg Deadlift}}" URL="https://www.youtube.com/watch?v=tMt2hzfFGzo"]; 129 | mov_76_dblhangcap [label="{{76|Double Dead Hang\nClean & Press}|SLOW DOWN TO ENDURE}" URL="https://www.youtube.com/watch?v=ieDA4V9WGNQ"]; 130 | mov_77_shsldl [label="{{77|Single Hand\nSingle Leg Deadlift}|ONE-SIDE BALANCE}" URL="https://www.youtube.com/watch?v=1K4hgXfUinU"]; 131 | mov_78_dblcleansqpress [label="{{78|Double Clean Squat Press}}" URL="https://www.youtube.com/watch?v=fWPDPBliCEk"]; 132 | mov_79_kneelsnatchdown [label="{{79|Half-Kneeling Snatch Down}|KB CLOSE TO BODY}" URL="https://www.youtube.com/watch?v=okO-7womT5Q"]; 133 | mov_80_dblhangcsp [label="{{80|Double Dead\nHang Clean\nSquat Press}}" URL="https://www.youtube.com/watch?v=DpGOSw7kGO0"]; 134 | 135 | mov_81_kneelsnatch [label="{{81|Half Kneeling\nFull Snatch}}" URL="https://www.youtube.com/watch?v=axx4kfUzkl4"]; 136 | mov_82_dblcleanpresssq [label="{{82|Double Clean\nPress Squat}}" URL="https://www.youtube.com/watch?v=t5fDkX3vjiU"]; 137 | mov_83_dblcleansblunge [label="{{83|Double Clean\nRack Step Back Lunge}}" URL="https://www.youtube.com/watch?v=mNt7guHRP4U"]; 138 | mov_84_s2sswing [label="{{84|Side to Side Swing}|LATERAL ROTATION}" URL="https://www.youtube.com/watch?v=W_04Zv3p2HM"]; 139 | 140 | mov_01_deadlift -> mov_02_swing; 141 | mov_01_deadlift -> mov_03_atw; 142 | mov_01_deadlift -> mov_04_halo; 143 | mov_01_deadlift -> mov_08_2hu1hd; 144 | mov_02_swing -> mov_09_saswing; 145 | mov_09_saswing -> mov_10_h2h; 146 | mov_08_2hu1hd -> mov_11_2hucleandown; 147 | mov_09_saswing -> mov_11_2hucleandown; 148 | mov_12_clean -> mov_13_cleanh2h; 149 | mov_08_2hu1hd -> mov_14_press; 150 | mov_04_halo -> mov_20_gobboxsquat; 151 | mov_10_h2h -> mov_13_cleanh2h; 152 | 153 | mov_08_2hu1hd -> mov_23_racksquat; 154 | mov_23_racksquat -> mov_24_racklunge; 155 | mov_16_startstopclean -> mov_25_clean2sblunge; 156 | 157 | mov_19_startstopcap -> mov_29_halfkneelcap; 158 | 159 | 160 | subgraph cluster_warmup { 161 | label="Warmups" 162 | mov_04_halo -> mov_07_althalo; 163 | mov_03_atw -> mov_05_atwf2b; 164 | mov_05_atwf2b -> mov_06_atwb2f; 165 | 166 | } 167 | 168 | // LAYOUT HACKS 169 | 170 | { 171 | node [style=invis] 172 | edge [style=invis] 173 | 174 | mov_06_atwb2f -> lay_endwarmup; 175 | mov_19_startstopcap -> lay_endcap 176 | lay_startsnatch -> mov_59_halfsnatchdown; 177 | lay_starttgu -> mov_24_racklunge; 178 | mov_72_deck -> lay_endsquat 179 | } 180 | 181 | // Have warmup precede squat 182 | { rank=same; lay_endwarmup; ext_bw_altshinbox} 183 | 184 | // have C&P precede snatch & tgu 185 | { rank=same; lay_endcap; lay_startsnatch; } 186 | 187 | { rank=same; lay_endsquat; lay_starttgu} 188 | 189 | { rank=same; mov_08_2hu1hd; ext_bw_altshinbox; } 190 | { rank=same; mov_56_suitcasedl; mov_10_h2h} 191 | 192 | // END LAYOUT HACKS 193 | 194 | subgraph cluster_cap { 195 | label="Clean & Press" 196 | mov_11_2hucleandown -> mov_12_clean; 197 | mov_12_clean -> mov_16_startstopclean; 198 | mov_12_clean -> mov_17_cap; 199 | mov_12_clean -> mov_15_news; 200 | mov_14_press -> mov_17_cap; 201 | mov_17_cap -> mov_18_caph2h; 202 | mov_13_cleanh2h -> mov_18_caph2h; 203 | mov_17_cap -> mov_19_startstopcap; 204 | } 205 | 206 | subgraph cluster_tgd { 207 | label="Turkish Get Down/\nTurkish Get Up" 208 | mov_24_racklunge -> mov_25_clean2sblunge; 209 | mov_25_clean2sblunge -> mov_26_halfkneelclean; 210 | mov_26_halfkneelclean -> mov_27_cleansblungeclean; 211 | mov_26_halfkneelclean -> mov_29_halfkneelcap; 212 | mov_29_halfkneelcap -> mov_31_kneelwindmill; 213 | mov_31_kneelwindmill -> mov_33_kneelcapwindmill; 214 | mov_33_kneelcapwindmill -> mov_35_cap2ohsblunge; 215 | mov_27_cleansblungeclean -> mov_35_cap2ohsblunge; 216 | mov_33_kneelcapwindmill -> mov_36_kneelhipdrop; 217 | mov_36_kneelhipdrop -> mov_38_kneelcap2hip; 218 | mov_28_floorpress -> mov_30_floorpressroll; 219 | mov_30_floorpressroll -> mov_32_quartgu; 220 | mov_32_quartgu -> mov_34_halfgu; 221 | mov_34_halfgu -> mov_37_halfgu2hip; 222 | mov_37_halfgu2hip -> mov_42_halfgu2kneel; 223 | } 224 | 225 | mov_35_cap2ohsblunge -> mov_tgd; 226 | mov_35_cap2ohsblunge -> mov_tgu; 227 | mov_38_kneelcap2hip -> mov_tgd; 228 | mov_38_kneelcap2hip -> mov_tgu; 229 | mov_42_halfgu2kneel -> mov_tgd; 230 | mov_42_halfgu2kneel -> mov_tgu; 231 | 232 | ext_bw_squat -> mov_51_fourcountsquat 233 | ext_bw_altshinbox -> mov_52_rackaltshinbox; 234 | mov_12_clean -> mov_50_2hdeadclean2rack; 235 | 236 | 237 | 238 | mov_19_startstopcap -> mov_44_pushpress; 239 | mov_45_gobsquatcurl -> mov_39_boxsquat2boat; 240 | mov_53_hornygobsquat -> mov_39_boxsquat2boat; 241 | mov_22_gobsquathalo -> mov_45_gobsquatcurl; 242 | mov_22_gobsquathalo -> mov_53_hornygobsquat; 243 | mov_23_racksquat -> mov_47_racksquatpickup; 244 | mov_23_racksquat -> mov_48_thruster; 245 | 246 | // Ungrouped drills 247 | mov_44_pushpress -> mov_48_thruster; 248 | mov_55_backpullsituppress -> mov_72_deck; 249 | 250 | subgraph cluster_squat { 251 | label="Squats & Getup" 252 | 253 | // Getups 254 | mov_52_rackaltshinbox -> mov_54_shinboxpress 255 | mov_41_flatbackpullover -> mov_55_backpullsituppress; 256 | mov_49_seatedpress -> mov_55_backpullsituppress; 257 | 258 | // Squats 259 | mov_20_gobboxsquat -> mov_21_boxsquathalo; 260 | mov_21_boxsquathalo -> mov_22_gobsquathalo; 261 | mov_22_gobsquathalo -> mov_23_racksquat; 262 | mov_39_boxsquat2boat -> mov_72_deck; 263 | mov_40_bwspinalrock -> mov_43_spinalrock; 264 | mov_43_spinalrock -> mov_72_deck; 265 | mov_45_gobsquatcurl 266 | mov_47_racksquatpickup 267 | mov_51_fourcountsquat 268 | mov_53_hornygobsquat 269 | } 270 | 271 | ext_hc_dblswing -> ext_hc_dblrockit; 272 | ext_hc_dblrockit -> mov_63_dblrockit; 273 | mov_10_h2h -> mov_60_dblswing; 274 | 275 | 276 | mov_16_startstopclean -> mov_62_dblclean; 277 | mov_16_startstopclean -> mov_59_halfsnatchdown; 278 | mov_19_startstopcap -> mov_65_dblcap; 279 | mov_01_deadlift -> mov_56_suitcasedl; 280 | 281 | 282 | // Ungrouped drills 283 | mov_56_suitcasedl -> mov_57_dblsuitcase; 284 | 285 | ext_hc_s2sswing -> mov_84_s2sswing; 286 | 287 | subgraph cluster_deadlift { 288 | label="Deadlifts" 289 | mov_56_suitcasedl -> mov_73_2hsbldl; 290 | mov_73_2hsbldl -> mov_75_2hssldl -> mov_77_shsldl; 291 | mov_75_2hssldl -> mov_84_s2sswing; 292 | } 293 | 294 | subgraph cluster_double { 295 | label="Doubles" 296 | mov_64_dbloutswing -> mov_63_dblrockit 297 | mov_57_dblsuitcase -> mov_58_dblsumodl; 298 | mov_60_dblswing -> mov_62_dblclean; 299 | mov_62_dblclean -> mov_65_dblcap; 300 | mov_62_dblclean -> mov_67_dblsquat; 301 | mov_67_dblsquat -> mov_68_dblclean2squat; 302 | mov_62_dblclean -> mov_71_deaddblclean; 303 | mov_58_dblsumodl -> mov_60_dblswing; 304 | mov_60_dblswing -> mov_64_dbloutswing; 305 | mov_68_dblclean2squat -> mov_74_dblhangclean2squat; 306 | mov_65_dblcap -> mov_76_dblhangcap; 307 | {mov_76_dblhangcap, mov_68_dblclean2squat} -> mov_78_dblcleansqpress; 308 | {mov_74_dblhangclean2squat, mov_78_dblcleansqpress} -> mov_80_dblhangcsp; 309 | {mov_78_dblcleansqpress} -> mov_82_dblcleanpresssq 310 | {mov_68_dblclean2squat} -> mov_83_dblcleansblunge 311 | } 312 | 313 | subgraph cluster_snatch { 314 | label="Snatch" 315 | mov_59_halfsnatchdown -> mov_61_halfsnatchup -> mov_66_snatch; 316 | mov_70_kneelsnatchup -> mov_79_kneelsnatchdown -> mov_81_kneelsnatch -> mov_66_snatch 317 | mov_66_snatch -> mov_69_snatchpress; 318 | } 319 | 320 | { rank = sink; 321 | Legend [shape=none, margin=0, label=< 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | 338 | 339 | 340 | 341 | 342 |
Legend
Prerequisites and next steps     
Drills
Warmup drills
Learning drills
343 | >]; 344 | } 345 | } 346 | @enddot 347 | --------------------------------------------------------------------------------