Design: Promotions

M@ni@c said:
How about adding defensive withdrawals to the flanking promotions?

Code:
	def onCombatResult(self, argsList):
		'Combat Result'
		pWinner,pLoser = argsList
		playerX = PyPlayer(pWinner.getOwner())
		unitX = PyInfo.UnitInfo(pWinner.getUnitType())
		playerY = PyPlayer(pLoser.getOwner())
		unitY = PyInfo.UnitInfo(pLoser.getUnitType())
		pPlayer = gc.getPlayer(pWinner.getOwner())
		bUncaptured = True

		pLPlayer = gc.getPlayer(pLoser.getOwner())
		iRoot = gc.getInfoTypeForString('PROMOTION_ROOT')
		iFlanking1 = gc.getInfoTypeForString('PROMOTION_FLANKING1')
		iFlanking2 = gc.getInfoTypeForString('PROMOTION_FLANKING2')
		iFlanking3 = gc.getInfoTypeForString('PROMOTION_FLANKING3')

		iRnd = CyGame().getSorenRandNum(100, "Maniac")
		if pLoser.isHasPromotion(iRoot):
			iRnd = iRnd - 150
		if pLoser.isHasPromotion(iFlanking1):
			iRnd = iRnd + 20
		if pLoser.isHasPromotion(iFlanking2):
			iRnd = iRnd + 20
		if pLoser.isHasPromotion(iFlanking3):
			iRnd = iRnd + 10
		if pWinner.isHasPromotion(iFlanking1):
			iRnd = iRnd - 20
		if pWinner.isHasPromotion(iFlanking2):
			iRnd = iRnd - 20
		if pWinner.isHasPromotion(iFlanking3):
			iRnd = iRnd - 10
		if iRnd >= 101:
			pPlot = cf.FFHFindClearPlot(pLoser, -1)
			if pPlot != -1:
				newUnit = pLPlayer.initUnit(pLoser.getUnitType(), pPlot.getX(), pPlot.getY(), UnitAITypes.NO_UNITAI)
				CyInterface().addMessage(pWinner.getOwner(),True,25,'Our enemies flee like cowards!','AS2D_DISCOVERBONUS',1,'Art/Interface/Buttons/Highscores/Warp.dds',ColorTypes(8),pPlot.getX(),pPlot.getY(),True,True)
				CyInterface().addMessage(pLoser.getOwner(),True,25,'Tactical retreat succesful.','AS2D_DISCOVERBONUS',1,'Art/Interface/Buttons/Highscores/Warp.dds',ColorTypes(8),pPlot.getX(),pPlot.getY(),True,True)
				newUnit.setDamage(95, True)
				newUnit.setExperience(pLoser.getExperience(), -1)
				newUnit.setLevel(pLoser.getLevel())
				for iCount in range(gc.getNumPromotionInfos()):
					if (pLoser.isHasPromotion(iCount)):
						newUnit.setHasPromotion(iCount, True)

We actually already have defensive withdrawals, Loki uses it to flee combat. But I would be hesitant to use it on a much larger scale. You just come up with all sorts of odd combinations such as fleeing a fireball, fleeing an assassin, fleeing a summon (and therefor making the summon worthless).

So its a really powerful ability. It could be okay if its kept at a low chance, but I dont know if its really "fun". It may be more frustrating as players count on having driled through to kill a unit only to have it escape.
 
Slow siege units withdrawing defensively doesn't really make sense. One could give them a -150 iRnd modifier. One could expand on this event in numerous other ways, eg make offensive withdrawal chance always the same as defensive withdrawal. Give horsemen +25 iRnd, horse archers +35 etc.


Kael said:
We actually already have defensive withdrawals, Loki uses it to flee combat.

Yeah I couldn't find that event. Isn't it in the eventmanager python file? A search on "Loki" doesn't give me the event.

But I would be hesitant to use it on a much larger scale. You just come up with all sorts of odd combinations such as fleeing a fireball, fleeing an assassin, fleeing a summon (and therefor making the summon worthless).

So its a really powerful ability. It could be okay if its kept at a low chance, but I dont know if its really "fun". It may be more frustrating as players count on having driled through to kill a unit only to have it escape.

I must disagree with you 100%. Alpha centauri already had defensive withdrawals. Any defending unit in the open that hadn't attacked the previous turn and had more movement points than its attacker would withdraw to the tile it came from after being damaged 50%. Except if the attacker had the ECM ability, but whatever, that's a detail. Civ4 and Civ3 IIRC too reversed that to offensive withdrawals.
Anyway, I want to say that in seven years I've never heard anyone complain about defensive withdrawals being frustrating or unfun. As long as you make people aware of the new rule, they can plan their tactics around it, and there shouldn't be a problem.

So you could include eg the following in the changelog and civilopedia:

Defensive withdrawal chance is always the same as offensive withdrawal chance.
There are three exceptions:
1. Rooted units cannot withdraw.
2. Siege units will never withdraw defensively.
3. You cannot withdraw from a Fireball, Meteor Storm, Assassin, Shadow or Saboteur attack.
(That's all the exceptions I can think of - I don't see why a horse archer couldn't or wouldn't flee from eg a balor :eek: or any other summoned unit coming in their direction)

As long as you read it once, this seems much easier to understand to me for newbies than all those new spells added. :dizzy:


Adding defensive withdrawal chance would also make fast units good at what they were good at in real life: hit-and-run tactics, and thus add a new fun combat strategy to the game. Offensive withdrawal chance doesn't achieve this effect sufficiently. Even if you hit a unit succesfully and have enough movement points left to move a tile away, in the next turn you're probably counterattacked anyway, even by slower units, because they can move double or triple as fast on their home turf. As a consequence the biggest use for units with withdrawal chance is merely to soften up units (with a high chance of dying...) and let them be finished off by a stronger unit. I want my horse archers to perform their true purpose!!!!! :mad: ;)
 
why can't you run from fireballs?

and isn't all their damage first strike damage anyways? don't first strikes happen before withdraws?

i can't see any reason you shouldn't be able to run from summons, and its not like summons are considered weak, they're overpowered if anything
 
Sureshot said:
why can't you run from fireballs?

and isn't all their damage first strike damage anyways? don't first strikes happen before withdraws?

i can't see any reason you shouldn't be able to run from summons, and its not like summons are considered weak, they're overpowered if anything

Fireballs dont have first strike damage. They do combat like every other unit. I made an SDK change so their combat isnt displayed like normal combat (so you dont have to sit there and watch a guy fight a fireball) but in reality its the same process.
 
ah, that seems a bit strange, any chance they could have some special combat method with the new changes you're able to make (like the stoneskin and such).

obviously they shouldn't be normal first strikes (since some units would gain immunity to them that wouldn't be intuitive), but a special one time damage would make sense.
 
Sureshot said:
ah, that seems a bit strange, any chance they could have some special combat method with the new changes you're able to make (like the stoneskin and such).

obviously they shouldn't be normal first strikes (since some units would gain immunity to them that wouldn't be intuitive), but a special one time damage would make sense.

I dont think it would be worth the programming effort and the risk of change because I doubt most players could tell the difference.
 
how about a promotion that you can get over and over again (that removes itself after gotten or perhaps after expended) to provide 1 time bonuses.

like, full heal, good morale (+25% strength for next fight), replenish 1 movement, replenish attack capability, planned attack (100% withdrawl rate on next attack), planned retreat (instant withdrawl next time attacked), instant fortify (automatic full 25% fortify defense bonus without the need for standard 5% build to 25%), hide (1 turn invibility)

basically some nice 1 time abilities for plain units that have gained all the promotions they can get, so that they can still get something and still get that nice feeling of use from getting more xp.
 
basically some nice 1 time abilities for plain units that have gained all the promotions they can get, so that they can still get something and still get that nice feeling of use from getting more xp.

I thought of this kind of thing a while ago, but yes this is exactly the right aplication for it.
 
Here's an idea for a promotion- Don't know what to call it... Defender or bodyguard or something. Basically the unit will take the battle for a weaker unit being targeted by the marksman ability. Of course it would have to be limited to maybe some type of national unit. don't want to make marksman completely useless, but give an option to defend against it.
 
Guardsman promotion is supposed to do that. Though I don't know if it works against marksman or only to protect strog attacking units from getting dogpiled.
 
I think that homeland and shield of faith should be improved, defender is bit underpowered to, say, spiritual or organized, and shield of faith could be stronger since it is T3 (T4? How do you call it?) spell.
 
Back
Top Bottom