extends Node func _ready() -> void: var script := preload("res://scripts/game/enemy_ship.gd") seed(20261017) var successes := 0 var failures := 0 for index in 2000: var enemy := script.new() var won: bool = enemy.roll_virus_infection() successes += int(won) failures += int(not won) assert(not enemy.roll_virus_infection(), "A second frame must never reroll infection") assert(not enemy.roll_virus_infection(), "Failed rolls must remain failed") enemy.free() assert(successes >= 900 and successes <= 1100) assert(failures > 0 and successes > 0) var boss := script.new() boss.loot_tier = 2 for index in 100: assert(not boss.roll_virus_infection()) boss.free() print("VIRUS_CHANCE_TEST: PASS ", successes, "/2000 first attempts, no rerolls, bosses immune") get_tree().quit()