- Add pitcher detection via player_type field or ratings schema - Separate calc_ops and verify_total for batters vs pitchers - Pitcher template with correct schema (double_cf, xcheck fields, etc.) - Combined OPS formula: max() for pitchers, min() for batters - Add --type option to 'pd-cards custom new' command - Migrate Tony Smehrik to YAML pitcher profile Pitcher schema differences from batters: - double_cf instead of double_pull - flyout_cf_b instead of flyout_a/flyout_bq - No groundout_c - xcheck_* fields (29 chances for fielder plays) - pitching block for starter/relief/closer ratings 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
100 lines
2.2 KiB
YAML
100 lines
2.2 KiB
YAML
# Tony Smehrik - Custom Pitcher
|
|
# Left-handed SP/RP with same-side dominance
|
|
#
|
|
# Target Combined OPS: 0.585
|
|
# - OPS vs L: ~0.465 (dominant same-side)
|
|
# - OPS vs R: ~0.645 (weaker opposite-side)
|
|
# K-rate vs L: ~20% (average)
|
|
# K-rate vs R: ~8% (very low)
|
|
# FB% vs L: ~35% (average)
|
|
# FB% vs R: ~45% (high)
|
|
|
|
name: Tony Smehrik
|
|
player_type: pitcher
|
|
hand: L
|
|
target_ops: 0.585 # OPS allowed (combined)
|
|
cardset_id: 29
|
|
player_id: null # Set after creation
|
|
pitching_card_id: null # Set after creation
|
|
|
|
positions:
|
|
P: null
|
|
|
|
pitching:
|
|
starter_rating: 5
|
|
relief_rating: 5
|
|
closer_rating: null
|
|
|
|
ratings:
|
|
# vs_L = performance vs left-handed batters (same-side dominant)
|
|
# Target: .185/.240/.225 OPS ~0.465
|
|
# Total must = 108
|
|
vs_L:
|
|
# Hits allowed (~15 total hits for .185 AVG area)
|
|
homerun: 0.5
|
|
bp_homerun: 0.5
|
|
triple: 0.25
|
|
double_three: 0.0
|
|
double_two: 3.0
|
|
double_cf: 1.0
|
|
single_two: 3.0
|
|
single_one: 2.5
|
|
single_center: 3.0
|
|
bp_single: 5.0
|
|
# On-base allowed (~6 for OBP gap)
|
|
walk: 5.0
|
|
hbp: 1.0
|
|
# Outs - high K rate vs same side (~22 Ks)
|
|
strikeout: 22.0
|
|
flyout_lf_b: 4.5
|
|
flyout_cf_b: 6.0
|
|
flyout_rf_b: 4.0
|
|
groundout_a: 7.75
|
|
groundout_b: 10.0
|
|
# X-checks (29 total)
|
|
xcheck_p: 1.0
|
|
xcheck_c: 3.0
|
|
xcheck_1b: 2.0
|
|
xcheck_2b: 6.0
|
|
xcheck_3b: 3.0
|
|
xcheck_ss: 7.0
|
|
xcheck_lf: 2.0
|
|
xcheck_cf: 3.0
|
|
xcheck_rf: 2.0
|
|
|
|
# vs_R = performance vs right-handed batters (opposite-side weaker)
|
|
# Target: .245/.305/.340 OPS ~0.645
|
|
# Total must = 108
|
|
vs_R:
|
|
# Hits allowed (~22 total hits for .245 AVG area)
|
|
homerun: 1.5
|
|
bp_homerun: 1.5
|
|
triple: 0.5
|
|
double_three: 0.0
|
|
double_two: 4.5
|
|
double_cf: 1.5
|
|
single_two: 4.0
|
|
single_one: 3.5
|
|
single_center: 4.0
|
|
bp_single: 5.0
|
|
# On-base allowed (~7 for OBP gap)
|
|
walk: 6.0
|
|
hbp: 1.0
|
|
# Outs - very low K rate vs opposite side (~9 Ks)
|
|
strikeout: 9.0
|
|
flyout_lf_b: 5.0
|
|
flyout_cf_b: 8.0
|
|
flyout_rf_b: 5.0
|
|
groundout_a: 7.0
|
|
groundout_b: 12.0
|
|
# X-checks (29 total)
|
|
xcheck_p: 1.0
|
|
xcheck_c: 3.0
|
|
xcheck_1b: 2.0
|
|
xcheck_2b: 6.0
|
|
xcheck_3b: 3.0
|
|
xcheck_ss: 7.0
|
|
xcheck_lf: 2.0
|
|
xcheck_cf: 3.0
|
|
xcheck_rf: 2.0
|