Ashes of Erebus (RifE's Follow-up) Download and Bug Reports

AI players often hire mercenary pirates. If their capitals are located inland, they cannot do anything with the ships. The hired naval units should automatically be placed in coast tiles(or coastal cities), I think.
 
Last edited:
Capture animal and boarding parties don't seem to work for the Lanun, at least not for ships with undeclared nationality. I have not checked it with Lanun ships with declared nationality, but it works works for other civs, both for the player and the AI. I suppose it is fair, since the Lanun are already rather powerful, and the boarding crew is a good addition for attacks.
 
Capture animal and boarding parties don't seem to work for the Lanun, at least not for ships with undeclared nationality. I have not checked it with Lanun ships with declared nationality, but it works works for other civs, both for the player and the AI. I suppose it is fair, since the Lanun are already rather powerful, and the boarding crew is a good addition for attacks.
I seem to recall this being an issue/feature having more to do with hidden nationality then the lanun specifically. If memory serves hidden nationality units don't generate captures because it would defeat the false flag premise if captured units reverted to the proper owner, and it was a balance issue capturing certain units and have them retain the hidden status. Mostly workers/slaves.
 
I'm getting a bug where unit textures aren't always loading. Like, when I load up a game as the D'teshi, the units all have skins that look like they're from vanilla instead of the undead ones. Also, mammoths have elephant rider skins and pegasi have chariot skins. However, when I select my units, they change to a skin that I expect, and stay that way for a little bit after I deselct them. I haven't had this problem with previous versions of FfH, anyone know what's going on and how I can fix it?
 
I'm getting a bug where unit textures aren't always loading. Like, when I load up a game as the D'teshi, the units all have skins that look like they're from vanilla instead of the undead ones. Also, mammoths have elephant rider skins and pegasi have chariot skins. However, when I select my units, they change to a skin that I expect, and stay that way for a little bit after I deselct them. I haven't had this problem with previous versions of FfH, anyone know what's going on and how I can fix it?

Look into the option menu, and deactivate the Frozen Animation option.
 
I am certain that somebody has noted that already, but there is a general bug with improvements that need a certain distance from one another (forts, dwarven mines, coves, etc.)

Once you start building one of those buildings, the game registers it as if you have already finished them, even if you did not. This means that you cannot build anything adjacent to them. This is particularly nasty if you can no longer access the tile to build something else on it (which removes the old unfinished 'improvement' and the bug). For example, I had a volcano eruption while building a dwarven mine, and now I cannot build any mines around the volcano. I don't think there is any way to remove the mine except in world-builder, which I don't want to enter to avoid spoilers.
 
Last edited:
Playing a game with the "Saila, the Everchanging" module active and noticed that multiple Sailas are available for hire in the Mercenary pool. Saila is a World Unit, so that should be blocked from happening.
 
Hey Imperator; did you see the files I posted on the "Final Fixes" thread? They include a Python error, which I don't understand but you might. Note that I shared a crashing Lanun game, which worked for many turns. I also have a Doviello game that crashes very early on, if you'd like to see that one, too.
 
Getting a bunch of random and seemingly non-repeatable crashes. Dump files attached in a zip file.
 

Attachments

  • Civ4BeyondSword.exe.16144.zip
    6.6 MB · Views: 210
It looks like AoELauncher.exe doesn't work if your Steam installation is different from your Beyond the Sword installation. Steam error: "Application load error 5:0000065434". I didn't see any mention of this, so I wanted to write out a guide for anybody else who comes across this issue.

Setting your Civ 4 .ini to launch the mod directly also bypasses this problem, but I get substantially more crashes that way than I do by launching via AoELauncher.exe.

Problem: Steam error: "Application load error 5:0000065434" when pressing "Launch AoE" through AoELauncher.exe

Background: Beyond the Sword is trying to locate Steam.exe in whatever drive you installed Beyond the Sword to (in my example below, H: ). It goes down the list to look at the following locations:
  • H:\SteamLibrary\steamapps\common\Sid Meier's Civilization IV Beyond the Sword\Beyond the Sword\steam.exe
  • H:\SteamLibrary\steamapps\common\Sid Meier's Civilization IV Beyond the Sword\steam.exe
  • H:\SteamLibrary\steamapps\common\steam.exe
  • H:\SteamLibrary\steamapps\steam.exe
  • H:\SteamLibrary\steam.exe
  • H:\steam.exe
If it fails to find steam.exe in any of these locations, you get Steam error: "Application load error 5:0000065434"

Solution: You need to make a make a "symbolic link" to steam.exe, which is basically a more direct version of a shortcut. This tricks the system into thinking that Steam exists in that location. Shortcuts have a ".lnk" extension, which is why a generic shortcut won't work.

Make note of the following variables:
The drive letter of your Beyond the Sword installation
The path that you want to put your symbolic link in (using one of the locations in the "background" section above, but with your relevant drive letter)
The location of your steam.exe file

Find command prompt, right click, and run as administrator. Then type the following (pressing enter after each of my line breaks), editing in your variables based on the color-coding above:

H:

cd "H:\SteamLibrary\steamapps\common\Sid Meier's Civilization IV Beyond the Sword"

mklink Steam.exe "C:\Program Files (x86)\Steam\Steam.exe"
 
Last edited:
Just a minor visual bug... when using the Austrin Fort Commander Air Strike button, it looks like somebody forgot to close a bracket after "</color"
 

Attachments

  • Attack Falcon Visual Bug.png
    Attack Falcon Visual Bug.png
    4.9 MB · Views: 211
More crash dump files from several failed attempts to restart an autosaved game and one (I think) failed attempt to start a new game. I hope these are helpful. Someone suggested that I could instead upload my autosave, but if the autosave will just crash without starting and without any python exception popups I don't know what you can learn from that, if anything. So I'm uploading the crash dump files in the hope that there's something useful there, even you haven't said anything either way. I know you don't want the debug logs, so if these are useless please say so and I'll stop uploading them. Thanks.
 

Attachments

  • Civ4BeyondSword.exe.3632.zip
    6.6 MB · Views: 166
Playing as illians on SVN version, getting a CTD with no errors, or log after ending turn. Cache cleared. Backed up several turns and tried different things. Save attached if anyone can find a way past i would appreciate it.
 

Attachments

  • end turn.CivBeyondSwordSave
    760.3 KB · Views: 175
I am certain that somebody has noted that already, but there is a general bug with improvements that need a certain distance from one another (forts, dwarven mines, coves, etc.)

Once you start building one of those buildings, the game registers it as if you have already finished them, even if you did not. This means that you cannot build anything adjacent to them. This is particularly nasty if you can no longer access the tile to build something else on it (which removes the old unfinished 'improvement' and the bug). For example, I had a volcano eruption while building a dwarven mine, and now I cannot build any mines around the volcano. I don't think there is any way to remove the mine except in world-builder, which I don't want to enter to avoid spoilers.
Known, i'll fix it when i have some time. (it may not be an easy fix)

Playing a game with the "Saila, the Everchanging" module active and noticed that multiple Sailas are available for hire in the Mercenary pool. Saila is a World Unit, so that should be blocked from happening.
Thanks for the report, fixed next version.


It looks like AoELauncher.exe doesn't work if your Steam installation is different from your Beyond the Sword installation. Steam error: "Application load error 5:0000065434". I didn't see any mention of this, so I wanted to write out a guide for anybody else who comes across this issue.

Setting your Civ 4 .ini to launch the mod directly also bypasses this problem, but I get substantially more crashes that way than I do by launching via AoELauncher.exe.

Problem: Steam error: "Application load error 5:0000065434" when pressing "Launch AoE" through AoELauncher.exe

Background: Beyond the Sword is trying to locate Steam.exe in whatever drive you installed Beyond the Sword to (in my example below, H: ). It goes down the list to look at the following locations:
  • H:\SteamLibrary\steamapps\common\Sid Meier's Civilization IV Beyond the Sword\Beyond the Sword\steam.exe
  • H:\SteamLibrary\steamapps\common\Sid Meier's Civilization IV Beyond the Sword\steam.exe
  • H:\SteamLibrary\steamapps\common\steam.exe
  • H:\SteamLibrary\steamapps\steam.exe
  • H:\SteamLibrary\steam.exe
  • H:\steam.exe
If it fails to find steam.exe in any of these locations, you get Steam error: "Application load error 5:0000065434"

Solution: You need to make a make a "symbolic link" to steam.exe, which is basically a more direct version of a shortcut. This tricks the system into thinking that Steam exists in that location. Shortcuts have a ".lnk" extension, which is why a generic shortcut won't work.

Make note of the following variables:
The drive letter of your Beyond the Sword installation
The path that you want to put your symbolic link in (using one of the locations in the "background" section above, but with your relevant drive letter)
The location of your steam.exe file

Find command prompt, right click, and run as administrator. Then type the following (pressing enter after each of my line breaks), editing in your variables based on the color-coding above:

H:

cd "H:\SteamLibrary\steamapps\common\Sid Meier's Civilization IV Beyond the Sword"

mklink Steam.exe "C:\Program Files (x86)\Steam\Steam.exe"
Thanks for that, i'll add it to the readme.


Just a minor visual bug... when using the Austrin Fort Commander Air Strike button, it looks like somebody forgot to close a bracket after "</color"
Thanks, fixed next version.


Playing as illians on SVN version, getting a CTD with no errors, or log after ending turn. Cache cleared. Backed up several turns and tried different things. Save attached if anyone can find a way past i would appreciate it.
I'll check the save, thanks
 
Whenever Hafgan the Purger from The Clan takes over a city, the game crashes.

Mod version: Whatever the latest revision is (302 I think?)
Modules: The default ones, so Bannor Chain of Command, Dural, Black Duke, Frozen, GreatestPeople, Hamstalfar, MoreEvents, PPQ_Flavor
Mod folder name: Ashes of Erebus (H:\SteamLibrary\steamapps\common\Sid Meier's Civilization IV Beyond the Sword\Beyond the Sword\Mods\Ashes of Erebus is the full path if that matters)
How to cause the crash: I've included two saves: one with a player Hafgan (take over the city), one as an AI Hafgan (press end turn). In both circumstances, when Hafgan captures a city, there is a CTD.

I've narrowed down the problem to being in a portion of CvEventManager.py, but I don't know Python, so I haven't been able to fix it. It's the pCity.kill() part at the bottom that it seems to hang at. I tried pPlayer.raze(pCity), but that has the same result.

Code:
    def onCityAcquired(self, argsList): # triggered whenever a city is captured (before the player chooses to keep or raze)
        'City Acquired'
        iPreviousOwner,iNewOwner,pCity,bConquest,bTrade = argsList
        gc             = CyGlobalContext()
        cf            = self.cf
        game         = CyGame()
        map         = CyMap()
        getInfoType            = gc.getInfoTypeForString
        getPlayer     = gc.getPlayer
#Scions Start - extra reduction of Scions-acquired cities.  Use of a decimal seems to break it.
        pPlayer     = getPlayer(iNewOwner)
        hasTrait     = pPlayer.hasTrait
        pPlot         = pCity.plot()
        setBuilding = pCity.setNumRealBuilding
        changePop    = pCity.changePopulation
        iCiv        = pPlayer.getCivilizationType()
        iCityOwner     = pCity.getOwner()
        pCityOwner    = getPlayer(iCityOwner)
        Civ            = self.Civilizations
        Trait         = self.Traits
        Leader         = self.Leaders
        Civic         = self.Civics
        Rel            = self.Religions
        Building     = self.Buildings
        Unit        = self.Units
        iPop        = pCity.getPopulation()
        pPrevious    = getPlayer(iPreviousOwner)
        iNoAI         = UnitAITypes.NO_UNITAI
        iSouth        = DirectionTypes.DIRECTION_SOUTH
        getPlot = map.plot
 
        if bConquest:
            if hasTrait(getInfoType('TRAIT_SCORCHED_EARTH')):
                pCity.kill()

I had commented out the other aspect of the Scorched trait (that provides XP) to verify that it's the above code that's causing problems.
 

Attachments

  • Player Hafgar Crash.CivBeyondSwordSave
    31.5 KB · Views: 177
  • AI Hafgar Crash.CivBeyondSwordSave
    33.1 KB · Views: 167
Last edited:
So I'm super stubborn and have been at Hafgan for hours. I removed the Scorched Earth entry above, but add it to "onCityAcquiredAndKept" as:
Code:
        "if pPlayer.hasTrait(gc.getInfoTypeForString('TRAIT_SCORCHED_EARTH')):
                        pPlayer.raze(pCity)"
This lets me get around the problem. It's a little clunky because your options are essentially Install Governer -> Raze, or just straight Raze. Also, I'm assuming that this would also raze cities acquired by trade or culture, whereas I don't believe the other way would; but I'm going to roll with this for now because it's better than CTDs.

Also, pCity.kill() is not what we want here. We need pPlayer.raze(pCity) in order to proc the XP gain that the Scorched Earth trait provides.
 
ok, after a quick check, i saw the obvious issue, the method doesn't end after the city is deleted, causing crash in the follow-up. (also, good catch on the pPlayer.raze(pCity) part).


Edit : ok, decided to get rid of the python part and move that to the dll, that'll be cleaner.
 
Last edited:
sorry, i missed your message from yesterday, i'd have answered earlier. Can you tell me if you got a python error before the crash ?

Nope, no problem at all - gave me the opportunity to learn a little about how the Python and XML works. I had only just posted, anyway.

Thanks for the fix!
 
Top Bottom