Final Fixes Reborn

Hello guys. Version 14.11 is out :)
Check first post of the thread for links and installation process.
And second post for the changelog.
"Only" ~500 remaining bugs \o/

PS: I was busy IRL in the summer but was able to come back to code since october (calendar of code updates)
 
Python exception, screenshot attached. This is with the latest version, just downloaded and installed yesterday.

Also, the maps that are listed as "Disabled" in the AoE Launcher are available to be selected when setting up a game, but if you select one of them (I initially selected the regular "Tectonics" map, not the "Tectonics_316_mst.py" map), the game crashes on startup.

I know an easy solution would probably be to enable those other maps in the AoE launcher, but I thought you would prefer that the Disabled mapscripts not be selectable.
 
Hi,

Congrats on the update. Quick fix for you in CvEventManager;

In onUnitBuilt,
"newUnit = pPlayer.initUnit(iUnitType, caster.getX(), caster.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.DIRECTION_SOUTH)" should be, "newUnit = pPlayer.initUnit(iUnitType, pUnit.getX(), pUnit.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.DIRECTION_SOUTH)".
 
Here's the replacement code I use for Mimics so they can't leash themselves.

Spoiler :
Code:
def postCombatMimic(pCaster, pOpponent):
	gc 				= CyGlobalContext()
	getInfoType		= gc.getInfoTypeForString
	iBronze 		= getInfoType('PROMOTION_BRONZE_WEAPONS')
	iDivine 		= getInfoType('PROMOTION_DIVINE')
	iGreatCommander = getInfoType('PROMOTION_GREAT_COMMANDER')
	iIron 			= getInfoType('PROMOTION_IRON_WEAPONS')
	iMithril	 	= getInfoType('PROMOTION_MITHRIL_WEAPONS')
	iUndead 		= getInfoType('PROMOTION_UNDEAD')
	iLeashAch = getInfoType('PROMOTION_ACHERON_LEASHED')	
	iLeashCommand	= getInfoType('PROMOTION_INFLUENCE')
	iLeashMana = getInfoType('PROMOTION_MANA_GUARDIAN')
	iLeashMin1 = getInfoType('PROMOTION_MINOTAUR_LEASH1')
	iLeashMin2 = getInfoType('PROMOTION_MINOTAUR_LEASH2')
	iLeashMin3 = getInfoType('PROMOTION_MINOTAUR_LEASH3')
	iLeashMin4	 = getInfoType('PROMOTION_MINOTAUR_LEASH4')
	iLeashPristin = getInfoType('PROMOTION_PRISTIN_LEASH')
	iLeash0	 = getInfoType('PROMOTION_LEASH_0')	
	iLeash1	 = getInfoType('PROMOTION_LEASH_1')	
	iLeashLich = getInfoType('PROMOTION_LICH_DURATION')
	listProms = []
	iCount = 0
	for iProm in range(gc.getNumPromotionInfos()):
		if pCaster.isHasPromotion(iProm):
			iCount += 1
		else:
			if (pOpponent.isHasPromotion(iProm)):
				if gc.getPromotionInfo(iProm).isEquipment() == False:
					if (iProm != iUndead and iProm != iDivine and iProm != iBronze and iProm != iIron and iProm != iMithril and iProm != iGreatCommander and iProm != iLeashAch and iProm != iLeashCommand and iProm != iLeashMana and iProm != iLeashMin1 and iProm != iLeashMin2 and iProm != iLeashMin3 and iProm != iLeashMin4 and iProm != iLeashPristin and iProm != iLeash0 and iProm != iLeash1 and iProm != iLeashLich):
						if gc.getPromotionInfo(iProm).isRace() == False:
							if gc.getPromotionInfo(iProm).isEffectProm() == False:
								listProms.append(iProm)
	if len(listProms) > 0:
		iCount += 1
		iRnd = CyGame().getSorenRandNum(len(listProms), "Mimic")
		pCaster.setHasPromotion(listProms[iRnd], True)
		CyInterface().addMessage(pCaster.getOwner(),True,25,CyTranslator().getText("TXT_KEY_MESSAGE_PROMOTION_STOLEN", ()),'',1,gc.getPromotionInfo(listProms[iRnd]).getButton(),ColorTypes(8),pCaster.getX(),pCaster.getY(),True,True)
	if iCount >= 20:
		pPlayer = gc.getPlayer(pCaster.getOwner())
		if pPlayer.isHuman():
			t = "TROPHY_FEAT_MIMIC_20"
			if not CyGame().isHasTrophy(t):
				CyGame().changeTrophyValue(t, 1)

I'm thinking about adding promotions they can't actually get - like Fellowship of Leaves - and temporary buffs like Haste and Blur to the list.

----------------------

I don't know if this is a bug you're interested in, but for the Keepers module, their immortality (and presumably other instances of immortality using similar conditions) is really wonky. If they have, for instance, three shards of what's-her-face and die, they'll still have the three shards and all attendant benefits, but they'll ALSO receive a brand-new one shard promotion which forces them to start collection all over.

Also, Mutation will reroll, keeping existing mutations and adding new ones as if they'd just gotten the promotion - this can continue infinitely.

The temporary immortality some units can get (lair event, Losha Valas) does not seem to suffer this problem. I haven't tried mutating an Immortal yet.

----------------------

Mazatl Wyverns have no tech requirements, meaning if you turn off building requirements they will start spawning Wyverns at the start of the game. Wyverns are strength 12, speed 3 flying dragons with breath weapons. You can imagine how that works out. Moving them to Commune with Nature or something will probably fix it.

----------------------

Lots of textkey errors. Leaders have no dialogue, just AI_DIPLO_PEACE and such, the Blacksmith trait seems to have become TXT_KEY_whatever, probably other stuff.

----------------------

Become-a-goblin event still says you'll gain the Orcish race.

----------------------

Healers still have no names and no text. Also, a lot of the Great Person text is...really bad.
 
I'll get home on thursday or later -> I can't change things right now.

@Nor'easter: thanks. Problems added to the spreadsheet.
I think I've found the cause of the maps problem. Could you test the following?
Open Ashes of Erebus.ini and change
Code:
; Allow public maps to be used with this mod
AllowPublicMaps = [COLOR="Red"][B]0[/B][/COLOR] (instead of 1)


@Lplate: thanks. I'll paste it for next update.
@Viatos:
1) Mimics. I had already noted the problem. But as the balseraph RP revolves around chaos, and the pedia for mimic states
they also have subtle mind magic. Not entirely under their control, this grants them insight into their subjects that translates into fantastic combat abilities
I'm not willing to block all unwanted promotions automatically.
I'm thinking of a possibility to remove unwanted promotions, at the risk of losing a positive one too.
Hard way: give a possibility to "forget a random promotion" (getrandom value. If above threshold, forget random good promotion, else, forget random bad promotion)
Soft way:show list of promotions in popup. Choose the one to remove, Percentage risk to forget another one on top of that.
What do you think?

2) Keepers module: I fear I cannot afford the time to look at this for the next months (unless I'm directly given a solution)
Who's the author of this module?

3) Mazatl Wyverns: never played without prereq buildings, but your idea seems good.
I'm thinking tech priesthood, since it's the tech needed for the guardians.

4) Textkey errors: The trait blacksmith comes from the jotnar module -> probably see with Lplate
I didn't find any visible problem with AI_DIPLO in the code this morning, and phoned a friend who played a game yesterday. He didn't have this bug.
Can you give me a precise tag that appears (or screenshot)?

5) Goblin event: updated the text on laptop. Will paste and upload when at home

6) Healer names: Unfortunately, I'm merely a probabilist/coder, not a writer.
What I did:
- I removed all engineer quotes from healers.
- I created a few names and quotes for the first 4 healers, based on players advice.
If you find more names/quotes or have a better text for any of the existing great people, I'll happily read and add them.
 
6) Healer names: Unfortunately, I'm merely a probabilist/coder, not a writer.
What I did:
- I removed all engineer quotes from healers.
- I created a few names and quotes for the first 4 healers, based on players advice.
If you find more names/quotes or have a better text for any of the existing great people, I'll happily read and add them.

I think those of us playing the mod need to remember that the Healers were unfinished when RifE stopped developing. As you note, they were using quotes from the Great Engineers and didn't have names of their own (Healer 1, Healer 2, etc.). So what you did in removing the engineer quotes from the healers was a good first step.

I don't have any problem with the quotes for the existing great people, so I wouldn't focus on changing any of those, it seems low priority. Fleshing out the Healers doesn't seem to be a high priority, either, but might be good to do so to get rid of that as an issue. If I can think of names or quotes, I'll suggest them.
 
1) Mimics. I had already noted the problem. But as the balseraph RP revolves around chaos, and the pedia for mimic states

I'm not willing to block all unwanted promotions automatically.
I'm thinking of a possibility to remove unwanted promotions, at the risk of losing a positive one too.
Hard way: give a possibility to "forget a random promotion" (getrandom value. If above threshold, forget random good promotion, else, forget random bad promotion)
Soft way:show list of promotions in popup. Choose the one to remove, Percentage risk to forget another one on top of that.
What do you think?

I think that overcomplicates what is at the heart a mechanical issue - mimics were coded long before some promotions, which are less promotions than they are placeholders for effects, existed, and others just never came up in early testing. Mimics can't acquire Bronze Weapons or Divine for exactly the same reason that they SHOULDN'T acquire leashes or lich skeleton duration: those promotions aren't qualities that can be copied.

Leashes aren't a "detrimental" promotion, for example. They're a lair guardian mechanic. It's not that Bandit Vigils are inherently less able to walk than spawned bandits, it's that they're choosing to guard their location and that's represented mechanically by a leash. Ditto, the quality of "dies in two turns" isn't really a quality, it's just how the game keeps liches from overrunning the world.

Same goes for Fellowship of Leaves. Mimics can't HAVE that promotion (unless they're Fellowship of Leaves already, which is moot) so them copying it is pointless, it's a bugged interaction. Same with stuff like Obscured Vision.

Nothing to do with roleplaying or thematics, these are just cases where a simple script (get promotion, give promotion) runs into problems with promotions that don't follow normative rules. Bugs, not RP.

2) Shoggi, I think, is the original author. I'll take a look at their resurrection script later, it's lazy of me to ask you anyway. :p

3) 12 strength, flying, and breath weapons? I'd stick them up with Commune with Nature, personally, but at least SOME kind of Tier 4 tech. Having more than one of them is better than phalanxes, and the Mazatl are only hurting for interesting mechanics - not POWER.

4) Hummm. It's probably my fault then, something I changed and forgot about and didn't update properly. I'll try reinstalling.

Ronkhar said:
6) Healer names: Unfortunately, I'm merely a probabilist/coder, not a writer.
What I did:
- I removed all engineer quotes from healers.
- I created a few names and quotes for the first 4 healers, based on players advice.
If you find more names/quotes or have a better text for any of the existing great people, I'll happily read and add them.

Names and quotes: (because I am too lazy to go get a picture list, most of these will be neutral-ish gender)

Amello Raun

"Soak the bandages in this, apply twice daily. It'll heal everything, save regret, which is beyond my power. For the moment, at least."

Lune of the White Knife

"Yes, it hurts. Scream if you have to, curse and rage and hate me - you have as long as you like to do so, because thanks to me, you're going to LIVE."

The Gift of Sucellus

"Hush, sister. It doesn't matter who you were, or are, or going to be. I don't care what paths you tread, save one - the path to recovery. Now, be still."

Nala Plaguestalker

"Where the first Horseman treads, pestilence follows. But it does not depart with him. Lucky for you, neither do I."

Riach Evinan

"The needs of the many outweigh the needs of the few - did you know that? Unfortunately, your infection is...unique. I'll need to study the symptoms.

I'm so sorry."

Mugati

"Get me hot compresses, six clean needles, a gallon of wine and access to an apothecary, and I will give you long life free of pain. Get me two hours alone in the tomb of the God of Life, and I will give you immortality."

Zil, Flower of Mekara

Iram sent forth his student as an assassin in dire circumstance, and until terrible duress. But Zil had learned too much to betray him - even at his request.

-From "A Flower Blooms in Osterek", a biography
 
4) Textkey errors: The trait blacksmith comes from the jotnar module -> probably see with Lplate

The Blacksmith trait is in the Jotnar module. It doesn't feature in my JotnarL module.

I like the suggested healer quotes.
 
Oh, that's why it was acting up. I forgot I ported the Jotnar module from Derf's mod; something in the newest version of Ashes broke it. I'll see about fixing it and the Keeper script. Maybe if I just copypaste the Immortal stuff it'll work.
 
Hi,

Another Mekara bug for you.
in onUnitPillage in CvEventManager, iRace is not defined before

if iRace != -1:


iRace = pUnit.getRace() needs to be included before this.
 
So, frank discussion about pegasi.

Pegasi are the worst. They have a 100% withdrawal chance, a movespeed of 4, provide no blood, provide no zoo, cannot be ridden except by the Austrin (who are getting a HUGE boost from Subdue Animal now, if they can catch the godsdamned things), and when someone decides it's time to send all the animals into a berserker frenzy every single one of them becomes a city-killer with their ability to blitz-attack three to five times depending on how much Mobility they've had time to purchase. Any (successful) attack throws them outside your civ borders so it's difficult to one-two them.

This is ridiculous. I've gutted them down to 25% withdrawal, 3 movespeed, and griffon blood (renamed "Skyborn" since there's a bunch of non-griffons who have it already) so there's some incentive to clear these things out before they go psychotic and some valid method of doing so without using summons.
 
Dwarven mines produce fort commanders, currently affecting Khazad and the ever-popular Runes of Kilmorph religion, as well as (with modules) Luchuirp and Myu, potentially.

The issue is that you never want them to do this.

One, fort commanders are expensive. For real.

Two, mine placement - ideally four spaced around your city in a windmill pattern - is always bad for defense, which you want concentrated in your city and/or highly mobile, not concentrated around the edges like that. That placement ensures that fort commanders are vulnerable to mages or archers and can't necessarily attack a stack heading for your city.

Three, if they kill the commander, they can claim the fort. This is really, really bad when they can claim it so close to the city, giving them a staging ground to heal and cast things they can't cast in your territory. Having the commander, for THEM, is a great deal.

Normally you delete the commander to avoid the upkeep cost, but the forts are still claimable and the computer - most importantly the Khazad, who do not understand the correlation and whose Vaults care a lot - will eat the upkeep cost and suffer for it. It's a cool idea but it doesn't work in practice.

Proposal: Remove fort mechanic. Add irreligious civ-nonspecific mechanic based on the code for FoL Ancient Forests - trespassers on a dwarven mine have a 25% chance of spawning a pair of Strength 5 melee Miners' Militia with Dwarven, Homeland and Enraged, who head back to their mines (die) in two turns. This makes them useful landmines instead of potential disasters.
 
Units shouldn't be able to withdraw twice in one turn. Attack the Pegasi twice and they should be dealt with.
 
The problem is attacking a flying four-move devil horse twice required paired hunters operating in the same area, which is a specific strategy you need to adopt just for pegasi. When it starts civ-crashing, it charges in from outside vision range, kills units, and the FIRST attack sends it back beyond your cultural borders however far those may be - you need a highly mobile counter already in place to followup.

The other problem is why is there a four-move 100% withdrawal animal that only benefits the Austrin if subdued, and that to an unreasonable degree? Why does this thing EXIST?
 
Top Bottom