[1.0.5] Defiling Touch 6+ doesn't do diddly squat

Where bugs go to lie down and rest

Moderator: Moderator

Post Reply
Message
Author
Impossiburu
Low Yeek
Posts: 6
Joined: Thu Mar 21, 2013 8:01 pm

[1.0.5] Defiling Touch 6+ doesn't do diddly squat

#1 Post by Impossiburu »

Hi,

To reproduce:
1) Pick a cursed/doomed cornac
2) Activate the cursed aura tree
3) Put a category point in it
4) Level defiling touch to 5

Expected: rings should be cursed.

Result: rings are not cursed.

Moander
Halfling
Posts: 88
Joined: Fri Jan 06, 2012 11:48 am

Re: [1.0.5] Defiling Touch 6+ doesn't do diddly squat

#2 Post by Moander »

I think I have found the cause, the code checks the raw talent level, 5, not the effective level, 6 if the 'level' parameter is nill, which it always is.

If you change row 56 in /data/talents/cursed/cursed-aura.lua from

Code: Select all

level = level or self:getTalentLevelRaw(t)
to

Code: Select all

level = level or getTalentLevel(t) 
it works.

Hachem_Muche
Uruivellas
Posts: 744
Joined: Thu Nov 18, 2010 6:42 pm

Re: [1.0.5] Defiling Touch 6+ doesn't do diddly squat

#3 Post by Hachem_Muche »

This is a bug that slipped through during all the scaling changes. The actual fix is:

Code: Select all

 game/modules/tome/data/talents/cursed/cursed-aura.lua | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/game/modules/tome/data/talents/cursed/cursed-aura.lua b/game/modules/tome/data/talents/cursed/cursed-aura.lua
index df43d26..dda4701 100644
--- a/game/modules/tome/data/talents/cursed/cursed-aura.lua
+++ b/game/modules/tome/data/talents/cursed/cursed-aura.lua
@@ -53,7 +53,7 @@ newTalent{
 		-- mainhand (weapon), offhand (weapon/armor;shield), psionic (weapon)
 		-- finger (X2), neck (jewelry)
 		-- lite (lite), tool (tool), quiver (ammo), gem (alchemist-gem)
-		level = level or self:getTalentLevelRaw(t)
+		level = level or self:getTalentLevel(t)
 		if level >= 1 and item.type == "weapon" then return true end
 		if level >= 2 and item.type == "armor" and (item.slot == "BODY" or item.slot == "CLOAK")  then return true end
 		if level >= 3 and item.type == "armor" and (item.slot == "HEAD" or item.slot == "OFFHAND")  then return true end
@@ -232,6 +232,8 @@ newTalent{
 			end
 		end
 	end,
+	passives = function(self, t, p) -- force update on talent mastery changes
+	end,
 	on_learn = function(self, t)
 		t.curseInventory(self, t)
 		t.curseFloor(self, t, self.x, self.y)
The passives function makes sure things update correctly when talent mastery is updated.
Author of the Infinite 500 and PlenumTooltip addons, and the joys of Scaling in ToME.

darkgod
Master of Eyal
Posts: 10751
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: [1.0.5] Defiling Touch 6+ doesn't do diddly squat

#4 Post by darkgod »

fixed
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

Post Reply