All code locations listed below contain the empire-ID (default 02/ferengi). The feature can be (even partial) disabled via invalid ID (i.e. above 04).
Twice-issued -> need of all locations for a proper functionality!
Code: Select all
4479B9 cmp cl, 2 // 0x46DBB * trade to minor
459826 cmp ch, 2 // 0x58C28 *AI to major without treaty & player to minor
40D3C3 cmp word ptr [esi+8], 2 // 0xC7C7 * AI to minor
43BCAF cmp bl, 2 // 0x3B0B1 * player to major without treaty
Trade to majors with non-agression & player after the ending of a treaty:
45EBEF cmp word ptr [ecx+34h], 2 // 0x5DFF3
45EBFA cmp si, 2 // 0x5DFFD
45EEDF cmp word ptr [ecx+34h], 2 // 0x5E2E3
45EEEA cmp si, 2 // 0x5E2ED
45F151 cmp word ptr [esi+34h], 2 // 0x5E555
45F18A cmp di, 2 // 0x5E58D
Show systems by non-aggression:
45F17C mov edx, 2 // 0x5E57D
45F1B3 mov edx, 2 // 0x5E5B4
Trade route effect to Minor Attitude:
42A4BF cmp dh, 2 // 0x298C1
Trade route effect to AI Empire Attitude:
41F4F2 cmp ah, 2 // 0x1E8F4
In theory the free trading to empires / minors can be divided between different empires. But, as you see, the value at 0x58C28 is here the biggest troublemaker.
Trade GUI warning messages (sub_4D8610)
(no friendship treaty or higher / no race known yet...)
Race-ID to be ignored:
0xD7AFA
0xD7B6E
(during my test either of them sufficed)
0xD7B9C (at WAR with all known races)
Changing this funny value disables ALL AI to major trade. It's a remote possibility AI diplomacy somehow gets stuck....
Code: Select all
40D3A3 mov ebp,1 // 0xC7A4