Warlords: I attack my own unit!!

jprc

My dog is smarter than me
Joined
Sep 22, 2006
Messages
498
Location
Mozambique and far-far East
I have troops in the city of Essen inside German territory.
I have just declared war on Bismarck.
In the forest just next to the city, I have a Great Merchand (Sir Thomas Roe) sent from my capital to Essen. This forest is in enemy territory as my city is almost totally surrounded by German's cultural borders.
When I move a troop from Essen to this forest, my troops just attack my Great Person (with 100%), and the game crashes...

(My only supposition is that there is perhaps an invisible spy in the same square)
I have made a savegame, 1304 kb big, called: "Lili AD-1721-I attack my own units _ a Great Merchand.CivWarlordsSave" and I try now to upload it...

Printscreen:

Saved game: http://forums.civfanatics.com/uploa..._own_units___a_Great_Merchand.CivWarlordsSave

edited: I correct a mistake:
The Great Merchant was sent to Kyoto, Japan and vassal of Bismarck. This unit is automatically placed in the forest of Essen AFTER I declare war on Bismarck, and Japan.
 
The game actually thinks you're at war with yourself!!

Any idea what you did to make it happen? It seems it happened just after you razed Apache. A save from that turn with details of what you did to get to this point would be ideal.
 
Apache was a barbarian city with 1 population, placed into the simili North/South America continent that I conquer step by step (and without any competition). It is then not a factor for the current problem.

I declared war on Bismarck just before trying to go into this square and discovering the problem.
I keep each turn my last 50 backups. If needed, I can now provide any backup back to 9 turns before.

This game has numerous simili-problems or odd behaviors, mostly explained reading the forum: the most common is the incredible cascade of declaration of war where I found myself declaring war on my friends, without doing it consciously! (defensive pact with someone who has a vassal on which another leader declare war). The worst being Cyrus, who capitulated to me after I took a city, then BEFORE the end of the turn, broke free (!!...) while I was by far bigger in anything (land, population).
The game was created with 18 civs, used no cheat or editing, and I saw several times war declarations where I did nothing (and wanted to do nothing), and after the AI turn, I was at war with 8 countries (cascade of declaration of war) with up to 21 mutual messages of war declaration in 1 time (I should have kept a copy of this!). It seems to me that it is uncontrolled by the AI and this leads the computer into loops that creates conflicts: a pure domino theory.
Great persons are not fighting units, and I now wonder if, instead of having a G.P., having say an Inca Marine (my civ), would do the same i.e. trigger an attack and/or a crash..

Perhaps also another civ has an invisible unit into the same square, or the unit database has mixed up the coordinates of some other enmy units...
I also suppose that, due to the size of the game, something get corrupted somewhere, and the Great Person received in its database a data coming from another unit, thus triggering this attack...

Sorry, I know, all this bla bla is not very helpful...
 
Cyrus broke free because you somehow declared war on yourself and since he is your vassal, he declared war on you too!!! :)

Did Cyrus somehow have a defensive pact with Bismarck or something?!?

If you could provide a save from the previous turn, along with steps of exactly what you did to reach the point where Cyrus broke free, it would be extremely helpful.
 
I like the explanation about Cyrus' behavior! It sounds like Isaac Asimov's logic when you break one of the primary rules!!

Unfortunately, this Cyrus problem was way before in my marathon game and is not directly related to the self-attack. As I just keep the last 50 turns, it is now deleted. I have changed this and will keep now, for each turn, my last 200 games.
However, regarding the problem of attacking myself, I have the backup of the game several years before, and for each turn. What I am going to do, after making a copy of all saved games for not overwritting them, is to reproduce the error, but starting from the year before and controlling what is done:
- start 1 year before (year 1720AD)
- try to do nothing, or, if required, note exactly what I do or answer/choose
- turn to the year 1721AD, do also nothing (or the minimum) and writting down the sequence of actions if any
- when all required actions are done, save, then test if my tanks in Essen still attack or not the Merchand who should be at this point of the game just reaching Essen in the forest.
-> if still the problem: I send you my original auto backup for 1720Ad, a list of what I did, my auto backup for 1721AD, the list of action of this year, then my final quick save just before testing the attack on my unit, so then you can analyse the sequences that can lead to the problem
-> if no problem, I try by starting from the original auto backup for 1721AD, and try to reproduce the sequence before the problem

In any case, please give me some time: in my spare time, I will try to make this as cleanly as possible for you to have also clean material, and provide you with the steps I use for reproducing the problem, and the backups.

Anyway, I am new in this forum, but very old with Civilization, and I really really really wish to congratulate Firaxis and Soren for the incredible quality of design and ideas of Civ4. I am used to lead engineering projects, and I can appreciate the outstanding amount of work behind this game.
 
Your plan sounds good, thanks.

Take your time, but hopefully we can get to the bottom of this before it's time to release the patch.
 
(sorry for my bad English, I hope you will understand some…)

What I did (methodology):
- backup of all original autosaves for not overwriting original sequence when replaying
- load the game year by year, always using original saved year: after end of turn and after going to year+1 for testing results, I have reloaded this year+1 from the original autosave.
- I went through the years 1681 (oldest backup), 1690, 1691, 1692, 1693, 1694, 1695, 1696, then straight to 1715, 1716, 1718, 1719, 1720 and 1721 (year where I reported the problem of self-attack)


Example of sequence used when testing:
a) load year 1690AD
b) skip with “space bar” all unit turns (no exception) when cycling through the units, propose default choices for cities, peaceful proposals if diplomacy screen is coming
c) when all units are idle, ENTER is proposed for end of turn. BEFORE doing so, I quicksave (F5), THEN from Essen I move toward the forest, hence declaring war on Bismarck, and see the result.
d) whatever is the result in step c), I reload the quicksave, and simply end the turn WITHOUT declaring war. All diplomacy screens and city screen are answered with default choice, or most peaceful choice.
e) at the year +1 (in this case 1691AD), I try again the attack for checking if the end of turn changed something
f) I start from point a) again: I load from the original backup the original autosave for the year+1 (1691AD in this case), and start the sequence from b to f again.


Summary of what I found:
- the problem regarding this region of the map (Essen and Bismarck’s territory) starts in year 1693, with game crashing (Windows error report) when trying to attack the squares contiguous to Essen.
- a possible new bug (or unexplained behavior) can be found in year 1694 to 1695 with Qin
- the game does not crash in 1691 and 1692 as I can attack Bismarck’s artillery from Essen, and 1720/1721 when attacking from Essen, as declaring war will “repatriate” Thomas Roe to his beloved Essen forest, next to the city, and the attack on myself allows the game NOT to crash!!
- if war is declared on Bismarck, and I move from Essen: IF there are no unit to attack and it is a simple move into enemy territory, THEN the game crashes; ELSE the attack proceeds by attacking the artillery or myself and does not crash.
- whatever is your choice in a given turn regarding city production or moving units within your borders, it has no impact on the “Essen crash / self attack”. The only exception to this is the order is sending a unit to Kyoto, then, when the unit/units reached Kyoto, declaring war on Bismarck send the unit to the forest close from Essen.
- Self-attack takes place on a corrupted background (crash when attacking from Essen), hence having perhaps unpredictable but constant effect. It is very probable that solving the origin of the crash would solve the self-attack problem. It seems unlikely that such event would occur again with a “healthy” map.


Specificities of tested years (all AD), from original autosaves
; common to all: I skip the turn for all units and choose default science/eco choice for cities (c.f. “sequences” a to f, above):

1691:
Bismarck’s artillery in Essen forest. I declare war (via diplomacy screen or by direct moving: same final effect) on Bismarck. I move a tank in forest and attack. Everything goes fine, no crash and the game proceed…

1692:
I refuse to give my World Map, but accept Stalin capitulation. I skip the turn for all units and choose default science/eco choice for cities.
Bismark’s artillery still in forest. Like in my test for 1691, I move my tank (hence declare war). Like in 1691, after destroying the artillery, no problem, the game proceed…
At this stage, I have not given yet the order to Thomas Roe to go to Kyoto (japan is a vassal of Bismarck), and there are no Inca unit to repatriate to my cities

1693:
Open border with Mehmed II.
No more artillery in the forest! I attack toward the forest or the mine just south of Essen, and the game crashes: Windows error report…

1694:
Same as 1693, the game crashes if I try to attack.
POSSIBLE BUG?? :
Qin is my vassal, by his own choice (no capitulation, he proposed to be my vassal long ago when I started the conquest of “simili-north America”). He is at 11% of land, 6% of population and 103% of original land. I am by very very far the most powerful of all.
After hitting the [end of turn], he says that I am too weak and breaks free. How come as he is so far from the limits!!
This is not the first time I had this in the game, and Stalin, Ramses, Tokugawa, Cyrus, did it before, with Cyrus (as explained in my other post) even capitulating to me at the end of a turn – when the AI plays - AND breaking free 5 seconds later within the same AI turn , while I was easily 5 times bigger than Cyrus!! No save games on this.

1695:
Qin broke free (see 1694). Declaring war on Bismarck and attacking forest or mine south of Essen still crashes the game.

Years 1696 to 1720 skipped as it is the same as 1695.

1720:
My Great Merchant Thomas Roe is reaching Kyoto (on the East coast of the main continent). As Japan is vassal of Bismarck, when I declare war, Thomas will then be automatically transferred to my closest city which is Essen. Problem, he ends in the forest next to the city. The game thinks
- Essen is in the forest OR
- the forest and Essen share the same coordinates OR
- a virtual city, called “Apache” seems to have been created by the system (according to the logged events). Apache was a barbarian city I razed (1 population) long long ago (at least 100 turns) in the simili-north-american continent I conquer. If checking F1 before attacking: I have no city at this name, however, Thomas is repatriated to this virtual city and I destroy it when attacking myself.


Files uploaded:
- a single zipped file: “original-BUGreport-I attack myself-Qin-autosaves years 1691 1692 1693 1694 1720.zip”
This file contains:
{error report generated by Windows when crashing, years 1693 and above}:
… 12f7_appcompat.txt
{quiksave, just before declaring war on Bismarck}:
... replayed-BUGreport-I attack myself-BEFORE declaring war on Bismarck-AD1721-QuickSave.CivWarlordsSave
{original autosaves with relevant years}:
... original-BUGreport-I attack myself-AutoSave_AD-1691.CivWarlordsSave {no crash}
... original-BUGreport-I attack myself-AutoSave_AD-1692.CivWarlordsSave {no crash}
... original-BUGreport-I attack myself-AutoSave_AD-1693.CivWarlordsSave {crash}
... original-BUGreport-I attack myself-AutoSave_AD-1694.CivWarlordsSave {crash and Qin}
... original-BUGreport-I attack myself-AutoSave_AD-1720.CivWarlordsSave {no crash – self attack}

link: http://forums.civfanatics.com/uploa...-autosaves_years_1691_1692_1693_1694_1720.zip


My conclusions:
- The system behaves as if there are 2 different Incas: me, and a virtual one : which can explain the reaction of Qin, Stalin, Ramses breaking free while I am so so far superior to them in land population and other. My virtual ghost is probably weaker than me (perhaps with only this Apache city, hence I am very weak at their eyes!!)
Of course, if a Inca unit goes into my virtual Inca city, it is like a rebel unit (barbarian?), it is logic to have my faithful units attacking those simili rebels!
- Due to the large size of the map, the number of civilizations, the long loading time of the game, all possible background processes (NAV 2006, Symantec Internet Security 2006, Lavasoft Pro 1.06r, Windows Defender, swap file, changes in the processor speed as it is played on a laptop – switching from battery to plug with variation of processor frequencies…) it is very possible that the game get corrupted, perhaps way before year 1690, and the gap became apparent only later in the game with unpredictable consequences.
- Do not waste time on this if:
… I am the only one reporting the problem.
… a Warlords saved game is built using data already existing from previous turns (for accelerating backups: incremental), and not by reconstituting all logical links when backing up (cleaning process rebuilding the unit/map databases by comparing logical data with expected data): if it is the case, a long and heavy game can collect too many external problems along the way!
… it is too boring.
- If independent from the “attack myself problem”, any reason for Qin saying that I am too weak? (1694/1695)
 
Looked some at the save..

from Lili's event log:
Turn 871, 1721AD:

The enemy has been spotted near LILISILVER!
You have declared war on Bismarck!
Isabella has declared war on you!
Stalin has declared war on Isabella!
Bismarck has declared war on Stalin!
Tokugawa has declared war on Stalin!
Deal Canceled: Open Borders to Tokugawa for Open Borders
You have declared war on Tokugawa!

You have captured Apache!!!
You have pillaged 25 gold from the destruction of Apache!!!

You have declared war on Lili!
Deal Canceled: Hit Musicals to Stalin for Gold Per Turn (2)
Deal Canceled: Open Borders to Stalin for Open Borders
Deal Canceled: Copper to Stalin for Gold Per Turn (16)
Deal Canceled: Iron to Stalin for Gold Per Turn (16)
Deal Canceled: Pig to Stalin for Gold Per Turn (15)
Deal Canceled: Coal to Stalin for Gold Per Turn (8)
Deal Canceled: Capitulation from Stalin
Stalin has broken free from Lili and is once again a free state.
Stalin has declared war on you!
Cyrus has declared war on Stalin!
Deal Canceled: Gold to Cyrus for Gold Per Turn (20)
Deal Canceled: Hit Musicals to Cyrus for Gold Per Turn (20)
Deal Canceled: Cow to Cyrus for Gold Per Turn (20)
Deal Canceled: Sheep to Cyrus for Gold Per Turn (21)
Deal Canceled: Open Borders to Cyrus for Open Borders
Deal Canceled: Sugar to Cyrus for Gold Per Turn (21)
Deal Canceled: Gems to Cyrus for Gold Per Turn (21)
Deal Canceled: Pig to Cyrus for Gold Per Turn (21)
Deal Canceled: Incense to Cyrus for Gold Per Turn (21)
Deal Canceled: Capitulation from Cyrus
Cyrus has broken free from Lili and is once again a free state.
Deal Canceled: Iron to Cyrus for Gold Per Turn (13)
Cyrus has declared war on you!


There is something strange here... at the beginning of this turn Lili had Cyrus and stalin as vasalls, and Bismarck had Isabella and Tokugawa as vasalls..
Lili declared war on Bismarck.. and all the vasalls got involved in all directions.. except cyrus who stayed totally out of the war it seems... this is unrelated to the observed problem thou..

After this the razing of Apache happened.. later on, or in connection with Apache raze, some kind of event caused Lili to declare on self...

A possible clue (the numbers before event is the turn number):
256 : Apache is founded.
711 : Apache was captured by the Incan Empire!!!
860 : Apache is founded.
871 : Apache was captured by the Incan Empire!!!
871 : Apache is razed by the Incan Empire!!!
871 : Lili declares war on Lili!

Looks like there was 2 different cities called Apache founded.. and Lili had already captured the first one back in turn 711 (1561AD)
The original Apache was renamed (didnt check what it was renamed to).. I guess when the 2nd apache was raced, the game scanned though all the cities and found the 1st Apache... and war was declared on the owner.. who was the Lili self..

Edit: Made a test setup.. but was unable to get this to happen there.. so it might not be caused by 2 Apache cities
 
amazing.
I do not know how you were able to retrace all this as it should represent thousand of lines of events! How nice it is!...
At the start of the game, I was incredibly lucky as 16 out of the 18 civilizations took my state religion, and it made me cruising through the years.
problem started as soon as I discovered the continent in the far west, and started conquering it against the barbarians, with no one else aware of the continent (I discovered Optics way in advance on others, and never shares my maps).
From this point on (around 800AD), I experienced numerous "strange" behaviors, where I had the feeling that sometimes the civs were taking into account my land superiority, sometimes not, as if what the Incas were doing into this remote continent was sometimes made by another Incas civilization distinct of mine!
Anyway...
Regarding Apache, if the 1st one existed (turn 711), the 2nd one never existed, as it would mean that this city was created in a square adjacent to the city of Essen, as moving a unit into the forest captures the non-existing Apache!

Which problem can you not reproduce? Is it the attack on your Great Merchant from Essen?
If it is the case, it is interresting as it would mean that the problem is linked with my environment, not the game...
I do not know if it matters: I use the base 1.61 for Civ4, bought from Amazon.co.uk, and I have installed on top a Warlord bought in South Africa and made for African market. (I don't think this is a problem)
 
jprc said:
amazing.
I do not know how you were able to retrace all this as it should represent thousand of lines of events! How nice it is!...
I have a selfwritten program that can extract all the info to a text file.. but yes.. there are thousands of lines.. :)

jprc said:
Which problem can you not reproduce? Is it the attack on your Great Merchant from Essen?
I made another game and made sure I had 2 barbarian cities with same name.. but no war on self happened after capturing both

There is a weird thing about the capture of the 2nd apache in the logs.. there is no combat logs for this capture.. like the city was empty when it was captured

Here is the file with all the events for all the players if you want though search though it and see what happened :p

THose other saves you posted loos interesting.. but havent had time to look at them.. I am sure Alexman will :)
 

Attachments

Thank you Gyathaar! This ”selfwritten” program is very handy and highlight well the extraordinary log kept by Civ4!
I really love this line: 871 : Lili declares war on Lili! as if this game was not difficult enough and now I have to hate myself!

From the log, I saw several things:

“Apache” issue – perhaps related to “attack myself issue”
Reading the log, it confirms then what I said: I took Apache in round 711. What is bizarre is that this city has been founded in 256. I do not raze cities as my goal was to expand, using always existing structures and population and since most civs had my state religion, my finances were optimum for supporting added cities. From turn 256 to turn 711, the city was certainly bigger than 1 population. But it says that I razed the city! OK, but I am unsure about that.
I was not able to retrieve any info about renaming cities.
I just think the game took again randomly an available name into its Barbarian list of cities, and whatever happened to the 1st Apache is distinct from the 2nd:
Event log for player "Barbarian civilization":
Turn 860, 1710AD: Apache has been founded.

I am then uploading (slowly: I use a 33.6 dial-up modem) the original autosave for the years 1709 and 1710 as it might be useful for detecting where, and how this Apache is founded.
In the same zip file, I have also added the original “AutoSave_Initial_BC-4000.CivWarlordsSave”, in case the problem was already in the map when generated by the system, and my “CivilizationIV.ini” from my … My Documents\My Games\Warlords folder as I made minor changes (ex: victory conditions) and perhaps made something wrong that triggered problems.
link: http://forums.civfanatics.com/uploa...elf-autosaves_years_4000BC_1709_1710_ini_.zip


Vassal and Diplomacy issue (Cyrus)
Unfortunately, I have no saved game on this one. It is highlighted with the log kindly provided by Gyathaar.
In Turn 798, 1648AD: Ramesses II has agreed to become a vassal state of Lili.
If I read the Event log for player "Lili": (from bottom to top for chrono order):
Cyrus has capitulated and is now a vassal state of Lili
Then, after Cyrus has made peace with Hannibal and Tokugawa, it says Ramesses II has declared war on Cyrus! !!! My vassal betrays me and declares war on my other vassal!!! I am automatically declaring war on my vassal as my other vassal did (sic!!), and right away Cyrus has broken free from Lili and is once again a free state.
I am sure this is already addressed by Firaxis as I saw numerous other posts concerning the chain of events with vassals.
For clearer log, it would be nice to have a sentence like You had to declare war on Cyrus! instead of You have declared war on Cyrus!, for making a difference when you are forced to do so because of a treaty. But the Master should anyway have a word to say BEFORE a vassal put his master into trouble!!!
(log extract)
Turn 807, 1657AD:
You have made peace with Cyrus!
Ramesses II has made peace with Cyrus!
Cyrus has made peace with Brennus!
Cyrus has declared war on Genghis Khan!
Cyrus has broken free from Lili and is once again a free state.
You have declared war on Cyrus!
Ramesses II has declared war on Cyrus!
Cyrus has made peace with Hannibal!
Cyrus has made peace with Tokugawa!
Cyrus has capitulated and is now a vassal state of Lili
You have captured Tartar!!!
 
Thank you very much for your research.

I think the problem is that you somehow have a defensive pact with Tokugawa, who is a vassal of Bismarck. When you declare war on Bismarck, through the defensive pact you are also forced to declare war on yourself.

As you discovered, this situation starts occuring somewhere between the 1692 and 1693 saves. Notice that in 1693 Tokugawa has a defensive pact with you, but it's only a one-way pact, which should never be the case. In fact, since he is a vassal, he is not supposed to be able to have any defensive pacts at all. Do you remember anything about signing a defensive pacts with Japan in 1692?

I'm continuing to look into it.
 
Oups! It is true!! Yes, I did proposed a defensive pact in 1692!
In the year 1692 (you have the file: http://forums.civfanatics.com/uploa...autosaves_years_1691_1692_1693_1694_1720.zip), after refusing to exchange world map with Brennus, and accepting capitulation from Stalin, if I go to Tokugawa's diplomatic screen, I propose "YOU HAVE: Defensive Pact", but of course nothing on his side as he is a vassal of Bismark!
With Ramesses, Brennus and Qin, I have showered those guys with gift, and they are more pleased with me that with their masters!!
I recall having proposed this as a gift to him, and he accepted gracefully.
Right after, if I stay in the screen and want to see active trades, it is only "Open Border".
Going to F4, clicking on Lili shows only open border with Tokugawa. Clicking on Tokugawa shows that there is a defensive pact with Lili!!!

I know I saw and did this before in the game with RamessesII in 1620, but I don´t have a backup.

This would also explain my problem with Cyrus, as the treaty sequences are not making sense when contracted/broken, and the poor game gets lost in translation!!
I think you found the start of the problem. Now, why and how it was possible is beyond my understanding!
 
Wow, I am amazed that nobody had reported this serious problem before, but it will be fixed in the patch.

Thanks again for your help.
 
When do you think I can delete all uploaded files from civfanatics' servers?
 
Back
Top Bottom