Jump to content

Simulacrum as an object


Grammarsalad

Recommended Posts

Hello,

 

Is there a reliable way of designating a Simulacrum as an object in a script. Specifically, I want to be able to check if a Simulacrum has cast a specific spell in the last combat round, say magic missile. For that I have the trigger,

 

SpellCast(O:Object*,WIZARD_MAGIC_MISSILE)

 

So far, so good. Now, I don't know exactly how this spell works, but I guess that it creates a copy of the caster's cre file. The creature executing the script will probably be an additionally summoned 'invisible monster', but that need not be the case. Here is what I have so far:

 

 

IF
SpellCast(LastSummonerOf(Myself),WIZARD_MAGIC_MISSILE)
!SpellCast(Player1,WIZARD_MAGIC_MISSILE)
(and so on for player's 2-6)
Under the huge assumption that both the Simulacrum and the original caster will be detected as the Last summoner. My guess is that this will not work.
Any other suggestions?
Link to comment

I was thinking of making a custom ID in Specifics. You can set this in SIMULACR.SPL with ChangeAIType(72) on Self. A script or EFF can then target by Specifics. This wouldn't work reliably in a multiple simulacrum scenario without further narrowing of targeting. I'm too tired to try to think of a workaround to see if a simul cast a spell. I'm not even sure what OP wants to do.

Link to comment

I'm not even sure what OP wants to do.

I think the goal is to simulate using a Wizard Eye (or whatever) to cast sight-range spells while the spellcaster is over on the other side of the map.

 

PI gets its own complete spellbook... the goal here is to cast and lose spells from the original caster's spellbook, casting *through* a faraway vessel like a wizard eye or projected image.

Link to comment

Well, I want to check to see if a Simulacrum has cast a specific spell in the last round. If so, I want to do stuff :). Specifically, I want to remove that spell from the original caster. My original idea was to Summon an invisible monster in addition to the Simulacrum that would check for spells cast by that Simulacrum, and then removespell. Edit: yeah, what the doctor said

 

My problem is object.ids. I would love to use checkstat, but it has the same problem as spellcast: you need to specify the object. If there was an "ally" entry, then great (though multiple Simulacrum are still a problem...) I could check both if an ally and not player 1-6 have cast the spell. But no dice (unless I'm missing it). I'm open to using a unique specific id, and do it using just effs, but how?

Link to comment

Very cool. I wanted to do the same thing. Instead I wound up just adding more headers to the main spell that remove 1 spell* from the (original) mage once per round for the duration of the simulacrum. I figure (a) it's a fair price for being able to cast any of your spells from such a safe position/situation, and (b) the spells getting removed are a high probability to be the ones getting cast anyway.

 

* - the effect is hardcoded to remove a random spell of the highest level memorized

Link to comment

You could have SIMULACR.spl set some sort of script rather than summoning an invisible .cre, but am not sure it will work properly.

 

I agree, it's a shame from a balance point of view that Project Image does not drain the caster's spells.

 

In the EE games, some trickery might be possible (image switches places with the caster and then switches back at dispel) with a bunch of invulnerability effects so that the image is the actual caster and the caster is a placeholder image, but not sure on this either.

Link to comment

Archived

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

×
×
  • Create New...