ToME: the Tales of Maj'Eyal

Everything about ToME
It is currently Mon Oct 23, 2017 3:15 pm

All times are UTC




Post new topic Reply to topic  [ 10 posts ] 
Author Message
PostPosted: Sun Jun 18, 2017 2:37 pm 
Offline
Sher'Tul Godslayer

Joined: Mon Feb 14, 2011 11:16 pm
Posts: 2257
Lots of talents reduce damage by a percentage, such as retribution. So if you are damaged for 2, retribution reduces this to 1.

And this 1 point of damage (or even 0.00001 point of damage) will take out one bone shield.

With all the procs and poisons and other little sources of damage, bone shields get taken out all the time, mostly for trivial amounts of damage.

So I suggest we set a minimum threshold for the dmg amount, roughly between 20 and 50.

This would be easy to do and I think make the game better.

Yes, NPCs then with bone shield will need more effort sometimes to get through the shields, but I don't think a value between 20 and 50 will cause problems.

_________________
MADNESS rocks


Top
 Profile  
 
PostPosted: Sun Jun 18, 2017 9:43 pm 
Offline
Spiderkin

Joined: Mon Sep 21, 2015 8:45 pm
Posts: 504
Location: Middle of Nowhere
Another idea would be to make each charge "fully block one attack", as the talent reads. That is, prevent not just individual hits, but damage from any attack/projectile/spell and all subsequent damage that it would cause, from poisons or bleeds or procs or whatever. It would probably be harder to implement, and might require tweaking the number of charges/recharge rate. I don't even know if I would support this idea, but I figure it was worth throwing out for discussion, anyway.

Another idea that is kind of tangential would be to introduce a system to flag damage as 'direct' or 'indirect'. Essentially, damage from poison or bleed or other damage over time, or retaliation damage, or damage from the environment, or traps, etc, would be 'indirect'. Damage from spells and melee or ranged attacks would be 'direct'. Nekarcos implemented something like this with his rather extensive Odyssey of the Summoner addon that could possibly be used as a reference (it's too far above my head for me to judge how well it works honestly,, but it seemed to work accordingly with the talents he had which distinguished between them). If such a change were made, then Bone Shield could be made to block only 'direct' damage.


Top
 Profile  
 
PostPosted: Mon Jun 19, 2017 12:58 pm 
Offline
Uruivellas

Joined: Tue May 14, 2013 3:45 pm
Posts: 814
You could just have it block attacks over like... 5% of your maximum life, prob easier than having to figure out the ideal number.


Top
 Profile  
 
PostPosted: Mon Jun 19, 2017 10:53 pm 
Offline
Sher'Tul Godslayer

Joined: Mon Feb 14, 2011 11:16 pm
Posts: 2257
Razakai wrote:
You could just have it block attacks over like... 5% of your maximum life, prob easier than having to figure out the ideal number.


Yes, but we'd have to be careful with Insane (and MAdness, though I know we don't code for Madness). With a character with 30,000 health, 5% is 1500 and they can have huge numbers of bone shields (this is in insane). So I think they'd become invincible.

On Madness, you get over 200,000 in life for enemies, so this wouldn't work there definitely!

I think a small threshold of say 20 might do the trick. It is just to stop little bits of damage turning off the bones.

_________________
MADNESS rocks


Top
 Profile  
 
PostPosted: Tue Jun 20, 2017 12:42 am 
Offline
Spiderkin

Joined: Mon Sep 21, 2015 8:45 pm
Posts: 504
Location: Middle of Nowhere
In case anyone else likes this idea and does not regularly check the Addons forum, I might as well plug my newly published Bone Shield Tweak (available here: https://te4.org/games/addons/tome/boneshield_tweak and on Steam), based on jenx's idea here. More details over in this thread in the Addons forum.


Top
 Profile  
 
PostPosted: Tue Jun 20, 2017 8:20 am 
Offline
Uruivellas

Joined: Tue May 14, 2013 3:45 pm
Posts: 814
aha - what I meant was that attacks under the threshold wouldn't be affected by the shield at all. Though would make it fairly pointless for some bosses on higher difficulties with enough life, and would be a bit of a change to how defiler defenses work. I know DG is planning on some separate buffs for them though.


Top
 Profile  
 
PostPosted: Tue Jun 20, 2017 2:49 pm 
Offline
Spiderkin

Joined: Mon Oct 09, 2006 7:47 pm
Posts: 575
For the threshold, I would suggest something like 5 + NPC_level/2
Makes 10 at lvl 10
30 at level 50
80 at level 150


BTW, I think a similar tweak should be applied to the daze effect.
Presently, daze is useless whenever you apply some poison with your weapon, or bleed, or are standing on lava floor, or have some small DOT like burning, etc... And IMHO, it is one of the most useless effect in the game.
Giving a similar threshold would make it more interesting, as small damage would maintain the daze, while real attacks would of course completely remove it.


Top
 Profile  
 
PostPosted: Tue Jun 20, 2017 4:31 pm 
Offline
Spiderkin

Joined: Mon Sep 21, 2015 8:45 pm
Posts: 504
Location: Middle of Nowhere
ghostbuster wrote:
BTW, I think a similar tweak should be applied to the daze effect.
Presently, daze is useless whenever you apply some poison with your weapon, or bleed, or are standing on lava floor, or have some small DOT like burning, etc... And IMHO, it is one of the most useless effect in the game.
Giving a similar threshold would make it more interesting, as small damage would maintain the daze, while real attacks would of course completely remove it.


I think I could whip up an addon to handle this. Messing with onTakeHit (where 'undaze' is handled) is messy, but this has a sort of 'backdoor' built into the check that I could utilize. Any damage at all will undaze an actor unless they have the 'damage_dont_undaze' attribute... which, as far as my file search shows me, is not actually set by anything, ever. Seems odd that the attribute would be checked for and never used, but then again, the devs have included a lot of things that could be used, but never are, presumably for the sake of mods or potential future changes.

I know that astralInferno's High Blade uses this attribute, at least, but I think it would be pretty easy to work in compatibility for it. Something like this should work, I think:
Code:
local basetakeHit = _M.takeHit
function _M:takeHit(value, src, death_note)
   local dontUndaze = false
   if self:attr("damage_dont_undaze") then dontUndaze = true end -- check if dont_undaze is already set, for compatibility
   if self:hasEffect(self.EFF_DAZED) and not dontUndaze then -- if dont_undaze was already set, let things be handled normally
      if value < 5 + self.level/2 then
         self:attr("damage_dont_undaze") = true -- if the damage is below the threshold, set the attribute so undaze will be ignored when we pass it back to the original onTakeHit
      end
   end
    -- Do stuff "before" loading the original file
    local dead, val = basetakeHit(self, value, src, death_note)  -- Loads the original file
    -- Do stuff "after" loading the original file
   if self:attr:("damage_dont_undaze") and not dontUndaze then -- if it was set before, keep it set, for compatibility
      self:attr:("damage_dont_undaze") = false -- clear the attribute if it was set by our check
   end   
    return dead, val
end

return _M

This is just 'dummy' code, I'm not sure all the syntax is right, but I think it would work, in principle. I don't have time to properly code it up and test it out at the moment, but if anyone wants to look over that and sees a serious flaw, please point it out. It's entirely likely that I overlooked something.


Top
 Profile  
 
PostPosted: Tue Jun 20, 2017 10:56 pm 
Offline
Spiderkin

Joined: Mon Sep 21, 2015 8:45 pm
Posts: 504
Location: Middle of Nowhere
Well, I did mess up the syntax a tad, but it didn't take long to fix. Seems to be working as intended.

Here it is, ghostbuster: https://te4.org/games/addons/tome/daze_tweak. I used the the threshold scaling that you suggested, 5 + level/2 .

I will make a thread in the Addons forum for any further discussion, so as not to hijack this one any further...


Top
 Profile  
 
PostPosted: Thu Sep 07, 2017 10:52 pm 
Offline
Uruivellas

Joined: Mon Jan 27, 2014 10:40 am
Posts: 671
nsrr wrote:
I know that astralInferno's High Blade uses this attribute

oh hey that's me

I dont think my use of it actually works.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC


Who is online

Users browsing this forum: Google [Bot] and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group