Yep, AIs would offer peace deals. Can't remember if it was just Vanilla or present in Warlords too.
Nope..they don't do not do that..that is still a peace deal by the wayThey will take initiative to surrender and become vassal when doomed, tho. I think..
I'm almost positive that it's a bug, i.e. not an intentional change.[...] I have no idea why they put it off.
It would be more fun if they kept it, I think.
Civ4BeyondSword.exe double-checks all AI-initiated offers at the start of the human turn, and that's where the peace offers get killed. I guess that's why none of the unofficial patches fixed this; source code for the GameCore DLL is available, but not for the EXE. It is possible to fix it through a workaround in the DLL, and I did that earlier this year in my mod Advanced Civ. To my knowledge, @keldath's Doto is the only other mod that has adopted my bugfix. I'm attaching a screenshot of a peace offer (a capitulation offer; it's the only screenshot I have at hand). I don't think that the AI suing for peace adds much to the game really; just a bit of flavor.Well, now I am thinking if there are any mods which enable that feature again.
Do you have any clues?
I did that earlier this year in my mod Advanced Civ. To my knowledge, @keldath's Doto is the only other mod that has adopted
I'm almost positive that it's a bug, i.e. not an intentional change.Civ4BeyondSword.exe double-checks all AI-initiated offers at the start of the human turn, and that's where the peace offers get killed. I guess that's why none of the unofficial patches fixed this; source code for the GameCore DLL is available, but not for the EXE. It is possible to fix it through a workaround in the DLL, and I did that earlier this year in my mod Advanced Civ. To my knowledge, @keldath's Doto is the only other mod that has adopted my bugfix. I'm attaching a screenshot of a peace offer (a capitulation offer; it's the only screenshot I have at hand). I don't think that the AI suing for peace adds much to the game really; just a bit of flavor.
The DLL side is fine, i.e. beginDiplomacy gets called. I'm guessing that the additional check is part of the trade table code in the EXE. And, apparently, the EXE requires the two teams to be at peace when it should actually require them to be at war. So the workaround is to have CvTeam::isAtWar lie to the EXE at just the right moment. Cool that I'm not the only person who cares about this obscure error.I thought that it is related to the dopeace part in some way. So I searched it but couldn't find anything from it.
Nice finding and good job! Thanks, f1rpoSo the workaround is to have CvTeam::isAtWar lie to the EXE at just the right moment. Cool that I'm not the only person who cares about this obscure error.