Jump to content

Dawnbreaker "Meridia's Retribution" scaling.


GammaBreaker

Recommended Posts

Hello!

 

I'll try to keep from rambling here. After making a Crusader/Cleric/Vigilant/Paladin type character in one of my saves, I found Sun Fire, Vampire's Bane, and the likes to be about as effective as whipping tennis balls at the undead. To rectify this, I started by making a mod similar to Destruction Magic Scaling. A simple hidden perk that magnifies all Restoration abilities by 1% per skill level. This worked fine until I realized just how much it had overpowered my healing spells (bit of a dunce moment).

 

Backtracking, I worked around the problem by adding a new keyword to the mod. Added the keyword to each ability (Sun Fire, Vampire's Bane, etc.) that I wanted to scale. Then changed the perk to only bolster spell effects containing that keyword. Works perfectly.

 

While leveling, Dawnbreaker was losing a lot of its effectiveness. The Turn Greater Undead effect on it is set to a cap of 30. The Bane of the Undead effect on it is set to a fixed 25 damage. So eventually the fear stopped working and the explosion was largely cosmetic. Since the solution to the offensive Restoration spells worked so well, I thought I'd implement a similar feature for Dawnbreaker (same perk, different keyword, to allow separate scaling values). I thought wrong.

 

Chasing down the spell effects for Meridia's Retribution:

  • DA09EncDawnbreakerFireDamageFFSelfAreaUndead - Damage component of the explosion. Not influenced by keyword addition.
  • DA09EncDawnbreakerStaggerAttackAreaEffectUndead80 - Stagger component of the explosion. Not influenced by keyword addition.
  • DA09EncDawnbreakerTurnUndeadFFMassSelfArea - Fear component of the explosion. Not influenced by keyword.
  • DA09EncDawnbreakeScriptEffect - Special script effect of the proc. Influences the Fire Damage proc when keyword is added.
  • DA09EnchDawnbreakerEnchFireDamageFFContact - The basic fire damage enchantment when taking a melee swing. Influences the Fire Damage proc when keyword is added.

At this point, I've run out of ideas. Either I'm not chasing down the right items to flag with the keyword, the keyword is an ineffective method for this particular group of spell effects, or it's locked in due to the nature of Meridia's Retribution being a special scripted type enchantment, or some other factor I can't wrap my head around.

 

I'm quite a novice with the Creation Kit, usually just altering existing mods to my liking - reducing inflated armor values on mods to match vanilla values, making things like Immersive Armors play nice with SushiSquid's Smithing Tree. Simple things that just require a few tweaks or minor additions. Nothing complex enough to be able to grasp why Meridia's Retribution's spell effects won't respond to the keyword scaling.

 

A less elegant solution would be to create a set of upgradeable Dawnbreakers at the Skyforge that consume the previous one as an ingredient or something. Each one with a stronger enchantment, since the enchantment values do respond to being increased. If that's even possible. Due to the apparently special nature of Dawnbreaker, maybe even that won't cut it.

 

Anyway, if anyone has any ideas on how to get the AOE Fire Damage and AOE Turn Undead components to respond to percentage scaling, I'd love to know. If needed, I can provide a copy of the tiny little ESP file. I'll probably need to make a clean one, as I've done a lot of fudging around with my current copy of it to unravel this mystery and left a bit of a mess in it.

 

 

Thanks!

 

 

EDIT: With some quick tinkering, it's easy enough to make new iterations of the Dawnbreaker. Just duplicating some entries, linking them together, and making a new Dawnbreaker script. So if it turns out that it's impossible to link it to a multiplicative value for scaling, I will just clone up four or five level-staggered versions and make smithing recipes for them. The plan isn't to make a pile of godlike Dawnbreakers, but just to let them keep up with level after 30.

Edited by GammaBreaker
Link to comment
Share on other sites

That's what I thought might be the case. I'm guessing the script locks in the function at the time of creation or something to that effect? Anyway, charting out the scaled Dawnbreakers now.

 

Each one will consume the previous one as an ingredient, if it works properly. It'll be two separate mods at this point, since Dawnbreaker doesn't rely on Dawnguard in any way. I'll post it later on once I get it working, and hopefully a more experienced modder will be able to look it over for me as I don't want to foul up my or anyone else's saves with a bad mod.

Link to comment
Share on other sites

Seems I can't upload things here, I assume due to low post count and such. So I dug up an old web space to upload to. Here's a link to the ESM and BSA: LeveledDawnbreakers.7z. If the hotlink doesn't work, there's a proper link on the (very blank) index page. Was able to delete the PSC/PEX files and the BSA took over, so it should work for anyone. Ran over it with TES5Edit to make sure I didn't fumble any dirty edits in.

 

Currently it contains one extra Dawnbreaker, forged under the Daedric Smithing section and only at the Skyforge. Requires an original Dawnbreaker, Daedra Heart and Ebony Ingot (for now). Tempers like a normal Dawnbreaker, base damage 12. Fire proc damage increased to 12 from 10. Bane of the Undead explosion set to level magnitude of 55, and 50 (or 55) Fire AOE damage. Was able to create the new version, the enchantment did fear higher level undead, and did the additional explosion damage.

 

If anyone with more experience has a few minutes to give this a look over, I would greatly appreciate it. While this is largely a personal mod, if it's stable, I can put the full version up when it's done. Shouldn't take long if it's this simple. Some confirmation would just put my mind at ease.

 

Relevant entries for the leveled Dawnbreaker (soon to be plural) are:

  • DA09DawnbreakerBaneOfUndeadSpellV00
  • DA09DawnbreakerV00
  • DA09EncDawnbreakerV00
  • DA09EncDawnbreakeScriptEffectV00
  • RecipeWeaponDA09DawnbreakerV00
  • TemperWeaponDA09DawnbreakerV00
  • \Data\Scripts\DA09EncDawnbreakerScriptV00.pex
  • \Data\Scripts\Source\DA09EncDawnbreakerScriptV00.psc

 

Script is below just for reference. A simple duplicate of the vanilla script with the V00 tags.

 

 

Scriptname DA09EncDawnbreakerScriptV00 extends ActiveMagicEffect  
{First iteration of upgraded Dawnbreakers, starting with V00}
Spell Property DA09DawnbreakerBaneOfUndeadSpellV00 Auto

Event OnDying(Actor akKiller)
    
    Actor TargetActor = GetTargetActor()
    
; ;    debug.trace(self + "OnDeath() casting DA09DawnbreakerBaneOfUndeadSpellV00 from Target Actor:" + TargetActor)

    DA09DawnbreakerBaneOfUndeadSpellV00.Cast(TargetActor, None)
    
EndEvent   

 

 

 

 

Here's a Papyrus log from playing with it outside of Whiterun VS 4 skeletons. There are a lot of "SayOnHitByMagicEffectScript.OnEffectStart" errors, but even a standard Dawnbreaker without my mod does this, and I did not change any vanilla Dawnbreaker files. I believe it's because it's trying to call dialog reactions from skeletons that have no responses, or something to that effect. Otherwise, I do not see any glaring Papyrus log errors.

 

 

[10/01/2013 - 10:32:23PM] Papyrus log opened (PC)
[10/01/2013 - 10:32:23PM] Update budget: 1.200000ms (Extra tasklet budget: 1.200000ms, Load screen budget: 500.000000ms)
[10/01/2013 - 10:32:23PM] Memory page: 128 (min) 512 (max) 76800 (max total)
[10/01/2013 - 10:32:24PM] Cannot open store for class "dlc1scwispwallscript", missing file?
[10/01/2013 - 10:32:25PM] Cannot open store for class "_arissa_inpc_behavior", missing file?
[10/01/2013 - 10:32:25PM] Cannot open store for class "chherdingquestscript", missing file?
[10/01/2013 - 10:32:38PM] warning: Property pTG05KarliahInvisibilitySpell on script QF_TG05_00021551 attached to TG05 (00021551) cannot be initialized because the script no longer contains that property
[10/01/2013 - 10:32:38PM] warning: Property TG05KarliahInvisibilitySpell on script tg06questscript attached to TG06 (00021552) cannot be initialized because the script no longer contains that property
[10/01/2013 - 10:32:38PM] VM is freezing...
[10/01/2013 - 10:32:38PM] VM is frozen
[10/01/2013 - 10:32:38PM] Reverting game...
[10/01/2013 - 10:32:38PM] warning: Property pTG05KarliahInvisibilitySpell on script QF_TG05_00021551 attached to TG05 (00021551) cannot be initialized because the script no longer contains that property
[10/01/2013 - 10:32:38PM] warning: Property TG05KarliahInvisibilitySpell on script tg06questscript attached to TG06 (00021552) cannot be initialized because the script no longer contains that property
[10/01/2013 - 10:32:51PM] Loading game...
[10/01/2013 - 10:32:51PM] VM is thawing...
[10/01/2013 - 10:32:52PM] InitWidgetLoader()
[10/01/2013 - 10:32:52PM] ========== Convenient Horses: Scanning for supported plugins...
[10/01/2013 - 10:32:52PM] ========== ERRORS RELATED TO MISSING FILES SHOULD BE IGNORED!
[10/01/2013 - 10:32:52PM] Error: File "Dragonborn.esm" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 100
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "Falskaar.esm" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 101
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "Wyrmstooth.esp" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 102
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "Convenient Horse Herding.esp" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 103
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "XFLMain.esm" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 104
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "3DNPC.esp" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 105
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "HothFollower.esp" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 106
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "CompanionValfar.esp" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 107
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] Error: File "CompanionArissa.esp" does not exist or is not currently loaded.
stack:
    <unknown self>.Game.GetFormFromFile() - "<native>" Line ?
    [CH (0E020329)].chquestscript.GameLoaded() - "CHQuestScript.psc" Line 108
    [CH (0E020329)].chquestscript.OnUpdate() - "CHQuestScript.psc" Line 134
[10/01/2013 - 10:32:52PM] ========== Convenient Horses: Scan complete.
[10/01/2013 - 10:32:52PM] ========== Convenient Horses: Unregistered for all key press events.
[10/01/2013 - 10:32:52PM] ========== Convenient Horses: Registered for 2 key press events.
[10/01/2013 - 10:34:32PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 2 on  (FF0016EA)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] warning: Assigning None to a non-object variable named "::temp5"
stack:
    [Active effect 2 on  (FF0016EA)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 2 on  (FF0016EA)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] warning: Assigning None to a non-object variable named "::temp6"
stack:
    [Active effect 2 on  (FF0016EA)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 3 on  (FF0016E4)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] warning: Assigning None to a non-object variable named "::temp5"
stack:
    [Active effect 3 on  (FF0016E4)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 3 on  (FF0016E4)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] warning: Assigning None to a non-object variable named "::temp6"
stack:
    [Active effect 3 on  (FF0016E4)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] warning: Assigning None to a non-object variable named "::temp5"
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:32PM] warning: Assigning None to a non-object variable named "::temp6"
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:34:38PM] [DLC1_QF_DLC1VQ00ChangeLocatio_0100D90B <DLC1VQ00ChangeLocation (0300D90B)>] stage 0, start up
[10/01/2013 - 10:34:38PM] [DLC1_QF_DLC1EclipseAttack2_01017648 <DLC1EclipseAttack2 (03017648)>]stage 1
[10/01/2013 - 10:34:38PM] Spawn alias in slot 2 is a NONE object.
[10/01/2013 - 10:34:38PM] [DLC1_QF_DLC1VQ01MiscObjective_0100D06C <DLC1VQ01MiscObjective (0300D06C)>] starting
[10/01/2013 - 10:35:05PM] [DLC1EclipseAttackPlayerScript <alias Player on quest DLC1EclipseAttack2 (03017648)>]OnLocationChange() stopping quest, player is not in:[Location < (00018A56)>]
[10/01/2013 - 10:35:06PM] [DLC1_QF_DLC1EclipseAttack2_01017648 <DLC1EclipseAttack2 (03017648)>]stage 255, calling DeleteWhenAble() on created aliases
[10/01/2013 - 10:35:35PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:35:35PM] warning: Assigning None to a non-object variable named "::temp5"
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:35:35PM] Error: Cannot call value() on a None object, aborting function call
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:35:35PM] warning: Assigning None to a non-object variable named "::temp6"
stack:
    [Active effect 2 on  (FF0016BC)].SayOnHitByMagicEffectScript.OnEffectStart() - "SayOnHitByMagicEffectScript.psc" Line 13
[10/01/2013 - 10:36:04PM] [DLC1_QF_DLC1VQ00ChangeLocatio_0100D90B <DLC1VQ00ChangeLocation (0300D90B)>] stage 0, start up
[10/01/2013 - 10:36:29PM] [DLC1_QF_DLC1VQ00ChangeLocatio_0100D90B <DLC1VQ00ChangeLocation (0300D90B)>] stage 0, start up
[10/01/2013 - 10:36:40PM] VM is freezing...
[10/01/2013 - 10:36:40PM] VM is frozen

 

 

 

 

And for good measure, my mods list (it's short), though it should have no conflicts.

 

 

Skyrim.esm
Update.esm
SPIKE.esm
Dawnguard.esm
HearthFires.esm
HighResTexturePack01.esp
HighResTexturePack02.esp
HighResTexturePack03.esp
Unofficial Skyrim Patch.esp
Unofficial Dawnguard Patch.esp
Unofficial Hearthfire Patch.esp
RaceMenu.esp
RaceMenuPlugin.esp
SkyUI.esp
Convenient Horses.esp
Realistic Lighting.esp
Realistic Lighting Patcher.esp
SmithingTreeDG.esp
ethereal_elven_overhaul.esp
Chesko_WearableLantern.esp
Destruction Scaling.esp
bound weapons redux.esp
FlansEyesForSkrim.esp
AllHairs.esp
hothtrooper44_ArmorCompilation.esp
ArmoredCircletsQuickFox.esp
LightArmorTree.esp
HeavyArmorTree.esp
High Level Enemies.esp
High Level Enemies - Dawnguard.esp
Beards.esp
aMidianborn_Skyforge_Weapons.esp
Better Dynamic Snow.esp
SPOAsilverknight.esp
Blaze Of Eventide.esp
BetterMagic_FULL.esp
StaticMeshImprovementMod.esp
Glass Variants.esp
Differently Ebony.esp
DG-NoAttacks.esp
LeveledDawnbreakers.esp

 

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...