diff --git a/game/modules/tome/class/Game.lua b/game/modules/tome/class/Game.lua
index c594f2d033795dd5bbc117c0c086b940f38524ab..ffdf7a7b54d6b4c331ea8c687cc753fc42e63b8c 100644
--- a/game/modules/tome/class/Game.lua
+++ b/game/modules/tome/class/Game.lua
@@ -1115,14 +1115,17 @@ function _M:setupCommands()
 			end end
 		end end,
 		[{"_g","ctrl"}] = function() if config.settings.cheat then
-			local m = game.zone:makeEntity(game.level, "actor", {random_elite={}}, nil, true)
-
-			if m then game.zone:addEntity(game.level, m, "actor", self.player.x, self.player.y-1) end
+			local l = {}
+			for tt, d in pairs(mod.class.Actor.talents_types_def) do
+				if d.generic and type(tt) == "string" and not tt:find("other") and not tt:find("race/") and not tt:find("undead/") then l[#l+1] = tt end
+			end
+			table.sort(l)
+			for i, tt in ipairs(l) do print(tt) end
 		end end,
 		[{"_f","ctrl"}] = function() if config.settings.cheat then
 			self.player.quests["love-melinda"] = nil
 			self.player:grantQuest("love-melinda")
-			self.player:hasQuest("love-melinda"):melindaWarrior(self.player)
+			self.player:hasQuest("love-melinda"):melindaCompanion(self.player, "Defiler", "Corruptor")
 		end end,
 	}
 
diff --git a/game/modules/tome/data/quests/love-melinda.lua b/game/modules/tome/data/quests/love-melinda.lua
index d34e770ad2e93e9a6d749b4b55d3e23e3ae89247..234fd07e9e702ea23a41b9498dfbaa9e28c27f88 100644
--- a/game/modules/tome/data/quests/love-melinda.lua
+++ b/game/modules/tome/data/quests/love-melinda.lua
@@ -79,7 +79,7 @@ function spawnFortress(self, who) game:onTickEnd(function()
 	who:setQuestStatus(self.id, self.COMPLETED, "moved-in")
 end) end
 
-function melindaWarrior(self, who)
+function melindaCompanion(self, who, c, sc)
 	for uid, e in pairs(game.level.entities) do if e.define_as == "MELINDA_NPC" then e:disappear() end end
 
 	local melinda = require("mod.class.Player").new{name="Melinda"}
@@ -90,8 +90,8 @@ function melindaWarrior(self, who)
 	birth:setDescriptor("permadeath", "Roguelike")
 	birth:setDescriptor("race", "Human")
 	birth:setDescriptor("subrace", "Cornac")
-	birth:setDescriptor("class", "Warrior")
-	birth:setDescriptor("subclass", "Fighter")
+	birth:setDescriptor("class", c)
+	birth:setDescriptor("subclass", sc)
 	birth.actor = melinda
 	birth:apply()
 	melinda.image = "player/cornac_female_redhair.png"
@@ -104,7 +104,7 @@ function melindaWarrior(self, who)
 	melinda:forceLevelup(who.level)
 
 	game.party:addMember(melinda, {
-		control="full", type="companion", title="Melina",
+		control="full", type="companion", title="Melinda",
 		orders = {target=true, leash=true, anchor=true, talents=true, behavior=true},
 	})
 end
diff --git a/game/modules/tome/dialogs/Birther.lua b/game/modules/tome/dialogs/Birther.lua
index dd176aa14b2388d68a602ceb74602678dc0f7faa..e0fb13446678f03e797d0247752c8c135a1fcee9 100644
--- a/game/modules/tome/dialogs/Birther.lua
+++ b/game/modules/tome/dialogs/Birther.lua
@@ -281,7 +281,7 @@ function _M:makeDefault()
 	self:setDescriptor("race", "Human")
 	self:setDescriptor("subrace", "Higher")
 	self:setDescriptor("class", "Warrior")
-	self:setDescriptor("subclass", "Archer")
+	self:setDescriptor("subclass", "Berserker")
 	__module_extra_info.no_birth_popup = true
 	self:atEnd("created")
 end