Things we must solve before V29

I'll get up early tomorrow and try to look into the movement issue before we go out. Can someone else look into the ram bombard thing ?
 
Yeah, as I said, I'm looking into something along those lines already so I might find the problem there and if I don't find it as I go there I'll look deeper into the code a bit.

Thanks for the help on the movement issue!

Is there any chance of this being done in an hour or two? Or should I put back the release to tomorrow night (so it will be available Sunday morning).
It would actually be preferable if I could get the whole weekend for debugging. I doubt I could complete ALL debug projects before then (though I'll post a list of them here in a moment and maybe some teamwork could knock them out faster...). Then again, as it is, we publish releases with known 'less than critical' bugs all the time so if it's that desperate for you on your timing, I suppose it is what it is. As for me, I'll just try to get as much done on that between now and Sunday night. Review the bug list I post and make a determination for yourself if any of it is critical enough to wait on fixes for.
 
Ok, as stated, I'm returning here to post the list of bugs so far as I'm aware of them that have yet to be fixed. Perhaps a few have already been addressed so if you've touched on it, let me know:

  1. Trade Bug: I've got a savegame here that last I checked, there were no trade routes showing in a city that should've had trade routes. It was reported as a bug in the Trade Route tags in Traits but when I took a look, it appeared far more sweeping than that. Somehow, there were NO trades displaying! Either it was just a display problem or it was an actual problem with finding no valid trade routes which I could not see cause for in the game. I dropped the hunt for the problem here in some frustration and meant to get back to it before v29 release.

    At this time, is anyone aware of this bug being a problem in any of their games? Do all your cities in your games show proper trade routes being displayed? Or do any seem to not show what they should there? I'll go back and check the bug on the savegame I've got and update here to let you guys know what I find out. But when I was trying to diagnose it, I asked the community and Koshling found my diagnosis must've been inaccurate. Fair'nuff... but I haven't found a correct one yet.


    Resolved! :D


    [*]Local Culture bug: In the late stages of the game, even Local City culture accumulation totals are needing a conversion to at least unsigned int and possibly even more such as unsigned long long. We're seeing overloads there and I don't know if anyone has sought to address that yet. Don't think I have a savegame to check against that but I might... Koshling, what do you think of this issue? Is there something else that should be done before taking this step in this dept do you think?

    We'll address this after release.


    [*]OOS on trait selection popup - I'm fairly aware of WHAT the problem is here (I think.) There's added programming that should've been done on the widget there that would report to any other computers how to get back in sync after this async selection. Was not sure if it'd be necessary but reports from playtesters show otherwise. Unfortunately, the example I found of this part of the widget code was extraordinarily complex and is something I got lost reading rather quickly. So it might take a serious effort to resolve this one - probably more than a weekend's worth. We're still indicating the Developing Leader option as in Beta so it is not entirely mission critical to this release but is certainly extraordinarily high priority for me.

    Again, will probably address after release. Thanks for the guidance though Andy!


    [*]I've got a note on a possible recalculation bug on Experience Modifiers which is something I'll have to go through the bug reports on this cycle to figure out more about... Still need to research further.

    Unable to find more on this subject so this can be left as a half-understood old bug report - may or may not be a problem now.


    [*]Apparently Non-state Religion unhappiness is lingering after civic changes... (Looking into this one and everything seems pretty straight... except that I wonder if this alone:
    Code:
    AI_setAssignWorkDirty(true);
    is enough to reset the city display on happiness/unhappiness. Is there another refresh command that would be useful for that?)


    Koshling states there's no bug here and I concur.


    [*]There's a nasty multi-player bug that keeps multi-player games from being able to reload after saving and exiting the game. Got a save on this one and will be analyzing between both computers.

    This one seems to be either resolved or system based.


    [*]The Civic Display bug Hydro is rather familiar with was something I was going to take a look at.

    Oddly, when running under a debugger that could've pointed out the problem, I'm finding its either been resolved by someone else or is simply not giving us trouble that is always replicable. Unfortunately, without being able to replicate with the debugger its hard to find what could be wrong. Perhaps something else incidentally fixed it such as the type mismatch issue I pointed out to Koshling?


    [*]Bombard bug - the wrong tag was used on a lot of units to indicate their bombardment ability - used the tag that was supposed to be for air units rather than land units. I said I'd go through and convert these though if others have some time to toss in some help there I can explain what needs to be done. And now this section also includes a check against the xml on the Ram, and/or some code debugging to figure out why the Bomb City Defenses mission isn't working on units at all...

    Complete though could not verify any problem existing with Rams or any other Bombard Defenses action capabilities. Awaiting Hydro's savegame if it shows an issue there - nope, he could not verify the existence of a current issue here either. So apparently we are cleared on this issue.


    [*]Not really an item on my list but where are we at with previous OOS debugs? Have any been addressed? Do we need new reports there to make further progress? AIAndy - I know you've had a lot going on since returning so I haven't asked about this. I have my own known and somewhat understood OOS to address anyhow so it didn't seem right to pester you on a matter I know is kinda unpleasant work in general, even if it is critical for something around a quarter of the players we WOULD have playing C2C but don't because of the multi-play problems. I do try not to be a pest ;) (but its hard when you're so damned talented you have so many keys to so many problems that nobody else has! lol)

    Hopefully an important priority in v30 cycle. My wife is getting a bit touchy about me spending so much time on things when we can't even play together! lol

  2. Negative traits are being lost on recalcs. That's really something in my court there!

    This should be resolved at this time.


    [*]There was the problem that having Fixed Borders on different civic categories meant that if you had FB in two and categories and changed one of the categories you lost FB altogether. This is really easily fixed in the coding and was something I wanted to squeeze in here but may not be as critical as some of the above.

    Resolved.


    [*]Check out Gatehouse defensive bug - rather: figure out how the defense total doesn't match up... (I suppose this isn't mission critical yet. Koshling... you stated you were going to take a look at the section in processBuilding that the defense modifier is sectioned off into. I took note that you had looked at that at some point... did you come to any conclusions as to what MAY be wrong there?)

    We'll look more at this after the release.


    [*]Check out tundra attack issue (I have a atl-atl with the 3 prom for bonus in icy tile, the 3 prom for hill tile and the 3 prom for bonus in forest tile.
    If I try to attack an unit on an forest/hill/tundra, I dont have the bonus for the Tundra Attack (20%))


    Koshling states this is resolved. I'm still a bit suspicious that the bug report may have come in before the tweak that created the bug he claimed would be responsible for this but I'll leave it be for now.


    [*]Possibly related: Invisible units seem to be losing all Anti-Combat Class combat modifiers either after using them once, OR when the other unit cannot detect them. (Very important to resolve I think - this and the previous one I'd like to look into next (tomorrow))

    Yep, suspicions confirmed. There are a number of combat modifiers that have no effect when a unit is attacked by an unseen unit (for either unit!)

    Interestingly enough, the basic structure for this could enable me to make a neat combat tag for Sneak Attacks... hmm...

    Anyhow, I don't agree that this is a good gameplay mechanism as it is. It was there before I started work on the combat mod and I recalled noting it with some fuzzy understanding of what it was for. It may well stem from Vanilla roots!

    Once the bug was reported I figured I could go back and find this to be the culprit - and ... yeah. So I'm disabling it and I doubt anyone would disagree with this choice. Aside from Combat Class modifiers, other combat modifiers that would be ignored include unitclass modifiers, anti-animal modifiers, and domain based combat modifiers. To me this is all so... arbitrary and plain bad design.


    [*]I'm pretty sure I did something wrong with Animal/Barbarian combat modifiers as they display in the combat help popup. I noticed this the other day in the pbem game and noticed it was a little confusing. I may not have to address this so immediately as the release date but it's on my list here of bugs to resolve nevertheless.

    Will address after release.

  3. There were a lot of asserts I was getting that someone has cleaned up very nicely. Thank you to whomever has been taking care of those! However, I have found some more (most regarding civics xml) and I've posting them now in the bugs thread.

  4. New big hang bug has been reported. Diagnosed as an overload on an unsigned long long int in the extraordinarily late game. Will work on addressing this tomorrow. It can be bypassed for this release unless other bugs that I can't resolve myself take as long or longer to address.

    I COULD address this easily (with a less than perfect solution) but I have a feeling Koshling's gonna show me something I hadn't considered as a way to resolve this issue so since he was going to tackle it tomorrow morning, I figured I'll let him do so and see what he ends up with. Thanks Koshling!

I believe at this point that last one there is all that's left between us and a proper release. Thank you all for your help and patience and I'm sorry these bugs were not dealt with earlier. I only realized at the beginning of the week that we wanted a release at the beginning of the weekend - I had assumed, without reading and planning according to the projection dates, that it'd be next weekend from now given how much time is usually required to mop up bugs during the freeze. In the future, it would be nice if we planned a debug cycle to last a full two weeks after a freeze. We do a lot between releases (and we should) and that leads to a lot of the need for this. If we had even more time, there IS more yet to deal with but I'll try to attack those bugs for a bit here after the release and try to keep my goals a bit more limited for the next version.

As a side note: wow... the captive stuff is just amazing! This round's most impressive mod project goes to DH and all who've helped with that side of things I think! Really really really cool! Might take a bit of tweaks for balance to come but all in all its just stunningly awesome!
 
have a savegame showing a case where negative traits are being lost on recalcs. That's really something in my court there!

This just happened to me. I am not playing with any of the trait options selected just the default and after recalc I lost my negative trait.
 
This just happened to me. I am not playing with any of the trait options selected just the default and after recalc I lost my negative trait.

ouch... ok so this is VERY critical then. I'll look into this one now.

Also this... Koshling I think you might know what this is about:

Getting this message on the debug compile:
1> "C:\Program Files (x86)\Microsoft Visual C++ Toolkit 2003\bin\cl.exe" /nologo /MD /Zi /Od /D_DEBUG /RTC1 /Fp"Debug\CvGameCoreDLL.pch" /GR /Gy /W3 /EHsc /Gd /Gm- /DWIN32 /D_WINDOWS /D_USRDLL /DCVGAMECOREDLL_EXPORTS /Yu"CvGameCoreDLL.h" /D_MOD_SENTRY /D_MOD_FRACTRADE /D_MOD_GOVWORKERS /DQC_MASTERY_VICTORY /DLOG_AI /D_MOD_GWARM /D_MOD_SHAM_SPOILER /DFP_PROFILE_ENABLE /DC2C_BUILD /DMULTI_FEATURE_MOD /DUSE_INTERNAL_PROFILER /IBoost-1.32.0/include /IPython24/include /I"C:\Program Files (x86)\Microsoft Visual C++ Toolkit 2003/include" /I"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A/Include" /I"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A/Include/mfc" /I"C:\Program Files (x86)\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\CvGameCoreDLL\Boost-1.32.0/include" /I"C:\Program Files (x86)\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\CvGameCoreDLL\Python24/include" /FoDebug\CvTaggedSaveFormatWrapper.obj /c CvTaggedSaveFormatWrapper.cpp
1>CvTaggedSaveFormatWrapper.cpp
1>CvTaggedSaveFormatWrapper.cpp(2124) : warning C4018: '>' : signed/unsigned mismatch

I understand what its saying and could fix it but I don't want to switch things in the wrong direction there...
 
This just happened to me. I am not playing with any of the trait options selected just the default and after recalc I lost my negative trait.

Ok... I believe I've fixed this set of issues. I don't have a save to test it but once I've pushed the change, give it a recalc and it should set your traits straight. Maybe not so perfect a fix for developing leaders which may have to play out without correction since I can't, after the fact, know what WAS selected but going forward from here it should work out ok. This bug was a result of what was supposed to be a temporary fix (and a logic flaw in it. Thankfully, this pointed out the need for a review of that section so it could be updated before the new version.)
 
Ok - first off status on the lack of double movement that was posted about in he bugs thread. It isn't a movement bug (the unit in question does not have double movement values recorded on it) OR a promotion bug (the unit does record that it has that promotion [which implies it should also have had the double move capability added to it, which it lacks]).

In fact it turns out this is a bug in the worker promotion code ls612 added, where the load and save are incorrect - it saves tags that it doesn't then try to load, with two consequences:
  1. Terrain/feature work rate values are forgotten across load and save
  2. The load gets its tagging out of sync with what it expects with the result that only the FIRST promotion that has any terrain or feature elements gets its effects loaded correctly (so in this case the unit has arctic I,II,III but only the arctic I loads its effects

I'm testing a fix for it now. HOWEVER, it won't fix existing games for units that already have the problem since the info is lost. In principal it would be possible to add unit-ability recalculation to a modifier recalc to correct this, but it's a lot of work (more than I can achieve today), and would add quite a bit of overhead to modifier recalcs, so I'm not minded to do it (so 'tough' is the answer for any units currently afflicted with this issue I'm afraid)

Ok, as stated, I'm returning here to post the list of bugs so far as I'm aware of them that have yet to be fixed. Perhaps a few have already been addressed so if you've touched on it, let me know:

  • Local Culture bug: In the late stages of the game, even Local City culture accumulation totals are needing a conversion to at least unsigned int and possibly even more such as unsigned long long. We're seeing overloads there and I don't know if anyone has sought to address that yet. Don't think I have a savegame to check against that but I might... Koshling, what do you think of this issue? Is there something else that should be done before taking this step in this dept do you think?
Safest way would be to go to longs throughout, but that will also require conversion code for older format saves and so on. It's somewhat risky - IMO we should no attempt for V29 (how many people get to Galactic currently?). We should fix I ASAP on the SVN version once V29 is out though, so that those brave souls who do push that far at least are able to resolve it with the SVN version.
  • OOS on trait selection popup - I'm fairly aware of WHAT the problem is here (I think.) There's added programming that should've been done on the widget there that would report to any other computers how to get back in sync after this async selection. Was not sure if it'd be necessary but reports from playtesters show otherwise. Unfortunately, the example I found of this part of the widget code was extraordinarily complex and is something I got lost reading rather quickly. So it might take a serious effort to resolve this one - probably more than a weekend's worth. We're still indicating the Developing Leader option as in Beta so it is not entirely mission critical to this release but is certainly extraordinarily high priority for me.
Do after V29 but promptly thereafter
  • Apparently Non-state Religion unhappiness is lingering after civic changes... (Looking into this one and everything seems pretty straight... except that I wonder if this alone:
    Code:
    AI_setAssignWorkDirty(true);
    is enough to reset the city display on happiness/unhappiness. Is there another refresh command that would be useful for that?)
If someone can provide a save game I'll look into this, but I don't see it as a stopper for V29 (i.e. - fix as high priority after release)
  • Bombard bug - the wrong tag was used on a lot of units to indicate their bombardment ability - used the tag that was supposed to be for air units rather than land units. I said I'd go through and convert these though if others have some time to toss in some help there I can explain what needs to be done. And now this section also includes a check against the xml on the Ram, and/or some code debugging to figure out why the Bomb City Defenses mission isn't working on units at all...
What's the status of this - I think this one IS a stopper (at least on the early units that basically have no function without a fix, like the Ram)
  • Negative traits are being lost on recalcs. That's really something in my court there! This should be resolved.
This one has been resolved now, right?
  • There was the problem that having Fixed Borders on different civic categories meant that if you had FB in two and categories and changed one of the categories you lost FB altogether. This is really easily fixed in the coding and was something I wanted to squeeze in here but may not be as critical as some of the above.
Actually I think this one should be high on the list, as it's strategically highly significant. Presumably you'll just turn the boolean into a count?
  • Check out Gatehouse defensive bug - rather: figure out how the defense total doesn't match up... (I suppose this isn't mission critical yet. Koshling... you stated you were going to take a look at the section in processBuilding that the defense modifier is sectioned off into. I took note that you had looked at that at some point... did you come to any conclusions as to what MAY be wrong there?)
I was? I had forgotten all about this if so. Can you clarify what the problem is and provide an illustrative save? Sounds like it can wait though to after V29 release.
[/list]
  • Check out tundra attack issue (I have a atl-atl with the 3 prom for bonus in icy tile, the 3 prom for hill tile and the 3 prom for bonus in forest tile.
    If I try to attack an unit on an forest/hill/tundra, I dont have the bonus for the Tundra Attack (20%))
This will be the same issue as the double moves issue (top of this post). I have a fix for it (though it won't rescue existing units with the problem in existing games)
  • Possibly related: Invisible units seem to be losing all Anti-Combat Class combat modifiers either after using them once, OR when the other unit cannot detect them. (Very important to resolve I think - this and the previous one I'd like to look into next (tomorrow))
I can look into this if someone can provide an illustrative save and instructions to reproduce it
  • I'm pretty sure I did something wrong with Animal/Barbarian combat modifiers as they display in the combat help popup. I noticed this the other day in the pbem game and noticed it was a little confusing. I may not have to address this so immediately as the release date but it's on my list here of bugs to resolve nevertheless.
  • There were a lot of asserts I was getting that someone has cleaned up very nicely. Thank you to whomever has been taking care of those!

I'll look into a few things tonight but I'm interested to hear the feedback on these that the rest of the team may have to offer.

ouch... ok so this is VERY critical then. I'll look into this one now.

Also this... Koshling I think you might know what this is about:

Getting this message on the debug compile:


I understand what its saying and could fix it but I don't want to switch things in the wrong direction there...
It's harmless - I'll fix it though before I push my chnages
 
Ok - first off status on the lack of double movement that was posted about in he bugs thread. It isn't a movement bug (the unit in question does not have double movement values recorded on it) OR a promotion bug (the unit does record that it has that promotion [which implies it should also have had the double move capability added to it, which it lacks]).

In fact it turns out this is a bug in the worker promotion code ls612 added, where the load and save are incorrect - it saves tags that it doesn't then try to load, with two consequences:
  1. Terrain/feature work rate values are forgotten across load and save
  2. The load gets its tagging out of sync with what it expects with the result that only the FIRST promotion that has any terrain or feature elements gets its effects loaded correctly (so in this case the unit has arctic I,II,III but only the arctic I loads its effects

I'm testing a fix for it now. HOWEVER, it won't fix existing games for units that already have the problem since the info is lost. In principal it would be possible to add unit-ability recalculation to a modifier recalc to correct this, but it's a lot of work (more than I can achieve today), and would add quite a bit of overhead to modifier recalcs, so I'm not minded to do it (so 'tough' is the answer for any units currently afflicted with this issue I'm afraid)

<snip>

How did I mess that up?:blush: I would like to learn for future reference so that I don't do that again when adding new stuff to load/save. Sorry for the bug there.
 
How did I mess that up?:blush: I would like to learn for future reference so that I don't do that again when adding new stuff to load/save. Sorry for the bug there.

Look at the differences in CvUnit.cpp of the push I just made - should be fairly obvious
 
OOS on trait selection popup - I'm fairly aware of WHAT the problem is here (I think.) There's added programming that should've been done on the widget there that would report to any other computers how to get back in sync after this async selection. Was not sure if it'd be necessary but reports from playtesters show otherwise. Unfortunately, the example I found of this part of the widget code was extraordinarily complex and is something I got lost reading rather quickly. So it might take a serious effort to resolve this one - probably more than a weekend's worth. We're still indicating the Developing Leader option as in Beta so it is not entirely mission critical to this release but is certainly extraordinarily high priority for me.
Popup results are local (async) so of course setting a trait in there causes an OOS.
The currency and election code above yours makes the same mistake.

You need to send a message and only set the trait in the message execution.
 
Popup results are local (async) so of course setting a trait in there causes an OOS.
The currency and election code above yours makes the same mistake.

You need to send a message and only set the trait in the message execution.

Ok. That is quite helpful to know. However, I haven't had to send a message with anything else I've done before so I'm not sure 'how'. Is there a place where this is happening that gives a clear example of a similar method?


@Koshling:
IRT Local Culture Bug: ok :D

IRT Trait Selection OOS: I feel I may need a bit more guidance anyhow so yes, best to address after.

IRT Religion happiness hang: This was reported a while back and I haven't seen or opened any save that may have been posted for this reason - I'll have to look back through old posts to see if any of the many saves I have was for this reason. Looking at the code it doesn't seem to have any cause, except perhaps the display isn't updating correctly?

IRT Bombard bug: I'll be working on this today. I feel I can confidently say I'll have a repair for that within hours.

IRT Negative Trait loss: Yep... should be fixed though I await some testing feedback to fully confirm or deny.

IRT Fixed Border boolean: yes... exactly. And I can get that done today as well.

IRT Defensive Bug: I believe I have a save that can illustrate. Most saves probably can if its late enough in the game. Hover over the defense help popup on the city screen in a debug run and you may get an assert almost immediately letting you know that the numbers don't fully add up and the last I looked, it appeared the problem was somewhere in the building processing routine - we had a bit of a chat about the odd way Defense value, among other items, was processed a bit differently than the majority of building tags. If any more advanced games don't present this issue for you let me know... the semi-diagnosis may be on completely the wrong track. I'll try to find the save that I had that displayed the problem... I think it was the same save that had the trade bug.

IRT Tundra attack issue: I'm hesitant to agree that it would necessarily be the same issue since the Tundra Attack bug was reported long before ls612's tweaks. Could be a further indicator of another similar problem though... I think it might be more related to the next issue perhaps.

IRT Invisible unit ability loss: I have a few theories on what may be happening here so give me an opportunity to look into it along those lines first. I don't know if I have a save to illustrate it or not - again will have to look through old posts to see how the reporting of the problem went. If I don't find the issue, I'll try to either generate or find the save (which I'll look for before I work on the issue myself too ;) )

IRT type mismatch: I figured it was usually a harmless notation but since the warning didn't come up during a final_release compile I thought it might be helpful to note it was mentioned in a debug compile.

Thank you both for your help and helpful feedback! I get a great feeling out of working on C2C in general when our teamwork is this strong like this!
 
Ok. That is quite helpful to know. However, I haven't had to send a message with anything else I've done before so I'm not sure 'how'. Is there a place where this is happening that gives a clear example of a similar method?
It is common for the button popup results. Check the lines that start with CvMessageControl::getInstance() and the functions they call.
 
IRT Religion happiness hang: This was reported a while back and I haven't seen or opened any save that may have been posted for this reason - I'll have to look back through old posts to see if any of the many saves I have was for this reason. Looking at the code it doesn't seem to have any cause, except perhaps the display isn't updating correctly?

I can find no evidence of this bug. In my test game switching in and out of 'divine cult' (which has 1 unhappy per state religion) is operating correctly both in effect and in what gets displayed.

At first I thought something was wrong because I seemed to have more unhappy than I should have (in and out of the civic), but it turns out that was down to a trait (spiritual has 3 unhappy per non-state religion).

I don't think there is (still anyway) a bug here, unless someone is able to demonstrate it with a save.
 
It is common for the button popup results. Check the lines that start with CvMessageControl::getInstance() and the functions they call.
Ok. Thanks for pointing me in the right direction then!
I can find no evidence of this bug. In my test game switching in and out of 'divine cult' (which has 1 unhappy per state religion) is operating correctly both in effect and in what gets displayed.

At first I thought something was wrong because I seemed to have more unhappy than I should have (in and out of the civic), but it turns out that was down to a trait (spiritual has 3 unhappy per non-state religion).

I don't think there is (still anyway) a bug here, unless someone is able to demonstrate it with a save.
Cool. I didn't see any sign of anything being done wrong in the code unless the AI_dirty call was somehow insufficient (which would've meant there would've been a LOT more problems than just this!) Perhaps the Trait threw someone off. Apparently that's something to be a bit more specific with in the display coding at some point.
 
Record of progress has been updated in the post above.

I'm probably going to hold the release until most if not all of the bugs that we are aware of are solved. I'd much rather wait a while longer than release a bugged V29 if it can be at all helped.
 
Would it be OK for me to put some more of the Captives stuff in then? I have settled slaves being freed when you leave Slavery working (I think, tested and seems OK) plus "Free Slaves" in a city which adds the slave to the food reserve of the city. Plus Human Sacrifice but only for culture so far not for happiness yet.
 
Would it be OK for me to put some more of the Captives stuff in then? I have settled slaves being freed when you leave Slavery working (I think, tested and seems OK) plus "Free Slaves" in a city which adds the slave to the food reserve of the city. Plus Human Sacrifice but only for culture so far not for happiness yet.

Definitely;) I just started a new game anyways.

btw what is the deal on rightfutures and phillipschall's modules??
 
Back
Top Bottom