From 23fc15dbe16094ea2f9ef03719852d346ccfc3ff Mon Sep 17 00:00:00 2001 From: Jesse_Chen Date: Sat, 18 Jul 2026 19:02:40 +0800 Subject: [PATCH] fix: handle sparse planets in shadbala scoring --- scripts/shadbala.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/shadbala.py b/scripts/shadbala.py index 1b1e9043..9e1515dc 100644 --- a/scripts/shadbala.py +++ b/scripts/shadbala.py @@ -287,6 +287,8 @@ def _saptavarga_signs(planets: Dict) -> Dict[int, Dict[str, int]]: def _compound_relation_score(planet: str, owner: str, d1_signs: Dict[str, int]) -> float: natural = "friend" if owner in FRIENDSHIP[planet]["friend"] else "enemy" if owner in FRIENDSHIP[planet]["enemy"] else "neutral" + if owner not in d1_signs: + return {"friend": 15.0, "neutral": 7.5, "enemy": 3.75}[natural] separation = (d1_signs[owner] - d1_signs[planet]) % 12 temporary = "friend" if separation in {1, 2, 3, 9, 10, 11} else "enemy" return {