UberFix 1.06 [1/18/2012]

By on November 28, 2010 11:03:32 AM from Demigod Forums Demigod Forums

miriyaka

Join Date 11/2008
+76

The UberFix is a compilation of bug fixes for Demigod version 1.3.

OFFICAL DEMIGOD PATCH NOTE:
Demigod must be updated to version 1.3 or higher to take advantage of several of the fixes contained herein.  Additionally, any bugfixes found in Demigod Patch 1.3 have been dropped from the UberFix code for purposes of maximum compatibility with version 1.3, so using an older version of Demigod with this release of the UberFix will re-introduce many bugs.

To insure that the latest Demigod patch is installed, enter the Multiplayer screen in the main menu, choose Internet, and log in with your Impulse username and password.  The game will be automatically patched.


Download v1.06:

http://www.box.com/s/hdsoycixo3p8f5fs82aj


Installation Instructions for Demigod Mods in Archive Format:
If you have downloaded the executable, it should place the files automatically.
If you downloaded the zipped version, use the following instructions:

1) Locate your Demigod mod directory.  This will be \bindata\mods, within your Demigod install folder. The default location for this is C:\Program Files\Stardock Games\Demigod\bindata\mods.

2) Extract the mod archive directly into this folder.  If you are using a program like Winrar or 7zip to extract the archive via a drag action, make sure you choose the first option to extract files directly into the mods folder, rather than the second option to extract into a sub-folder with the same name as the archive file.

3) The result should be a folder within \mods called e.g. 'UberFix 1.05', containing several files and sub-folders.  If instead you see only one folder with the same name as the archive (e.g. 'Uberfix105') and an 'UberFix 1.05' folder within, then you chose the wrong option when extracting, and will need to move that sub-folder back one level into the mods folder, or delete the result and re-extract the archive into \mods without specifying a sub-folder.

To enable the mod, run Demigod, select the Mod Manager, select the UberFix, and click enable. If the mod is properly enabled it will show up in the right pane of the Mod Manager screen.

To delete a mod, simply delete the that mod's individual folder in \bindata\mods\. Do not delete \bindata\mods unless you wish to remove all mods!


New in v1.06:

-Created new UID
-Fixed code error in Regulus' Vengeance skill, now properly does a metahit
-Fixed code error introduced with previous Iron Walkers fix
-Fixed Theurgist's Hat description, it is a weapon proc, not an armor proc


Version History

v1.05

 

Minion and Reinforcement Base Armor Not Applied Until Armor Is Buffed
Units with a blueprint base armor value (most idol summons and heavy reinforcement units) will now correctly have this armor value applied.  Previously, this value only took effect once the unit was affected by some other armor buff, remaining if that armor buff was removed.

 

Regulus Maims Allies When Using Universal Gadget
The previous fix for Regulus' self-maiming already solved the unreported issue of self-maiming via potion use.  The fix has been expanded to insure against any maim application on negative damage (healing) as well as on allied or self damage.

 

All Valor Flag Bonuses Lost When Enemy Valor Flag Is Captured And Lost
This was accidentally introduced in the 1.04 release with the ArmyBonus stacking protection fix.  This fix now always allows stacking unless the buffs the ArmyBonus contains have the REPLACE stacking flag.

 

Miscellaneous Small Fixes

Gloves of Despair now show their existing 8% attack bonus

 


v1.04

Ranged Demigod Attack Stutter
Ranged Demigods (other than Regulus in Angelic Fury) would have their attacks repeatedly interrupted due to constant stop and start while chasing a slower target, effectively penalizing greater speed.  They are now able to successfully attack periodically in this situation, though not from a standstill.  This is intended, to preserve the advantage bestowed by Regulus' Angelic Fury lock-on bonus.

Queen of Thorns Extreme Rate of Fire
Related to the above fix, Queen of Thorns will no longer be able to attack far more rapidly than should be possible while chasing a target or when stuck on map geometry.

Queen of Thorns Compost Uses Incorrect Buff Levels And Adds Infinite ArmyBonuses
Despite using a similar buff counting method to Oak's Soul Power, Compost started at 'rank 0' internally and caused the level 6 buff to go unused regardless of skill rank and compost level.  It now uses exactly the same calculation method as Soul Power.
Additionally, it would add an ArmyBonus every time it gained or lost a level, potentially causing the game to process hundreds or even thousands of ArmyBonuses and their associated buff add/removes every time one of Queen of Thorns' minions was summoned or killed.  All buffs and ArmyBonuses added by Compost are now correctly removed, which should significantly reduce the sim overhead of this ability.

Unclean Beast Ooze Suicide
Ooze is now completely incapable of causing suicides.  Unclean Beast will be left with one hitpoint in any situation where Ooze damage occurs in the same tick (but just after) any other damage event.

Rook Shoulder Weapon Stuck And Illegal Targets
These weapon addons should no longer become fixated on a single target that is out of range or is no longer visible, and should be unable to fire on non-structure targets that are not currently visible.  Structures in the fog of war can still be attacked as intended.

Rook AI Movement Stutter

This was caused by the high rate of fire of Rook's arrow towers.  Their ROF has been quartered and damage quadrupled, for the same overall DPS.  Poison chance and duration have been increased slightly to give the same chance per second of poison activation, as well as the same chance per poison cycle of renewal under consistent fire.

Torch Bearer Permafrost I Debuff

This aura level is now in-line with all other levels, at -5% ROF from -3%.

Torch Bearer Frost Nova Slow Duration
The snare duration for this ability now takes into account the duration of its freeze, each level providing a full 5 seconds of slow post-unfreeze as the description indicates (instead of as little as 2s at level III).

Oculus Ball Lightning Produce Nightwalkers/Spirits On Death
Due to the disposable nature of Ball Lightning (particularly with Explosive End), this caused an extremely exploitable level of synergy with Oak and Erebus allies, and can safely be inferred as unintended and a consequence of Oculus' poor testing.

Oculus Blast Off! I Radius
This ability level is now in-line with all other levels, at 6 radius from 3.

Sedna Horn of the Yeti IV Buff
Sedna's Yetis will now correctly receive the level IV buff with this ability.  Existing Yetis now also receive the appropriate level of buff upon ability upgrade, as was the case with Shamblers and Entourage.

Absorption Refresh On Addition/Removal
Shield buffs such as Bramble Shield and Groffling Warplate will no longer cause all related buffs to be fully recharged any time one is added or removed.  Additionally, absorption damage float text is now only displayed for both involved parties (like all other damage float text) and displays the amount of damage done.

Illegal AI Area-Targeted Ability Lock-on
The effect location of area-targeted abilities e.g. Hammer Slam will no longer illegally follow a moving unit whose position the AI chose for a target location.

Ability Tooltips Display Unmodified Cooldown Time While Cooling Down
The correct total cooldown time is now always shown in all ability bar tooltips.  Skill sheet and inventory tooltip cooldown times remain unmodified, as intended. 

Map Domination Voice-Over On Loss Of Map Control (Second Attempt)
The map domination voice-over now correctly activates on flag capture for the team gaining map control any time they capture a flag above the domination threshold.  In addition, the map domination threshold is read from game settings instead of being fixed at 75%.  This fix was absent from the released 1.03 code, despite being listed in changelog.

Trebuchet Damage Unaffected By Tower Strength Citadel Upgrade
The tower strength upgrades will now affect both Fort-upgrade Trebuchets and flag-controlled Trebuchets.

ROLLOVER DATA ERROR Or No Rollover On Flag Mouseover
Flags captured by the enemy team behind the Fog of War should now always display the correct rollover information.  This issue was caused by an engine bug related to non-visible unit replacement and could not be directly fixed via Lua.  Fortunately, a workaround involving giving the opposing team momentary 1-radius visibility on any captured flag to allow the engine to report the correct flag unit to the rollover system seems to have resolved it in practice.

 

Miscellaneous Small Fixes
Cosmetic changes (thanks to Lord Orion for finding most of these):

  • Compost and Soul Power now show their current level in the buff icon (thanks to Ptarth for the IV-VI Compost icons)
  • Torchbearer's mode-change buffs now show the correct names
  • Warlord's Punisher now uses the correct cast animation for its cast time
  • As noted above, absorption damage float text now displays the amount of damage done in a different format than normal damage float text, and will show critical hits in yellow.  Shielded minions will show absorption damage float text to their demigod as well.

Small functional/internal changes:

  • Demon Assassin's Warp Area ability now has a pre-cast check that prevents it from being cast when no targets are in range (it has no range ring, and unlike other instant-cast area abilities, does not work on a variety of target types)
  • Regulus can no longer Maim himself with self-damaging abilities (this only affected mod items)
  • Made several changes to the AIBrain functions RemoveArmyBonus and AddArmyBonus to prevent endless ArmyBonus stacking (which carries a fairly heavy sim performance penalty in extreme cases e.g. vanilla Compost)
  • Ability damage now has the CanEvade flag set to false by default.  This is the intended functionality, as all abilities other than Unclean Beast's Venom Spit specifically disable this.  Practically speaking, in vanilla Demigod this only affects Spit damage-over-time, which can no longer be inexplicably dodged.
  • Wyrmskin Gauntlets' ranged on-hit chance is now in line with every other ranged on-hit chance (10% from 8%, 66% of melee chance)
  • Weapons with a blueprint-specified DamageRadius can no longer have their splash damage reduced unless the buff doing the reduction is flagged as a debuff.  This was necessary to keep the Tower Strength citadel upgrade from reducing the splash damage of Trebuchets.


Feature Additions
Mod UI texture/icon support has been added:

Any .dds files in your mod folder within /textures/ui/common will have their path relative to the mod folder cached in a table that the UIFile function looks at when assigning most non-background, in-game UI textures.  This can be used both for adding and overriding existing textures without having to use relative paths.  This (along with the mod-folder doscript hook included) allows you to change the name of your mod folder between versions without having to update any of your code.

For example, the path:
    /mods/mymod/textures/ui/common/abilities/dgqueenofthorns/newqueenclose.dds
Would override the existing file:
    /bindata/textures/ui/common/abilities/dgqueenofthorns/newqueenclose.dds

Adding a new file:
    /mods/mymod/textures/ui/common/abilities/mymod/myicon_01.dds
Would let you assign this icon to a buff or ability the same as you would an existing icon in that relative path, by setting its blueprint's Icon field to:
    'mymod/myicon_01'

This affects any UI texture calls that use UIUtils.UIFile, including buff and ability icons, shop tab icons, and many UI window elements.
As UIFile only returns paths within /textures/ui/common, it does not affect any files outside of that path, and there are quite a few files within that path that do not use UIFile.  Expanding this support to all of these files would require hooking every UI creation function that ignores UIFile and directly assigns a texture path, which would unfortunately involve 30+ file hooks and upwards of a hundred destructive function overrides (as most texture path variables are declared local within a function).

Several new BuffAffects have been added for use by mods:

  • EnergyAdd: Functions like LifeSteal, adding energy based on a percent of damage done (works on grunts and minions)
  • EnergyLeech: As above, except that energy is stolen from the target based on a percent of damage (demigods only)
  • EnergyDrain: A one-off application of EnergyLeech, like a normal negative Energy.Add buff that transfers between demigods


Additional Sync variables for displaying unit information in the UI have also been created, in addition to those from 1.03 (note that some of the associated buffs are currently unused in stock Demigod):

New BuffAffects:

  • EnergyAdd
  • EnergyLeech

Existing BuffAffects:

  • Absorption
  • AbsorptionMult
  • MagicResistance
  • MissChance
  • Invincible
  • StunImmune
  • DebuffImmune
  • BountyGivenMod
  • BountyReceivedMod

Weapon BuffAffects:

  • SplashMult
  • DamageRadius
  • FiringRandomness
  • MetaRadius
  • MetaAmount

Note: The secondary weapon stats and associated UI hooks from 1.03 have been removed, and replaced by an entirely sim-side system where each Demigod tracks the stats for all of its main weapons and updates the primary weapon sync variables any time its weapon/mode is changed.


Several other internal changes and additions have been made to facilitate easier and more non-destructive modding of BuffAffects.  See the comments in /hook/lua/sim/BuffAffects.lua for details.


v1.03 

Knockback Kill/Damage Credit (Ptarth)
Creeps killed by knockback damage (e.g. Post-Mortem, Ring of Divine Might, etc) now correctly give a share of credit for their death to the instigating demigod, as well as contribute toward that demigod's cumulative damage statistics.

Lord Erebus Poisoned Blood (Ptarth & Mithy)
Updated so that the correct audio cue and visual effects are now played when Erebus or his allies are healed by his poisoned potions.

Instant-Cast Item Activation (Ptarth & Mithy)
The fix for Sludge Slinger and Parasite Egg not activating unless the activating demigod was facing its target (present in 1.02) was not taking effect due to an error in implementation.  This fix is now fully functional, and is also now applied to Deathbringer's silence ability.

Ironwalkers and Desperate Boots Persistent Buff (Mithy)
The conditional buffs for these items are now properly rescinded when the item is removed from inventory by any means.

Ironwalkers Always-On for Rook (Mithy)
The item's speed condition now compares against a percent (90%) of the demigod's base speed, for a similar activation threshold (<= 5.4, from 5.5) for most demigods.

Late Map Control Voice-Over (Mithy)
The map control voice-over now correctly activates any time the dominating team captures a flag with over 75% map control, rather than when a flag is lost above 75%.

Oak Raise Dead Ward Skill Level Crossover (Mithy)
All raise dead chances, spirit levels, and spirit caps now conform to the correct skill level of the demigod for whom the spirit is raised, as was already the case with Lord Erebus' Conversion Aura.

Gold Loss/Gain On Unsuccessful Item Transaction (Mithy)
Item transaction events now insure against gold loss or gain when the item itself cannot be bought or sold, e.g. when dying.

Enemy Gold Amounts Visisble In UI Mods (Mithy)
Enemy gold values are no longer accessible to the UI.  Existing UI mods that previously displayed enemy gold amounts will now only show zero.

Modal Demigod Weapon Stats (Mithy)
The UI will now correctly show the damage, rate of fire, and DPS calculations for the demigod's currently selected weapon.  Without other mods in effect, this only affects Queen of Thorns' packed mode, but the fix will allow the display of asymmetric changes to Torchbearer's weapons as well.

Oculus Ball Lightning Auto-Attack/Advance (Mithy)
Ball Lightning now correctly attack-move to the location specified by the reticle, instead of ignoring the reticle and only attacking nearby targets.

Oculus Ball Lightning Health Bar (Mithy)
Ball Lightning now have a normal, fully-visible health bar above their mesh, like every other unit and minion.

Oculus Ball Lightning Formation Movement (Mithy)
Ball Lightning no longer cause Oculus and other minions selected and commanded with them to move slowly and attempt to join a formation.  Ball Lightning will now behave exactly like other minions when given movement commands.

Oculus 'Sticky' Chain Lightning and Ball Lightning Effects (Mithy)
These lightning attacks should no longer break and create persistent lightning effects attached between the attacker and the former location of the target.

AI Citadel Upgrade Purchasing (Mithy)
AI are now able to purchase citadel upgrades that do not have a buff with the same name, e.g. Experience. Standard Demigod AI will still not purchase any upgrades unless a mod that enables this (such as the Skirmish AI Mod) is also used.

Experience Citadel Upgrade Persistence (Mithy)
Experience IV now correctly removes the Experience III bonus when purchased.


Feature Additions:
Several additional unit stats are now added to the Sync, allowing UI mods to display them for allied Demigods.
More details can be found in the comments in BuffAffects.lua.  The added stats are as follows:

  • Evasion Chance
  • Slow Cap
  • Life Steal
  • Damage Return
  • Damage Reduction
  • Vision Radius
  • Omni Radius
  • Gold Production
  • Experience Multiplier
  • Death Penalty Multiplier


Previous fixes removed due to inclusion in Demigod Patch 1.3:

  • Oculus Sacrifice not healing allied units
  • Oculus Ball Lightning summoning in map void
  • Unclean Beast Plague/Post-Mortem conflict
  • Minion summoned hitpoints
  • Heart of Life and Wings of the Seraphim halting on healing

Previous fixes left in due to the patch 1.3 solution being insufficient/ineffective:

  • Oculus Electrocution ineffectuality
  • Lord Erebus Mist deactivation threshold
  • Unclean Beast Ooze deactivation threshold

v1.02

Oculus Sacrifice Fix by Ptarth
Sacrifice now will heal allied units.

Unclean Beast Ooze Suicide Fix by Ptarth
Ooze now correctly ends when the Unclean Beast is low on Health.

Lord Erebus Poisoned Blood Fix by Ptarth
Poisoned Blood Potions now act like the potions they disguise themselves as to the team whose Lord Erebus dropped them. This prevents Lord Erebus from farming his death and stops his team from being penalized for his skill choice.

Oculus Electrocution Fix by Ptarth
Health and Mana regeneration are now correctly stopped when a unit is under the effect of Electrocution.

Torch Bearer Projectile slowdown Fix by Ptarth
Torch Bearer's fireballs and Ice blasts now correctly home in on targets. This includes his Fireball ability.

Unclean Beast Post Mortem Plague Conflict Fix by Exxcentric
Plague I and II no longer remove the Post Mortem death effect.

Rook Move Attack Fix by Ptarth
Rook now is able to move attack properly.


v1.01

Orb of Veiled Storms Fix by Ptarth (bug reported by awuffleablehedgie)
The Orb of Veiled Storms now deals ArmorImmune damage like every other demigod ability and weapon ability (except for the Doomspite Grips and Girdle of Giants, which have a cleave attack).

Lord Erebus Mist Form by Ptarth
Fixed Mist Form ability so that it correctly ends when Lord Erebus has less than 125 mana.

ZikFix (Zikurat Tower Fix) by mrappard
The Dark side towers on Zikurat while playing Conquest now spawn correctly.


v1.0

Minion +hp Fix by Ptarth
Minions summoned by Demigods Generals [Sedna, Lord Erebus, Oak, Queen of Thorns, Oculus] with +minion hp items now have the correct health.

Oculus Brain Storm Fix by Ptarth
Brain Storm now has a visual effect at all levels, instead of only when Oculus has Mental Agility Brain Storm now removes debuffs on targeted unit as specified by the rollover tooltip text.

Queen of Thorns Attack Animation Glitch by Ptarth
Reduced the lifetime of the QoT's root attack animation to make the animation look better. This is only a cosmetic change.

Oculus Lightning Ball Summons by Ptarth
Lightning Balls will no longer summon in map void space.

Oculus Lightning Blast by Ptarth
Lightning Blast now occurs at the origin of the target instead of the origin of the unit that triggers the effect.

Missing Oculus Shield Effect by Ptarth
Oculus now has a visible Shield effect.

Heart of Life and Wings of the Seraphim Healing Fix by Ptarth (awuffleablehedgie provided starter code)
The Heart of Life and Wings of Seraphim no longer stop their regeneration effects when the user is healed.


Outstanding Bugs/Issues

Solvable Issues:
Modal Demigods spawning in default mode rather than last used mode
This is trivial to implement if there is popular support for it.  At this point, I'd consider two or three votes 'popular', so make it known if you'd like this to be changed (or not).

Plague causes massive sim slowdowns
This is fixable, but will require a full re-write of how Plague works and infects units.  Some balance changes may need to be made to reduce the check rate and radius of infection, as well as to reduce the overall run time of each Plague infection.  This should result in similar overall effectiveness, with slightly less infection but faster damage delivery.

Unsolvable Issues:
Minion pathing issues / stuck minions
This is caused by poor handling of the pathfinding map's edges, usually around corners or the citadel.  Without the ability to alter these pathing maps (they use a raw image format of some kind), there is nothing that can be done about this.

Unreliable multiplayer connectivity
This is contained completely within the engine/Impulse.

Achievements fail to record progress properly
As above.


Credits

Ptarth - the original creator of the Uberfix, responsible for most of the fixes prior to 1.03

Mithy/miriyaka - took the reins for 1.03, currently maintaining the project

awuffleablehedgie - bug reports and suggestions

pacov - lots of testing, feedback, and motivation

Pinned, Locked Post 296 Replies +2
Search this post
Subscription Options


Reason for Karma (Optional)
Successfully updated karma reason!
November 28, 2010 11:08:27 AM from Demigod Forums Demigod Forums

Any and all feedback is welcome.  Please post any issues you have with the UberFix, or any Demigod bugs you don't see listed in the version history and outstanding issues sections.

More information on the fix methods and outstanding bugs is available on the UberFix google code site, at http://code.google.com/p/uberfix.  Feel free to comment on any open or past issues, or post new issues that you observe.

Reason for Karma (Optional)
Successfully updated karma reason!
November 28, 2010 11:49:53 AM from Demigod Forums Demigod Forums

I just noticed that Ball Lightning can produce Spirits and Night Walkers upon death within an aura.  Given their disposable nature, and the fact that they're not 'real' minions, I'm not sure that this is intended.  As it could be construed as a balance change, I'd like to get some other opinions on it.

Currently, even with the fixes, Ball Lightning are not a particularly strong choice for Oculus.  This issue causes them to actively disadvantage him against Erebus or Oak, even compared to any other general's minions.

Reason for Karma (Optional)
Successfully updated karma reason!
November 28, 2010 1:18:20 PM from Demigod Forums Demigod Forums

NT for tracking.  Will provide exe later.  Thanks. 

Reason for Karma (Optional)
Successfully updated karma reason!
November 28, 2010 1:40:48 PM from Demigod Forums Demigod Forums

Cripes, already problems.  I forgot to change the UID reference in game.lua to match the mod's new UID, which resulted in Oculus' Ball Lightning breaking horribly.  Re-packaging the mod with this fixed, and a new UID.  Same link.  It had one download previously, so whomever downloaded it, you'll have to re-download.  Sorry.

Changed the log warning I had for this into an error stop, so I won't miss it in the future.

Reason for Karma (Optional)
Successfully updated karma reason!
November 28, 2010 7:03:01 PM from Demigod Forums Demigod Forums

Fixed a big-ass QoT bug that wasn't listed in Outstanding Issues.  I'll put out a new version in a day or so; gonna try to take a whack at one or two of the other ones first.  I'd like to keep at least a few days between releases anyway.

Reason for Karma (Optional)
Successfully updated karma reason!
November 28, 2010 8:09:01 PM from Demigod Forums Demigod Forums

Here is a link to the installer.  Tested and works fine:

http://www.box.net/shared/vbg0ylmiga

 

Reason for Karma (Optional)
Successfully updated karma reason!
November 28, 2010 9:45:33 PM from Demigod Forums Demigod Forums

Linked.  Thanks.

Reason for Karma (Optional)
Successfully updated karma reason!
November 29, 2010 4:02:37 AM from Demigod Forums Demigod Forums

Thanks for taking over.

Reason for Karma (Optional)
Successfully updated karma reason!
November 29, 2010 10:28:29 PM from Demigod Forums Demigod Forums

Yeah, I didn't exactly have any intentions of doing a release myself, but pacov has been pretty insistent.  I have my doubts that it'll actually see much use at this point, but it was worth a try.  At least it gives me a reason to try to keep my lua skills sharp. v0v

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 2:13:38 AM from Demigod Forums Demigod Forums

Just noticed that TB's Frost Nova slow doesn't account for the duration of the freeze; all levels are 5s, even though the freeze time increases by 1s with each level, AND the slow visual effects buff increases by 2-3s per level.  This means that Frost Nova III has an effective slow duration of 2s, even though the visual effect lasts for an additional 5s.  In case there's any doubt as to what these visual effects buffs were for, the buff names are 'HEMA01NovaSlowFx' and the bufftype is 'SLOWUNITFX'.

Either someone thought this buff would somehow magically only be applied after the freeze wears off (it isn't), or all three buffs are copy-pastes of the first and duration was overlooked completely.  Either way, even without the VFX buff's increased duration as a guide of intent, it's pretty obvious that this snare actually significantly decreases in effectiveness with level, which can't possibly be developer intent.

 

My vote would be to raise the slow duration to freeze duration + 5s, as this would bring the debuff inline with how the description is worded and how you would expect a 5s slow attached to a freeze/stun ability to function.  This would be 6s at level I, 7s at level II, and 8s at level III, for the an actual 5s of slow post-unfreeze.

 

If you want to just respond with 'no, this is a balance change', please also include an explanation for how a 2s slow at level III is better than a 4s slow at level I.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 2:42:46 AM from Demigod Forums Demigod Forums

Posting about the non-existent 'tower damage fix' that people keep asking me about.  There is no tower damage fix, because there is no tower damage problem.

Proof:

Towers use beam weapons, which, when using a damage radius, do not do separate damage amounts to the target they 'hit' and targets within splash range, they do only splash damage centered at the point of impact.  In addition, they do not use the SplashMult variable that the DamageSplash buff affect sets, unlike melee and projectile weapons, which do.

If you'd like to see the code that handles this for yourself (it's relatively easy to understand), compare lua\sim\BeamWeapon.lua lines 92-96 with lua\simProjectile.lua lines 89-105 (particularly line 103), and lua\sim\MeleeWeapon.lua lines 167-191 (particularly line 178).  If you still believe that DamageArea is somehow doing something magical with SplashMult, look in lua\sim\Globals.lua, starting at line 135, and tell me where you see SplashMult come into play.

 

Additionally, I've never witnessed this problem in actual gameplay, despite having had tower damage citadel upgrades purchased often while testing AI changes.  All this upgrade does with splash damage is increase radius, and add very light splash to arrow towers (although, to be honest, I don't ever recall seeing that in effect either).

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 10:37:45 AM from Demigod Forums Demigod Forums

 

Miriyaka,

Was going through game logs and have Oculus carry orb of defiance more often and it seems to trigger this error:

warning: 00:03:01: Unable to locate mesh blueprint [/characters/oculus/oculus_invulnerable_mesh]!

Same error is logged if Oak's shield is cast on an Oculus. 

There is an invulnerable mesh in dgdata.zip, but it is named Occulus_Invulnerable_MESH.bp,  extra 'c'

 

Can that be fixed in a mod?  I haven't worked outside of the LUA and Units folders.

 

Edit:

There are also typos inside the file.

 

Edit 2:

This is what should be in the file:

http://pastebin.com/in7Ld4Er    First I added the chair.  Otherwise when he goes invulnerable he turns into a floating minotaur.  i used 'Frozen' shader for the chair as the alpha invulnerable shader makes parts of the chair disappear. 

I am not sure how to add these changes in mod form? 

If i put it in a hook folder (\mod\hook\characters\oculus' named 'Oculus_Invulnerable_MESH.bp'  it says 'applying blueprint mod ...' but has no affect.  Is there some ID I have to set in the file for it to mod in correctly?

If i put the same source file in 'Demigod\bindata\characters\Oculus' it works.

 

Oculus_Invulnerable_MESH'
Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 1:41:09 PM from Demigod Forums Demigod Forums

Were you running the UberFix when you had this error?  It's supposed to be fixed.  The game auto-generates invulnerability meshes, so the fix was just a matter of removing the reference to any invuln mesh at all, and letting Blueprints.lua generate a new one from the existing mesh.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 4:28:25 PM from Demigod Forums Demigod Forums

Tower of Light + Buff Mod

I made a mod that changes the Citadel Buff. While it isn't conclusive, it is very suggestive. Load it and watch what happens when the Tower of Light shoots.

Buy Tower Upgrade 1. This increases the AOE size to very, very large. Notice that it still does base Tower of Light damage to all enemies in a very large area.

Buy Tower Upgrade 2. This keeps the AOE size upgrade and increases the AOE damage multiplier to 2000%. Notice that everything doesn't die instantly.

Tower Damage Buff Test

Soap Box: Theory & Code should always be mixed with Empirical data. Ignoring one OR the other leads to error.

Conclusions

  1. Tower of Light AOE size is affected (DamageRadius).
  2. Tower of Light AOE damage is equal to Tower of Light damage. It is not modified by DamageSplash.
  3. Tower of Light damage is affected (DamageBonus).

Short version: Miriyaka is right.

 

Frost Nova

It's been a while, but if I'm not mistaken when an ability is used, it places all of the buffs on all of the targets? If that's the case then Time 0 is the same for all buffs, so we can do length comparisons. Here is the list of buffs and durations.

 

FreezeStructure 6 8 10

FreezeHero 1 2 3

ImmuneMinion 12 16 20

ImmuneHero 2 4 6

SlowUnit 5 5 5

Slowfx 5 7 10

As miriyaka noted, this leads to some really odd behaviors.

  1. The slow always lasts for 5 seconds, while the Slowfx lasts for 5/7/10 seconds.
  2. Nonhero units are never slowed, they are always frozen for the duration of the slow effect.
  3. Nonhero units are immune to stuns for twice the duration of the Freeze (This doesn't counter freeze chaining. Does it work against stuns?)
  4. The Hero is Immune to stuns for twice the duration of the Freeze (does this work?)
  5. Slow effect does not increase in duration.

What should the effect be? Dunno.

The ability is really odd. The slow NEVER effects units, only hero units. The ability can be interpreted to mean that all units are either frozen or slowed for X units of time. If that is the case then increasing the level of the ability increases the percentage of time that hero units are Frozen as opposed to only slowed. So at level 1, it freezes for 20% of the duration, level 2 is 40% of the duration, and level 3 is 60% of the duration.

An alternative proposal, as miriyaka suggests, is that the ability duration should be freeze length + 5 seconds. If this is the case, then the SlowFX should be 6/7/8. However, it isn't. The duration is 5/7/10, which doesn't really match anything, except the Freeze buff for nonHero units. Even then, it doesn't match 6/8/10 versus 5/7/10.

What should it be? I don't know. I think this is a personal judgment call, aka "Ptarth thinks it is a balance issue, again".

 

 

 

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 4:58:59 PM from Demigod Forums Demigod Forums

Quoting miriyaka,
Were you running the UberFix when you had this error?  It's supposed to be fixed.  The game auto-generates invulnerability meshes, so the fix was just a matter of removing the reference to any invuln mesh at all, and letting Blueprints.lua generate a new one from the existing mesh.


I think i had just switched to lasted uber fix and forgot to re-enable it.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 6:37:27 PM from Demigod Forums Demigod Forums

Re: Oculus, I'm not doubting that there might be problems with the current fix in the UberFix, I just want to confirm that it is happening while the UberFix is enabled.

 

Re: Frost Nova, another solution would be to add an OnRemoveBuff function to BOTH freeze debuffs that applies the existing 5-second slow buff when the freeze wears off.  Only problem with this is that OnRemoveBuff doesn't pass an instigator, but I could probably jury-rig something with a class variable on the unit.

I don't see how leaving it exactly how it is now is not a balance concern; it actually gets worse as it increases in level.  It's one of those things nobody notices because it's difficult to see the effect of slows unless they're massive and have a decent duration, but it still affects the usefulness of the higher levels of the ability.

 

Re: Towers, I'll add a bunch of debug messages and take a look at it, but there is absolutely no code path for DamageSplash to affect beam weapons.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 6:41:45 PM from Demigod Forums Demigod Forums

well... have a 3 person test going on now

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 7:06:56 PM from Demigod Forums Demigod Forums

Wait, what is this tower mod supposed to show?  It has the DamageRadius at 100, and DamageBonus at 10.  Both of these apply to the tower just fine, as I've said in every single post - towers gain damage and damage radius from the bonuses, and do not lose damage of any kind to negative DamageSplash values.  Setting DamageSplash to 2 ain't gonna do anything.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 7:08:11 PM from Demigod Forums Demigod Forums

Tower

So, its been so long I forgot the Tower Issue details. I went back and updated my previous post to be more detailed and modified the mod to be more easily understood.

  1. Tower of Light AOE size is affected (DamageRadius).
  2. Tower of Light AOE damage is equal to Tower of Light damage. It is not modified by DamageSplash.
  3. Tower of Light damage is affected (DamageBonus).

Short version: Miriyaka is right.

Frost Nova

Frost Nova doesn't get worse as it levels. It just doesn't get better, in some effects. I've already listed the buff durations above. It is true that the slow does not get better or even have an effect at Level 3. However, the Freeze effect still works and increases in efficiency.

My current thoughts are the slow effect should be increased to match the freeze duration.

SlowUnit 5 5 5 -> 6 8 10

Slowfx 5 7 10 -> 6 8 10

However, this is still a balance fix, and more experienced players would have more informed suggestions.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 7:19:46 PM from Demigod Forums Demigod Forums

Yeah, I just did some testing with different settings at each tower upgrade level, with all upgrades available at level 1, and absolutely confirmed all of the above.  Pretty funny watching all of the towers (and demigods, and creeps) on the map die in two or three tower hits.

And I'm definitely open to feedback on the FN slow issue, but I would prefer that the feedback to be realistic and constructive.  I won't argue that FN gets worse against creeps at higher levels, since creeps are never affected by the slow, but the way it scales up against Demigods is very poor, especially considering that a freeze isn't a true stun.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 7:29:15 PM from Demigod Forums Demigod Forums

Are the SlowUnits only applicable for creeps/minions or are they also snares for Demigods? 

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 7:35:50 PM from Demigod Forums Demigod Forums

Also not affected by the negative splash buff: Finger of God.  In fact, I can't figure out exactly how the FoG works at all, but it definitely isn't a normal weapon / structure, and its damage is uniquely scripted.

Definitely affected: Trebuchets.

I'm gonna do a BuffAffects fix on this that protects units with blueprint damageradius from negative DamageSplash, unless the buff doing the negative splash is flagged as a debuff.

 

I also just realized that I don't have DamageSplash or DamageRadius reflected in the sync.

 

Quoting awuffleablehedgie,
Are the SlowUnits only applicable for creeps/minions or are they also snares for Demigods? 

The slow buff is applied to all mobile units within range-- including demigods-- upon activating the ability.  However, since the lowest freeze time for creeps/minions is 6s, and the longest duration slow is 5s, non-demigods can never actually move until after the slow is worn off.  For Demigods, it lasts for 4, 3, and 2 seconds post-freeze, respectively.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 8:07:19 PM from Demigod Forums Demigod Forums

Looking over the patch notes, you mention the Ooze fix. However, IIRC further testing had revealed that while my fix did help things out, it still doesn't prevent it completely. Effects that drop health below the critical level after the test for low life, but before the damage was dealt, can still result in a suicide effect.

Reason for Karma (Optional)
Successfully updated karma reason!
November 30, 2010 9:13:30 PM from Demigod Forums Demigod Forums

Yeah, I've pretty much been ignoring that one in favor of others because the circumstances that can cause it are incredibly rare, and I've heard of one total report of it.  In logging and tickstamping the whole function, it became clear that the check and damage were pretty much always happening in the same tick.  This means that another ability that damages via -health buff would have to be processed mid-tick between the check and the Ooze damage.

However, I just thought of a pretty easy, non-destructive solution, if the goal is to prevent any unit from ever killing itself.  If the intention is only to prevent certain abilities from killing self, the solution gets a little more complicated (just ends up requiring 2-3 more files hooked to add support for a new damagedata bool).

Reason for Karma (Optional)
Successfully updated karma reason!
December 1, 2010 12:24:40 AM from Demigod Forums Demigod Forums

My plan to pre-empt DoTakeDamage and adjust damage amount to the unit's remaining health - 1 if a no-kill flag is present in damagedata quickly crumbled when I realized just how many things DTD takes into account when doing damage (absorption, armor, damage reduction, unused but fully-implemented things like magic resistance, etc).  So I overrode Kill instead, aborting the kill and setting the unit to 1 hitpoint upon the presence of a no-kill flag & appropriate conditions.

Damage-dealing buffs and weapons will now have three new flags available:

CannotKill = true
CannotKillSelf = true
CannotKillFriendly = true

..with the latter two checking the instigator (if its object is not yet destroyed) as well.

This unfortunately required more destructive overwriting in BuffAffects to pass these flags from damage buffs; I'm replacing just about the entire file at this point.  Kind of sad, but it's not as though any other mods are making changes to it, so I guess it doesn't really matter.

Weapons pass this info from their blueprints as well, and that was easy to do non-destructively.

 

This is ultimately for the Ooze fix, if it wasn't clear.  Ooze is now incapable of killing Unclean Beast, although it will leave him at one hitpoint if another damage event happens between the 100hp shutoff check and the Ooze damage.

 

Edit: Confirmed that this works absolutely; UB cannot be killed by Ooze through any means.  He can be immediately killed by other damage following Ooze, but that's fine/intended, and he'll never be credited with a self-kill.

One negative of the Kill override method is that it still displays the full amount of damage, even if the target doesn't have that many hp left.  I guess it does this for all damage anyway, though?  It just looks really funny when it displays 50 damage on a unit with 1hp left and doesn't actually kill the unit.

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

Stardock Magazine | Register | Online Privacy Policy | Terms of Use

Copyright © 2016 Stardock Entertainment and Gas Powered Games. Demigod is a trademark of Gas Powered Games. All rights reserved. All other trademarks and copyrights are the properties of their respective owners. Windows, the Windows Vista Start button and Xbox 360 are trademarks of the Microsoft group of companies, and 'Games for Windows' and the Windows Vista Start button logo are used under license from Microsoft. © 2012 Advanced Micro Devices, Inc. All rights reserved. AMD, the AMD Arrow logo and combinations thereof are trademarks of Advanced Micro Devices, Inc.