[RELz] BFG's Enhanced Armory Realism (BEAR)

Post » Wed Mar 30, 2011 3:16 am

Link to previous discussion thread: http://www.gamesas.com/index.php?/topic/1108098-relz-bfgs-swap-broken-armor-or-weapons-item-health-scales-enchantments/page__st__60

This mod is available HERE: http://www.tesnexus.com/downloads/file.php?id=32914


BFG's Enhanced Armory Realism (BEAR), v1.71
Formerly known as "BFG's Swap Broken Armor or Weapons, & Item Health Scales Enchantments"

Released August 31, 2010

*****THIS MOD REQUIRES OBSE v0018 OR NEWER***** Download http://obse.silverlock.org


General Mod Description
This mod aims to improve the way weapon and armor condition (health) impacts your game, increasing immersion and making the game more difficult.
  • All settings are customizable! All mod features as described below can be toggled on or off, and the strength of enchantment scaling on armor and weapons can be tailored to your tastes.
  • New! By request, the mod is now compatible with OBSE 18. However, OBSE 19 - Beta 3 or better is recommended to take full advantage of the scripting.
  • New! Clothing can give a small armor bonus while it is being worn. The armor bonus given depends on how heavy it is, and what part of the body it covers.
  • Broken armor can no longer be worn. It is replaced with the highest value clothing in inventory, giving the impression that that clothing was being worn underneath.
  • Magical enchantments on armor and weapons scale according to the armor or weapon health.
  • A new weapon will automatically equip if the current one just broke, or was disarmed. Preference will be given to a high-value weapon of similar type.
  • Broken armor or weapons fall to the ground during combat.
  • All of the above applies to the player and NPCs.
  • Starting with version 1.50, a script is included that allows for safe and quick upgrading, uninstalling, or configuring of the mod.


Important Warning: Upgrading From v1.50 or Earlier of This Mod
Earlier versions of this mod made it difficult to upgrade, uninstall, or change INI settings without permanently affecting the enchantments on your equipment. Starting with version 1.50, I have included a script that will allow you to upgrade, uninstall, or reconfigure the INI with ease. However, if you are currently running a version earlier than 1.50, you must first complete the steps in the KNOWN ISSUES section. (Otherwise your game can be permanently affected.) After those steps are completed, just install, upgrade, uninstall, or configure according to the directions in those respective sections of this document.


Detailed Features Description
Full details of how the mod works, and what changes it makes, are included in the Readme file. The Readme is included with the mod and is also available as a separate download.

To Install, Upgrade, Uninstall, or Change INI Settings
Please see the included Readme file for detailed instructions. Because of the nature of the changes this mod makes, enchanted armor and weapon statistics can be permanently damaged if the steps in the Readme are not followed. I have included a special upgrade/uninstall script with this mod to make doing so much easier.

Known Conflicts
This mod will conflict with mods such as CAN'T WEAR BROKEN ARMOR or UNEQUIP BROKEN ARMOR that have similar behavior.
User avatar
Assumptah George
 
Posts: 3373
Joined: Wed Sep 13, 2006 9:43 am

Post » Wed Mar 30, 2011 12:47 pm

That is indeed a better name. You should ask the mods to put a "[Relz]" in the thread title to draw more attention :celebration:
User avatar
Heather M
 
Posts: 3487
Joined: Mon Aug 27, 2007 5:40 am

Post » Wed Mar 30, 2011 6:14 am

Sounds awesome! Downloading :D
User avatar
Setal Vara
 
Posts: 3390
Joined: Thu Nov 16, 2006 1:24 pm

Post » Wed Mar 30, 2011 1:53 am

New name, same great taste!? Oh wait nvm, mod still looks good though I like the new mod description seems like it will soon be a very nice addition to my Load order.
User avatar
Yvonne Gruening
 
Posts: 3503
Joined: Mon Apr 23, 2007 7:31 pm

Post » Wed Mar 30, 2011 9:36 am

"OBSE 19 - Beta 3"

Is that even released? I can only find beta 2.
User avatar
sophie
 
Posts: 3482
Joined: Fri Apr 20, 2007 7:31 pm

Post » Tue Mar 29, 2011 9:38 pm

"OBSE 19 - Beta 3"

Is that even released? I can only find beta 2.


Nope, not yet. CorePC says it probably will be tomorrow though. In the meantime, it runs with OBSE 18, just not quite as well. (You might notice some "stuttering" and other odd stuff with the weapon reequipping when you're using OBSE 18.)
User avatar
Tarka
 
Posts: 3430
Joined: Sun Jun 10, 2007 9:22 pm

Post » Wed Mar 30, 2011 9:12 am

New name, same great taste!? Oh wait nvm, mod still looks good though I like the new mod description seems like it will soon be a very nice addition to my Load order.


Yep! I thought it was about time for a name change. A lot of people didn't even bother looking at the mod, the old name was so bad. I even saw a few people make requests for features my mod already covers, but they had no idea their request had already been done! And it didn't help that the ESP file had a different name than the mod itself, so people looking for updates often couldn't find the mod a second time.

Hopefully the "rebranding" will take care of all of that.
User avatar
michael flanigan
 
Posts: 3449
Joined: Thu Jun 14, 2007 2:33 pm

Post » Wed Mar 30, 2011 12:31 pm

"OBSE 19 - Beta 3"

Is that even released? I can only find beta 2.



It was just uploaded a few hours ago if you'd like to give it a try.
User avatar
Cheryl Rice
 
Posts: 3412
Joined: Sat Aug 11, 2007 7:44 am

Post » Wed Mar 30, 2011 12:50 am

If you really wanted to get attention, it would be BGF's Enhanced Equipment Realism.
User avatar
sharon
 
Posts: 3449
Joined: Wed Nov 22, 2006 4:59 am

Post » Wed Mar 30, 2011 9:03 am

Not sure what would cause this, but the problem went away when I deactivated your mod. Using OBSE v 19 beta 3 and clean version (not upgrade) of BEAR v 1.7

I was at the arena w/ my companion and had just put on my arena gear. It was still early so I decided to use one of the bed rolls there and sleep for a couple hours. After I woke up, both my armor and my companion's was gone, and I heard a continuous clanking noise, which is the same noise I hear when I'm putting my arena armor on. The noise kept repeating even though I was naked. In addition, the game got completely sluggish, and I was rubberbanding as I moved around the room. I also noticed my companion's armor was going on and off. I wasn't sure if this was due to sleeping, so I reloaded my save and tried waiting instead. Same problem. So I quit the game, deactivated your mod, and tried both sleeping and waiting. Problem was gone.

Here's my load order if it helps:
Spoiler
Active Mod Files:00  Oblivion.esm01  Windfall.esm02  All Natural Base.esm  [Version 0.9.9.5]03  Cobl Main.esm  [Version 1.72]04  Oscuro's_Oblivion_Overhaul.esm  [Version 1.34]05  Mart's Monster Mod.esm  [Version 3.7b1]06  Mart's Monster Mod for OOO.esm  [Version 0.9.9MB3]07  TamrielTravellers.esm  [Version 1.39c]08  Better Cities Resources.esm09  bookplacing.esm  [Version 1]0A  Unofficial Oblivion Patch.esp  [Version 3.3]0B  Oblivion Citadel Door Fix.esp0C  DLCShiveringIsles.esp0D  Unofficial Shivering Isles Patch.esp  [Version 1.4.0]0E  Better Cities .esp0F  Natural_Habitat_by_Max_Tael.esp10  All Natural - Real Lights.esp  [Version 0.9.9.5]11  All Natural.esp  [Version 0.9.9.5]12  All Natural - SI.esp  [Version 0.9.9.5]13  Natural_Water_by_Max_Tael.esp++  Symphony of Violence.esp14  300_Lore_Dialogue_Updated.esp15  Book Jackets Oblivion - BP.esp16  ChaseCameraMod.esp17  Personality Idles - Modified version.esp18  ReneersNotesMod.esp19  Enhanced Economy.esp  [Version 4.2.2]1A  Map Marker Overhaul.esp  [Version 3.5.2]1B  Map Marker Overhaul - SI additions.esp  [Version 3.5]1C  DLCHorseArmor.esp1D  DLCHorseArmor - Unofficial Patch.esp  [Version 1.0.5]1E  DLCOrrery.esp1F  DLCOrrery - Unofficial Patch.esp  [Version 1.0.3]20  DLCVileLair.esp21  DLCVileLair - Unofficial Patch.esp  [Version 1.0.5]22  DLCMehrunesRazor.esp23  DLCMehrunesRazor - Unofficial Patch.esp  [Version 1.0.4]24  DLCSpellTomes.esp++  DLCSpellTomes - Unofficial Patch.esp  [Version 1.0.1]25  Mart's Monster Mod - Hemingweys NPC and Guard Capes.esp  [Version 1.0]26  DLCThievesDen.esp27  DLCThievesDen - Unofficial Patch.esp  [Version 1.0.5]28  DLCThievesDen - Unofficial Patch - SSSB.esp  [Version 1.0.4]29  Cobl Glue.esp  [Version 1.72]2A  Cobl Si.esp  [Version 1.63]++  Cobl Tweaks.esp  [Version 1.44]2B  Oscuro's_Oblivion_Overhaul.esp  [Version 1.34]++  OOO-Water_Weeds.esp  [Version 1.33]2C  OOO 1.32-Cobl.esp  [Version 1.72]2D  Mart's Monster Mod for OOO.esp  [Version 0.9.9MB3]++  Mart's Monster Mod - Shivering Isles.esp  [Version 3.7b3p3]2E  Mart's Monster Mod - Additional Enemy NPC Vars.esp  [Version 3.7b3p3]2F  Mart's Monster Mod - Hunting & Crafting.esp  [Version 3.7b3p3]++  Mart's Monster Mod - Looting NPCs & Creatures.esp  [Version 3.7b3p3]++  Mart's Monster Mod - Less Reavers.esp  [Version 3.7b3p3]++  Mart's Monster Mod for OOO - LessReaversInGates.esp  [Version 0.9.9MB3]++  Mart's Monster Mod - Safer Roads.esp  [Version 3.7b3p3]++  Mart's Monster Mod - No Undead Rise.esp  [Version 3.7b3p3]++  Mart's Monster Mod - Spawn Rates - Reduced Reduced.esp  [Version 3.7b3p3]30  Mart's Monster Mod - Safer Quest Locations.esp  [Version 3.7b3p3]31  Mart's Monster Mod - Dungeons of MMM.esp  [Version 3.7b3p3]32  Mart's Monster Mod - More Wilderness Life.esp  [Version 3.7b3p3]++  Mart's Monster Mod - More Passive Wildlife.esp  [Version 3.7b3p3]33  Mart's Monster Mod - Extra Wounding.esp  [Version 3.7b3p3]++  Mart's Monster Mod - Friendlier Factions OOO.esp  [Version 3.7b3p3]34  Mart's Monster Mod - Farm Animals.esp  [Version 3.7b3p3]35  Mart's Monster Mod - Diverse WaterLife.esp  [Version 3.7b3p3]++  Mart's Monster Mod - Slof Horses Complete.esp  [Version 3.7b3p3]++  Travellers4MMMHostileFactions.esp  [Version 1.39c]36  TamrielTravellers4OOO.esp  [Version 1.39c]37  TamrielTravellersItemsnpc.esp  [Version 1.39c]38  TamrielTravellersItemsCobl.esp  [Version 1.39c]39  ShiveringIsleTravellers.esp  [Version 1.39c]++  ShiveringIsleTravellersFriendlyFactions4MMM.esp  [Version 1.39c]++  FineWeapons for OOO.esp3A  RustyItems for OOO.esp++  MMM-Cobl.esp  [Version 1.69]3B  Imperial Furniture Renovated.esp3C  Kragenir's Death Quest.esp3D  KDQ - Rural Line Additions.esp3E  Windfall.esp3F  DLCBattlehornCastle.esp40  DLCBattlehornCastle - Unofficial Patch.esp  [Version 1.0.4]41  DLCFrostcrag.esp42  DLCFrostcrag - Unofficial Patch.esp  [Version 1.0.4]43  Knights.esp44  Knights - Unofficial Patch.esp  [Version 1.0.10]++  Mart's Monster Mod for OOO - Knights .esp  [Version 0.9.9MB3]45  AFK_Weye.esp  [Version 2.1.COBL]46  Feldscar.esp  [Version 1.0.4]47  Vergayun.esp  [Version 1.0.5]48  Faregyl.esp  [Version 1.0.10]49  Molapi.esp  [Version 1.0]4A  xuldarkforest.esp  [Version 1.0.5]4B  xulStendarrValley.esp  [Version 1.2.2]4C  xulTheHeath.esp4D  MMMMWL-TheHeath patch.esp4E  XulEntiusGorge.esp4F  xulFallenleafEverglade.esp  [Version 1.3.1]50  xulColovianHighlands_EV.esp  [Version 1.2.1]51  xulChorrolHinterland.esp  [Version 1.2.2]52  xulBeachesOfCyrodiilLostCoast.esp  [Version 1.6.4]53  xulBravilBarrowfields.esp  [Version 1.3.2]54  xulLushWoodlands.esp  [Version 1.3]55  xulAncientYews.esp  [Version 1.4.3]56  xulAncientRedwoods.esp  [Version 1.6]57  xulCloudtopMountains.esp  [Version 1.0.3]58  xulArriusCreek.esp  [Version 1.1.3]59  xulPatch_AY_AC.esp  [Version 1.1]5A  xulRollingHills_EV_withoutWheat.esp  [Version 1.3.2]5B  MMMMWL-RollingHills patch.esp5C  xulPantherRiver.esp5D  xulRiverEthe.esp  [Version 1.0.2]5E  xulBrenaRiverRavine.esp  [Version 1.0.2]5F  xulImperialIsle.esp  [Version 1.6.5]60  xulBlackwoodForest.esp  [Version 1.0.4]61  xulCheydinhalFalls.esp  [Version 1.0.1]62  xulAspenWood.esp  [Version 1.0.2]63  xulSkingradOutskirts.esp64  xulSnowdale.esp  [Version 1.0]65  Better Cities - House price patch.esp  [Version 1.0]66  Natural_Vegetation_by_Max_Tael.esp67  Harvest [Flora].esp  [Version 3.0.0]++  Harvest [Flora] - Shivering Isles.esp  [Version 3.0.0]++  Harvest [Flora] - DLCVileLair.esp  [Version 3.0.0]68  Harvest [Flora] - DLCFrostcrag.esp  [Version 3.0.0]++  Book Placement v2.esp  [Version 2.0]69  Cliff_BetterLetters.esp  [Version 1.2]6A  Salmo the Baker, Cobl.esp  [Version 3.08]6B  BFG's Enhanced Armory.esp++  Mart's Monster Mod - Resized Races.esp  [Version 3.7b3p3]6C  1em_Vilja.esp6D  bgBalancingEVCore.esp  [Version 10.52EV-D]6E  bgMagicEV.esp  [Version 1.7EV]++  bgMagicItemSigil.esp  [Version 1.68EV]++  bgMagicEVStartspells.esp  [Version 1.68EV]++  bgMagicEVAddEnVar.esp  [Version 1.68EV]6F  bgMagicEVPaperChase.esp  [Version 1.68EV]++  bgBalancingEVOptionalClasses.esp  [Version 9.0EV-U]++  bgBalancingEVOptionalFangs.esp  [Version 10.0EV-D]++  bgBalancingEVOptionalMoreEyes.esp  [Version 10]70  bgBalancingEVOptionalNPCDiversity, TNR Merge.esp  [Version 10.0EV-D]++  bgBalancingEVOptionalFCOMAdditions.esp  [Version 10.]71  bgBalancingEVLAMEAddition.esp  [Version 10.51EV-D]++  bgBalancingEVLAMEGlue.esp  [Version 10.0EV-D1.62EV]72  bgBalancingEVOptionalNPCDiversityLAME.esp  [Version 10.5EV-D]73  bgIntegrationEV.esp  [Version 0.993]74  Better Cities - Full City Defences.esp75  Better Cities Full.esp76  BCBravilFULL-Barrowfields patch.esp77  BCChorrol-ChorrolHinterland patch.esp78  BCCheydinhalFULL-CheydinhalFalls patch.esp79  BCSkingrad-SkingradOutskirts patch.esp7A  Better Cities - VWD of the IC.esp7B  Better Imperial City.esp7C  QTdof.esp7D  Enhanced Economy - Soulgems.esp  [Version 4.2.2]7E  Hemingweys Capes.esp  [Version 2.00]7F  MiniMap.esp80  Cobl Silent Equip Misc.esp  [Version 01]**  All Natural - Indoor Weather Filter For Mods.esp  [Version 0.9.9.5]81  Bashed Patch, 0.esp82  FormID Finder4.esp83  Oblivion Graphics Extender Support.esp  [Version 0.2]84  Streamline 3.1.esp


User avatar
Milagros Osorio
 
Posts: 3426
Joined: Fri Aug 25, 2006 4:33 pm

Post » Wed Mar 30, 2011 1:43 pm

Not sure what would cause this, but the problem went away when I deactivated your mod. Using OBSE v 19 beta 3 and clean version (not upgrade) of BEAR v 1.7

I was at the arena w/ my companion and had just put on my arena gear. It was still early so I decided to use one of the bed rolls there and sleep for a couple hours. After I woke up, both my armor and my companion's was gone, and I heard a continuous clanking noise, which is the same noise I hear when I'm putting my arena armor on. The noise kept repeating even though I was naked. In addition, the game got completely slugging, and I was rubberbanding around the room as I moved around. I also noticed my companion's armor was going on and off. I wasn't sure if this was due to sleeping, so I reloaded my save and tried waiting instead. Same problem. So I quit the game, deactivated your mod, and tried both sleeping and waiting. Problem was gone.

The Readme file has specific instructions for deactivating/uninstalling this mod. If you followed those, I presume you wouldn't have seen the issues you saw...
User avatar
Louise Andrew
 
Posts: 3333
Joined: Mon Nov 27, 2006 8:01 am

Post » Tue Mar 29, 2011 11:43 pm

The Readme file has specific instructions for deactivating/uninstalling this mod. If you followed those, I presume you wouldn't have seen the issues you saw...


I was using a clean version of the mod. Didn't upgrade to this version of BEAR. But you are correct the problem went away when I deactivated the mod.
User avatar
bonita mathews
 
Posts: 3405
Joined: Sun Aug 06, 2006 5:04 am

Post » Wed Mar 30, 2011 10:18 am

Wow, that is really strange. I haven't encountered anything like it in my testing.
From the sound of things, the mod was repeatedly trying to reequip the Arena Armor on you and your companion, but was unable to do so for some reason. Could you help me answer a few questions?


(1) Does anything like this happen to you or your companion when you're wearing anything OTHER than Arena armor? Please try it under the exact same circumstances, with the same mods running, but just with different armor. (The mod has specific exceptions built in for Arena armor since having it fall off in the middle of battle would disqualify you. It's possible I have those exceptions set up wrong.)
(2) Would you be willing to download and install ConScribe, and then tell me if the ConScribe log notes any errors in this mod?
(3) Do you have any mods that make changes to vanilla Oblivion's sleeping mechanism? I recently had to work on this mod to make it compatible with See You Sleep, for example, and it is possible another mod in the same vein is causing a problem.

I'm familiar with the majority of your installed mods and don't think that any of those I am familiar with could have been contributing factors. I have not tested this mod extensively with COBL or OOO, however, so one of those could be causing problems.

Thanks, BFG

Edit: Hmm, interesting. I did some testing just now, and I was able to duplicate the issue. It seems to only happen with the Arena armor though, and only when that Armor's enchantment strength has changed. My guess is that the game won't allow the Arena Raiment's enchantments to change, and so what you're seeing is the mod trying to apply the new enchantment over and over and over again. I need to build an exclusion for Arena armor into the enchantment scaling script.
Let me know if you encounter similar behavior with any other armor.
User avatar
Emmi Coolahan
 
Posts: 3335
Joined: Wed Jan 24, 2007 9:14 pm

Post » Wed Mar 30, 2011 1:42 pm

If you really wanted to get attention, it would be BFG's Enhanced Equipment Realism.


Heh, wish I'd thought of that a bit quicker. :hubbahubba:
User avatar
Horror- Puppe
 
Posts: 3376
Joined: Fri Apr 13, 2007 11:09 am

Post » Wed Mar 30, 2011 3:07 am

Unfortunately, it looks like the problem with the weird Arena behavior is more complex than I'd hoped. The problem is tough to describe so I've laid it out here as an example of what I think is happening.

In each cycle:
--The mod determines that the Arena Raiment you are wearing needs to have its enchantment changed. It changes the enchantment, and unequips and reequips the Raiment so that the new enchantment gets applied to you.
--Another character in the cell is also wearing the same Arena Raiment. However, their Raiment has a different health than yours - for example maybe theirs is at 100% and yours is at 125%. That means their Raiment's enchantment should have a different strength than yours. It changes the enchantment, and unequips and reequips the Raiment.

Here's the kicker: each enchantment change affects BOTH Raiments. Obviously, that's a flaw in my script design. So, as soon as your Raiment is changed, it triggers an unequip/reequip on the other character, and as soon as theirs is changed, it triggers an unequip/reequip on you. Ad infinitum.

It'll take me a while to figure out how to fix this, as it's a very complex problem scripting-wise. In the meantime, I suggest you turn the mod off while you're in the Arena. :)


EDIT: There's a way around the problem in OBSE 19, but I'm hesitant to apply that fix because many users still want to stay on OBSE 18.
User avatar
Jessie Rae Brouillette
 
Posts: 3469
Joined: Mon Dec 11, 2006 9:50 am

Post » Wed Mar 30, 2011 1:29 pm

Err... are you sure you understand the mechanism correctly?

Two copies of the same gear item can have separate extra data (durability, enchantment charges, stolen-ness, etc.) but they can't have different primary data (anything seen in the CS, including enchantment). If you're just changing the enchantment on the raiment, it will affect all raiments and the new 0019 commands won't help that.

What will help is CloneForm. Create a new raiment which is identical but separately indexed. Change the enchantment on that, and the base version won't be affected. Of course if you're doing this dynamically, especially across multiple actors, you have to go to some lengths to prevent save game bloat.

I really need to update Formulator to handle gear, not just spells. It's the appropriate tool for this job. :)
User avatar
Oyuki Manson Lavey
 
Posts: 3438
Joined: Mon Aug 28, 2006 2:47 am

Post » Wed Mar 30, 2011 4:40 am

Err... are you sure you understand the mechanism correctly?

Two copies of the same gear item can have separate extra data (durability, enchantment charges, stolen-ness, etc.) but they can't have different primary data (anything seen in the CS, including enchantment). If you're just changing the enchantment on the raiment, it will affect all raiments and the new 0019 commands won't help that.

What will help is CloneForm. Create a new raiment which is identical but separately indexed. Change the enchantment on that, and the base version won't be affected. Of course if you're doing this dynamically, especially across multiple actors, you have to go to some lengths to prevent save game bloat.

I really need to update Formulator to handle gear, not just spells. It's the appropriate tool for this job. :)


Tejon, you're right. I realized after I posted the above that the OBSE 19 commands wouldn't help. You correctly identified the problem - this mod works on an ObjectID basis, not a Reference basis, meaning that all occurrences of a given piece of enchanted armor will have the same enchantment scaling applied to it. In most circumstances, this has not been a problem, because it was rare to have two living actors wearing the same enchanted armor, in the same area, at the same time, with substantially different health; and that combination is needed for this bug to surface.

In making my earlier post, I erroneously thought that the SetEnchantment group of commands could work on an ObjectID or a Reference level, and that after I changed those commands to use a Reference, I could grab the armor's Reference using OBSE 19's new Reference-walking-through-a-container loop. That would allow me to scale each individual occurrence of a piece of armor differently. Sadly, SetEnchantment and related commands only work on an ObjectID level, so the new OBSE 19 commands won't help at all. (That's not a complaint about OBSE, by the way - it just now occurred to me the reason for this is, like you said, Enchantments are at a base form level, not at a reference level.)

The only solution I had come up with so far was to have the mod actively check if it was encountering more than one occurrence of the same enchanted armor, and if so, have it ignore the second or greater occurrences. The drawback is that every occurrence of that armor would have whatever stats needed to be applied to the first active occurrence the mod found. Your CloneForm idea is interesting, though, and might provide a way around that problem...I'll have to give it some more thought!

One question about CloneForm: Can it contribute to savegame bloat? I'm thinking I should only use Cloneform in situations where the same armor is found twice in the same area - in other words, minimize its use - as much as possible.

Oh, and if you do update Formulator, let me know--I'd love to use it instead for this!
Thanks, BFG
User avatar
Javier Borjas
 
Posts: 3392
Joined: Tue Nov 13, 2007 6:34 pm

Post » Wed Mar 30, 2011 11:34 am

One question about CloneForm: Can it contribute to savegame bloat?

If not done very carefully, especially in an application like this, it will cause more bloat than you can shake a stick at. The hoops you have to jump through to minimize that bloat are exactly what Formulator automates. ARES will also benefit from Formulator working on objects; I need to make that a priority. It's probably only a day or two of work, just very bland work so I've been putting it off. ;)
User avatar
Jonathan Braz
 
Posts: 3459
Joined: Wed Aug 22, 2007 10:29 pm

Post » Wed Mar 30, 2011 10:46 am

If not done very carefully, especially in an application like this, it will cause more bloat than you can shake a stick at. The hoops you have to jump through to minimize that bloat are exactly what Formulator automates. ARES will also benefit from Formulator working on objects; I need to make that a priority. It's probably only a day or two of work, just very bland work so I've been putting it off. ;)


Sounds good! Could you send me a PM when the new version is available? In the meantime, I'll plan to apply the "Use-CloneForm-only-when-I-have-to" approach.
User avatar
Chris Ellis
 
Posts: 3447
Joined: Thu Jul 26, 2007 10:00 am

Post » Wed Mar 30, 2011 3:48 am

Well, it's not perfect, but I built a workaround into the just-released version 1.71.

The problem here was even more complex than any of us was thinking. It is not truly duplicate armor that is a problem; it is duplicate armor enchantments. I tried to implement CloneForm as a solution, but it turned out to be too complex to manage and the additional code requirements really slowed the mod down.

So my compromise solution is: the mod is now able to detect when more than one piece of equipment in the area has the exact same enchantment, and it will apply the correct scaling to the piece of equipment nearest the player (or on the player if they're wearing it). As soon as that first piece of equipment stops getting used, the second piece of equipment will have the correct enchantment scaling applied to it.

I also made a few other tweaks - a couple of the scripts now only take half as long as they did before!

Let me know what you think.
User avatar
Carolyne Bolt
 
Posts: 3401
Joined: Mon Jul 10, 2006 4:56 am

Post » Wed Mar 30, 2011 12:35 am

It is not truly duplicate armor that is a problem; it is duplicate armor enchantments.

It's both, actually. If you didn't remove and re-equip each piece of armor, you might not notice; active effects are not updated just because the base spell has changed. In some ways this might seem handy, but you may find very bad behavior if a piece of armor is put on, the magnitude on its enchantment is changed, and the armor is then removed. I'm going to illustrate the potential nastiness with a stealthy bug that old versions of Willful Resistance had. (Players never even noticed this. It wasn't until Scruggsy explained the engine mechanics that I realized how much mayhem it may have caused...) Note that I do not know for certain whether this is an issue with enchantments. It is a problem for abilities, but it is not a problem for spells. Enchantments are closer to the former, so I'm concerned about what you may discover in the future. Worth doing some rigorous testing to find out.

So. Willful Resistance uses a single Ability with a Resist Magic effect, dynamically changing it as needed. Let's say a character's Willpower entitles them to Resist Magic 10. So I take my generic Ability, adjust its magnitude to 5, and apply it.

Another character is entitled to Resist Magic 7. Again, I change the generic Ability and apply it.

The first character's Willpower changes, whether from a spell/potion/etc. or because he's the player and leveled up, and now he's entitled to Resist Magic 11. I remove the old Ability, change its magnitude to 11, and re-apply it. But the Ability's last magnitude was 7. Rather than checking the amount of the effect actually on the character, the game assumes 7 is correct, and only subtracts that much when removing it. Since it was originally applied at 10, the character now has a permanent 3-point bonus to Resist Magic.

The hack I used in WR to avoid having to keep track of CloneForms, was to keep a record of each character's current modifier and change the base spell back to that value immediately before removing it. You can't do this with enchantments, though, because you can't know for certain when a player will un-equip one.

Nasty stuff and there's no easy way around it. Yes indeed, managing CloneForms is terribly bothersome and you're likely to get it wrong the first dozen times (I sure did). As an aside, though, you should just about never see a meaningful slowdown from a script unless it's causing Havok or has some serious extra looping.

Anyway, I'll try to have Formulator ready for this application before the weekend's out. :)
User avatar
Stu Clarke
 
Posts: 3326
Joined: Fri Jun 22, 2007 1:45 pm

Post » Wed Mar 30, 2011 2:41 am

Hmm, I'll have to do some more thinking about the scenario you outline above, tejon. So far in my testing I have not seen any permanent attribute changes (well, at least in more recent versions - there WAS a problem back in 1.01 :)).

I may not be thinking this through completely, but I don't believe this mod would have an issue because of a few key differences:
--Abilities are applied directly to a player, and their bonuses can be further modified by other abilities that come from other sources. For example, in your case, the original Resist Magic 10 was modified by a different Resist Magic -3 effect, and so the game thought it only needed to remove Resist Magic 7 instead of the original Resist Magic 10, resulting in a permanent Resist Magic 3 bonus.
--For enchantments, things seem to work a little differently. The game is able to keep track of which piece of equipment is contributing which enchantment, and the strength due to that enchantment. I am not aware of any mods besides this one that can dynamically alter armor enchantment strength in this way. So if a piece of equipped armor is enchanted with Resist Magic 10, it should not be possible for a later Resist Magic -3 effect to be added to it (though the armor's effective enchantment can be downscaled to Resist Magic 7 by this mod). That means the game will always know the strength of the effect applied by each piece of armor.
--In my testing, altering the enchantment on a piece of armor does not alter the effective enchantment applied to the actor, until the armor is unequipped and reequipped. So if a Cuirass that has Resist Magic 4 is repaired such that it should now have Resist Magic 8, it is safe to modify the enchantment on the armor, then unequip it, then reequip it, because the game correctly removes the Resist Magic 4 effect then adds a Resist Magic 8.

Anyway, I'll run some more tests, and I may be missing the point here, but I have not observed the issue you have described, nor do I believe it can happen in this mod.
User avatar
Jimmie Allen
 
Posts: 3358
Joined: Sun Oct 14, 2007 6:39 am

Post » Wed Mar 30, 2011 3:18 am

Just a quick thought, but couldn't you clone the enchantment and then apply that to the secondary local armour and fiddle with the clone?

In fact, should you not be doing that for everything anyhow? Otherwise two characters with items with the same enchantment will fall into the same problem... I'm no expert on enchantments, but each weapon enchantment (say, fire damage 5 on strike) used liberally for all types of weapons?

Great mod idea, by the way, and definitely sounds like a welcome addition to my game.
User avatar
Cayal
 
Posts: 3398
Joined: Tue Jan 30, 2007 6:24 pm

Post » Wed Mar 30, 2011 4:02 am

--In my testing, altering the enchantment on a piece of armor does not alter the effective enchantment applied to the actor, until the armor is unequipped and reequipped. So if a Cuirass that has Resist Magic 4 is repaired such that it should now have Resist Magic 8, it is safe to modify the enchantment on the armor, then unequip it, then reequip it, because the game correctly removes the Resist Magic 4 effect then adds a Resist Magic 8.

This is the crux issue. Verify this as rigorously as you can: it's a question of whether an enchantment is removed by referencing the active effect's magnitude (like a spell), or the magnitude of the magic item that applied it (like an ability). If it's the former... well, good. :)

Just a quick thought, but couldn't you clone the enchantment and then apply that to the secondary local armour and fiddle with the clone?

In fact, should you not be doing that for everything anyhow?

Yes, and yes. Doing it with clones is the completely safe way, and definitely "best practice." But managing even one set of clones is frequently a nightmare; two independent sets borders on crazy-talk (disclaimer: oh, we're all mad here). And again, that's why I need to upgrade Formulator's capabilities to include armor, weapons and clothing at the very least!

Edit: I keep on finding new censored words... :blink:
User avatar
Justin
 
Posts: 3409
Joined: Sun Sep 23, 2007 12:32 am

Post » Tue Mar 29, 2011 10:04 pm

This is the crux issue. Verify this as rigorously as you can: it's a question of whether an enchantment is removed by referencing the active effect's magnitude (like a spell), or the magnitude of the magic item that applied it (like an ability). If it's the former... well, good. :)


Tejon, I was inexperienced enough when I first started building this mod that I did not even realize the potential problem you have described, but at least so far the mod seems to avoid that problem. You can bet I'll be doing some VERY thorough tests for that problem this weekend!


Yes, and yes. Doing it with clones is the completely safe way, and definitely "best practice." But managing even one set of clones is frequently a nightmare; two independent sets borders on crazy-talk (disclaimer: oh, we're all mad here). And again, that's why I need to upgrade Formulator's capabilities to include armor, weapons and clothing at the very least!


I will eventually have to upgrade this mod so that it uses Cloned Forms. As was reported here by OrangeDragon, the mod does not correctly handle situations where the same enchantment FormID is found in use at two different enchantment strengths in the same cell. As of 1.71, it works around the problem by ignoring every occurrence of the FormID after the first (which is typically on or near the player). The only way to fix this completely would seem to be through Cloned forms.
I will admit though that I am wary of taking that step. First off, Cloned Forms can contribute to savegame bloat if implemented poorly, and savegame bloat often = instability. Other mods similar in scope to mine (i.e. that affect ALL equipment), might have problems handling the new cloned forms. I'm not yet comfortable that I could code well enough to implement Cloned Forms well. And finally, to paraphrase Tejon, trying to handle one set of clones attached to another set of clones probably is an indication of mental instability. :)

As such, I regard the current build (1.71) as a safe, if incomplete, solution to this problem. I further agree that modifying enchantments on cloned forms instead of on the original forms is "best practice", but the mod does record every enchanted objectID's original enchantment strengths and reverts the enchantments when the special Uninstall script is run. As implemented, then, I think that modifying original ObjectIDs in the game is (relatively) safe.


Edit: I keep on finding new censored words... :blink:


I usually manage to filter those out before I hit post, but not always :)
User avatar
Deon Knight
 
Posts: 3363
Joined: Thu Sep 13, 2007 1:44 am

Next

Return to IV - Oblivion