@tool extends Node func run_checks() -> Dictionary: var network := preload("res://scripts/planets/mining_network.gd") var failures: Array[String] = [] for level in [1,5,20,50,80,100,120]: var center := clampi(level,1,100) for seed_value in 1000: var profile := {"id":"test:%d" % seed_value,"seed":seed_value,"name":"Test","difficulty":1.0,"system_level":level} var candidate: Dictionary = network.recruit(profile) if int(candidate.management) < maxi(1,center-5) or int(candidate.management) > mini(100,center+5): failures.append("Out of level bounds") if candidate != network.recruit(profile): failures.append("Rerolled on revisit") var safe := profile.duplicate() safe.difficulty = 0.0 if candidate.management != network.recruit(safe).management: failures.append("Biome changed rating") if network.recruitment_cost(candidate) != int(candidate.management)*1000: failures.append("Wrong price") return {"failures":failures,"rolls_checked":7000,"passed":failures.is_empty()}