Éa III, Sword & Sorcery: Bugs/Crashes thread

On the autosave issue, there is a setting I think in config.ini (or maybe in playerSettings) that is something like "autosave_on_active_player_turn". I can't remember the exact name but something like that. (I don't have access to my modding computer for the next week.)....

Config.ini
; Saves the game after the human player presses 'next turn' but before the game logic advances
PostTurnAutosaves = 1

Result
33p4tie.png
 
Config.ini
; Saves the game after the human player presses 'next turn' but before the game logic advances
PostTurnAutosaves = 1

Result
33p4tie.png

Well then, assuming that the mod-named saves aren't corrupt then we can just add a script to delete the autosaves with vanilla naming. I have no idea what that setting does to fix the autosaves (it certainly isn't calling anything DLL-side, we catch all autosaves there).

Also, Paz should add a notice to the downloads thread telling people to turn that setting on.
 
It's working with Ea III v2e when using keyboard to indicate the tile to attack (the GW attacks first and the unit follows automatically).
However I couldn't even initiate the GW attack with the mouse.
Some more work needed there...

Another point: I'm not sure how building a (weave of Ea) temple is supposed to work? From my game, it's possible to build only on tiles without any resource but not necessarily within my borders.
Yeah, you can build it out to 3-tile radius as long as no one else owns the plot. It will claim the plot when built. What Pantheistic temples do is give yield (+4c4m iirc), reduce relationship decay with that god, give a small instant boost (I can't remember if that is in yet), and act sort of like an arcane tower (Druid can occupy it and gain spell boost - amount of boost depends on releationship level with god).

Well then, assuming that the mod-named saves aren't corrupt then we can just add a script to delete the autosaves with vanilla naming. I have no idea what that setting does to fix the autosaves (it certainly isn't calling anything DLL-side, we catch all autosaves there).

Also, Paz should add a notice to the downloads thread telling people to turn that setting on.
There seems to be dll and non-dll calls to autosave. The dll autosaves only happen with this setting, apparently. IIRC there might be a way to set this from Lua (I know I can change autosave frequency and many other options). But I'll put a note in downloads for now.
 
Fallen Priest bug
Communitas Mapscript
Standard Size
Prince
Marathon
EaIIIv2e
----------------------------------------------------
Up till this point no noticeable errors. The fallen priest appears after I click 'Next Turn', I am able to cast spells on their turn. I don't get control of the unit, but I am able to click on the spell buttons. Also note that I can't actually 'see' the unit, it is in the Fog of War.
----------------------------------------------------
Spoiler :
dpfhc6.png
 

Attachments

Ea III v2e, with barbarian city fix

A "not enough memory Lua" message around turn 28
 

Attachments

A "not enough memory Lua" message around turn 28
Someone else reported that this happened if you gained GP after building a military unit. It doesn't look like that's the case here.

Keep posting these if you see them. It looks random to me now but maybe there's a pattern.
 
i got a few ctd's if i switched the tabs in mod dialogs. but it is not reproducable.
 
I was testing out what may cause (or lead to) the need to hit 'End Turn' 2 times. What I came to realize is that it only seemed to happen when My leader "Queen so-and-so"and only the leader... was idol/healing. If they were building a wonder, taking up residence in the town, or providing a resource the 'End Turn' worked as it should.

Maybe this can help.:health:
 
EaIIIv2e
another Lua message about a nil value

Appears just after loading a savegame file (was not in the initial game). Early in the game (turn 45, I wasn't named yet), I don't think it's the barbarian city bug.

lua.log and savegame files attached.

Edit : By the way, the Ab civilization (elephants themed) is triggered by the "elephant training" tech which is 3rd tier. Shoudn't it be by the previous tier tech (elephant labor) ?
 

Attachments

@Vinnz,

This one identifies a major flaw in mod setup logic. FAY_PLAYER_INDEX is gotten in a way that only works for new games. For loaded games, it is unreliable. This is definitely a source for errors that look like game load corruption.

@ls612, if you are wondering, the value is stored in EaSetupData.db in UserData during game setup and then retrieved during mod init. This db is used to pass info around during game setup and map generation (there are no Lua "super globals" like MapModData at that time). It's a reasonable way to communicate Fay player ID from game setup to AssignStartingPlots.lua. But it's a stupid way to get this player ID in the main mod, since it will always be set from the last new game rather than the specific load, and will be nil if player deleted ModUserData.

Here's the fix. In EaMain/EaDefines.lua, delete lines 77 & 78:
Code:
local EaSetupDB = Modding.OpenUserData("EaSetupData", 1)
FAY_PLAYER_INDEX = EaSetupDB.GetValue("FAY_PLAYER_INDEX")
Substitute these lines in the same place:
Code:
for iPlayer = 0, BARB_PLAYER_INDEX do
	local player = Players[iPlayer]
	if player:GetCivilizationType() == GameInfoTypes.CIVILIZATION_THE_FAY then
		FAY_PLAYER_INDEX = iPlayer
		break
	end	
end
This may clear up a number of the random "corrupt saves" issues.
 
@Vinnz,

This one identifies a major flaw in mod setup logic. FAY_PLAYER_INDEX is gotten in a way that only works for new games. For loaded games, it is unreliable. This is definitely a source for errors that look like game load corruption.

@ls612, if you are wondering, the value is stored in EaSetupData.db in UserData during game setup and then retrieved during mod init. This db is used to pass info around during game setup and map generation (there are no Lua "super globals" like MapModData at that time). It's a reasonable way to communicate Fay player ID from game setup to AssignStartingPlots.lua. But it's a stupid way to get this player ID in the main mod, since it will always be set from the last new game rather than the specific load, and will be nil if player deleted ModUserData.

Here's the fix. In EaMain/EaDefines.lua, delete lines 77 & 78:
Code:
local EaSetupDB = Modding.OpenUserData("EaSetupData", 1)
FAY_PLAYER_INDEX = EaSetupDB.GetValue("FAY_PLAYER_INDEX")
Substitute these lines in the same place:
Code:
for iPlayer = 0, BARB_PLAYER_INDEX do
	local player = Players[iPlayer]
	if player:GetCivilizationType() == GameInfoTypes.CIVILIZATION_THE_FAY then
		FAY_PLAYER_INDEX = iPlayer
		break
	end	
end
This may clear up a number of the random "corrupt saves" issues.

Done. I'll also have (probably this weekend) a DLL fix for barbarian cities, so I'll combine the two fixes in to hotfix f.
 
@all: Hotfix f has been posted. It fixes the barb city error and the FAY_PLAYER_INDEX error. I have also made a config change to the DLL build (the barb city fix changed the DLL at any rate), it may affect performance, so please report if there is a severe performance hit for you. I tested it on my machine and saw minimal difference (5% or so), but if it is bad for others I will revert it. The change simply makes debugging crash dumps easier.
 
Installed the hotfix f.
I can't see any performance differences (my machine is aging, and the game was already slow in earlier versions).

I've had one "not enough memory" Lua popup when I get my name (Mamonas), on turn 34. I don't think it's new, I remember something similar in previous games.

Lua log attached.
 

Attachments

@Bob Morane,

Since this is a CTD (ie., dll is to blame), post the CvMinidump.dmp file. That's in the base Civ 5 directory, C:\Program Files (x86)\Steam\SteamApps\common\Sid Meier's Civilization V.

The Lua.log is only for the loaded game (because these get overwritten when you restart Civ5) so I can't tell what was happening leading up to the original CTD. Can you reload from, say, turn 98 and play to the same CTD? If so, post that Lua.log.


Old one...
Also, it seems like I can build courthouses and those other buildings with similar effect (governor something, available at militarism only) in every city, not just annexed ones. Is that intended?
Courthouse is working properly, it's buildable in any city and gives +1 happiness (the -30% occupation unhappiness is an extra effect). I've fixed Governor's Compound in v3 so it is buildable only in occupied cities.
 
With EaIIIv2f :
an Lua error on turn 131

Message EaSpells.lua:1856: attempt to call method 'IntiUnit' (a nil value)

I guess it's a typo in the method name IntiUnit instead of InitUnit
I tried to modify EaSpells.lua to check. But and I cannot reload my latest savegame (and I wasn't using autosaves).

Anyway, here's the log.
 

Attachments

With EaIIIv2f :
an Lua error on turn 131

Message EaSpells.lua:1856: attempt to call method 'IntiUnit' (a nil value)

I guess it's a typo in the method name IntiUnit instead of InitUnit
I tried to modify EaSpells.lua to check. But and I cannot reload my latest savegame (and I wasn't using autosaves).

Anyway, here's the log.

Yes that is in fact a typo. Hotfix g is coming up.
 
Not sure if this has been reported, but often, when I choose to learn a spell (in this case the early hex spell) game CTD. Will get a log for the next time it happens.
 
Not sure if this has been reported, but often, when I choose to learn a spell (in this case the early hex spell) game CTD. Will get a log for the next time it happens.
Reported already if you repeatedly click to go into this window (but not if you go in once and select spell). So don't do that for now. In v3 Learn Spell will be an action and hopefully this bug will resolve itself with the change.
 
@Bob Morane,
The Lua.log is only for the loaded game (because these get overwritten when you restart Civ5) so I can't tell what was happening leading up to the original CTD. Can you reload from, say, turn 98 and play to the same CTD? If so, post that Lua.log.
Yep, got the CTD again after revering to autosave 98 (and probably not making exactly the same moves).
Here is the log, it was too large to fit on pastebin.
And here is the minidump (after the most recent CTD so same as the Lua log).
The crash occurs after i hit end turn, but as far as i can tell before another civ gets it's turn (or at least before i see the "processing turn" message)
 
Back
Top Bottom