The Forums Are Now Closed!

The content will remain as a historical reference, thank you.

DG mod question re: nerfing oak's spirits

By on May 29, 2011 2:45:18 AM from Demigod Forums Demigod Forums

pacov

Join Date 02/2008
+182

I'm looking for a little info from the modding community regarding what sort of effort would be required to make a change to oaks spirit dmg.

1st - I think his dmg is great vs dgs.  I don't really want to nerf that at all.  Rather, I'd like to see a nerf to the dmg his spirits can do to buildings or to the citadel (most specifically).  The main goal would be to remove the exceptionally easy way it is to kill a citadel using a focused minion build with oak. 

Exxcentric might have already developed the code for this when I asked him to make a change on one of his favor mod items (I think it was the poision _____ item - can't remember the name off the top of my head)...  with that item, i just noticed it did a rediculous amt of dmg to the citadel.  He changed up the code some and it was no longer possible for me to kill the cit in like 10 min.  Anyway, can something like that be done with oaks spirits? How much effort is needed?  Thanks!

Locked Post 33 Replies
Search this post
Subscription Options


Reason for Karma (Optional)
Successfully updated karma reason!
June 3, 2011 11:41:50 PM from Demigod Forums Demigod Forums

There are other options available, if you want to get a bit more complicated.  It wouldn't be too difficult to add a small damage return to the citadels that only affects spirits.

Hook /lua/sim/SpireUnit.lua with something like this:

Code: c++
  1. --Hook to enable Citadel damage return against Spirits
  2. local prevClass = SpireUnit
  3. SpireUnit = Class(prevClass) {
  4.     OnCreate = function(self)
  5.         prevClass.OnCreate(self)
  6.         --Damage returned to attacking spirits
  7.         self.SpiritDamageReturn = 15
  8.     end,
  9.     DoDamageReturn = function(self, data)
  10.         prevClass.DoDamageReturn(self, data)
  11.         local inst = data.Instigator
  12.         if self.SpiritDamageReturn > 0
  13.         and inst and not inst:IsDead()
  14.         and EntityCategoryContains(categories.SPIRIT, inst) then
  15.             local returnData = table.copy(data)
  16.             returnData.Amount = self.SpiritDamageReturn
  17.             returnData.Instigator = self
  18.             returnData.InstigatorBp = self:GetBlueprint()
  19.             returnData.InstigatorArmy = self:GetArmy()
  20.             returnData.Origin = table.copy(self:GetPosition())
  21.             returnData.CanDamageReturn = false
  22.             returnData.CanCrit = false
  23.             returnData.CanBackfire = false
  24.             returnData.CanBeEvaded = false
  25.             returnData.CanMagicResist = false
  26.             returnData.IgnoreDamageRangePercent = true
  27.             returnData.ArmorImmune = true
  28.             DealDamage(returnData, inst)
  29.         end
  30.     end,
  31. }
Reason for Karma (Optional)
Successfully updated karma reason!
June 4, 2011 12:26:32 AM from Demigod Forums Demigod Forums

I was thinking along the same lines.  Add dmg against the spirits that attack the cit per hit and reduce the overall dmg done when they attack the cit.  This would still allow minions oaks to do their worst and destroy all of the structures, but would meet the goal of the mod perfectly (deny minion oak citadel kill cheese.

Thanks for the code - I'll see about adding/tweaking and run some more tests tomorrow. 

Reason for Karma (Optional)
Successfully updated karma reason!
June 4, 2011 1:37:26 AM from Demigod Forums Demigod Forums

i might be might be wrong here but I'm sure I've seen a rook boulder roll set off reg's mines. If I haven't then I think this should be the case for an effective mine clearing (also any AOE damage on the area the mines are laid would be reasonable)

I like using orb of defiance at moment reg throws mines at my feet for effective damage free mine counter.

Reason for Karma (Optional)
Successfully updated karma reason!
June 4, 2011 1:46:15 AM from Demigod Forums Demigod Forums

Game 6 uses the new code:

Results of a few quick tests.  And note - the rule here is that my oak cannot attack the citadel personally at any time. 

Cataract

filthy rich, level 20 start for dgs, 1v1

bought identical items/build for each game

Game 1 -no reduction in place - 2 min 53 seconds to citadel destroyed

Game 2 - .25 cit reduction - 4 min 11 seconds to citadel destroyed

Game 3 - .1 cit reduction - 5 min 15 seconds to citadel destroyed

Game 4 - .05 cit reduction - 5 min 21 seconds to citadel destroyed

Game 5 - .05 cit reduction - enhanced ai bought and ai picked up tower regen - 6 min 18 seconds

Game 6 - .05 cit reduction - set to 100 dmg per hit on spirits - 5 min vs normal ai

Game 7 - .05 cit reduction - set to 500 dmg per hit on spirits - 4 min 24 sec... the bad news is I'm becoming even more efficient with the build and the dmg is not enough to offset.  I'd like to NOT make it so the spirits have instant deaths on a single hit (so they can still contribute a wee bit to working the citadel... but even taking 500 dmg per hit (each spirit gets 3 hits on the cit and then dies), I'm still able to drop the cit in less than 5 min

Game 8 - .05 cit reduction - set to 1000 dmg per hit on spirits- 4 min 57 sec - i'm going to change the parameters - noticed a huge chunk of my cit dmg is not coming from the bishops i pick up.  Next game, I will ONLY have spirits as minions

Game 9 - .05 cit reduction - set to 1000 dmg per hit on spirits - no healers - i'm at 7 min 30 sec - the citadel is down about 50%.  I think this is the sweet spot for the nerf.

Game 10 - 3v3 on normal settings with enhanced ai.  Normal gold, level 1, etc.  Game played at 1:41AM - replay reference later.  Example of a subpar minion oak taking out a citadel - this is around ws 6 - my oak hit level 9 as a max.  Game ends at 16 min 47 sec with no creeps on the board yet (outside of < priest).  I'm not even going to bother repeating the same test with the mod - there is no chance I could take out the citadel solo with spirits and the mod on.  Anyway, against decent human players, a minion oak could generally kill a citadel with normal towers in about 20 min.  This makes it so its not possible. 

Game 11 - .05 cit reduction - set to 500 dmg per hit on spirits - did not finish game > 15 min expected.  Went back to previous settings.  Did not use bishops - spirits only.  Decided the 1k dmg per hit on spirits was quite silly.  It was.  I hardly put a dent into the citadel at 500 dmg per hit with the dmg reduction.  I might drop this a little more, but its still meeting its purpose at 500 dmg.  That gives you 2 hits with hauberk and 3 if you have another hp minion item per hit.  

Game 12 - .1 cit reduction - set to 500 dmg per hit on spirits - did not finish game.  The result here is still acceptable.  The spirits are able to do a little more dmg to the citadel, but still not enough that 1 player to win the game by killing it.  I think this is even closer to a good balance. 

Anyway - happy to hear any feedback.  Any issues with my logic

I'm thinking I'll make the final version reduce spirit dmg to the citadel to .1 of dmg.  In addition, spirits will receive 500 dmg for every hit.  This would mean that a typical minion oak build would be able to have each spirit hit the citadel twice before dying.  The changes sound extreme, but based on my tests, meet the my goal perfectly and still keep minion oak viable as you can do all the dg dmg, and all the structural dmg.  The change really does make a spirit attack on the citadel fairly pointless.  But it does still keep the strengths of minion oak (outside of the cheese win method).

edit - anyway, I'll see if I can get a minion oak cheese game with live folks going to help demonstrate the cheese for those of you that haven't encountered this before.  I'm a little hesitant to do this as it will surely result in a few more folks pulling this, but oh well.  Again, the main problem with this is that one person can take out the citadel even if your entire team is blowing it pretty bad.  And all that's need is a so-so build and being smart enough to refuse to engage in fights on a regular basis for about 5-8 minutes.  As long as you don't have to go back to base and hug a tower, you'll be able to get the xp  you need to level... and by the time you hit level 8 or 9, you can easily be 2 places at once if you want (grabbing an extra flag while you force someone on the other team to deal with your minions.  Or you can just bide your time.  As long as you are patient and refuse to fight, you can even skip a level 3 shield and go for extra minion dmg... or you can get shield 3 and just shield tp if anyone every tries to attack you (only exception - da).  Anyway, in ANY game, as its stands, a minion oak build could decide to kill a citadel in about 3-5 minutes tops once they hit level 10... even on high towers.  And if you attempt to deal with the spirits, you lose flag control and generally can't do enough dmg to stop the citadel from dying... even if you chose to sell all of your equipment, buy tower regen and gadgets to heal your cit.  And this is true for everyone game as long as the minion oak can get to a lane to place wards.  So, even with a nerf that makes minion oak somewhat ineffective at killing the citadel, he doesn't lose a lot as he can still use misdirections to attack a structure with spirits while he's off someone doing something else... something else like grabbing a portal.  So, I don't see it as doing any real dmg to oak other than taking away his ability to end ANY game when he hits level 10. 

Reason for Karma (Optional)
Successfully updated karma reason!
June 4, 2011 12:52:30 PM from Demigod Forums Demigod Forums

Game 13 - .25 cit reduction - set to 500 dmg per hit on spirits.  With spirits alone, I could have taken out the cit in about 16 minutes. 

I think the final settings will be spirits do 10% of whatever there normal dmg would be against the citadel and take 500 dmg each time they hit the citadel.  At 25% it was still way to easy to kill the citadel.  At 10% I found it to be exceptionally difficult to weaken the citadel. 

Reason for Karma (Optional)
Successfully updated karma reason!
June 5, 2011 9:09:59 PM from Demigod Forums Demigod Forums

Mod created and published here:  https://forums.demigodthegame.com/409305

 

Reason for Karma (Optional)
Successfully updated karma reason!
June 6, 2011 12:26:04 AM from Demigod Forums Demigod Forums

Tried it, can't kill the cit with spirit cheese.

Reason for Karma (Optional)
Successfully updated karma reason!
June 6, 2011 12:54:07 AM from Demigod Forums Demigod Forums

Quoting LORD-ORION,
Tried it, can't kill the cit with spirit cheese.

Thx for testing as well..

Reason for Karma (Optional)
Successfully updated karma reason!
Stardock Forums v1.0.0.0    #108433  walnut3   Server Load Time: 00:00:00.0000125   Page Render Time: