Jump to content

Effect #99 BG2: ToB


Caedwyr

Recommended Posts

#99 (0x63) Spell Effect: Duration Modifier [99]

Parameter #1: Duration Modifier

Parameter #2: Type

Description:

Alters spell durations of the targeted creature(s), to the

percentage specified by the 'Duration Modifier' field, affecting

the spell type specified by the 'Type' field.

 

eg.

'Duration Modifier' = 0 -> Spells have no duration

'Duration Modifier' = 100 -> Spells have normal duration

'Duration Modifier' = 200 -> Spells have double duration

 

Known values for 'Type' are:

0 Mage

1 Priest

 

The description is a little bit fuzzy for me. Will this effect make all spells cast by the affected creature have double duration (if that is what the duration modifier is set at), or does it do something different?

Link to comment

From what I remember, that's supposed to be the case (e.g., with 200/mage, limited effects from mage spells cast by the affected creature would last twice as long).

 

I don't know that anybody's ever used it, though, so it's probably easier to just try it out and see what happens. You'd probably want to use a really big value (like 500% or something) just so you can be absolutely sure it's doing something (or look at before and after CREs in a GAM file with NI).

Link to comment

Back when I did the port of IWD bard songs, I'd been feeling the lack of a spellcaster-support song (and the lack of a "Now Ye Have Boots of Speed" song!) so I threw an additional one together with this effect.

 

The biggest lack you'll notice is that it only really works with timing mode zero effects in .spl files: mode three didn't benefit and mode six doesn't work for me outside of .effs. So if you cast, say Mage Armor, the icon and the AC will have a modified duration but the whoosh-of-expiry will occur at an unmodified delay. This kind of cosmetic glitch tends to happen with these stupid fx anyway (grr, energy blades/spellshield/blahblah) so I wasn't bothered - it's otherwise a too nice an effect to go totally unused.

 

And as Avenger notes, no duration defined in a .pro will be affected at all.

Link to comment

Just theoretically, would it work if i implement that this effect modifies delayed effects too?

Or it would just screw something else?

If it wouldn't work, what about a 'delay affected by duration' timing method?

Of course all of this is theoretical, and would only work in GemRB.

Link to comment

You might run into weirdness in cases where multiple staggered delays are used to simulate a periodic effect (I'm thinking of Acid Arrow, here). Though even in that case it might be an improvement,

 

What would be really nice is an effect 2da that controls which .vvc is played at effect onset, throughout effect duration, upon effect expiration, portrait icon, sound effects, et alis. You've probably had to do this already, and it would enable shipping a lot of trash out of .spl files.

Link to comment

It would have been useful if they had done effect handling through effect specs rather than just attaching effects. Running from a 2DA, you could have two specs for the poison effect for instance (one would be appropriate for bleeding, the other useful for normal poison) that listed all the support effect parameters.

 

But I don't think it's worth hacking into GemRB if it's just going to be another EFFTEXT clone (as with the above example, you're not always going to want the poison string and icon and whatever for the poison effect if you have something causing bleeding).

Link to comment

The bleeding wounds effect exists in iwd2 (it is more or less a poison clone)

 

There are a lot of clones, hacks and stuff which could have been done in a generic, customisable way. Sadly I have to follow all their loops and curves to make gemrb compatible (sometimes the same effect is implemented 3 different ways, but i try to implement it in a single function).

 

But, i plan to make a cleaned up effect plugin which contains all the collective effects with a cleaner, more moddable specification. This is the advantage of plugins, the effects could be replaced easily.

Link to comment

Well, presumably that's why poison and disease don't run feedback by default, yeah. It's kind of an interesting question whether effects that exist in each incarnation of the Infinity Engine always have the same hardcoded ancillary associations or not - I can't, offhand, think of any counter-examples. It's just a trifle easier to get rid of the summoning spboom irritant by writing "***" in a .2da than it is to replace the .bam with a null file.

 

I'm sure just including the delayed/permanent timing mode in this effect would be fine; it's not like it's used in the default files or in any (released) mods.

Link to comment

Ah, Nythrun, you are right :)

This stuff won't break anything, because it isn't used anywhere.

 

If someone wants to use it, they will be able (with help) to fix all additional problems.

 

About the ancillary stuff: portrait icons, avatar colour, internal spell states and flags: the stuff is like an evolutionary tree with some cross pollination.

 

BG1 - simple

 

PST - dozens of hacks in the gui part of the effects to create admittedly awesome visuals. No other game starts visual effects in the CFB.

 

HOW - nyah, it is fully hacked with repeating effects, and hardcoded stuff. Surprisingly some stuff made it from PST to IWD (and not into BG2).

 

TOB - I guess they reimplemented lots of stuff from IWD/HOW, the result is that functionally the stuff is the same or close, but technically it is different. This results in

some effects that are not the same number.

 

IWD2 - some of the hardcoded stuff from HOW is generalized and cleaned up, they also got some from BG2. For some reason they moved lots of effects without reason, if they didn't want to touch the old effects, they failed, because they changed some too.

It isn't clear when they implement a portrait icon in an effect and when they don't.

But IWD2 usually sets the portrait icon/avatar colouring from the effect.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...