[RELz] Oblivion Magic Extender v1.beta4

Post » Sat Sep 25, 2010 8:40 am

unfortunately only lord birthsign weakness to fire is corrected if i uncheck the flag in magic effects dialog, but high elves weaknesses stay zero. :brokencomputer:
User avatar
Maya Maya
 
Posts: 3511
Joined: Wed Jul 05, 2006 7:35 pm

Post » Sat Sep 25, 2010 2:18 pm

unfortunately only lord birthsign weakness to fire is corrected if i uncheck the flag in magic effects dialog, but high elves weaknesses stay zero. :brokencomputer:

That's rather odd. However, let's see if the new hotfix takes care of it.

Also, I should point out - the 'Treat Abilities Specially' flag is only intended to be changed for newly added magic effects. Changes made to the flag for existing effects won't do anything until the abilities in question are removed and re-applied to the character. In fact, it would be best to remove the abilities before making any changes to the flag; otherwise they might leave behind orphaned side-effects.
User avatar
Tyler F
 
Posts: 3420
Joined: Mon Aug 27, 2007 8:07 pm

Post » Sat Sep 25, 2010 2:06 am

Finally, while keeping my previous stack-by-magnitude idea on the shelf, would it be possible to add an option which completely prevents stacking multiple spells using the same MGEF, giving priority to the spell with the highest (remaining) effect cost?

A modAV handler with alternate stacking behavior is also planned, as per your request.

I just realized that this query and reply might be linked, and they probably shouldn't be. :) To be honest I'm curious which alternate stacking behavior you're talking about... we never really established a functional mechanic for the one I'm thinking of, and it wasn't intended to be ModAV-only at my end. I'm doing enough choosy-begging here, I don't want you to wind up blowing a bunch of effort on something that won't actually get used! Of course you could be talking about a completely different request that has somehow slipped my mind. We should compare notes. :P

Anyway, the scheme I'm liking at this point is: on spell hit, check whether there's an AE on the target from the same caster, using the same MGEF. If so, get that effect's remaining Magicka value, and compare it to the value of the incoming effect. Discard whichever one is weaker. (Any effect from a non-spell source, including powers etc., is neither considered nor affected.) No mucking about with partial magnitudes, no worrying about what happens when durations overlap, just a one-time check and the strongest effect wins. This would be GMST controlled like the reclaim mechanic, with no need for special support in the effect handlers.
User avatar
Sarah Evason
 
Posts: 3507
Joined: Mon Nov 13, 2006 10:47 pm

Post » Sat Sep 25, 2010 11:04 am

just a one-time check and the strongest effect wins.

Fair enough. Since something like it is already implemented for summoning effects, it shouldn't be too hard to generalize a "no stacking" behavior. However, there is the question of how to determine the "strongest" effect - by magnitude, duration, or equivalent magicka cost? For summoning effects and reclaiming the older effect is always removed, but that probably won't work for the mechanic you have in mind.
User avatar
roxanna matoorah
 
Posts: 3368
Joined: Fri Oct 13, 2006 6:01 am

Post » Sat Sep 25, 2010 5:23 am

equivalent magicka cost

This, and based on remaining duration rather than the full original spell (though of course for the incoming effect these are identical). The same value as would be calculated for a 100% reclaim, I think? If incoming and existing have identical values, take the new effect.

Edit: Come to think of it, this should probably also trigger reclaim if that's enabled.
User avatar
Miguel
 
Posts: 3364
Joined: Sat Jul 14, 2007 9:32 am

Post » Sat Sep 25, 2010 7:20 am

This, and based on remaining duration rather than the full original spell (though of course for the incoming effect these are identical). The same value as would be calculated for a 100% reclaim, I think? If identical, take the new effect.

Are you sure that would always be the most desirable result? What if you had a long lasting buff (from an alter or something) and wanted a brief high-powered buff instead?

I'm not saying it's a bad idea, of course, just that it will probably have to be a little more complicated.
User avatar
Rachell Katherine
 
Posts: 3380
Joined: Wed Oct 11, 2006 5:21 pm

Post » Sat Sep 25, 2010 2:22 pm

Are you sure that would always be the most desirable result? What if you had a long lasting buff (from an alter or something) and wanted a brief high-powered buff instead?

The answer for this particular example is to convert altar effects from spells to powers, so they're exempt in the first place. (And/or have them be cast on the player, rather than technically by the player. Altars are implemented rather poorly.)

But in general, yes: that's exactly the mechanic I want, across the board. If the player knows a long weak Shield spell and a strong brief one, it will be important that the latter costs more than the former if they want to be able to switch to it in a pinch. Similarly, an extended-burn Fire effect might prevent a burst-damage fireball from affecting the target. It's not always the most desirable thing for the player; being gored by a minotaur isn't desirable either, and it happens. ;) Mechanics don't always have to be benevolent, just fair. If it's concise and predictable, the player can plan spell selection and make informed tactical decisions based on it, which IMO enriches the game. (Particularly if the vendor-provided spells are adjusted to be sensible in the first place.)

In case this stipulation slipped between the cracks, effects from different casters can still overlap freely, just like the current mechanic for spells. I'd actually prefer it to be completely universal, but the AI would trip over it too much.

Edit: also, that's why I suggested that this should trigger reclaim, including on the new spell if that's the one that gets lost. That lets you adjust how "forgiving" it is; if you misjudged the relative power of your new spell vs. the old one, you might at least get some magicka back.
User avatar
Stace
 
Posts: 3455
Joined: Sun Jun 18, 2006 2:52 pm

Post » Sat Sep 25, 2010 3:30 pm

It seems to me the best way to do it would be to have concurrent durations (i.e. both effects), but only the highest magnitude effect works while they overlap. I.e. if you cast a long-duration, low-magnitude buff, and then during its duration cast a short-duration, high-magnitude buff of the same type, you'd want the high-magnitude buff's magnitude to be in play while it lasts, but the low-magnitude buff should remain once the high-magnitude buff wears out.

For what it's worth, TES is based on D&D, and that's how buffs in general work in D&D.
User avatar
NeverStopThe
 
Posts: 3405
Joined: Tue Mar 27, 2007 11:25 pm

Post » Sat Sep 25, 2010 8:09 am

DW -- that's actually pretty close to what I originally requested. I wanted effects to stack during their overlap duration by adding together their magicka costs to determine a combined magnitude, which is a little extra math but involves the same general interactions with the game engine. Realities of the way active effects work -- not to mention the potential for confusing OBSE scripts scanning through them -- made that a questionable idea, which is why I came up with the new one.

Edit: Also, I'm gonna have to cry foul on your footer sentence. ;) While Arena and Daggerfall loosely borrowed a few D&D mechanics, Morrowind diverged greatly and Oblivion even more so... and furthermore, the version of D&D that the originals swiped ideas from didn't have the stacking rules you're talking about! Those weren't added until more recent editions. :grad:
User avatar
LADONA
 
Posts: 3290
Joined: Wed Aug 15, 2007 3:52 am

Post » Sat Sep 25, 2010 2:51 pm

But in general, yes: that's exactly the mechanic I want

Then I'll see about putting in a "no-stacking" flag or field on effect settings.

It seems to me the best way to do it would be to have concurrent durations (i.e. both effects), but only the highest magnitude effect works while they overlap.

The problem with this, as with tejon's original request, is that Active Effects simply are not designed to accommodate it. The assumption is that once they've been applied, all effects are independent of each other. This could be changed, of course, but it would take more than a casual effort to do so.
User avatar
brian adkins
 
Posts: 3452
Joined: Mon Oct 01, 2007 8:51 am

Post » Sat Sep 25, 2010 4:04 pm

Woke up with an interesting thought: could reclamation boost the power of an effect instead of returning magicka?

Let's start with a 10pt, 60sec Shield spell. Using vanilla values, it's got a magicka value of 51. Say about 15 seconds have elapsed, leaving it with 38 remaining value.

You re-cast the spell. For simplicity we'll use 100% reclaim. The effect is recalculated to have a total value of 51 + 38 = 89, yielding magnitude 12.7 and duration 76sec. (I assume you know the formula I used to get these numbers; if not, see potion calculation.)

Now, with my non-stacking MGEFs, you immediately cast a 60pt, 10sec Shield, which has a cost of 67. Casting that takes 1.5s, leaving about 87 effective cost on the effect already in place: the old effect is stronger, so it absorbs the new one's power, recalculating at 154 magicka! From that moment, the new effect is 16.2pt for 97sec. Internally this will involve dispelling both and re-applying the new effect, but any effect actually on the target is still independent of all others. The reclaim factor needs to be dropped a bit below 100% to balance this out, but I find it terribly cool and much slicker than just giving magicka back to the caster: it seems like "the way magickal energies blend," rather than "the game throwing you a bone." :)
User avatar
leigh stewart
 
Posts: 3415
Joined: Mon Oct 23, 2006 8:59 am

Post » Sat Sep 25, 2010 5:40 pm

Also, I'm gonna have to cry foul on your footer sentence. ;) While Arena and Daggerfall loosely borrowed a few D&D mechanics, Morrowind diverged greatly and Oblivion even more so...

A. Arena was little more than a D&D-based CRPG with a somewhat customized setting... according to the developers.

B. Daggerfall greatly changed the setting and with it some of the mechanics.

C. Morrowind changed several more mechanics and Oblivion still more, but the vestiges of this legacy are still very much present.

and furthermore, the version of D&D that the originals swiped ideas from didn't have the stacking rules you're talking about! Those weren't added until more recent editions. :grad:

That I did not know. Honestly (and this point doesn't really contribute to my opinion, but in general), I don't think I'd much enjoy the earlier versions of D&D. Gygax... sounds exactly like the power-tripping egotastical DM that I'd hate.
User avatar
Josh Lozier
 
Posts: 3490
Joined: Tue Nov 27, 2007 5:20 pm

Post » Sat Sep 25, 2010 5:02 pm

could reclamation boost the power of an effect instead of returning magicka?

That is precisely what the Reclaim mechanic does do.

Do you mean that effects dispelled from the no-stacking behavior should be reclaimed as well?
User avatar
C.L.U.T.C.H
 
Posts: 3385
Joined: Tue Aug 14, 2007 6:23 pm

Post » Sat Sep 25, 2010 3:13 am

That is precisely what the Reclaim mechanic does do.

So it is! I completely misinterpreted your initial description, and apparently failed to read that portion of the docs. This whole time, I thought it was a Magicka refund to the caster.

And now I seem to vaguely remember this already being cleared up once before. I was probably very tired and/or inebriated. :P

Do you mean that effects dispelled from the no-stacking behavior should be reclaimed as well?

Yes. :) But it can't be in quite the same way. Your version only extends duration, which makes sense if it only applies to copies of the same spell; not as clear-cut when it's global across the MGEF, because instantaneous effects can be part of the interaction.

I'll stick to my proposal above (increase both magnitude and duration according to the generic potion strength formula) for when no-stacking is active. Mind you, I could see arguments for magnitude-only, which is comparatively trivial... make it a GMST-controlled option?
User avatar
Undisclosed Desires
 
Posts: 3388
Joined: Fri Mar 02, 2007 4:10 pm

Post » Sat Sep 25, 2010 6:54 am

Do you think it's possible to add an "ignore magic resistance" flag to magic effects so that they are unaffected by the resistmagic AV?
User avatar
c.o.s.m.o
 
Posts: 3419
Joined: Sat Aug 12, 2006 9:21 am

Post » Sat Sep 25, 2010 5:10 pm

Do you think it's possible to add an "ignore magic resistance" flag to magic effects so that they are unaffected by the resistmagic AV?

Yes. This is one of the planned meta magic effects for v2.
User avatar
Charlotte X
 
Posts: 3318
Joined: Thu Dec 07, 2006 2:53 am

Post » Sat Sep 25, 2010 2:48 pm

Yes. This is one of the planned meta magic effects for v2.

Cool.

Edit: What about adding diminishing returns in skill increases if you cast the same spell multiple times in a row?
User avatar
Chica Cheve
 
Posts: 3411
Joined: Sun Aug 27, 2006 10:42 pm

Post » Sat Sep 25, 2010 5:23 am

What about adding diminishing returns in skill increases if you cast the same spell multiple times in a row?

More difficult, since it would require tracking the last few spells the player cast. Definitely doable, though, so I;ll keep it in mind.
User avatar
Amy Gibson
 
Posts: 3540
Joined: Wed Oct 04, 2006 2:11 pm

Post » Sat Sep 25, 2010 7:49 pm

What about adding diminishing returns in skill increases if you cast the same spell multiple times in a row?

This is easily implemented in script, and IMO that's how it should be done, preferably as a Progress plug-in. Many, many compatibility issues will arise from any changes to skill gain mechanics within the engine.
User avatar
Brad Johnson
 
Posts: 3361
Joined: Thu May 24, 2007 7:19 pm

Post » Sat Sep 25, 2010 1:46 pm

This is easily implemented in script, and IMO that's how it should be done, preferably as a Progress plug-in. Many, many compatibility issues will arise from any changes to skill gain mechanics within the engine.

I have to agree with you on that. Changing the experience system is a outside the scope of OBME. On the other hand, an option to make experience scale with the magicka cost of the spell is already planned. In light of that, I don't think reducing experience for repeated casting is unreasonable.
User avatar
Jerry Cox
 
Posts: 3409
Joined: Wed Oct 10, 2007 1:21 pm

Post » Sat Sep 25, 2010 6:00 pm

On the other hand, an option to make experience scale with the magicka cost of the spell is already planned.

Dunno... this falls under the same umbrella, IMO. Not to mention that there are several solutions already, of which I am the author of one. :)
User avatar
Etta Hargrave
 
Posts: 3452
Joined: Fri Sep 01, 2006 1:27 am

Post » Sat Sep 25, 2010 9:31 pm

I don't see how it would cause incompatibilities. All that would happen is that you'd gain SkillGain * DiminishingReturn^(N-1) skill experience for casting the same spell for the Nth time in a row. And it would be disabled by default by setting DiminishingReturn=1 anyway. I wouldn't say this changes the vanilla experience system, just tweaks it a little bit. It would also help performance a tiny bit since you don't need a script running in the background, I know scripts don't cost much time to execute but every little bit helps.
User avatar
Stay-C
 
Posts: 3514
Joined: Sun Jul 16, 2006 2:04 am

Post » Sat Sep 25, 2010 9:46 pm

Hello.

I have a question. In yuor Documentation: Handlers & New Effects, you mention VisionShader (RSH). I'm sadly unable to find this anywhere in the CS. Where could I use this?
User avatar
Danny Blight
 
Posts: 3400
Joined: Wed Jun 27, 2007 11:30 am

Post » Sat Sep 25, 2010 7:48 am

Hello.

I have a question. In yuor Documentation: Handlers & New Effects, you mention VisionShader (RSH). I'm sadly unable to find this anywhere in the CS. Where could I use this?

The 'VisionShader' is a rough idea of how to rework the nighteye handler; it hasn't yet been implemented. Sorry to disappoint.

Most of the fhe files in the 'Documentation' folder are planned ideas, out to v3 or so. The features that have actually been implemented are documented in 'OBME Features.pdf' in the root folder of the download archive.
User avatar
christelle047
 
Posts: 3407
Joined: Mon Apr 09, 2007 12:50 pm

Post » Sat Sep 25, 2010 10:18 am

Edit: I thought the post I quoted here was by JRoush. Adjust pronouns accordingly. :)

I don't see how it would cause incompatibilities. All that would happen is that you'd gain SkillGain * DiminishingReturn^(N-1) skill experience for casting the same spell for the Nth time in a row.

Which is a problem if, for instance, a script has set a specific gain amount because it plans to reverse that amount and apply modified amount as soon as it detects a skill gain. This is how range-based experience tends to be done, and that's just the first example that popped into my head without giving it any real thought. If the amount that will be gained by casting a spell is not the amount reported by GetSkillUseIncrement, you're asking for trouble.

But changing the actual increment on the fly is a bad idea too, partly because I know of several scripts which will overwrite that change, but also because there's no indication available to other scripts that your change is a temporary one: they might read it in thinking it's the base value, and save it for the entire game session. For that matter, an ill-timed reload would probably throw off OBME's assumption about the base increase rate. (Avoiding these problem was the original inspiration for my Progress mod, which is actually a shared platform for advancement-changing mods to know which adjustments are temporary and which are permanent.)

There are multiple "magicka-based skill progression" solutions. They use completely different formulas, so you're not going to be making them obsolete (in which case I'd have no argument), just competing. And I foresee a huge overlap in interest between the users of those mods, and the users of mods dependent on OBME... not least because I'll be the author of some of each. ;) Currently the big ones are Progress and Supreme Magicka, both of which make it easy to disable the feature (before even starting the game) for mutual compatibility. But OBME features aren't bounded by any single (or well-defined multiple) .esp or .ini file; I foresee troubleshooting headaches. Sure, it's off by default, but the problem is that any mod might activate it without properly documenting it.

That's my two cents. It's a great feature, and a popular one, and it does share a thematic space with much of what OBME does, but I think it's best kept separate for technical reasons.
User avatar
Jay Baby
 
Posts: 3369
Joined: Sat Sep 15, 2007 12:43 pm

PreviousNext

Return to IV - Oblivion