Jump to content

Binder class


Daeva

Recommended Posts

Posted

Right, I've been creating the binder class from Tome of Magic into BGII and have run across some hitches. The main problem I've been having is how to create effects that last for a duration and cannot be dispelled. The only workaround I've been able to do is for the effects to be refreshed every x seconds but that seems to cause a stutter while playing, it's not overly noticeable unless regeneration is involved but I would rather avoid it nonetheless.

 

Another question I had was how to describe what each of the vestiges do since they're bindable via special abilities rather than spells so there's no desciption. One workaround I was considering was to make them appear as spells (that can't be cast) to provide information on the vestiges and the abilities they bestow. (at present it's a ranger sub-class for weapon usage and armour).

 

The class as it stands is:

 

Ranger sub-class

only 1* proficiency allowed

disable stealth, disable magic casting

only up to studded leather armour

non-lawful (any good/neutral/evil)

bind vestiges 1 per day (lv 1, 2 at lv 5, 3 at lv 10, 4 at lv 15, 5 at lv 20 - distribution needs work and level 20 might become a HLA)

 

Binding a vestige - lasts 24 hours (can be unbound and restores ability to rebind if done so).

"Battle of wills" with summoned vestige - 1 round stun with will save to see if you win or not - either way it is bound if you fail then there is some negative effect as well.

 

Example vestige - Acerarak (Level 5 vestige) appears as a demi-lich if you fail to win the influence then all healing magic/potions/etc hurt you for the duration that he is bound.

Abilities granted: - Hide from undead - sanctuary vs undead creatures

- Detect undead - same as ranger Track HLA but only for undead

- Lich energy immunities - immune to cold and electricity

- Paralyzing touch - as name

- Undead healing - negative energy heals you.

 

I know this sounds very powerful especially since you can bind up to 4 at once but it gets not other class abilities and the THACO will likely be nerfed as well, also the above vestige is a high-level one and you won't get it until around level 16. A weaker vesitige (available at level 4):

 

Amon - level 1 vestige, if fail influence the immune to healing spells, and "lawful" spells (bless, aid, etc...) also immune to fire spells (both good and bad) and -2 charisma.

Abilities - infravision

- Fire breath (similiar to anganazars scorcher - unlimited uses per day but cool-down time of 10 secs after each use)

- Ram attack - natural weapon, 1d6 + 2 crushing damage can be created in slot as magic weapon and dispelled at will.

 

Any thoughts / help as mentioned would be great!

 

Cheers

Posted

You'll probably want to make this a fighter kit rather than a ranger kit (a good deal of ranger falling at poor reputation is hardcoded), unless you want an NPC only kit.

 

You can set up an effect to have a duration and to be dispellable or not, as you like :)

 

Since you want to vestiges to appear as creatures, might as well give them a dialogue option to describe what they're all about.

 

Hide from undead and detect undead can't really be done. Undead healing, maybe - there isn't a negative energy type in game so you'd have to do some fakery.

 

You'll probably want to stick to the standard cool-down time of six seconds (one round).

Posted

Right, hide from undead is actually very easy to do - just coded like the protection from undead scroll but with a sanctuary condition of dispelled when you attack, etc (already coded it and it works okay). Detect undead can be done but involves a lot of ugly scripting so I think you're right about scrapping that one.

 

As for the effects - I'm sorry, I didn't explain my problem at all well. I'm fully aware of making it dispellable / duration / etc. The problem I have is simple - if it is not dispellable, there is not way to unbind the vestige so you are stuck with that one until it wears out (taking away the point of the class), while, if it can be dispelled, then the vestige can become unbound halfway through the pact (cf the the shapeshifting bug) so, my workaround is that the effect is cast with a short duration and a comand to recast itself after that duration ends, to unbind the vestige, I simply add temporary immunity to that spell and, if it is dispelled halfway, it reappears after a short time. The problem with this is, as I mentioned, it can cause some stuttering, which I would rather avoid. If I'm being daft and there is a way to remove non-dispellable effects before their duration ends then please let me know, otherwise I'll have to stick to my workaround...

 

I had completely forgotten about a ranger falling with low reputation to be honest...

 

My reasons for choosing ranger were that some of the vestiges grant spell-casting, some stealth and some turn undead and the ranger allowed for at least 2 of those to be easily included... Is there really no way to prevent a ranger from falling? The virtue mod ties it to a different statistic so it must be possible to do it...?

 

I did originally code it as a cleric with the stealth ability being a spell that mimicked the ability (invis, etc) but that didn't really look very good or work hugely well (going into stealth while being watched was one problem...). It also ran into the problems of item restrictions... (and a dodgey stronghold)

 

And talking to the vestiges is also a really good idea - I hadn't actually considered that.

 

Thanks for the help so far!

Posted

The sanctuary condition is also going to be dispelled when you open doors or put your earrings away in the jewelry box - that's all I meant by can't really be done :)

 

There isn't a "remove effects by resref" opcode, unfortunately. You can deal with using undroppable items or with unused primary or secondary types, pick your poison.

 

Virtue kills the reputation hit for unobserved crime, if that's what you're thinking of - I don't know that Sim ever found away around the rest of the business.

Posted
The sanctuary condition is also going to be dispelled when you open doors or put your earrings away in the jewelry box - that's all I meant by can't really be done :)

Ah, I never realised that - I don't really use the spell sanctuary in-game. Well, if it dispells due to any action then it's far from perfect but I would prefer that to the alternative that it mimics protection from undead since that would be hugely overpowered.

 

There isn't a "remove effects by resref" opcode, unfortunately. You can deal with using undroppable items or with unused primary or secondary types, pick your poison.

I had considered using undroppable items but was under the impression that the "create item in slot" command was broken or bugged and therefore couldn't be used? Also I don't understand how you mean I could use primary and secondary types?

 

One other question - not so important, just want the summoning to look purty. Is there anyway to enter a cutscene upon casting a spell, while pausing all actions that are currently happening? eg - in combat, cast the spell, everyone stops and you go into a (brief) cutscene, I know how to do it using a script and trigger but is there anyway to do it directly using a spell?

 

Thanks again for your help.

Posted

If I recall correctly, sanctuary breaks for any action that affects the world outside the user of the spell. Those under sanctuary can self heal, self buff, fiddle in inventory and so on, but as soon as they try to do anything outside of themself, off it goes.

Posted

It's not broken, it's dangerous - like FillSlot() it destroys whatever was in the slot that's about to be occupied. As long as you designate a slot that's going to be unusable from the beginning, this isn't a problem.

 

Primary type is spell school, secondary type is stuff like "combat protections" or "magic attack". There are 255 possible values here and the engine by default uses only about twenty five all told. Remove effects by primary or secondary type doesn't check for dispellablity or magic resistance.

 

I recommend you not go that route :)

 

Cutscenes have to be called from script.

Posted
It's not broken, it's dangerous - like FillSlot() it destroys whatever was in the slot that's about to be occupied. As long as you designate a slot that's going to be unusable from the beginning, this isn't a problem.

 

Primary type is spell school, secondary type is stuff like "combat protections" or "magic attack". There are 255 possible values here and the engine by default uses only about twenty five all told. Remove effects by primary or secondary type doesn't check for dispellablity or magic resistance.

 

I recommend you not go that route :)

 

Cutscenes have to be called from script.

In all respects, that's a shame... :) Unfortunately, since you eventually able to bind 4 vestiges simulataineously, using unremovable items would require 4 slots to be kept permanantly free which is absurd... So it looks like I'll be sticking with my current workaround... Ah well.

 

Ironically, adding the shine and glitter seems to be the hardest part - now there's a first!

 

One other thing - I've discovered a bug, I suppose it is. Using one spell you gain from a vestige changes your character appearance (using change appearance rather than polymorph) but, for some reason, this crashes the game while you're transformed in the underdark - is this a known bug or have I done something daft?

 

As always, thanks for you help!

Posted

A few more questions (been a while since I last worked on this but it seems to be going okay).

 

Firstly (rather daft this one) what is the duration for an in-game day?

 

Secondly, I've been using the "unused" secondary types for spells and abilities granted by the vestige but have read somewhere that this can cause problems, is this true?

 

Thanks for any and all help.

Archived

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

×
×
  • Create New...