Needed Talent Description Updates

All development conversation and discussion takes place here

Moderator: Moderator

Message
Author
Zonk
Sher'Tul
Posts: 1067
Joined: Sat Mar 01, 2003 4:01 pm

Re: Needed Talent Description Updates

#16 Post by Zonk »

The Cursed talent 'Dominate' also gives a free attack, but that's not shown in the talent info.
ToME online profile: http://te4.org/users/zonk
Addons (most likely obsolete): Wights, Trolls, Starting prodigy, Alternate save/resistance system

edge2054
Retired Ninja
Posts: 3756
Joined: Fri May 28, 2010 4:38 pm

Re: Needed Talent Description Updates

#17 Post by edge2054 »

Hobbit's Luck

Code: Select all

newTalent{
	short_name = "HOBBIT_LUCK",
	name = "Luck of the Little Folk",
	type = {"base/race", 1},
	no_energy = true,
	cooldown = 50,
	action = function(self, t)
		self:setEffect(self.EFF_HOBBIT_LUCK, 5, {
			physical=10 + self:getCun() / 2,
			spell=10 + self:getCun() / 2,
		})
		return true
	end,
	info = function(self)
		return ([[Call upon the luck and cunning of the Little Folk to increase your physical and spell critical strike chance by %d%% for 5 turns.
		The bonus will increase with the Cunning stat]]):format(10 + self:getCun() / 2, 10 + self:getCun() / 2)
	end,
}
The formatting on the tooltip claims it's 10 + self:getCun() / 5 for both the crit bonuses.

Massimiliano Marangio
Sher'Tul
Posts: 1120
Joined: Mon Sep 30, 2002 9:52 pm
Location: Germany

Re: Needed Talent Description Updates

#18 Post by Massimiliano Marangio »

Beta 13:
Berserker talent: The description still has the variable modifier for armor and defense instead of the flat -10.
Forage talent: The chance of finding better ammo is not dependent on a fixed level (3 and 5).

Zonk
Sher'Tul
Posts: 1067
Joined: Sat Mar 01, 2003 4:01 pm

Re: Needed Talent Description Updates

#19 Post by Zonk »

Beta 13:
The Lightning Speed talent also gives 100% lightning and 30% physical resist, but this isn't mentioned. It definitely should be.
ToME online profile: http://te4.org/users/zonk
Addons (most likely obsolete): Wights, Trolls, Starting prodigy, Alternate save/resistance system

Graziel
Wyrmic
Posts: 234
Joined: Wed Sep 15, 2010 10:32 am

Re: Needed Talent Description Updates

#20 Post by Graziel »

blight.lua

Corrupted Negation

Code: Select all

info = function(self, t)
		return ([[Project a corrupted blast of power that deals %0.2f* blight damage and removes %d magical or physical effects from any creatures caught in the area.
		The damage will increase with Magic stat.
		*Can be critical]]):format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 28, 120)), self:getTalentLevelRaw(t))
	end,
*wrong min damage, added "*Can be critical"

Corrosive Worm

Code: Select all

info = function(self, t)
		return ([[Infect your target with a corrosive worm that deals %0.2f acid damage per turn for 10 turns.
		If the target dies while the worm is inside it will explode doing %0.2f* acid damage in a radius of 4.
		The damage will increase with Magic stat.
		*Can be critical]]):
		format(damDesc(self, DamageType.ACID, self:combatTalentSpellDamage(t, 10, 60)), damDesc(self, DamageType.ACID, self:combatTalentSpellDamage(t, 10, 230)))
	end,
*added duration, "*Can be critical"

Poison Storm

Code: Select all

info = function(self, t)
		return ([[A furious poison storm rages around the caster, poisoning all creatures inside for doing %0.2f nature damage in 6 turns in a radius of 4 for %d turns.
		Poisoning is cumulative, the longer they stay in they higher the poison they take.
		The damage will increase with the Magic stat]]):format(damDesc(self, DamageType.NATURE, self:combatTalentSpellDamage(t, 12, 130)), 5 + self:getTalentLevel(t))
	end,
*removed duration scale with magic
not sure about "in 6 turns" as damage is
local dam = self:combatTalentSpellDamage(t, 12, 130)
so its full damage every turn or im missing something



blood.lua

Blood Spray

Code: Select all

info = function(self, t)
		return ([[You extract corrupted blood from your own body, hitting everything in a frontal cone for %0.2f* blight damage.
		Each affected creature has a %d%% chance of being infected by a random disease doing %0.2f* blight damage over 6 turns.
		The damage will increase with Magic stat.
		*Can be critical]]):format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 10, 190)), 20 + self:getTalentLevel(t) * 10, damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 10, 220)))
	end,
*added "*Can be critical"

Blood Grasp

Code: Select all

info = function(self, t)
		return ([[Projects a bolt of corrupted blood doing %0.2f* blight damage and healing the caster for half the damage done.
		The damage will increase with Magic stat.
		*Can be critical]]):format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 10, 290)))
	end,
*added "*Can be critical"

Blood Boil

Code: Select all

info = function(self, t)
		return ([[Make the blood of all creatures around you boil, doing %0.2f* blight damage and slowing them by 20%%.
		The damage will increase with Magic stat.
		*Can be critical]]):format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 28, 190)))
	end,
*wrong min damage, added "*Can be critical"

Blood Fury

Code: Select all

info = function(self, t)
		return ([[Concentrate on the corruption you bring, increasing your spell critical chance by %d%%.
		Each time your spells are critical you enter a blood rage for 5 turns, increasing your blight and acid damage by %d%%.
		The damage and critical chance will increase with your Magic stat.]]):
		format(self:combatTalentSpellDamage(t, 10, 24), self:combatTalentSpellDamage(t, 10, 30))
	end,
*added "and critical chance"

bone.lua

Bone Spear

Code: Select all

info = function(self, t)
		return ([[Conjures up spear of bones doing %0.2f* physical damage to all targets in line.
		The damage will increase with the Magic stat
		*Can be critical]]):format(damDesc(self, DamageType.PHYSICAL, self:combatTalentSpellDamage(t, 20, 200)))
	end,
*added "*Can be critical"

curses.lua

Curse of Defenselessness

Code: Select all

info = function(self, t)
		return ([[Curses your target, decreasing its defense and saves by %d for 10 turns.
		The defense and saves will decrease with Magic stat.]]):format(self:combatTalentSpellDamage(t, 30, 60))
	end,
*wrong min and max, added "for 10 turns."

Curse of Impotence

Code: Select all

info = function(self, t)
		return ([[Curses your target, decreasing all damage done by %d%% for 10 turns.
		The damage will decrease with Magic stat.]]):format(self:combatTalentSpellDamage(t, 10, 30))
	end,
*added "for 10 turns."

Curse of Death

Code: Select all

info = function(self, t)
		return ([[Curses your target, stopping any natural healing and dealing %0.2f darkness damage each turn for 10 turns.
		The resistances will decrease with Magic stat.]]):format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 10, 70)))
	end,
*added "for 10 turns."

Curse of Vulnerability

Code: Select all

info = function(self, t)
		return ([[Curses your target, decreasing all its resistances by %d%% for 10 turns.
		The resistances will decrease with Magic stat.]]):format(self:combatTalentSpellDamage(t, 10, 60))
	end,
*added "for 10 turns."

hexes.lua

Pacification Hex

Code: Select all

info = function(self, t)
		return ([[Hexes your target for 20 turns, dazing it for 3 turns and giving %d%% chance to daze it again each turn.
		The chance will increase with Magic stat.]]):format(self:combatTalentSpellDamage(t, 30, 50))
	end,
*added "for 20 turns."

Burning Hex

Code: Select all

info = function(self, t)
		return ([[Hexes your target for 20 turns. Each time it uses a resource (stamina, mana, vim, ...) it takes %0.2f fire damage.
		The damage will increase with Magic stat.]]):format(damDesc(self, DamageType.FIRE, self:combatTalentSpellDamage(t, 4, 90)))
	end,
*added "for 20 turns."

Empathic Hex

Code: Select all

info = function(self, t)
		return ([[Hexes your target for 20 turns. Each time it does damage it takes %d%% of the same damage.
		The damage will increase with Magic stat.]]):format(self:combatTalentSpellDamage(t, 4, 20))
	end,
*added "for 20 turns."

plagues.lua
Epidemic

Code: Select all

info = function(self, t)
		return ([[Infects the target with a very contagious disease doing %0.2f damage per turn for 6 turns.
		If any blight damage from non-diseases hits the target, the epidemic will activate and spread diseases to nearby targets.
		The damage will increase with your Magic stat.]]):
		format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 15, 50)))
	end,
*added "The damage will increase with your Magic stat."


reaving-combat.lua

Code: Select all

on_unlearn = function(self, t)
		if not self:knowTalent(t) then
			self:attr("allow_any_dual_weapons", -1)
		end
	end,
*added condition when unlearing talent

combat.lua
bloodlust - there is something strange desc says that its spellpower but in code we see its duration

Code: Select all

if self:hasEffect(self.EFF_BLOODLUST) then
		add = add + self:hasEffect(self.EFF_BLOODLUST).dur
	end
Acid Blood

Code: Select all

info = function(self, t)
		return ([[Your blood turns into an acidic mixture. When you get hit the attacker is splashed with acid.
		This deals %0.2f acid damage each turn for 5 turns and reduces the attacker attack by %d.
		At level 3 it will also reduce armour by %d for 5 turns.
		The damage will increase with your Magic stat.]]):
		format(damDesc(self, DamageType.ACID, self:combatTalentSpellDamage(t, 5, 30)), self:combatTalentSpellDamage(t, 15, 35), self:combatTalentSpellDamage(t, 15, 40))
	end,
*added "for 5 turns.", "The damage will increase with your Magic stat."

sanguisuge.lua
Drain

Code: Select all

info = function(self, t)
		return ([[Fires a bolt of blight, doing %0.2f* blight damage and replenishing 20%% of it as vim energy.
		The effect will increase with your Magic stat.
		*Can be critical]]):
		format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 25, 200)))
	end,
*wrong min damage, added "*Can be critical"

scourge.lua
Acid Strike

Code: Select all

info = function(self, t)
		return ([[Strike with each of your weapons, doing %d%% acid weapon damage. If at least one of the strikes hits an acid splash is generated doing %0.2f* acid damage.
		The splash damage will increase with your Magic stat.
		*Can be critical]]):
		format(100 * self:combatTalentWeaponDamage(t, 0.8, 1.6), damDesc(self, DamageType.ACID, self:combatTalentSpellDamage(t, 10, 130)))
	end,
*added "*Can be critical"

shadowflame.lua
Darkfire

Code: Select all

info = function(self, t)
		return ([[Conjures up a bolt of shadowflame moving toward the target that explodes into a flash of darkness and fire doing %0.2f* fire damage and %0.2f* darkness damage in a radius of %d.
		The damage will increase with the Magic stat
		*Can be critical]]):format(
			damDesc(self, DamageType.FIRE, self:combatTalentSpellDamage(t, 28, 220) / 2),
			damDesc(self, DamageType.DARKNESS, self:combatTalentSpellDamage(t, 28, 220) / 2),
			1 + self:getTalentLevelRaw(t)
		)
	end,
*added "*Can be critical"

Flame of Urh'Rok

Code: Select all

info = function(self, t)
		local e = self:getTalentFromId(self.T_DEMON_PLANE)
		if e then
			local heal = self:combatTalentSpellDamage(e, 12, 140)
		end
		return ([[Call upon the essence of the supreme demon overlord Urh'Rok to turn into a demon.
		While in demon form you gain %d%% fire resistance, %d%% darkness resistance and your global speed is increased by %d%%.
		The flames of the demon plane will heal you for %0.2f while in demon form.
		The resistances and heal will increase with Magic stat.]]):
		format(
			self:combatTalentSpellDamage(t, 20, 30), self:combatTalentSpellDamage(t, 20, 35),
			self:getTalentLevel(t) * 3,heal
		)
	end,
*wrong max value in darkness res, changed "bonuses" to "resistances and heal", code changes are untested

vim.lua

Soul Rot

Code: Select all

info = function(self, t)
		return ([[Projects a bolt of pure blight, doing %0.2f* blight damage.
		This spell has an improved critical strike chance of +%0.2f%%.
		The damage will increase with Magic stat.
		*Can be critical]]):format(self:combatTalentSpellDamage(t, 20, 250), self:getTalentLevel(t) * 5)
	end,
*added "*Can be critical"

Dark Portal

Code: Select all

info = function(self, t)
		return ([[Open a dark portal to the target zone, all creatures caught inside will be teleported to your location and you to theirs.
		All creatures(except you) traversing the portal will catch a random disease doing %0.2f blight damage per turn for 6 turns and reducing one of its physical stats (strength, constitution, dexterity) by %d.
		The damage will increase with the Magic stat]]):format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 12, 80), self:combatTalentSpellDamage(t, 5, 25)))
	end,
*added "and reducing one of its physical stats (strength, constitution, dexterity) by %d." using same code as in "Virulent Disease"
You are likely to be eaten by a grue

yufra
Perspiring Physicist
Posts: 1332
Joined: Tue Jul 13, 2010 2:53 pm

Re: Needed Talent Description Updates

#21 Post by yufra »

Martydom doesn't report the length of the effect:

Code: Select all

return ([[Designate a target as martyr for 10 turns. When the martyr deals damage it also damages itself for %d%% of its damage dealt.
		The damage percent will increase with the Magic stat]]):
		format(
			8 * self:getTalentLevelRaw(t)
		)
<DarkGod> lets say it's intended

edge2054
Retired Ninja
Posts: 3756
Joined: Fri May 28, 2010 4:38 pm

Re: Needed Talent Description Updates

#22 Post by edge2054 »

Graziel, I don't know that every spell needs to clarify rather or not it can crit. It's not a bad thought but it IS a huge can of worms.

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

Re: Needed Talent Description Updates

#23 Post by darkgod »

dixed
[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 ;)

Mushroomhermit
Thalore
Posts: 159
Joined: Wed Jul 07, 2010 4:11 pm
Location: The Intardnet

Re: Needed Talent Description Updates

#24 Post by Mushroomhermit »

darkgod wrote:dixed
New sig.
darkgod wrote:dixed

Graziel
Wyrmic
Posts: 234
Joined: Wed Sep 15, 2010 10:32 am

Re: Needed Talent Description Updates

#25 Post by Graziel »

well i sometimes like to create 'critical' build to test and play so i think its not bad to have such info, sadly not all spells can critic.

cunning

lethality.lua

Snap

Code: Select all

info = function(self, t)
		return ([[Your quick wits allow you to reset the cooldown of %d of your combat talents(cunning or technique categories) of level %d or less.]]):
		format(math.ceil(self:getTalentLevel(t) + 2), self:getTalentLevelRaw(t))
	end,
*added "(cunning or technique categories)"

stealth.lua

Unseen Actions - tottaly broken skill in Actions.lua

Code: Select all

if self.unseenForces then
		local t = self:getTalentFromId(self.T_UNSEEN_FORCES)
		t.do_unseenForces(self, t)
	end
traps.lua
Sticky Smoke

Code: Select all

info = function(self, t)
		return ([[Throws a vial of sticky smoke that explodes on your foe, reducing its vision range by %d for 7 turns.
		This can be used while stealthed.]]):
		format(math.ceil(self:getTalentLevel(t) * 2.5))
	end,
*wrong duration
You are likely to be eaten by a grue

Graziel
Wyrmic
Posts: 234
Joined: Wed Sep 15, 2010 10:32 am

Re: Needed Talent Description Updates

#26 Post by Graziel »

divine

Martyrdom

Code: Select all

info = function(self, t)
		return ([[Designate a target as martyr for 10 turns. When the martyr deals damage it also damages itself for %d%% of its damage dealt.
		The damage percent will increase with the Magic stat]]):
		format(
			8 * self:getTalentLevelRaw(t)
		)
	end,
*added "for 10 turns"


glyphs.lua
Glyph of Repulsion

Code: Select all

info = function(self, t)
		return ([[You bind light in a glyph on the floor. All targets passing by will be hit by a blast of light doing %0.2f damage and knocked back.
		The glyph lasts for %d turns.
		The damage will increase with the Magic stat]]):format(15 + self:combatSpellpower(0.12) * self:getTalentLevel(t), 5 + self:getTalentLevel(t))
	end,
*wrong duration

Glyph of Paralysis

Code: Select all

info = function(self, t)
		return ([[You bind light in a glyph on the floor. All targets passing by will be dazed for %d turns.
		The glyph lasts for %d turns.]]):format(2 + self:getTalentLevelRaw(t), 5 + self:getTalentLevel(t))
	end,
*wrong daze duration

hymns.lua

Hymn of Moonlight

Code: Select all

info = function(self, t)
		return ([[Conjures a shroud of dancing shadows with a radius of 5 that follows you as long as this spell is active.
		Each turn a random shadow beam will hit up to %d of your foes for 1 to %0.2f* damage.
		This powerful spell will continuously drain %d negative energy while active.
		The damage will increase with the Magic stat
		*Can be critical]]):format(self:getTalentLevel(t), damDesc(self, DamageType.DARKNESS, self:combatTalentSpellDamage(t, 7, 80)), self:getTalentLevelRaw(t))
	end,
*added "*Can be critical", negative energy drain/turn

light.lua

Healing Light

Code: Select all

info = function(self, t)
		return ([[An invigorating ray of Sunlight shines on you, healing your body for %d* life.
		The life healed will increase with the Magic stat
		*Can be critical]]):format(self:combatTalentSpellDamage(t, 20, 240))
	end,
*added "*Can be critical"

star-fury.lua

Moonlight Ray

Code: Select all

info = function(self, t)
		return ([[Calls the power of the Moon into a beam of shadows doing %0.2f* damage.
		The damage will increase with the Magic stat
		*Can be critical]]):format(damDesc(self, DamageType.DARKNESS, self:combatTalentSpellDamage(t, 14, 230)))
	end,
*added "*Can be critical"

Twilight Surge

Code: Select all

info = function(self, t)
		return ([[A surge of twilight pulses from you, doing %0.2f* light and %0.2f* darkness damage in a radius of %d.
		It also regenerates both your negative and positive energies.
		The damage will increase with the Magic stat
		*Can be critical]]):
		format(
			damDesc(self, DamageType.LIGHT, 10 + self:combatSpellpower(0.2) * self:getTalentLevel(t)),
			damDesc(self, DamageType.DARKNESS, 10 + self:combatSpellpower(0.2) * self:getTalentLevel(t)),
			self:getTalentRange(t)
		)
	end,
*wrong light/darkness damage, added "*Can be critical"

Starfall

Code: Select all

info = function(self, t)
		return ([[A star falls into area of radius %d, stunning all for 4 turns and doing %0.2f* darkness damage.
		The damage will increase with the Magic stat
		*Can be critical]]):format(1 + math.floor(self:getTalentLevelRaw(t) / 3,damDesc(self, DamageType.DARKNESS, self:combatTalentSpellDamage(t, 28, 170)))
	end,
*added "*Can be critical", radius, duration

sun.lua

Searing Light

Code: Select all

info = function(self, t)
		return ([[Calls the power of the Sun into a searing lance doing %0.2f* damage and leaving a spot on the ground for 4 turns doing %0.2f damage.
		The damage will increase with the Magic stat
		*Can be critical]]):format(damDesc(self, DamageType.LIGHT, self:combatTalentSpellDamage(t, 6, 160)), self:combatTalentSpellDamage(t, 6, 80))
	end,
*added "*Can be critical"

Sun Flare

Code: Select all

info = function(self, t)
		return ([[Invokes a Sun flare of radius %d, blinding your foes dor %d turns and lighting up your immediate area.
		At level 3 it will start dealing %0.2f light damage.
		The damage will increase with the Magic stat]]):
		format(2 + self:getTalentLevel(t) / 2,3 + self:getTalentLevel(t),damDesc(self, DamageType.LIGHT, self:combatTalentSpellDamage(t, 4, 80)))
	end,
*added radius, duration

Firebeam

Code: Select all

info = function(self, t)
		return ([[Fire a beam of Sun flames at your foes, burning all those in line for %0.2f* fire damage.
		The damage will increase with the Magic stat
		*Can be critical]]):
		format(damDesc(self, DamageType.FIRE, self:combatTalentSpellDamage(t, 10, 200)))
	end,
*added "*Can be critical"

Sunburst

Code: Select all

info = function(self, t)
		return ([[Conjures a furious burst of Sunlight, dealing %0.2f* light damage to all those around you in a radius of 3.
		The damage will increase with the Magic stat
		*Can be critical]]):format(damDesc(self, DamageType.LIGHT, self:combatTalentSpellDamage(t, 10, 160)))
	end,
*wrong radius, added "*Can be critical"

twilight.lua

Twilight

Code: Select all

info = function(self, t)
		return ([[You stand between the darkness and the light, allowing you to convert 15 positive energy into %d negative energy.]]):
		format(20 + 20 * self:getTalentLevel(t))
	end,
*wrong value
You are likely to be eaten by a grue

yufra
Perspiring Physicist
Posts: 1332
Joined: Tue Jul 13, 2010 2:53 pm

Re: Needed Talent Description Updates

#27 Post by yufra »

Stunning blow should have the stun duration in it, or at least mention that it improves with talent level.

Code: Select all

	info = function(self, t)
		return ([[Hits the target with your weapon doing %d%% damage. If the attack hits, the target is stunned for %d turns.]]):format(
			100 * self:combatTalentWeaponDamage(t, 1, 1.5),
			2 + self:getTalentLevel(t)
	)
	end,
<DarkGod> lets say it's intended

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

Re: Needed Talent Description Updates

#28 Post by darkgod »

Graziel if you plan to continue the updating, then I suggest you grab the svn version, update it then create a diff.
Under linux this is like:
svn diff > foo.diff

Under windows, I'm sure other people can guide you through, but it'll mean you wont have to type it all up here and I wont have to copy/paster it and apply it manualy :)
Pretty please :)
[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 ;)

edge2054
Retired Ninja
Posts: 3756
Joined: Fri May 28, 2010 4:38 pm

Re: Needed Talent Description Updates

#29 Post by edge2054 »

Since I'm working on the Divine stuff and planning to send DG a diff here in a few days I don't mind fixing the talent descriptions (for the divine stuff). Also some of the ability descriptions might change anyway because of what I'm working on (assuming of course DG likes and accepts the changes I'm proposing).

I'm not adding Can be critical though because what can and can not crit is generally pretty intuitive (if anything effects that can't crit should be pointed out rather then the other way around). Also it's just not how it should be written if it was written.

"This ability is capable of a critical strike" or something along those lines would fit better with the language used in talent descriptions. Can be critical is not a complete sentence and every other talent uses complete sentence structure.

Graziel
Wyrmic
Posts: 234
Joined: Wed Sep 15, 2010 10:32 am

Re: Needed Talent Description Updates

#30 Post by Graziel »

@edge2054
if you dont like "Can be critical" you can always "find and replace" if you think you can make a better "complete sentence" its up to you.

as for "This ability is capable of a critical strike" its not "ability" but "talent" and its not "This ability" but some of effects can be critical (damage/heal), thats why there are asterix marks on some of effects,

its "*Can be critical" as it doesnt take up much space and i find it better than "*This particular effect can be critical and thus deal 150% of its basic value"

@darkgod

ill try but i find it better solution to post it here as it takes only about 20 sec to post new desc and this way any coders can see if its already changed or comment on change.
You are likely to be eaten by a grue

Post Reply