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

OK, I've been doing nothing but game corruption issues for the past week. I rebuilt my TableSaverLoader from ground up. Only actually found one obscure bug but it could have been an issue. One good side effect is that it runs much faster now (shaves 0.5 sec off turn time for me, maybe more if you have a slow computer). More important though is that Lua data is now saved exactly when the dll saves C++ data (I added a GameEvents.GameSave). There was a gap before in some circumstances where things could have been getting out of sync. There is no longer any issue about "good" and "bad" autosaves - they're all good and look like regular Civ5 autosaves now.

So v6 is going to be mostly a stability update. I'm trying to catch as many other bugs as I can before releasing (at least game breaking ones and easy fixes) but I want to get the stability fixes out without too much delay.
 
-For my past three games (and with quite high frequency before that, though I wasn't specifically paying attention) I've met only Sidhe players. I'm not messing with the advanced settings, though I have been picking Sidhe for myself recently.

-I had a Conjurer Wizard (and an Evoker Sorceror) who were both incapable of learning Summon Demon and Summon Abyssal Creatures. It simply didn't show up on the spell list, despite me having the necessary tech. This is weird, because I've definitely done it with thaumaturges in the past.

-My queen somehow duplicated herself.

EDIT: Axagoria's "50% of excess happiness added to research" seems to manifest as a flat 50% research boost from population and cities.
 

Attachments

Perhaps my random number generator is suspect. The game function Map.Rand doesn't work pregame, so I borrowed a PRNG from Wiki. I needed to do this so that I could tilt it differently than 50/50. But I think I will change this anyway (as discussed somewhere else) to assign random slots as: 0, 1, 0, -1, 0, 1, 0, -1, 0, 1,..., where 0=Man, 1=Sidhe, -1 = let game engine pick (i.e., 50:50). That way you always have a mix but race proportions are tilted as I want, and still some randomness. (Note: you can always pick race slots in Advanced Setup. This only applies for those set to "Random Race".)

Too bad for Axagoria. It uses an untested xml tag that looks very much like the "50% of excess happiness added to faith" policy effect. I'll fix or change trait.

All others above suggest Lua data corruption, which I've done a lot to fix in v6.

v6 should be out this weekend btw.
 
Are you guys trying to solve this error that keeps popping up each and every turn I take?

I continue to get this error each and every turn saying this:

"Ea III, Sword and Sorcery (v5)\EaMain\EaAIActions.lua:993:attempt to index field '?' (a nil value)"
 
there you go, this is the lua.log of my previous game. If you guys ever find a way to turn this off.
Sorry, Éa isn't compatible with any other mods yet. I know for sure that it won't work with IGE. There are just too many different systems that have been modded. Someday we will get around to merging a couple (maybe IGE and EUI) but it is a big effort. No time for that yet...

(You might want to wait for v6 before you start up a new game. It's coming soon...)
 
Sorry, Éa isn't compatible with any other mods yet. I know for sure that it won't work with IGE. There are just too many different systems that have been modded. Someday we will get around to merging a couple (maybe IGE and EUI) but it is a big effort. No time for that yet...

(You might want to wait for v6 before you start up a new game. It's coming soon...)

that sucks that IGE somehow interferes with the game when it basically tries not to besides collecting data of mods and allow you to use the resources freely without problems (until the problem is in their mod). I like to use IGE because civilization 5 does not have the in-built editor that like civ 4 had, and I don't want to rely on a clunky trainer to do what I wished for.

IGE so far does nothing but pop up only that error sometimes during the beginning or earlier on after the first series of lua errors of at least 5, but this one will continue to happen every single turn. I wish I can just disable this error so i don't get it but as far as I know... IGE has not crashed the game on me with the mod, I don't see a major problem that could be influenced by the mod, the only issue so far is just that mod repeating and 5 other issues that triggered this issue to repeat every turn.

As far as I know, IGE is at least 90% compatible with the game so far without CTD's, Major disfunctions that disrupt gameplay, or anything serious... just only a few lua codes that does take an issue with it but nothing serious so far in my own experience.
 
Hi, today I started playing this mod using v6.
Deleted every old mods and my caches, placed Éa Media Pack (v 5) and ea_iii_sword_and_sorcery_v_6 in the mods folders and started the game (see screen mods).

So that should be ok or do I have to change something, it´s because I get some weird MESSAGE Bugs see pictures. Any help please.

Edit: after loading my savegame, now I'm not even able to see my tech tree (picture 4). I added my lua.log, maybe it will help(?)
 

Attachments

  • mods.jpg
    mods.jpg
    82 KB · Views: 68
  • 1.jpg
    1.jpg
    32.9 KB · Views: 62
  • 2.jpg
    2.jpg
    316.6 KB · Views: 80
  • 3.jpg
    3.jpg
    90.2 KB · Views: 65
  • 4.jpg
    4.jpg
    113.2 KB · Views: 61
  • Lua.zip
    Lua.zip
    5.1 KB · Views: 48
@Revollt,

#2 has to do with replacing the core Civ5 leader screens. It's an ongoing effort so there are still some graphic problems. Let me know if there are any functional problems.
#3, 4 are just missing text strings. There's a thread about that...

More important, your Lua log reveals a problem with my new Lua data persistence. It doesn't understand "-1.#IND". That's the way Lua represents negative infinity. It's worrisome that we have that value at all, but it's a valid number for Lua. I'll try to get a hotfix out for that soon.
 
It doesn't understand "-1.#IND". That's the way Lua represents negative infinity.
This probably explains the major culture bug I have.

The culture counter shows -1.#J/1(-1.#J) and I get no social policies. BUT, the counter runs smoothly if I settle a city during the very 1st turn. Only if I settle the 1st city at turn 2 or later I get this problem. No other major bugs during the 1st 200 turns..
 
OK, I found a bug that is guaranteed to crash any loaded game. This is what happens when you do a "little change" at the last minute without testing. I'll get hotfix out for that very soon (once fixed, you will be able to load pre-hotfix games just fine).

@iffi, I hadn't thought of that situation. I'll try to fix that in hotfix a also...
 
1) As Sidhe the finished building list shows those buildings that are supposed to be hidden. Like the building 'Sidhe'.

2) The build list shows many buildings giving +0 yield, but at least all the ones I finished give the right yield in the end.

C) Hunters seem to always choose the furthest spot for the camp. Was quite annoying as Cruithni which gets +1 range on top of the +1 range I get from the required tech.

Is there a hidden hotkey for map regeneration at start?! It is annoying to restart the mod from the main menu so many times as Sidhe because of the start location is often gold resource heavy and lacks food.
 
Hotfix a for v6. "Extract Here" inside your MODS folder

  • Fixed error that would have crashed game loads (should be OK to load pre-hotfix save, except see note 1)
  • Fixed problem that might have crashed Tech Tree screen on game load
  • Fixed problem where Cultural Level system didn't work if you settled first city after turn 0.
  • Updated TableSaverLoader so it could handle 1.#INF and -1.#INF without crashing (although these values only occurred due to error above)
  • Turned off debug setting that made hidden buildings visible in city view

Note 1: any pre-hotfix game where you settled after turn 0 is permanently bugged (hotfix won't fix this problem from pre-hotfix save).

Note 2: if you uploaded hotfix a in the first 3 minutes that it was posted, you might not have gotten the last item on the list.
 

Attachments

@Iffi,

#1 fixed in hotfix. I'll look at #2 - it may have to do with some new code added to deal with variable yield buildings (Hunting Lodge, Harbor, etc).

On #C: hunters, fishing boats and whaling boats should always improve closest resource first. It's only random within a ring. It's a bug if you see anything different than that - post a save from the turn before.
 
On #C: hunters, fishing boats and whaling boats should always improve closest resource first. It's only random within a ring. It's a bug if you see anything different than that - post a save from the turn before.
Sadly no save possible anymore, but probably will have from a new one tomorrow.

It happened constantly and for 3 different cities. Always the furthest ring was chosen first (ring 5), then ring 4 and finally ring 1 closest to the city (lots of Hunting resources around in that game).

Feels like a simple +/- typo in the code? Maybe in the Cruithni code if this does not happen normally?

Also, a Fish resource further away than the Oysters was chosen first, but I have always thought that happens because it gives more food?
 
Feels like a simple +/- typo in the code?
Yeah, I looked right after your post because usually this is a simple +/- error. But the code is pretty unambiguously going from ring 1 out:
Code:
	for radius = 1, gg_campRange[iPlayer] do
		for testPlot in PlotRingIterator(plot, radius, sector, false) do
That's in EaUnits.lua / UseUnit[GameInfoTypes.UNIT_HUNTERS] and it is the same for fishing boats and whaling boats. They all search outward starting from ring 1, and breaking when they find an appropriate plot (sector is random, so within each ring the direction starts randomly).

But reality trumps whatever I think my code is doing, so post a save if you see it again.


Jeez, OK. I see the problem. My break statement only breaks out of inner loop. So it would always leave you with the first result within a ring but the last result from the for radius = 1, gg_campRange[iPlayer] do loop. I'll patch this in hotfix.

Here's the manual fix if you don't want to wait for hotfix. In EaMain/EaUnits.lua, add the blue line below:

Code:
	local plotToImprove
	for radius = 1, gg_campRange[iPlayer] do
		for testPlot in PlotRingIterator(plot, radius, sector, false) do
			local iTestPlot = testPlot:GetPlotIndex()
			if gg_remoteImprovePlot[iTestPlot] == "HuntingRes" then
				local iOwner = testPlot:GetOwner()
				if iOwner == -1 then
					testPlot:SetOwner(iPlayer, city:GetID())
					plotToImprove = testPlot
					break
				elseif iOwner == iPlayer and testPlot:GetImprovementType() == -1 then
					plotToImprove = testPlot
					break
				end
				if radius < 4 then	--may steal plot if owner is remote
					local iOwningCity = testPlot:GetCityPurchaseID()
					local iPlotOwningCity = gg_playerCityPlotIndexes[iOwner][iOwningCity] or InitCityPlotIndexGlobals(iOwner, iOwningCity)			
					local ownerDist = GetMemoizedPlotIndexDistance(iTestPlot, iPlotOwningCity)
					if 3 < ownerDist then
						if iOwner == iPlayer then
							testPlot:SetOwner(iPlayer, city:GetID())	--transfer ownership to this city (should have happen elsewhere, but just in case)
						else
							testPlot:SetOwner(iPlayer, city:GetID())
							plotToImprove = testPlot		--steal from remote owner city
							break
						end				
					end
				end
			end
		end
		[COLOR="Blue"][B]if plotToImprove then break end[/B][/COLOR]
	end
You'll find a similar code block in...
UseUnit[GameInfoTypes.UNIT_HUNTERS]
UseUnit[GameInfoTypes.UNIT_FISHING_BOATS]
UseUnit[GameInfoTypes.UNIT_WHALING_BOATS]
...so add that line at same spot in all 3.
 
Is there a hidden hotkey for map regeneration at start?! It is annoying to restart the mod from the main menu so many times as Sidhe because of the start location is often gold resource heavy and lacks food.
What's wrong with the Restart button? I just tested and it seems to work just fine...
 
Hotfix b for v6. "Extract Here" inside your MODS folder (cumulative with hotfix a)

  • Fixed code mistake that had hunters/fishing boats/whaling boats developing the most distant resource first; should be closest now
  • Fixed code mistake that could allow improvement of lake at >3 plot radius (that's only supposed to happen for sea resources)
  • Building helps should no longer indicate 0 yield
  • Fixed specific building help texts for Granary, Timberyard, Hunting Logde, Harbor, Port and Whalery (the last 4 were overhauled in v6, so look at help to see what they do now)
  • Fixed Merchant Navy policy so it isn't giving +15% gold per sea resource from Port; Manual and help text now reflect what it really does
  • Added some code to try to eliminate (or at least identify) a hang that sometimes occurs when you press Begin Your Journey
 

Attachments

1st bug happened when adopting Dagoo. Something went wrong and the Druid was buggy, could not establish a religion and error pop-ups galore. I deleted the fellow and no more error pop-ups. Perhaps the reason was that at the same turn I was first offered the name from popping a second policy from Pantheism but I did not have time to decline it before it was overridden by the Dagoo offer.

2nd bug occured later in the game, unexpectedly I suddenly could build another fishing boat in the capital so without thinking about it I built the boat. And then another the following turn. At that point I notice they did not deploy, and then also the fishing boats from two minor cities did not deploy. See the save and log.
 

Attachments

Back
Top Bottom