Jump to content

Taunt a creature


Salk

Recommended Posts

Hello!

I am trying to create a spell effect that would make, if successful, a hostile creature attack another one (taunt) for a specific number of rounds, ignoring other targets.

 

I have been thinking of using Opcode 247 (Attack nearest creature) but unfortunately the attacks are reevaluated and the target can change.

 

Any idea?

Link to comment

 

Script it to Attack its own EA?

Could you elaborate?

Well, this is the cheese you approach spell effect: ... the bad thing is, that it can make the trolls etc story essential creatures unkillable:

Compile this code as the script ij#taunt.bcs:

IF
	Global("IJ#taunt","LOCALS",0)
THEN
	RESPONSE #100
		SetGlobal("IJ#taunt","LOCALS",1)
		Attack(FAMILIAR())
END

Then use opcode #82 with parameter 2 at 0, and the resource as ~ij#taunt~ in the taunt spell the familiar can cast ... and you might wish to set the LOCALS to zero, but that's a minor thing, as you can taunt just ones for now.

Link to comment

Jarno,

 

I understand what you are suggesting but what would happen if the affected creature already had an Override script? Wouldn't this be destroyed?

Well duh, that's why it's bad to do it... and it can make the trolls etc unkillable.

But you do understand that if you won't overwrite the Override script, the actual Override script can make the taunt not to happen if there's a condition that is true also. ?!?

Link to comment

 

Jarno,

 

I understand what you are suggesting but what would happen if the affected creature already had an Override script? Wouldn't this be destroyed?

Well duh, that's why it's bad to do it... and it can make the trolls etc unkillable.

But you do understand that if you won't overwrite the Override script, the actual Override script can make the taunt not to happen if there's a condition that is true also. ?!?

 

 

I understand that and in fact I didn't think of messing up with scripts to begin with. It was your suggestion...

Link to comment

What if the script block is added at the top of the Override script? (Because overwriting Override scrips is no option)

OK, that's about 1000 to 10k files depending on the install, and if that won't screw the game, then some one installs a mod on top and the taunt won't work on the changed creature or whatnot. Or the baldur.bcs get's infected with it, and then the game won't work... it's not always really that easy.

PS, it wasn't me that came up with this, it was phordicus...

 

jastey,

 

that sounds better already... :) But how would I do it?

Well, here's how, you copy all the existing .cre files, read their override scripts, and make a file out of the read content, then you patch each of them with the block above. There's code for this in the community somewhere... I don't possess it though.
Link to comment

Anyway, what I need to do, no matter the solution, is to have exclusions so I welcome suggestions in this field as well.

 

What I have been thinking so far is to use opcode 177 to exclude EA / PC, EA / EVILBUTBLUE, EA / EVILBUTGREEN, CLASS / INNOCENT because I wanted this spell to be effective only on hostile creatures, to begin with... (if there is a better way to do that, please don't hesitate to tell me) GENDER / ILLUSIONARY and GENERAL / UNDEAD as well...

 

What more? :)

Link to comment

I don't know if you've solved this already...

You can do this, and I already did it for my own KR Cavalier version. You need two spells actually (they can both be fired from the same ability ofc).

One affects your party (and familiar *must* be immune to it); uses a short duration (1sec) Protection from Creature type : IDS (enemy); the second one makes enemies go berserk. You also might want to add Pro Creature:Enemy to the second one (to prevent them fighting each other). This way, familiar will be the sole target for berserking creeps.

You don't need effs to target enemies, you need .pro files that do that. You can use effs for very specific targeting (like excluding mindless skeletons/slimes and similar from berserking).

Link to comment

Hello kreso.

Thanks for your advice.

 

I have more or less solved this although I am still trying to think of a better way to make the spell effective only against red circled.

This is not even truly a "spell" but rather a taunt so that the single enemy (it's one target only) that fails the saving throw will just attack the familiar (I am using AttackReevaluate) for a number of rounds (depending on level) and will resume its normal activity if the familiar will be putting enough distance between himself and the taunted enemy. The enemy will again redirect its attacks against the familiar if the spell is still in effect and the familiar gets closer again.

 

I have been excluding already skeletons, slimes and golems. Any others? :)

Link to comment

Archived

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

×
×
  • Create New...