Spaces:
Running on Zero
Running on Zero
Download playbook.py from ageraustine/HAWK-ONE: direct link, hf CLI and curl.
- Browser
- Download file 3.58 kB
-
https://huggingface.co/spaces/ageraustine/HAWK-ONE/resolve/main/playbook.py
- Command line
-
hf download hf://spaces/ageraustine/HAWK-ONE/playbook.py
-
curl -L -o playbook.py https://huggingface.co/spaces/ageraustine/HAWK-ONE/resolve/main/playbook.py
3.58 kB
| """Offensive plays and defensive calls. Route points are (yards downfield, yards toward the bottom | |
| sideline) relative to the player's alignment. Players are referenced by formation slot id.""" | |
| def R(*pts, delay=0.0): | |
| return dict(pts=[tuple(p) for p in pts], delay=delay) | |
| OFFENSE_PLAYS = { | |
| "Inside Zone": dict(kind="run", formation="I-Form (21p)", runner="RB", lead="FB", | |
| aim=(2.5, 1.2), mesh=(-4.3, 0.9), min_handoff=0.45), | |
| "Outside Zone": dict(kind="run", formation="I-Form (21p)", runner="RB", lead="FB", | |
| aim=(1.0, 7.0), mesh=(-4.5, 1.6), min_handoff=0.45), | |
| "Draw": dict(kind="run", formation="Shotgun Trips (10p)", runner="RB", lead=None, fake_pass=True, | |
| aim=(3.0, -0.3), mesh=(-5.0, 1.0), min_handoff=1.1), | |
| "RPO Slant": dict(kind="rpo", formation="Shotgun 11p (2x1 + TE)", runner="RB", lead=None, | |
| aim=(2.5, -2.2), mesh=(-5.0, -1.0), min_handoff=0.7, tgt="X", | |
| routes={"X": R((3, 0), (10, 7), (18, 15))}), | |
| "Quick Slants": dict(kind="pass", formation="Shotgun 11p (2x1 + TE)", drop=5.0, t_first=0.75, | |
| blockers=["TE", "RB"], prog=["X", "Z", "SL"], | |
| routes={"X": R((3, 0), (10, 7), (18, 15)), "Z": R((3, 0), (10, -7), (18, -15)), | |
| "SL": R((1, -4), (3, -9))}), | |
| "Mesh": dict(kind="pass", formation="Shotgun 11p (2x1 + TE)", drop=5.0, t_first=1.3, | |
| blockers=["TE"], prog=["SL", "Z", "X", "RB"], | |
| routes={"SL": R((2, 0), (3, 16)), "Z": R((2, 0), (3, -15)), "X": R((10, 0), (10, 8)), | |
| "RB": R((0.5, -6), (2, -10), delay=0.6)}), | |
| "Four Verticals": dict(kind="pass", formation="Shotgun Trips (10p)", drop=5.0, t_first=2.0, | |
| blockers=["RB"], prog=["H", "SL", "Z", "X"], | |
| routes={"X": R((40, 0)), "Z": R((40, 0)), "SL": R((40, 0)), "H": R((40, 2))}), | |
| "Sideline Fade": dict(kind="pass", formation="Shotgun Trips (10p)", drop=5.0, t_first=1.8, | |
| blockers=["RB"], prog=["X", "Z", "H"], | |
| routes={"X": R((35, -4.4)), "Z": R((40, 0)), "SL": R((30, 0)), "H": R((12, 0), (12, 6))}), | |
| "PA Post": dict(kind="pass", formation="I-Form (21p)", drop=7.0, t_first=1.8, play_action=True, | |
| aim=(2.5, 1.2), blockers=["FB"], prog=["X", "Z", "TE"], | |
| routes={"X": R((12, 0), (26, 9)), "Z": R((10, 0), (10, -9)), "TE": R((5, 0), (8, 5))}), | |
| "RB Screen": dict(kind="pass", formation="Shotgun 11p (2x1 + TE)", drop=7.0, t_first=2.0, screen=True, | |
| blockers=["TE"], prog=["RB"], | |
| routes={"X": R((30, 0)), "SL": R((30, 0)), "Z": R((30, 0)), | |
| "RB": R((3.0, -7.0), delay=1.2)}), | |
| } | |
| DEFENSE_CALLS = { | |
| "4-3 Over 路 Cover 3": dict(formation="4-3 Over", coverage="cover3", blitz=[]), | |
| "4-3 Over 路 Cover 1": dict(formation="4-3 Over", coverage="cover1", blitz=[]), | |
| "4-3 Over 路 Cover 0 Blitz": dict(formation="4-3 Over", coverage="cover0", blitz=["MIKE", "WILL"]), | |
| "Nickel 路 Cover 2": dict(formation="Nickel 4-2-5", coverage="cover2", blitz=[]), | |
| "Nickel 路 Cover 3": dict(formation="Nickel 4-2-5", coverage="cover3", blitz=[]), | |
| "Nickel 路 Cover 1 Mike Blitz": dict(formation="Nickel 4-2-5", coverage="cover1", blitz=["MIKE"]), | |
| "3-4 路 Cover 3": dict(formation="3-4", coverage="cover3", blitz=[]), | |
| "3-4 路 Zone Blitz": dict(formation="3-4", coverage="cover3", blitz=["OLB1", "ILB1"]), | |
| } | |