FIXED Amount healed converted to damage store needs balancing.

DewCono

Apprentice II
Supporter

In PlayerMobile.cs lines 2186-2226 pertain to the damage healed converted to damagestore is

Code:
        public override void OnHeal(ref int amount, Mobile from)
        {
            base.OnHeal(ref amount, from);

            if (from == null)
                return;

            BestialSetHelper.OnHeal(this, from, ref amount);

            if (Core.SA && amount > 0 && from != null && from != this)
            {
                for (int i = Aggressed.Count - 1; i >= 0; i--)
                {
                    var info = Aggressed[i];

                    if (info.Defender.InRange(Location, Core.GlobalMaxUpdateRange) && info.Defender.DamageEntries.Any(de => de.Damager == this))
                    {
                        info.Defender.RegisterDamage(amount / 2, from);
                    }

                    if (info.Defender.Player && from.CanBeHarmful(info.Defender, false))
                    {
                        from.DoHarmful(info.Defender, true);
                    }
                }

                for (int i = Aggressors.Count - 1; i >= 0; i--)
                {
                    var info = Aggressors[i];

                    if (info.Attacker.InRange(Location, Core.GlobalMaxUpdateRange) && info.Attacker.DamageEntries.Any(de => de.Damager == this))
                    {
                        info.Attacker.RegisterDamage(amount / 2, from);
                    }

                    if (info.Attacker.Player && from.CanBeHarmful(info.Attacker, false))
                    {
                        from.DoHarmful(info.Attacker, true);
                    }
                }


In DamageableItems.cs Lines 366-372 pertain to the amount of damage to get looting rights on a creature.

Code:
        public List<Mobile> GetLootingRights()
        {
            if (DamageStore == null)
                return null;

            return DamageStore.Keys.Where(m => DamageStore[m] > 0 && DamageStore[m] >= HitsMax / 16).ToList();
        }

So if it takes 1/16th a creatures health which is 6.25%, and the amount healed is divided by 2, this means a player who is strictly keeping people alive would need to heal 12.5% of the enemy monster's total health. This isn't a big deal vs something like.. a balron, or a greater dragon which have ~1-2k health, but when you're looking at something like a boss with 50,000-100,000 health that suddenly becomes 5,000-10,000+ in heals needed. I don't know what the rate on OSI is, but if this is the actual amount necessary than it seems like a dead mechanic.
 
  • Like
Reactions: Dan
OP
DewCono

DewCono

Apprentice II
Supporter
So that says tanks too. I'll have to try to find the area that pertains to damage received, and damage store. Since the damage healed should be equal to damage dealt it would just not be divided by 2 then?
 

Dexter

Staff Member
Administrator
Game Master
I'm not touching this until we either get good documentation from EA, or test it ourselves.
 

Dan

Staff Member
Administrator
Game Master
I have the proof that it should all count evenly. The question is why is it set to divide in ServUOs code?
 

Dexter

Staff Member
Administrator
Game Master
Which division? The / 2? In that case, If I remember correctly, you would get looting rights way too easily just by healing and tanking, as opposed to damage. Most creatures damage output are much higher than a players damage output.
 

The Silvertiger

Neophyte III
Supporter
Which division? The / 2? In that case, If I remember correctly, you would get looting rights way too easily just by healing and tanking, as opposed to damage. Most creatures damage output are much higher than a players damage output.
Is that really such a bad problem? If we were to ever go down to 1 character in combat a healer would be a vital role, especially for this SL event boss. I did kabor the spawn boss with a sampire and healer. Healing through multiple blood oathes, the healer still didn't get looting rights.
 

Dan

Staff Member
Administrator
Game Master
They should only be getting loot rights for healing damage obtained by said monster attacking players.

@DewCono what was the math you broke down for me before? (why we need it here and not Discord!)
 
OP
DewCono

DewCono

Apprentice II
Supporter
The math is right there in my main post.

So if it takes 1/16th a creatures health which is 6.25%, and the amount healed is divided by 2, this means a player who is strictly keeping people alive would need to heal 12.5% of the enemy monster's total health. This isn't a big deal vs something like.. a balron, or a greater dragon which have ~1-2k health, but when you're looking at something like a boss with 50,000-100,000 health that suddenly becomes 5,000-10,000+ in heals needed. I don't know what the rate on OSI is, but if this is the actual amount necessary than it seems like a dead mechanic.

If you were on as the role of just healer vs say Kabur Shadowlord, and you were not a tamer with a pet on it you were strictly doing heals you would need do to 2 x 6.25% which is 12.5% of it's max life. that's 6,250 life in heals. The players themselves only need to deal 3,125 damage - and ontop of that some of them may be hitting 150+ in a shot with armor ignore etc. where even the highest healing (120 healing + anatomy + first aid belt + the replica staff + enhanced bandages) will be pulling like 100 life heals, and a 120 / 120 may be dropping like 50 life heals with greater heal, and 20 life heals with normal heal. Factor this with if the party happens to take less than 6,250 damage in that fight then they're just flat shit out of luck. if anything making it 1:1 with the damage required would make more sense since the threshold is so low 16 people can get rights on something to begin with.
 

The Silvertiger

Neophyte III
Supporter
Ok, I wrote out a whole scenario with various variations, but accidentally hit the back button. Basically, it showed that a healer had to heal 60% more HP to get looting rights with the current code vs an equal shares code.

Do leeches[vamp, curse wep, hll] count as healing for the dmg store?

Do mitigated attacks [DCI, Blocks, mirror images, innate misses] count as tank damage store?

So when you take into account that a samp tanks and spanks mobs vs a healer only healing, it's going to be difficult to keep up. If they also get credit for the leeches, it just gets worse.
 

Dexter

Staff Member
Administrator
Game Master
Do leeches[vamp, curse wep, hll] count as healing for the dmg store?
No, only when you heal someone else.

Do mitigated attacks [DCI, Blocks, mirror images, innate misses] count as tank damage store?
Yes.

Fine points.
 

PLAY NOW

Heritage

Address
play.trueuo.com
Port
2593
Uptime
45 minutes
Players Online
3
Houses
881
Vendors
285
Gold
4,332,760,952gp
Top Bottom