PDA

View Full Version : The Programmer

woodenbandman
2009-09-25, 01:12 PM
I just had an idea. If you're an 18th level caster, you can cast spells of up to 6th level into a contingency. Your contingency can have contingency in it. at this level. This is basically the definition of an IF statement in programming. A clever trick would be to use Divine Metamagic to twin your contingencies, resulting in an IF - ELSE logic. For example: Contingency: If I am attacked -> Twinned contingency -> If I say 1 -> Fireball; Else Cone of Cold.

This is just a very basic example, but I'm thinking that with liberal use of Craft Contingent Spell and twinned contingency (possibly a lot of arcane thesis/easy metamagic for contingency), we could write a contingency program that would render a wizard immune to all forms of attack (and hold enough contingencies to replace the used up spells). The main problem I see with this is that anything EVER would blow the contingency, so a contingency would have to be set to reset the contingency, and we're all no doubt very confused at this point.

Using the standard metamagic shenanigans, I believe that an Incantatrix can apply a twin effect to a contingency spell that has already been cast. So let's start with that. You make twinned contingent contingencies, each filled with twinned contingencies. This doesn't do a whole lot except make whatever you filled your contingency with happen twice.

Does anyone have any idea on how to make this work? I don't, but I do find it rightly hilarious.

PinkysBrain
2009-09-25, 01:31 PM
Using the standard metamagic shenanigans, I believe that an Incantatrix can apply a twin effect to a contingency spell that has already been cast.
Wouldn't do any good, it would still just dispel the first one. With twinned contingencies it's pretty much DM fiat what happens anyway ... personally I'd say 50% random chance of one getting applied and the other simply gets dispelled before it's condition is even checked. Besides, twin duplicates the entire spell ... can't choose different conditions/results.

2009-09-25, 01:38 PM
I've had similar ideas. While I'd never use them on a PC, I think this would be a great way to make a villain. The PCs will have to fight/research/fool him several times over to gather enough info on his contingent program. Then they have the logic puzzle of actually beating it.

Valaqil
2009-09-25, 03:04 PM
As a programmer, I _love_ this idea.

However, PinkysBrain sounds correct to me. From the contingency description:

The contingency spell and the companion spell are cast at the same time. ... You can use only one contingency spell at a time; if a second is cast, the first one (if still active) is dispelled.

Twin might be allowed via fiat.

jiriku
2009-09-25, 03:18 PM
a twinned contingency would do the same thing twice. That seems a legitimate enough use to me. A twinned contingency to "cast delayed blast fireball on my location if i'm attacked in melee" is really no different than a contingency to "cast a twinned delayed blast fireball on my location if i'm attacked in melee". With enough metamagic shenanigans, though, you ought to be able to twin both the contingency and its encapsulated spell - so you could have a twinned contingency to case a twinned delayed blast fireball, dropping 60d6 of damage on you if you're attacked in melee (we'll assume that you've prepared fire immunity in advance :smallbiggrin:)

PinkysBrain
2009-09-25, 03:29 PM
The difference is that delayed blast fireball says nothing about dispelling itself.

Melamoto
2009-09-25, 04:21 PM
I'm sure there are other ways to get multiple contingencies in there. Still, this looks to open a whole new level of Batman...

Starscream
2009-09-25, 04:39 PM
This is awesome. Someone find a way to create a While loop, and DMs across the globe will be driven mad.

Ernir
2009-09-25, 04:41 PM
Complete Arcane, page 77. Craft Contingent Spell, it's a feat. Make as many contingencies as you want, no additional hoops to jump through.

And yes, it's as broken as it sounds. :smalltongue:

PairO'Dice Lost
2009-09-25, 07:03 PM
Complete Arcane, page 77. Craft Contingent Spell, it's a feat. Make as many contingencies as you want, no additional hoops to jump through.

And yes, it's as broken as it sounds. :smalltongue:

You can make as many as you want, but each creature can only be under the effects of 1 contingency per HD at a time.

Dixieboy
2009-09-25, 07:08 PM
You can make as many as you want, but each creature can only be under the effects of 1 contingency per HD at a time.

level 18 gives us 18 contigencies to work with.

So the question becomes "What can you do with 18 spells cast at the exact same time?" I would say.

taltamir
2009-09-25, 07:29 PM
contingency, if I am injured, cast timestop / celerity...
You win. now add another 17 contingencies...
I love the programming idea but the problem is that a contingency requires another spell cast at the same time, you can contingency a twinned spell, but if you twin the contingency spell itself one will take, and the other will fail (because you only have one spell), maybe with a quicken you could do that but it makes more sense to just cast two separate ones.

if you could develop an if statement contingency it will be interesting, and a great foundation for a magitec technological and industrial revolution.

KellKheraptis
2009-09-25, 07:34 PM
Complete Arcane, page 77. Craft Contingent Spell, it's a feat. Make as many contingencies as you want, no additional hoops to jump through.

And yes, it's as broken as it sounds. :smalltongue:

No, broken is that each one is a "persistent magical effect" and is thus a valid target for Metamagic Effect. NOW you twin it. Again and again. Int+3 (I think) per day, as many times as you want, with a couple of "reinstalls" so to speak.

EDIT : Ok, so 40 at 20th level. Each is only a single spell, after all ;)

Skorj
2009-09-25, 07:37 PM
This is awesome. Someone find a way to create a While loop, and DMs across the globe will be driven mad.

Not me - I'd love it. The caster would for sure forget the exit condition. Wasn't there a movie about that? Somehting about "thank you"? :smallbiggrin:

KellKheraptis
2009-09-25, 07:41 PM
Not me - I'd love it. The caster would for sure forget the exit condition. Wasn't there a movie about that? Somehting about "thank you"? :smallbiggrin:

Depends...if they've ever written anything in coding language, you may end up with an overcomplicated Twice Betrayer of Shar, minus the betraying and Shar.

taltamir
2009-09-25, 07:45 PM
oh wow, I can just see the DM responding like that...
DM: "ok you have used 18 different contingency loops... to protect yourself against everything... roll on your "craft (programming language)" skill"
PC: My what skill?
DM: right... i thought so, roll an int check...
PC: rolls
DM: oooh, too bad, looks like you had some bugs in your program, lets roll for result...

KellKheraptis
2009-09-25, 07:48 PM
oh wow, I can just see the DM responding like that...
DM: "ok you have used 18 different contingency loops... to protect yourself against everything... roll on your "craft (programming language)" skill"
PC: My what skill?
DM: right... i thought so, roll an int check...
PC: rolls
DM: oooh, too bad, looks like you had some bugs in your program, lets roll for result...

Contingent Limited Wish~>PsyRef full ranks in Craft (Computer Program) :smallcool:

Gralamin
2009-09-25, 08:06 PM
Obviously Contigencies use Pointers. All you need is a few bugs and BAM Seg-Fault :smallcool:

taltamir
2009-09-25, 08:23 PM
Even with craft programming, you still can roll 1... 18 contingencies a day, thats 18 rolls... 5% or better chance of failure per roll, you are bound to make a mistake.

so... with this in mind... lets come up with some RESULTS for contingency programming bugs...

what will happen with an infinite loop? how about division by zero?

KellKheraptis
2009-09-25, 08:26 PM
Even with craft programming, you still can roll 1... 18 contingencies a day, thats 18 rolls... 5% or better chance of failure per roll, you are bound to make a mistake.

so... with this in mind... lets come up with some RESULTS for contingency programming bugs...

what will happen with an infinite loop? how about division by zero?

Um...I don't think rolling a 1 is an autofail on a skill check, only an attack roll or save.

sonofzeal
2009-09-25, 08:28 PM
Obviously Contigencies use Pointers. All you need is a few bugs and BAM Seg-Fault :smallcool:
Is that when your body gets segmented and it's your own fault?

taltamir
2009-09-25, 08:37 PM
Is that when your body gets segmented and it's your own fault?

ha, it is if the spell was of the teleportation variety.

woodenbandman
2009-09-25, 09:30 PM
I so do want to create a while loop. Something like "While I am within sight of X (Designated by an if statement), cast X spell every round."

What about... Contingent Sanctum Greater Arcane Fusion? Make **** up as you go.

Gralamin
2009-09-25, 09:46 PM
Even better, we need a complier. This, of course, would be an item that makes item's call programs which gives you infinite uses of your If statement :smallwink:

taltamir
2009-09-26, 04:14 AM
I so do want to create a while loop. Something like "While I am within sight of X (Designated by an if statement), cast X spell every round."

What about... Contingent Sanctum Greater Arcane Fusion? Make **** up as you go.

how would that work? it casts the spell once, and then the contingency is expanded, why would it give you infinite spells?

kjones
2009-09-26, 09:56 AM
For extra credit, prove Turing-completeness of Vancian casting. :smalltongue:

woodenbandman
2009-09-26, 09:59 AM
Well Sanctum Greater Arcane Fusion is apparently a 7th level spell that casts a 7th level spell and a 4th level spell. which leads to infinite spells.

What about contingency -> Sanctum Twinned Limited Wish, one wishing for the spell you want, one wishing for another contingency?

taltamir
2009-09-27, 02:09 AM
Well Sanctum Greater Arcane Fusion is apparently a 7th level spell that casts a 7th level spell and a 4th level spell. which leads to infinite spells.

What about contingency -> Sanctum Twinned Limited Wish, one wishing for the spell you want, one wishing for another contingency?

question, does the arcane fusion not expressly forbid the 7th level spell being cast from being itself?

because otherwise you would just cast one greater arcane fusion which casts a GAF + 4th which casts a GAF + 4th, repeat infinity. or at least till end of battle.

Forget programming a contingency loop, just the use of infinite at will 4th level spells seems broken as hell.

Tyndmyr
2009-09-27, 02:36 AM
It seems to me that spell slots would be a real concern with this type of casting. Barring the idea that you somehow have infinite spell slots(at which point, you have enough power that this sort of thing is mostly unnecessary), you'd rather quickly nova through your available spells.

Still useful, sure, but it comes at a price.

I like the idea of magical computing, though...Lets see, if we expand it to a multi-caster idea, it might still be possible. Given enough high level casters with enough contingencies, you certainly could make a processor of sorts, albeit one still limited in speed by the amount of available total slots per day.

And of course, coding errors will be hilarious.

oxinabox
2009-09-27, 03:55 AM
Is it turing complete?

Where is the Jump/loop?

Tyndmyr
2009-09-27, 08:54 AM
Hmmm, loop is interesting. You'd need to somehow have a contingency that replaced itself in addition to triggering something else.

Now, contingency only being level six, a contingent GAF(which itself contains another contingency and whatever your trigger spell is) should do the job of looping.

So, with infinite spell slots, and sufficient contingencies(there's a feat for that) there's no particular reason why you couldn't make a wizard computer. The practical problem is the spell slots. Unless you're going to use excessively large abuse of traps, you need to come up with a highly efficient distributed computing wizarding system to shift the logic processing around to new, untapped wizards.

woodenbandman
2009-09-27, 09:28 AM
I HAVE IT! Reserves of Strength + Contingent Greater Arcane Fusion. All you need is a CL of 24. Eternally replenishing contingent 4th level or lower spell.

Fishy
2009-09-27, 10:43 AM
Auto-resetting, pull-trigger activated magic traps of Contingency Arcane Fusion?

Pull the trigger, which casts Contingency- If the Contingency applies, it'll go off and cast two spells, one of which can be a Greater Mage Hand to pull the trigger again.

Tyndmyr
2009-09-27, 11:21 AM
Obviously, this leads to the magical computer gaining sentience, and deciding to kill all humans.

Eldariel
2009-09-27, 01:42 PM
Obviously, this leads to the magical computer gaining sentience, and deciding to kill all humans.

And sending monsters back in time to kill the future Human hero. Doesn't this pretty much describe the Illithid?

Navigator
2009-09-27, 02:29 PM
The spell to be brought into effect by the contingency must be one that affects your person and be of a spell level no higher than one-third your caster level (rounded down, maximum 6th level).

The conditions needed to bring the spell into effect must be clear, although they can be general. In all cases, the contingency immediately brings into effect the companion spell, the latter being “cast” instantaneously when the prescribed circumstances occur. If complicated or convoluted conditions are prescribed, the whole spell combination (contingency and the companion magic) may fail when called on. The companion spell occurs based solely on the stated conditions, regardless of whether you want it to.
Here's my take on this:

If we want to seriously consider this, we need to figure out how to create a turing machine.

We can consider the caster's body to be the tape.

Every contingency is fired off by and only by something that affects you. Thus, we would have to define affects (or conditions) that have some impact on the physical person.

Luckily, we need only two to get things done - namely, 0 and 1. It doesn't matter what we call 0 or 1, or what they do, as long as it doesn't kill the subject. We just have to figure out a way to force the caster's body to "remember" a bunch of these conditions and their order to emulate a tape.

The contingencies are effectively the algorithm.

I don't think I really have to justify this. The problem is contingencies have to alter the caster's condition somehow in addition to cast spells. If the only way we can have a contingency alter a condition is to have spells that specifically do that, the contingency chain is guaranteed to end after firing off a single actual spell, since the actual spell can't alter the condition.

If we can solve these two issues, then a magical computer is possible. Proving it is trivial. After that, we can start discussing it's limitations and start making a compiler. :smallbiggrin:

Tyndmyr
2009-09-27, 02:34 PM
Any long duration buff or debuff will suffice to store one bit of information. If it's cast on you, it's a 1. If not, it's a 0.

Seems simple enough.

PairO'Dice Lost
2009-09-27, 03:14 PM
Luckily, we need only two to get things done - namely, 0 and 1. It doesn't matter what we call 0 or 1, or what they do, as long as it doesn't kill the subject. We just have to figure out a way to force the caster's body to "remember" a bunch of these conditions and their order to emulate a tape.

Any long duration buff or debuff will suffice to store one bit of information. If it's cast on you, it's a 1. If not, it's a 0.

Seems simple enough.

I have a better idea:

Prestidigitation. :smallbiggrin:

Different locations of the body can be different memory locations, and changing the color between white and black can represent 1 and 0, respectively. Since contingent spells don't specify that they have to be cast on living creatures, we could animate a block of material several yards in each dimension after carving a tiny grid on it and labeling it, so you can simply use "square A17" in contingencies instead of having to manually specify locations. Contingencies would either test "If square [X][Y] is [black|white]" or write "Prestidigitize square [X][Y] to [black|white]."

Heck, we can even make a literal tape--a really long leather strip, permanently animated, with an animated, levitating wooden block serving as a read/write head of sorts (i.e. replenishing contingencies).

Ta-da! What do you think?

taltamir
2009-09-27, 03:48 PM
for contingency spell to take place, you need to cast two spells. Contingency, and the spell it is affecting, at the same time.

If, as we say, GAF gives you one free level 7 spell, and one free level 4.
Well. It will not be enough.
You will need GAF to give you TWO level 7 spells and one level 4. Why? because it needs to cast:
1. A new contingency
2. A new GAF
3. A desired effect using a 4th level spell.

otherwise the loop will stall.

PairO'Dice Lost
2009-09-27, 03:58 PM
for contingency spell to take place, you need to cast two spells. Contingency, and the spell it is affecting, at the same time.

If, as we say, GAF gives you one free level 7 spell, and one free level 4.
Well. It will not be enough.
You will need GAF to give you TWO level 7 spells and one level 4. Why? because it needs to cast:
1. A new contingency
2. A new GAF
3. A desired effect using a 4th level spell.

otherwise the loop will stall.

If you use one of the many tricks for getting regular arcane fusion to a 4th level spell, you would use the GAF to give you a 7th and a 4th, then use the 7th for another GAF and the 4th for an AF and a prestidigitation, using the coloring solution outlined above.

Navigator
2009-09-27, 04:04 PM
I have a better idea:

Prestidigitation. :smallbiggrin:

Different locations of the body can be different memory locations, and changing the color between white and black can represent 1 and 0, respectively. Since contingent spells don't specify that they have to be cast on living creatures, we could animate a block of material several yards in each dimension after carving a tiny grid on it and labeling it, so you can simply use "square A17" in contingencies instead of having to manually specify locations. Contingencies would either test "If square [X][Y] is [black|white]" or write "Prestidigitize square [X][Y] to [black|white]."

Heck, we can even make a literal tape--a really long leather strip, permanently animated, with an animated, levitating wooden block serving as a read/write head of sorts (i.e. replenishing contingencies).

Ta-da! What do you think?
I think that contingency is pretty explicit about only going off when things happen to the caster, but I suppose you could just have such a grid "on your person". The number of spaces would have to be pretty big even to get practical things done, but I think prestidigitation can solve our problem one way or the other. That being said, can prestidigitation modify electrons? Atoms? Molecules? Depending on how small we get, we can have our tape be something like a pebble.

In any case, I don't think the tape has to be animated.

Also, I am assuming that there is a way to have contingencies create contingencies with:

I HAVE IT! Reserves of Strength + Contingent Greater Arcane Fusion. All you need is a CL of 24. Eternally replenishing contingent 4th level or lower spell.

I also realized that it would be okay for spells to exist in the contingency to be totally devoted to changing the conditions, because all we actually want is a single spell to go off, right?

Tyndmyr
2009-09-27, 04:08 PM
Um...maybe. Whatever the omnimagiccomputer decides.

taltamir
2009-09-27, 04:32 PM
If you use one of the many tricks for getting regular arcane fusion to a 4th level spell, you would use the GAF to give you a 7th and a 4th, then use the 7th for another GAF and the 4th for an AF and a prestidigitation, using the coloring solution outlined above.

that will make for an interesting loop... but:
1. the contingency just gets in the way and wastes spells
2. yes, you get a few extra free spells.. of diminishing power.

Basically the contingency completely gets in the way, just use AF or GAF to cast themselves over and over again along with another spell...

Example:
GAF to cast GAF + fireball, using the second GAF cast GAF + fireball again... and again until end of encounter... then cast some buffs on everything, then cast whatever you want... Assuming this is not explicitly forbidden as well.

Same with regular arcane fusion.

PairO'Dice Lost
2009-09-27, 04:42 PM
I think that contingency is pretty explicit about only going off when things happen to the caster, but I suppose you could just have such a grid "on your person".
Exactly; if you put the contingencies on the animated block, then changing its colors is happening to "the caster" i.e. the person with the contingencies.

The number of spaces would have to be pretty big even to get practical things done, but I think prestidigitation can solve our problem one way or the other. That being said, can prestidigitation modify electrons? Atoms? Molecules? Depending on how small we get, we can have our tape be something like a pebble.
Don't know about explicit size limitations, but I'd assume we wouldn't want squares any smaller than about a millimeter on a side, so the programmer can personally see their state for debugging and such.

In any case, I don't think the tape has to be animated.

If you want it to have contingencies on it, you would, since the contingent spells have to be put on a creature and can only affect the contingency-bearer

I also realized that it would be okay for spells to exist in the contingency to be totally devoted to changing the conditions, because all we actually want is a single spell to go off, right?
Not necessarily. If you want this to have the versatility and functionality of a real computer, then you might want to program many different spells into it--if X then cast fireball here, elsif Y cast stone shape there to create shape W, elsif [...] else return to start. Then again, all of the external spells can be handled by CD-esque item attachments, so you could simply have a few contingencies specifying that the item in slot A will be activated and the programmer can manually change out wands/staves/etc.

Basically the contingency completely gets in the way, just use AF or GAF to cast themselves over and over again along with another spell...

The whole point of the contingencies is to determine which spell is cast, so you couldn't just take it out of the loop, pun intended.

Tyndmyr
2009-09-27, 04:44 PM
Well, technically, the contingency is the if/then structure, so you wouldn't need a contingency on every iteration, just when the logic branches.

May as well make it as fast as possible, I guess.

woodenbandman
2009-09-28, 11:04 AM
I have had another thought: Contingent Contingency, coupled with Reserves of Strength, would allow you to bring ANY spell into effect at ANY time. Contingency "When I am about to be attacked" Contingency, which brings into effect your contingency, at which point you can declare what spell you want for the situation, set the conditions identical to the ones that activated your contingent Contingency, at which point you are returned, and the conditions are immediately satisfied, resulting in the spell you want being cast. Note that it says that the spell is "Brought into effect" when the contingencies conditions are met, which I can only assume means that its casting time is immediate. If not, though, there has to be a way to metamagic your contingency down to an immediate action.

PairO'Dice Lost
2009-09-28, 01:07 PM
I have had another thought: Contingent Contingency, coupled with Reserves of Strength, would allow you to bring ANY spell into effect at ANY time. Contingency "When I am about to be attacked" Contingency, which brings into effect your contingency, at which point you can declare what spell you want for the situation, set the conditions identical to the ones that activated your contingent Contingency, at which point you are returned, and the conditions are immediately satisfied, resulting in the spell you want being cast. Note that it says that the spell is "Brought into effect" when the contingencies conditions are met, which I can only assume means that its casting time is immediate. If not, though, there has to be a way to metamagic your contingency down to an immediate action.

Nothing I know of lets you metamagic down to an immediate action, but I'm fairly sure that your logic works and thus it would be unnecessary.

Navigator
2009-09-28, 01:35 PM
Exactly; if you put the contingencies on the animated block, then changing its colors is happening to "the caster" i.e. the person with the contingencies.
Contingency has a range of personal. This is neither here nor there, but I'm confused how we'd get contingencies on an animated object. Are we talking about Craft Contingent Spell?

Don't know about explicit size limitations, but I'd assume we wouldn't want squares any smaller than about a millimeter on a side, so the programmer can personally see their state for debugging and such.
This is a good point, but we need a lot of "squares". Integers take up more bits than you think, and if we want to be able to do things like multiplication, it takes much more room on a tape than you'd think. If we could get a tape that has something like 100,000 "squares", that's workable.

Not necessarily. If you want this to have the versatility and functionality of a real computer, then you might want to program many different spells into it--if X then cast fireball here, elsif Y cast stone shape there to create shape W, elsif [...] else return to start. Then again, all of the external spells can be handled by CD-esque item attachments, so you could simply have a few contingencies specifying that the item in slot A will be activated and the programmer can manually change out wands/staves/etc.
Having the "slot" is a neat idea, and I'd like to see a way it could happen. You'd have to have a spell that's capable of activating a magic item. Depending on how this is done, you can power it with scrolls and just replace them when needed.

I understand that we want many different spells in there, but are we going to want more than one spell to go off in a single pass of this... "program"? Once you have a contingency go off, you are no longer able to alter the tape because it won't be a prestidigitation, but something else.

The prestidigitation idea makes me think a shadowcraft mage would be a great programmer.

PairO'Dice Lost
2009-09-28, 04:52 PM
Contingency has a range of personal. This is neither here nor there, but I'm confused how we'd get contingencies on an animated object. Are we talking about Craft Contingent Spell?

Given that you can't have more than one contingency on a single target, I'd thought that we were using Craft Contingent Spell to set up the basis (the ROM, if you will) and the contingency spell for the end results, i.e. the Contingent Spells would run the GAF/AF loop to generate spell slots, and those spell slots would be used for creating the contingencies in our actual "program."

This is a good point, but we need a lot of "squares". Integers take up more bits than you think, and if we want to be able to do things like multiplication, it takes much more room on a tape than you'd think. If we could get a tape that has something like 100,000 "squares", that's workable.

They take up exactly as many bits as I think they do; I'm a compsci major. :smallwink: 100,000 squares would only be a .1 km tape, and you can wrap/wind up a tape that long into a manageable size. That's also why I suggested using a cube--a cube 1.2 m on a side gives us just over 1 MiB to work with.

Having the "slot" is a neat idea, and I'd like to see a way it could happen. You'd have to have a spell that's capable of activating a magic item. Depending on how this is done, you can power it with scrolls and just replace them when needed.

Hmm...I thought I remembered seeing a spell that could trigger an item, but looking through my books I can't find one. I'll have to think on that one more.

I understand that we want many different spells in there, but are we going to want more than one spell to go off in a single pass of this... "program"? Once you have a contingency go off, you are no longer able to alter the tape because it won't be a prestidigitation, but something else.

The prestidigitation idea makes me think a shadowcraft mage would be a great programmer.

Well, you'd have one contingency to color (a) square(s), and another to launch the spell when the right squares are the right colors, and another to prestidigitize more squares when the spell goes off. Essentially:

if(condition)
{
contingency.color(\$square);
}
if(\$square == black)
{
\$success = contingency.cast(\$spell);
if(\$success)
{
contingency.color(\$a_square);
}
else
{
contingency.color(\$other_square);
}
}

Stick that inside a huge while loop and you're set.

gdiddy
2009-09-28, 05:50 PM
I now know how Modrons work! Thanks, Giant forums!

jiriku
2009-09-28, 07:02 PM
Wow. You guys are way above my conceptualization level, but this looks like it's turning into something really cool.

If it helps you any, adding a divine caster with the Initiate of Mystra feat gives you more diversity in your contingent casting. You get:

Spell Phylactery, a 5th level spell that casts a scroll on your possession, provided the spell on the scroll is no greater than 5th level, affects only your person, and is on your spell list. It does this in response to a condition of your choosing.

Spellmantle, a 6th level spell that activates when you are targeted by spell A, B, C, D, or E, absorbs the effect, and then either heals you or casts spell X on you, where X is a spell you have prepared that targets only your person. Spell X is not expended.

This should somewhat expand the number of conditions and permutations your magitech computer has to work with.

woodenbandman
2009-09-28, 08:01 PM
... Does Dweomerkeeper's ability that makes a spell into a supernatural ability prevent it from dispelling itself when you activate more than 1 contingency at one time?

PairO'Dice Lost
2009-09-28, 10:20 PM
I now know how Modrons work! Thanks, Giant forums!

...oh. My. Gods. I've been looking for a hook to introduce Modrons into my ongoing non-Planescape campaign. You, sir, are my hero.

Spell Phylactery, a 5th level spell that casts a scroll on your possession, provided the spell on the scroll is no greater than 5th level, affects only your person, and is on your spell list. It does this in response to a condition of your choosing.

Spellmantle, a 6th level spell that activates when you are targeted by spell A, B, C, D, or E, absorbs the effect, and then either heals you or casts spell X on you, where X is a spell you have prepared that targets only your person. Spell X is not expended.

Iiiiinteresting. I'm not as much of an FR buff--are those in Magic of Faerun?

... Does Dweomerkeeper's ability that makes a spell into a supernatural ability prevent it from dispelling itself when you activate more than 1 contingency at one time?

Sadly, yes; (Su) abilities aren't dispellable.

jiriku
2009-09-28, 11:40 PM
Iiiiinteresting. I'm not as much of an FR buff--are those in Magic of Faerun?

Player's Guide to Faerun. It's also worth noting that initiate of Mystra lets you spontaneously cast anyspell and greater anyspell. Combined with miracle, this gives a Mystran cleric the ability to cast most arcane spells as divine spells, including contingency and arcane fusion.

PairO'Dice Lost
2009-09-29, 12:16 AM
Player's Guide to Faerun. It's also worth noting that initiate of Mystra lets you spontaneously cast anyspell and greater anyspell. Combined with miracle, this gives a Mystran cleric the ability to cast most arcane spells as divine spells, including contingency and arcane fusion.

Hmm...I don't have PGtF on hand, I'll have to take a look tomorrow. Still, that does have very interesting ramifications for this computer of ours. Anyspell should help with the execution phase of instructions quite a bit.

PlzBreakMyCmpAn
2009-09-29, 11:49 AM
Don't let this burst your bubble (DM fiat is a good thing) but I don't think this works. The Contingencies would not wait for the 'if I say 1' sort of thing. Meaning you could not provide 'user input' when you run the 'program.' This is why they actually interrupt other actions. They don't take time and cannot use a "wait" or 'sleep' function.

You can start the contingencies, its just you can't control (other than to fully calculate the effects yourself, and your DM might have a different conclusion that you) the if-else statements.

woodenbandman
2009-09-29, 01:51 PM
Well the idea is that I make a contingency which sets up a contingency, and the second contingency's condition is "when I say 1." If anything, that's exactly why this works, because Contingency specifies that the spell is "brought into effect" when the conditions are satisfied, so you don't actually have to wait for the second contingency's casting time. If you wanted to you could make infinite contingencies.

I just know that this can be abused with that tactical feat Lingering Metamagic.

Tyndmyr
2009-09-29, 03:20 PM
Don't let this burst your bubble (DM fiat is a good thing) but I don't think this works. The Contingencies would not wait for the 'if I say 1' sort of thing. Meaning you could not provide 'user input' when you run the 'program.' This is why they actually interrupt other actions. They don't take time and cannot use a "wait" or 'sleep' function.

You can start the contingencies, its just you can't control (other than to fully calculate the effects yourself, and your DM might have a different conclusion that you) the if-else statements.

The complete lack of execution time is....awesome. Very abusable, as otherwise, the DM might rule that this execution takes a certain amount of time per spell. Which would....suck.

As for waiting, no problem. Set a contingency to "when spell effect x wears off". Cast a spell with the duration you desire.

Now, I dont know if there's a spell with any duration you wish, but there are certainly spells with a wide variety of durations, and in any case, looping can get us any multiple of those delays.

Boom, we have a wait function.

PairO'Dice Lost
2009-09-29, 03:37 PM
As for waiting, no problem. Set a contingency to "when spell effect x wears off". Cast a spell with the duration you desire.

Or a simple "activate after X seconds" trigger should probably suffice.

Tyndmyr
2009-09-29, 05:20 PM
It should...but just in case a very strict interpretation of contingency is called for, it's nice to have a backup.

I could probably code up a lil simulator of this if desired. Might be interesting.

PairO'Dice Lost
2009-09-29, 07:12 PM
I could probably code up a lil simulator of this if desired. Might be interesting.

Oh, man, that would be fun. If I weren't already working on several projects I'd try to work one up myself. You might as well code it up and then we can collectively tweak it.

Tyndmyr
2009-09-29, 11:32 PM
I'll dabble with it if/when I have time, but no promises. I've got a ridiculous amount of side projects going myself atm, and I'm absolutely terrible at finishing coding projects unless Im being paid for them.

It is interesting though. We'll see.

crazedloon
2009-09-30, 02:28 AM
The way I see it one needs a few pieces to get this working (however I have not figured out how to add the autonomous function yet (give me time) )

reserves of strength = means of putting GAF on the contingency

contingency = if statement
Greater arcane Fusion = means of getting the infinite loop

x = contingency if (the caster would be hit by a spell or melee attack)

x
Cast Greater Arcane Fusion
level 7 spell being contingency
level 4 being the best for the situation (or 5th level with the sanctum feat)
go to x

since the same condition which would trigger the original contingency is still in effect the new one would be triggered and the loop would start over. When the situation has been dealt with (through the fourth level spells) have the contingency trigger off of you saying a phrase which will allow you to reset the trigger to an attack of some sort