package tuning import "testing" // Defaults must keep equipment drop and gold scaling positive so marginal per-slot // equipment chances (EquipmentDropBase × slot weight) stay non-zero. func TestDefaultLootTuning_nonZeroEquipmentAndGoldScale(t *testing.T) { d := DefaultValues() if d.EquipmentDropBase <= 0 { t.Fatal("default EquipmentDropBase must be > 0 so equipment can drop") } if d.EquipmentDropBase > 1 { t.Fatal("default EquipmentDropBase should be a probability in (0,1]") } if d.GoldLootScale <= 0 { t.Fatal("default GoldLootScale must be > 0") } if d.GoldDropChance <= 0 || d.GoldDropChance > 1 { t.Fatalf("default GoldDropChance must be in (0,1], got %v", d.GoldDropChance) } // Potion is independent; allow 0 only if explicitly intended (currently 0.05). if d.PotionDropChance < 0 || d.PotionDropChance > 1 { t.Fatalf("PotionDropChance out of range: %v", d.PotionDropChance) } }