Ideas, python help request: Alazkan's Mirror

Tarquelne

Follower of Tytalus
Joined
Dec 8, 2001
Messages
3,718
I've been looking for a way to tame Alazkan's Mirror. I'd like to find something that changes it as little as possible while also removing Alazkan's ability to devastate civs while remaining inside Svart. borders.

I've figured out how to add extra promotions: -50% (or whatever) to combat might work. Though it seems crude.
Limiting the movement of the Illusion might be better - make Alazkan get within range of a counter-attack. I'm not sure a straight "-" to movement would work. Would it guarantee a move of at least 1? How about a high terrain movement cost? I think that guarantees a move.

What I'd really like to do is give Alazkan's Mirror a combat limit. So it can soften up the enemy - even at long range - but some 'real' units will have to be committed to actually make a kill. (Or, well, other summoned creatures. Close enough.)

I don't know how to add a "combat limit" to the illusion, however.

Any other ideas? A tip on how to give the illusion a combat limit?

Here's the relevant python:

Spoiler :
Code:
def spellMirror(caster):
	pPlayer = gc.getPlayer(caster.getOwner())
	newUnit = pPlayer.initUnit(caster.getUnitType(), caster.getX(), caster.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.DIRECTION_SOUTH)
	for i in range(gc.getNumPromotionInfos()):
		if gc.getPromotionInfo(i).isEquipment() == False:
			newUnit.setHasPromotion(i, caster.isHasPromotion(i))
	newUnit.setHasPromotion(gc.getInfoTypeForString('PROMOTION_ILLUSION'), True)
	newUnit.setDamage(caster.getDamage(), False)
	newUnit.setLevel(caster.getLevel())
	newUnit.setExperience(caster.getExperience(), -1)
	newUnit.setDuration(1)

Thanks!
 
Just a simple setCombatLimit might actually do it. Though I would imagine you might have to set up a definition for the command elsewhere. And a hightened terrain movement cost would be sufficient to stick him down to a single move (terrain move cost +5 or so), no matter what Alazkan's :move: score is when he summons it.
 
Though I would imagine you might have to set up a definition for the command elsewhere.

Ah, I bet that's it. I looked at a list of "allowed" commands, but it didn't occur to me I could set up my own definition. Probably because I had know what all those "def" statements I kept seeing were supposed to be. :) Thanks.
 
After a couple of hours experimentation I came to two conclusions:

1) Figuring out how and where to make the definition will take me more than a couple of hours. (Though I did learn a few things.)

2) I could make Alazakan summon a new unit with a 90% combat limit that looks just happens to look like him, possess his current stats and promotions (-elf +illusion), and bear his name... And that doing so would take just a few minutes.

So that's what I did. :)

Now I'm tempted to go the "limit movement" route, though. If other illusions can kill why can't Alazakan's? That destroy what I see as his primary role, though: Long range artillery. The combat limit limits that role, but doesn't remove it.

Of course I could remove "Illusion" and just say that Alazakan is doing something else more akin to mental projection - whatever that means. Anyway, it'd beg the question "What's Alazakan do?" rather than "Why doesn't his illusion kill?". I'd prefer to shrug at the first question rather than the second.

Or I could have him summon a giant, water-only Alazakan that can submerge and... well, nah.
 
I think that it is when he starts to Blitz that it becomes "broken" seeming.

I think that's when he's just rubbing it in. :)

Happily, it seems my friends will accept the combat limit change and Alazkan will no longer be banned from our games under the Bluetower LAN Declaration's "unanswerable weapon or spell of death" clause.
 
I've come up with a slightly different approach to it here.

Basically stops the worst of what he can do with the right combination of promotions by making it so that either he *or* the mirror gets to fight.
 
Just a simple setCombatLimit might actually do it. Though I would imagine you might have to set up a definition for the command elsewhere. And a hightened terrain movement cost would be sufficient to stick him down to a single move (terrain move cost +5 or so), no matter what Alazkan's :move: score is when he summons it.

That is such an interesting idea in general (that illusions cant actually kill anyone, only reduce them to 10% health or some such). Hmm..
 
That is such an interesting idea in general (that illusions cant actually kill anyone, only reduce them to 10% health or some such). Hmm..

That'd save me the effort of explaining why Alazkan's Mirror is different. That's a big plus as far as I'm concerned. ;)

I've been fooling around with combat limits, resistances to most special damage, no terrain movement cost, and a few other things for Illusions.

It's fun to have a no terrain move-cost illusion strike out of the forest to weaken a unit, and then finish it off with an equally fleet-footed Sv. Hunter.

And it was the excuse I'd been looking for to get the Phantasm graphics back to a summonable unit. I know you've been told this before: It's cool! :)

I don't think my cumbersome XML method will work with the Hall of Mirrors though... and I've got a question about it, anyway:

Where/how do you connect the building to the spell?
 
If Illusions are made non-lethal, the Svartalfar will need something powerful to compensate.

I don't know just what you mean by "powerful", but I think complete compensation could be accomplished through granting illusions (or illusionists) some advantages. In my experience creatures summoned by mages don't rack up that many kills anyway, and are used more for softening up a target. (The big exception being water-capable summons. And Alazkan, but I think he's already too powerful.)

Though I think a special spell for Illusionist Archmages that "summons" an illusion-duplicate of an enemy unit in range - maybe the most powerful - would be neat.
 
The advantage they gain is insanely fast XP for their Casters. If your Illusions NEVER kill, that means there is ALWAYS a weak mob for the Mage to clean up and get XP.

That's a pretty potent advantage - I like it.
 
Back
Top Bottom