[1.0] Various bugs and issues.

Where bugs go to lie down and rest

Moderator: Moderator

Post Reply
Message
Author
drayath
Wayist
Posts: 22
Joined: Sat Nov 27, 2010 10:53 pm

[1.0] Various bugs and issues.

#1 Post by drayath »

A few specific bugs and balance issues from the scribbles in my notebook, in general 1.0 looking good.

General UI Bugs

On startup window bottom-right is always off the screen (1920x1280 screen res, tried deleting local profile). Trivial but first thing a player sees.


Save game issues

If you die, res with blood of life and the game crashes before leaving the level there is no game save to reload. Suspect that the resurection code should always force a save after the res has happened as the origional save will have been deleted on death.



Icon Bar issues

Right click on item activations in ui bar removes the icon, where as on skills it shows the auto use dialog. (ideally should be able to set auto use for item activation, probably to use only when fully charged and meets the conditition)

If an unequiped item is in the ui bar clicking it equips it using a turn, need to then click it again using another turn to activate. There need to be some indication to the user (icon overlay etc) that the icon is for an unequiped item as a turn lost at the wrong time can be lethal.

On that note, the biggest cause of this is equiping digger to dig through a wall and then requiping (or forgetting to) the normal tool item, could i suggest that with the addition of all the new(ish) tool slot items that either
A) Diggers be made usable from the backpack (and thus only dig speed is a relevent stat)
B) Alternativly diggers are removed entirely, everyone gets a new item granting the dig skill and dig speed increases are added to properties on some egos (e.g. The 'of Mining' ego on helms and boots)

Character Sheet

Does not display telephay details correctly if have multile sources (range appears to be added, even though in game the range of the different type is considered seperatly).
E.g.
Have the earth eyes telephay All/6 range which is not presently active because not meditating,
Have boots to demon telephay/4 range
Character sheet shows telephay all/10 range (where earth eye telephay is active or not)
In game works correctly (demon seen at 4 always, all seen at 6 only if earth eyes telephay active)

The resistance summary is confusing to new players (comination of all/actual resists), it may be clearer to just display a list of all the damage tyes and there present resistance and not show a seperate resist all item. Had two people i've introduce to the game think that they will get both the displayed resist all & the shown specific resist)

Tactical AI

Does not use activatable items (can test with adding such items to the alcamists golem). Is it possible to add at least for the items that can be activated for a normal skill use (thus will have the ai usage tags from the existing skill).


Arcance/Distuption Shield skill

Needs to show in the buff tooltip how much damage it will do to the player as it can instant kill the player if you let it get too high.

Need to make it clear that the arcane resist bonus on explosion still obeys you arcane max resist cap - present arcane penetraion (display can indicate giveing over 100% arcane resist, and other arcane skills can give the penetration to reduce the cap to an effective 25% where the player expects it to be 100%!)

On that note: (from b43 ID with 'fix high level skill scaling' addon)
A) If you level up and disruption shield is active, could your present mana only increase to 50% not 100%. (on my last ID game 6 out of 8 deaths were due to this. If you have a spell in flight sequence is; beam etc a monster and kill it, level up, gives 100% mana, your projectile movement from spell cast last turn competes (e.g. fireflah), explodes, you then take the full spell damage, and kick of the arcane storm from the disrution shield, enemies spend a turn damaging you, now try to survive 10 more turns of the arcane vortex if still alive.
B) Some cap on disruption shield damage may be sensible:
i) quick fix, remove and re-add sustain on all level changes (should stop most accidental certain deaths of leaving it up for half the game, the other 2 deaths were both instant death were from a detonating arcane vortex doing 4000+ damage a turn (after 70% resist)!)
ii) set some sort of max cap on stored damage before exploding (e.g. 10*max life, you will be at resist cap so will 1/3 of you life per turn for 10 turns. Should still be a good chance of surviving escape enemies + shield, healing & regen).



Summoner

Tactical AI setting for PC. Once you have summon control you can get the tactical skill use weights on the summon and the PC (for its behavour while you control a summon). However as soon as an enemy is seen seems to ignore your weights (e.g. all summons to 0) and passive setting and cast summons and/or charges the enemy.

Grand arrival description should indicate the effect power increases with level as well as radius (e.g. get 1 bonus fire drake hatchlings at level 1 but 3 at level 6.5)

Should the bonus fire drake hatchling(s) count against the summon limit? Is so could there be some way of getting rid of them as at low-mid level they can easy end up filling most/all of your summon slots. Suggest that detonating the fire drake should also remove hatchlings (bonus explode power for number still alive?), or just have them removed if the fire drake that caused them to be summoned dies.

A few of the grand arrival effects still seem to affect friendies (seen by friendly going hostile in lost merchent quest and in the woodcutters village)

Summoned creatures dont get any additional HP from the extra con that they get from the summons skill (either from specific summon skill or Resiliance). Not checked but do they also get the addition to mana/equib/psi/stamina etc from from the other stats. Balance: If fixed may want to review the ammount of con given to player and npc summons at this could be a large hp boost to some summons.
Note: Summon turtle, jelly, fire drake are the main summoner skills affected. but most all can get at least 10-30 bonus con from skills.

Resiliance: Resiliance bonus hp from con presently dont work, but even so +40 hp at level 5 is a pittance. Could i suggest that insead of bonus hp it instead gives summon 2 levels of thick skin per raw level (e.g. 30% resist all at level 5). A more even bonus across the different summon types (with different base hp pools), and when fighing summons (as PC or NPC) resistance penetration is still useful.

You can summon while in an ice block, is this intended. (assume applies to all class/race/protogy summon skills)

You count as an enemy to your own summons while in a ice block, this means (assume applies to all class/race/protogy summon skills)
A) friendly summon grand arrival effects like the turtle heal dont effect you
B) You are considered a valid target by you own summons, this can result in death for their aoe by accident though i suspect they will also target you delibertly if no enemies in sight.
C) Belive both detonation and grand arrive affect also effect you but can't remember if i specifically tested (at the time was a bit annoyed that the drake i summon to protect me while i was trapped killed me instead!)

Balance: The grand arrival effect of the hydra does almost no damage (at summon level 6.5 and grand arrival level 6.5), other arrival explosion can do a few hundred damage, the poison aoe does ~10 per turn for <10 turns. Believe that this is also one of the ones that still affect friendies.

Balance/intresting: Rimebark grand arrival (reduce cold resist explosion), the rimebark is your only source of ice damage, and not only does it not do a lot the main tactical use for it is to block an area with it radius 3, 25% chance of freezing enemies. Would be more intresting if the summon effect was instead an Ice Wave to help the rimebark blocking effect. (Themic nature version of the Tidial Wave spell, suggest radius 2 (e.g. 1 less than ice storm), duration 3-6 (based on grand arrival level)). I would note the Wild Summon bonus (+arcane resist) is also unintresting and mostly useless (suggestion: skill that does a single target ranged 6 100% freeze (no damage but reasonable ice block size), cooldown 10 (therfore 1 use, 2 if max level smmon/resiliance and still alive?))

Balance: Rage is useless. at max level on a character with ~70 mind power it add ~20 to all stats and take a turn to cast (high level summoned creatures tend towards ~200 on their important stats), in addition the bonus con is not to helpful as it raises the max hp, but not the present value. Suggestion
A) when increasing max hp (from con) also increase present hp by the same ammount.
B) Make it worthile to cast and a bit more tactical either:
i) Up the bonus sligtly (more skill level scaling) and make it instant cast but still single target.
ii) leave the power and cast time, up the duration a bit but but have it affect all present summons.


Nightmare Mode

Adventure parties could do with scaling down a tad (as well tooled summoners 3 deaths out of 3 encounters after being trapped in corners of the map, too many abilities doing 1 hit kills)

Rescue sacrifice dungeon grants random instant death, if the stairs appears in line of site or 2+ of the 3x3 vaults, the first turns volume of bloodspray (plus other stuff incoming if that was not enough) is certain death for almost anyone (2 deaths of 2 visits on level 3). (other than than just extremly hard & dangerous but use of diggers, summons etc. make it possible). Could i make a suggestion that due to the very small and dense levels, plus volume of heavy ranged damage that the generator is adjusted that the dungeon levels is generated without stairs, then the stairs are randomally generated one tile aways from open space and a set of doors added to the open space (E.g. stairs are always in a 1x1 room with a door).

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

Re: [1.0] Various bugs and issues.

#2 Post by Hachem_Muche »

Arcance/Distuption Shield skill
Below is a patch that I believe fixes the problems with this skill. I have put in a limit equal to 2x (adjustable with one constant) the actor's total mana pool (included the cost of all sustains) to the overall damage done by the arcane storm, and have added code so that an actor with Disruption shield up only recovers half of its missing mana on levelup.

Code: Select all

Index: game/modules/tome/class/Actor.lua
===================================================================
--- game/modules/tome/class/Actor.lua	(revision 6345)
+++ game/modules/tome/class/Actor.lua	(working copy)
@@ -2561,8 +2561,14 @@
 	self:incMaxPsi(self.psi_rating)
 
 	-- Heal up on new level
-	self:resetToFull()
-
+	if self:attr("disruption_shield") then -- Disruption shield is special
+		local mana = self.mana
+		self:resetToFull()
+		self.mana = (self.mana + mana)/2
+	else
+		self:resetToFull()
+	end
+	
 	-- Auto levelup ?
 	if self.autolevel then
 		engine.Autolevel:autoLevel(self)

Index: game/modules/tome/data/talents/spells/arcane.lua
===================================================================
--- game/modules/tome/data/talents/spells/arcane.lua	(revision 6345)
+++ game/modules/tome/data/talents/spells/arcane.lua	(working copy)
@@ -139,10 +139,17 @@
 	tactical = { MANA = 3, DEFEND = 2, },
 	getManaRatio = function(self, t) return math.max(3 - self:combatTalentSpellDamage(t, 10, 200) / 100, 0.5) * (100 - util.bound(self:attr("shield_factor") or 0, 0, 70)) / 100 end,
 	getArcaneResist = function(self, t) return 50 + self:combatTalentSpellDamage(t, 10, 500) / 10 end,
+	getMaxDamage = function(self, t) -- Compute damage limit
+		local max_dam = self.max_mana
+		for i, k in pairs(self.sustain_talents) do -- Add up sustain costs to get total mana pool size
+			max_dam = max_dam + self.talents_def[i].sustain_mana or 0
+		end
+		return max_dam * 2 -- Maximum damage is 2x total mana pool
+	end,
 	on_pre_use = function(self, t) return (self:getMana() / self:getMaxMana() <= 0.25) or self:hasEffect(self.EFF_AETHER_AVATAR) or self:attr("disruption_shield") end,
 	explode = function(self, t, dam)
 		game.logSeen(self, "#VIOLET#%s's disruption shield collapses and then explodes in a powerful manastorm!", self.name:capitalize())
-
+		dam = math.min(dam, t.getMaxDamage(self, t)) -- Damage cap
 		-- Add a lasting map effect
 		self:setEffect(self.EFF_ARCANE_STORM, 10, {power=t.getArcaneResist(self, t)})
 		game.level.map:addEffect(self,
@@ -189,10 +196,10 @@
 	info = function(self, t)
 		return ([[Surround yourself with arcane forces, disrupting any attemps to harm you and instead generating mana.
 		Generates %0.2f mana per damage point taken (Aegis Shielding talent affects the ratio).
-		If your mana is brought too high by the shield, it will de-activate and the chain reaction will release a deadly arcane storm around you with radius 3 for 10 turns, dealing 10%% of the damage absorbed over the sustain's duration each turn.
+		If your mana is brought too high by the shield, it will de-activate and the chain reaction will release a deadly arcane storm around you with radius 3 for 10 turns, dealing 10%% of the damage absorbed over the sustain's duration each turn, up to a maximum of %d total damage.
 		While the arcane storm rages, you also get %d%% arcane resistance.
 		Only usable when below 25%% mana.
 		The damage to mana ratio increases with your Spellpower.]]):
-		format(t.getManaRatio(self, t), t.getArcaneResist(self, t))
+		format(t.getManaRatio(self, t), t.getMaxDamage(self, t), t.getArcaneResist(self, t))
 	end,
 }
Author of the Infinite 500 and PlenumTooltip addons, and the joys of Scaling in ToME.

aardvark
Wyrmic
Posts: 200
Joined: Wed Aug 22, 2012 12:16 am

Re: [1.0] Various bugs and issues.

#3 Post by aardvark »

drayath wrote:Character Sheet

Does not display telephay details correctly if have multile sources (range appears to be added, even though in game the range of the different type is considered seperatly).
E.g.
Have the earth eyes telephay All/6 range which is not presently active because not meditating,
Have boots to demon telephay/4 range
Character sheet shows telephay all/10 range (where earth eye telephay is active or not)
In game works correctly (demon seen at 4 always, all seen at 6 only if earth eyes telephay active)
Actually, all telepathy effects in the vanilla game use one common range. When you turn on Meditation you'll find that all ALL other telepathy ranges get shorter. I really should get my Telepathy Enhancement addon for 1.0 pushed out...

Post Reply