from pathlib import Path ROOT = Path(__file__).resolve().parents[1] REQUIRED = { ROOT / "Source" / "AgrarianGame" / "AgrarianDemoNoticeActor.h": [ "float NoticeDurationSeconds = 24.0f;", "Investor Demo v0.1.H - Build 2026.05.17", ], ROOT / "Source" / "AgrarianGame" / "AgrarianDemoNoticeWidget.h": [ "virtual void NativeConstruct() override;", "DrawCinematicCredits", "DrawCreditIllustration", "CreditsStartTimeSeconds", "Investor Demo v0.1.H - Build 2026.05.17", ], ROOT / "Source" / "AgrarianGame" / "AgrarianDemoNoticeWidget.cpp": [ "Nathan Slaven", "Lead Developer", "Hunter Slaven", "Junior Developer", "Lisa Reiley", "Quality Control", "River Slaven", "Alpha Game Tester", "Fisher Slaven", "Beta Game Tester", "Cherished individuals, Pacificao seed funding, and Lina Family Investment Funds", "SlamSeconds", "DrawCreditIllustration", ], ROOT / "Config" / "DefaultGame.ini": [ "ProjectVersion=0.1.H-investor.20260517", ], ROOT / "Scripts" / "InstallWindowsDemoLaunchers.bat": [ "DEMO_VERSION=Investor Demo v0.1.H - Build 2026.05.17", ], ROOT / "AGRARIAN_DEVELOPMENT_ROADMAP.md": [ "Add forest-fire risk and spread from irresponsible campfire and open-flame placement", ], } def main(): missing = [] for path, snippets in REQUIRED.items(): text = path.read_text(encoding="utf-8") for snippet in snippets: if snippet not in text: missing.append(f"{path.relative_to(ROOT)} missing {snippet!r}") if missing: raise SystemExit("Startup credits verification failed:\n" + "\n".join(missing)) print("PASS: startup credits sequence and forest-fire roadmap follow-up are present.") if __name__ == "__main__": main()