diff --git a/game/modules/tome/class/GameState.lua b/game/modules/tome/class/GameState.lua
index c0b8c47d5bd7bfb82482de7e9cf45fe61ef26b5e..ba22b2f0feff907757b8277bc95f896acd0d902a 100644
--- a/game/modules/tome/class/GameState.lua
+++ b/game/modules/tome/class/GameState.lua
@@ -2096,8 +2096,6 @@ function _M:applyRandomClass(b, data, instant)
 		end
 		if data.autolevel ~= false then b.autolevel = data.autolevel or "random_boss" end
 		
-		local tt_unlocked = {} -- unlocked categories by base 
-		local tt_locked = {} -- locked categories by base
 		-- Class talent categories
 		local ttypes = {}
 		for tt, d in pairs(mclass.talents_types or {}) do b:learnTalentType(tt, true) b:setTalentTypeMastery(tt, (b:getTalentTypeMastery(tt) or 1) + d[2]) ttypes[tt] = table.clone(d) end
@@ -2176,11 +2174,11 @@ function _M:applyRandomClass(b, data, instant)
 			nb_focus = math.floor(0.2 + rng.float(0.25, 0.35)*(math.max(0,data.level))^0.55) -- first around 8-10, second around 25-35, third around 50-70
 			nb_shallow = 2 + math.floor(0.25 + rng.float(0.1, 0.2)*(math.max(0,data.level))^0.6) -- third around 12-30, fourth 40-80
 		elseif rank >= 4 then 	--boss/elite boss 
-			nb_focus = 1 + math.floor(0.25 + rng.float(0.12, 0.33)*(math.max(0,data.level-4))^0.5) -- second around 10-16, third around 30-50, fourth around 60-85 uncommonly
-			nb_shallow = 1 + math.floor(0.33 + rng.float(0.1, 0.18)*(math.max(0,data.level-3))^0.6) -- second around 12-20, third 40-80
+			nb_focus = 1 + math.floor(0.25 + rng.float(0.18, 0.33)*(math.max(0,data.level-4))^0.5) -- second around 11-23, third around 35-75, fourth around 80-90 rarely
+			nb_shallow = 1 + math.floor(0.33 + rng.float(0.125, 0.2)*(math.max(0,data.level-3))^0.6) -- second around 12-20, third 40-80
 		else 					--unique
-			nb_focus = 1 + math.floor(0.2 + rng.float(0.1, 0.3)*(math.max(0,data.level-10))^0.5) -- second around 17-30, third around 40-80 
-			nb_shallow = 1 + math.floor(0.7 + rng.float(0.1, 0.2)*(math.max(0,data.level-8))^0.6) -- second around 12-14, third around 30-70, fourth around 70-90 rarely
+			nb_focus = 1 + math.floor(0.2 + rng.float(0.15, 0.3)*(math.max(0,data.level-10))^0.5) -- second around 20-40, third around 50-90 
+			nb_shallow = 1 + math.floor(0.7 + rng.float(0.125, 0.2)*(math.max(0,data.level-8))^0.6) -- second around 11-14, third around 30-60, fourth around 70-90 rarely
 		end
 		print("Adding "..nb_focus.." primary trees to boss")
 		print("Adding "..nb_shallow.." secondary trees to boss")