• We are currently performing site maintenance, parts of civfanatics are currently offline, but will come back online in the coming days. For more updates please see here.

Single Player bugs and crashes v39 plus (SVN) - After the 20th of July 2019

Ah if you modified them on git not SVN first then I overwrote them sorry. My sync script assumed we didn't change xml or python other than for the versioning stuff.
 
I thought all changes had to be reviewed by another team member Before they could be added in instances like this. Am I reading things wrong?
We only have that "rule" for changes pushed to SVN, and even there how strictly it is followed is left up to the discretion of the dev doing the review and the person who asked them to do it.
Anyone can submit changes directly in to master as it is currently set up, so as to mimic how SVN trunk worked. It is *advised* to do any big changes in a separate branch though, then get a review before the changes go into master.
 
The bug here is that a UNIT_AI_BARBCRIMINAL is spawning directly on a city, and this city is then captured *during* the unit creation.
Somebody want to tell me what is expected here? Should this be allowed to happen? Seems like a mistake that unit spawns in a city and instantly captures it. I think units that spawn in city should not be able to capture the city right? its unit type 800 whatever that is.
 
Somebody want to tell me what is expected here? Should this be allowed to happen? Seems like a mistake that unit spawns in a city and instantly captures it. I think units that spawn in city should not be able to capture the city right? its unit type 800 whatever that is.
Units without the bBlendIntoCity tag set to true should never spawn in a city. Simple as that imo.
bBlendIntoCity makes the unit unable to capture cities like how the exile/thief/rouge etc can move into an enemy city without capturing it.
 
Somebody want to tell me what is expected here? Should this be allowed to happen? Seems like a mistake that unit spawns in a city and instantly captures it. I think units that spawn in city should not be able to capture the city right? its unit type 800 whatever that is.
Barb criminals always spawn inside cities. All criminals should, as a rule, have bBlendIntoCity. Only criminals should be capable of spawning through the barb criminal spawn mechanism. We need to figure out which unit is spawning and make sure it gets the bBlendIntoCity, or if we find for some reason it's some strange exception to the rule that criminals should always have that tag, then we need to hedge the code to make criminals that spawn without that tag immediately be moved outside the city rather than capturing it, though I think the order of events of unit generation might make that highly problematic. I'm surprised this wasn't discovered a very long time ago and have to wonder what could have suddenly been found here.

We find the unit ID #s during the load sequence and looking at the output - I usually just copy the whole thing over to an xml doc or something and then search for the type I'm looking for like UNIT_ and then scroll to find the exact ID enumeration that was loaded as.
 
We find the unit ID #s during the load sequence and looking at the output - I usually just copy the whole thing over to an xml doc or something and then search for the type I'm looking for like UNIT_ and then scroll to find the exact ID enumeration that was loaded as.

No more, I added a .natvis file. Basically it just replaces the default watch view with whatever expression you tell it to evaluate for different types. Hopefully after seeing how I did it anyone can add what they want there for these and other types. I don't know what stuff would be useful so I'll leave it up to you.
Spoiler :

upload_2019-8-31_18-5-37.png

 
Maybe Bug:
I may know what causes this, I zoomed out how far out the camera is when inside the city screen to get the third work ring visible in the mid window, this camera distance may also be used to determine where city sounds are replaced with music on the map.

I can zoom in the camera distance in city screen and increase the city screen fov quite a bit to perhaps move where this music transition happens to a higher zoom without loosing the third ring in the city screen window. I'll check if I'm onto something here.
 
game was working , now it wont even start??? crash . . mini and save in zip
Game is fine all saves I have tried work fine, your save is broken some how. It crashes in the exe after loading, so there isn't much to debug (no call stack it is some memory allocation error). You should go back to an older auto save and see if it fixes the problem.
 
Game is fine all saves I have tried work fine, your save is broken some how. It crashes in the exe after loading, so there isn't much to debug (no call stack it is some memory allocation error). You should go back to an older auto save and see if it fixes the problem.
thx, i do that automatically .. thx.. SO ..
 
So I think I might've done something I wasn't supposed to on Git but I've tried to get my changes in place to fix the war weariness happiness calculation. It was off by an extra division of 100. Not sure how or when that started being a factor. Probably something I did but it was a long long time ago.
 
@ssmage + whoever might know about this.
The bug here is that a UNIT_AI_BARBCRIMINAL is spawning directly on a city, and this city is then captured *during* the unit creation. This appears to be breaking some constraints in how a city life cycle is meant to work that causes the city kill command to throw up loads of asserts and then later in the turn it crashes when trying to update that broken city.
Barb criminals always spawn inside cities. All criminals should, as a rule, have bBlendIntoCity. Only criminals should be capable of spawning through the barb criminal spawn mechanism. We need to figure out which unit is spawning and make sure it gets the bBlendIntoCity, or if we find for some reason it's some strange exception to the rule that criminals should always have that tag, then we need to hedge the code to make criminals that spawn without that tag immediately be moved outside the city rather than capturing it, though I think the order of events of unit generation might make that highly problematic. I'm surprised this wasn't discovered a very long time ago and have to wonder what could have suddenly been found here.

We find the unit ID #s during the load sequence and looking at the output - I usually just copy the whole thing over to an xml doc or something and then search for the type I'm looking for like UNIT_ and then scroll to find the exact ID enumeration that was loaded as.
That sounds like a very rare thing happening from what that sounds like. I'll go find a stack attacking a city and remove it, that should temp fix it. Unless I'm also misunderstanding how this works.
 
That sounds like a very rare thing happening from what that sounds like. I'll go find a stack attacking a city and remove it, that should temp fix it. Unless I'm also misunderstanding how this works.
It still sounds like a bug because:
1. The unit is a Camel Archer which should never be a criminal; and
2. (not a confirmed bug as yet but) We should check that criminals cannot capture cities that have no garrison when the criminal spawns in them, or even when the criminal immediately defeats the only garrison unit. (Unless you want them to be able to)

I can't see any way that removing an attack stack can help, but that might be just me.
 
That sounds like a very rare thing happening from what that sounds like. I'll go find a stack attacking a city and remove it, that should temp fix it. Unless I'm also misunderstanding how this works.
We've determined that the problem is a save corruption that is making a camel archer the resulting unit to spawn from the criminal spawning code. We're not yet certain if we can fix this without it being save breaking but we do have a pretty good idea of what the problem is. I think it's possible to correct without corrupting saves at least but it will certainly be a fix to the save read/write wrapper and a new segment to add to the recalc routine.

The problem is not in actual criminals. It resulted from a rearrangement of the unit list when modularizing and moving units to the core.
 
1. Can units with Armed Guard line of promos please be given the ability to defend (traders and hunters) against criminals.

I suggest Armed Guard I should give them a new subcombat, and that subcombat should be added to the list preferentially targeted by criminals.

I also suggest Law Enforcement should be able to get something similar (Gangbusters?).

2. Shouldn't a Megatower only have one 'Crown'? That's quite an important strategy consideration, I would've thought. Plus if they're identical to levels, why call them crowns?
 
thx, i do that automatically .. thx.. SO ..
Okay I will assume your other saves are fine unless you get back to me then!

That sounds like a very rare thing happening from what that sounds like. I'll go find a stack attacking a city and remove it, that should temp fix it. Unless I'm also misunderstanding how this works.
Its already fixed in SVN, just recalc after loading and from now on it should never happen again, even when we change units.

It still sounds like a bug because:
Yeah definitely it was a bug, a couple of bugs in fact, but fixed now.
 
Back
Top Bottom