Aller au contenu

Photo

Rods of buffing and metamagic


  • Veuillez vous connecter pour répondre
48 réponses à ce sujet

#26
kevL

kevL
  • Members
  • 4 052 messages
string sID_Possessor_total = "";

struct preparation pNext = GetFirstPreparation(oStore);
while (GetIsPreparationValid(pNext))
{
// ...

object oPossessor = OBJECT_INVALID;
int iIteration = 0;

if (GetObjectType(pNext.oTarget) == OBJECT_TYPE_ITEM)
{
oPossessor = GetItemPossessor(pNext.oTarget);

string sID_Possessor = "_" + IntToString(pNext.iID)
+ ObjectToString(oPossessor);

if (FindSubString(sID_Possessor_total, sID_Possessor) > -1)
{
string sRight = sID_Possessor_total;

int iLength = GetStringLength(sRight);
while (iLength)
{
sRight = GetStringRight(sRight, iLength - FindSubString(sRight, sID_Possessor)
- GetStringLength(sID_Possessor));

if (GetStringLength(sRight) && FindSubString(sRight, sID_Possessor) == -1)
{
sRight = "";
}

iLength = GetStringLength(sRight);

iIteration ++;
}
}

sID_Possessor_total += sID_Possessor;
}

EncapsulateSpell(pNext, oCaster, bInstant, bDelay, iIteration, oPossessor);

// ...
pNext = GetNextPreparation(oStore);
}


guess what the very last line was : sRight = "";


[ edit ] but it's still not right yet ..... ah, just me being 'clever' - no biggie.

Modifié par kevL, 02 juillet 2012 - 11:17 .


#27
kevL

kevL
  • Members
  • 4 052 messages
ps. while testing that I found & fixed a lot of bugs in the new setup. Including the fact that Wild Magic has to be in place for the spellhook/Page preparation code to work ( for uncontrolled companions ); don't worry, it's all done via script and if a module already has spellhooking implemented, I don't allow the RoP to override that but give a message or two indicating roughly what's going on.

Modifié par kevL, 02 juillet 2012 - 11:27 .


#28
kevL

kevL
  • Members
  • 4 052 messages
spellscripts spellscripts spellscripts such naughty naughty spellscripts .....

also decided to let the RoP spellhook temporarily override a custom spellhook for creating preparations ( then it reverts )


- with lots of warnings etc. Am trying to make it as easy as possible to merge hooks

#29
kevL

kevL
  • Members
  • 4 052 messages
holy miasma! spent the last half day fixing a couple of spells that are short duration, which will probally be removed from the buff-list anyway ( squashed another little insidious bug tho )

But it gets me thinking about, later implementing a short-term buffmode, so that casters that send their pets into combat can use the Rod to pile buffs on while standing back and enjoying the show .....

#30
kevL

kevL
  • Members
  • 4 052 messages
hey Ark,
semi-bad news. It looks like I'm not going to include Feats and so will probably rename my version of LC's core Rod as ... Rod of Metamagics. Why no Feats? Because there doesn't appear to be a positively solid way to ascertain if and/or what Feat is/was used; unlike spells, feats have no 'feathook' as far as I'm aware -- and many of the original feats appear to be hard-coded ( additional feats such as Kaedrin's seem to either use a spellscript or function simply as constants, which still leaves the problem of whether it was cast via spell or feat use ). I'm looking at LC's code for determining Feat usage and, while the attempt is noble indeed, it's pretty clear from both the methods and comments that it's ultimately just fancy guesswork.

There's even a variable called bDirty that means "uh, not sure if feat or spell" and the name shown in the preparation may get listed as "Unknown". It seems that bDirty ( if you've seen preparations w/ red text ) gets arbitrarily turned off later, without ever absolutely confirming the feat-or-spell question ....


[ edit ] Even when taking Feats out, i might still have an issue when a spell gets fired by a feat use .....


on the good side, metamagics and casting prepared buffs onto items possessed by other party members is feeling righter,

Modifié par kevL, 06 juillet 2012 - 11:07 .


#31
Arkalezth

Arkalezth
  • Members
  • 3 187 messages
Ok. My main request was compatibility with metamagic anyway. Feats would be nice to have too, but secondary. If they can't be fixed, it'll have to do.

Not sure if related to what you've written. Prepared bard's inspirations take a whole round and they're cast once per member of the party (actually, I think that happens with other AoE spells too, like Haste, unless you move the character away from the others when preparing, I guess). Can that be fixed, so they get cast instantly, and just once?

#32
kevL

kevL
  • Members
  • 4 052 messages
note something over all: just Using the rod takes a turn. For example, when i activate the buffing sequence from a character ( the rod can be carried and used by anyone .. ), then other casters start their casts right away, but the rod's Activator still has to wait a round


BardSongs look like a good way to start tackling the Feats issue. ( Songs are actually feats, but since it looks to me right now like they all line up with unique spellscripts and yippee! I just found a function that can be used in the spellhook :

GetLastSpellCastclass(); // gets the class the PC cast the spell as

i should also be able to reference the "Instant" parameter in Feat.2da and do a bInstant cast ( w/ decrement remaining uses ). So it looks good for instant casts ( on pre-selected & clearly identifiable feats ) that are meant to be instant, and as to the AoE thing on mulitple party members -- done. The problem was that, before, a prep got created for each member with the AoE effect; now, one cast = one preparation,


gonna play around with that new function and see what can be done ...

#33
kevL

kevL
  • Members
  • 4 052 messages
do Bard's Inspirations normally cast instantly ?


- have to pull Grobnar over as my guinea pig

Or are you referring to the setup "Instant" option?


[ edit ] k, Grobnar tells me yer talking about the "Instantly" option in Rod setup ..... will get there. ( so far have been using normal Actions )

Modifié par kevL, 07 juillet 2012 - 01:20 .


#34
kevL

kevL
  • Members
  • 4 052 messages
Ark,

*scratches head*

Why do you want Inspirations prepared? mine are staying on after a rest ...


The only reason I can think to prepare them, is to create a sort-of-default Inspiration ( like Courage ) that, say, my bard would revert back to when i forget to switch away from Regeneration, eg.

#35
kevL

kevL
  • Members
  • 4 052 messages
aha, lookee what I found in the code:

// Instant Casting of Feats is not supported at this time.
bInstant = FALSE;


I also have a strong suspicion that that function mentioned above will always return 255 when Feat use causes a spellscript to run. Unfortunately (a) not all feats have spellscripts, (B) spellscripts for feats don't have hooking enabled, © been trying to fire off #905 Inspire Courage w/ ActionCastSpellAtObject( ) so i could use bInstant, and thought i had it but not for a long time past - and it wouldn't help much anyway because toggling the Bard Mode hotkey isn't as easy as the Combat Mode, if it's possible at all without ActionUseFeat ( ) -- but then we're back into feats that are not instant .....


/how long was *that* sentence/

#36
Arkalezth

Arkalezth
  • Members
  • 3 187 messages
Inspirations take a round normally, yes, but so do spells and other things that work instantly with the rod. Inspirations are technically permanent, but are deactivated when changing modules (pretty common in modules with an overland map, for example). Also useful to store a combat-focused inspiration if you use other types the rest of the time, etc.

So I think it'd be nice to have them fixed (instantly cast with the rod), but as I said, they're secondary.

#37
kevL

kevL
  • Members
  • 4 052 messages
hmm, okay the 'module' thing yes

will put the inspirations in (they won't be instant..) but if anything borks, they're out again.

#38
kevL

kevL
  • Members
  • 4 052 messages
heh. Grobnar cheat-cast Inspire Courage instantly @ CL 20 ...





[ edit ] dang! CL 10
[ edit2 ] but it looks like the inspiration scripts have their own method of determining 'CL' so it's looking like Instant Karma Inspiration stays in ......

[ edit3 ] - would like to look at some of the Domain feats too, but I'd rather pass this to ya for a playtest, Arkalezth

what say ye??

Modifié par kevL, 08 juillet 2012 - 10:33 .


#39
Arkalezth

Arkalezth
  • Members
  • 3 187 messages
Test it? Sure, I can do that. I don't think I've ever used domain-specific feats, so I don't mind about them personally. No idea if they worked with the rod or not before.

BTW, if someone else have something to add, feel free. I started this topic myself but it's not like it's intended for my personal use only.

#40
kevL

kevL
  • Members
  • 4 052 messages
ok

gimme a day to put together a .Zip and finish the docs. Will just PM a link ( for now )



If only you & me use it, it's worth it. heck, if only i use it ..... /heh :P

#41
kevL

kevL
  • Members
  • 4 052 messages
oh it's getting close ...


Thanks to Ark, picking out stuff I wouldn't notice for months

#42
kevL

kevL
  • Members
  • 4 052 messages
did a few last nudges & tweaks
it acts non-beta now,

just waiting for Master Kipp

to get back from the beach at
...

Vera Cruz gals must be distracting,

#43
kevL

kevL
  • Members
  • 4 052 messages
- just got the go ahead and well wishes from Lost Creation  Posted Image


MetaPrepa has been uploaded to the Nexus

i guess I'm supposed to say something catchy here,

#44
Arkalezth

Arkalezth
  • Members
  • 3 187 messages
Wooo!!! Glad that I was able to trick you you were kind enough to make it possible. This will make buffing much less tedious. Many thanks again!

#45
kevL

kevL
  • Members
  • 4 052 messages
hehe, you got that backwards, Ark. Now i sit back, sip my tea, and watch the pretty colors :)

#46
kevL

kevL
  • Members
  • 4 052 messages
up at the Vault, too !

#47
bealzebub

bealzebub
  • Members
  • 352 messages
I was including the rod of preparation in my campaign. I'll get started switching over to MetaPrepa.
Thanks.

#48
kevL

kevL
  • Members
  • 4 052 messages
v.beta.9 of MetaPrepa

@ Nexus
@ NwVault


Arkalezth noticed some issues with Cleric Domain casting, specifically w/ Strength & Sun domains. That was my fault & it's been fixed. However, in the process we noticed that there are what seem to be some hardcoded irregularities concerning decrementing Domain casts - which allows an exploit but meh



beal,
it's the exact same file structure as before so just overwrite the old with the new,

Modifié par kevL, 06 septembre 2012 - 06:53 .


#49
Arkalezth

Arkalezth
  • Members
  • 3 187 messages
Not just Strength and Sun, I've also noticed the bug with Animal (Cat's Grace). Haven't tested every domain, though.

Modifié par Arkalezth, 06 septembre 2012 - 07:14 .