Author Topic: Analyzed Procedures and Flags  (Read 10848 times)

0 Members and 1 Guest are viewing this topic.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #30 on: October 10, 2015, 11:25:54 PM »
It appears as though the AI will not attempt to bribe the human player to vote for them in governor elections if the difficulty level is Citizen.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #31 on: October 10, 2015, 11:48:04 PM »
I noticed that the game ignores a techcost increase for human players if the game difficulty is Specialist or below. I also noticed that the function to determine the number of atrocities a faction needs to exceed in order to have the atrociousity script appear if the receiver of these atrocities does not want revenge against the instigator. The formula that determines this particular number appears as follows: 8 - Difficulty Level (always five if Intense Rivalry is active) * 2 - 1.
 

Offline Yitzi

Re: Analyzed Procedures and Flags
« Reply #32 on: October 11, 2015, 02:16:21 AM »
I also noticed that the function to determine the number of atrocities a faction needs to exceed in order to have the atrociousity script appear if the receiver of these atrocities does not want revenge against the instigator. The formula that determines this particular number appears as follows: 8 - Difficulty Level (always five if Intense Rivalry is active) * 2 - 1.

Interesting.  What's the address of this code?

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #33 on: October 11, 2015, 03:01:20 AM »
This particular section starts at address 0055F09C in Scient's 2010 Patch. I failed to mention it then goes through the pseudo-"Randomizer" before performing a short series of other operations.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #34 on: October 11, 2015, 03:07:11 AM »
I also noticed that the function to determine the number of atrocities a faction needs to exceed in order to have the atrociousity script appear if the receiver of these atrocities does not want revenge against the instigator. The formula that determines this particular number appears as follows: 8 - Difficulty Level (always five if Intense Rivalry is active) * 2 - 1.

Interesting.  What's the address of this code?
Why does the code for the Bureaucracy formula use the value of 6 while subtracting it from the Difficulty level? The concepts file says it should equal (8-Difficulty).

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #35 on: October 11, 2015, 03:40:52 AM »
Another portion of the code that involves difficulty level and minor atrocities appears at address 0055F280 in Scient's 2010 Patch. This portion has some context because it appears directly after the game processes the portion of the procedure that causes the reputation of a faction to worsen by 1 after committing a minor atrocity unless the Diplomatic "I am atrocity victim" flag remains on with the receiver of the atrocity. The formula I have decoded at the moment appears as follows:
(8 - Faction Difficulty) * 4 compared to the number of minor atrocities the faction has commited.

Offline Yitzi

Re: Analyzed Procedures and Flags
« Reply #36 on: October 11, 2015, 03:14:59 PM »
This particular section starts at address 0055F09C in Scient's 2010 Patch. I failed to mention it then goes through the pseudo-"Randomizer" before performing a short series of other operations.

Ok, thanks.

I also noticed that the function to determine the number of atrocities a faction needs to exceed in order to have the atrociousity script appear if the receiver of these atrocities does not want revenge against the instigator. The formula that determines this particular number appears as follows: 8 - Difficulty Level (always five if Intense Rivalry is active) * 2 - 1.

Interesting.  What's the address of this code?

Why does the code for the Bureaucracy formula use the value of 6 while subtracting it from the Difficulty level? The concepts file says it should equal (8-Difficulty).

Because first it calculates the number of population before the first standard drone, which is 6-DIFF, then at 4EA5A6 it adds another 2 for the value to be used in bureacuracy calculations.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #37 on: October 13, 2015, 06:59:39 PM »
I think the AI uses a special Unit Plan for Units with the Heavy Artillery Special Ability because at address 004FA097 in Scient's 2010 patch it jumps over moving 10 (16) into local 11 (Unit Plans) if the checked unit does not have the heavy artillery special ability. This appears to correspond with various features that treat artillery combat differently from regular combat.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #38 on: October 13, 2015, 07:46:15 PM »
I think the address at 0046815B relates to the Unit Plan Names as they appear in the Alphax file under the secton #Plans. If I am wrong about this assumption, then please feel free to correct this error. I am going to provide the information that I presently know about the procedure that starts at address 004F81A0 in Scient's 2010 patch. Local 2 equals the base owner starting at address 004F8224; Local 3 equals the values associated with the short names from the plans section of the alphax file Local 4 equals the map check + 3 in local 14 starting at address 004F8245; Local 5 equals the unit prototype check from the Units section of alphax; Local 8 equals the Chassis Triad starting at 004F9570 and 004FA089  (As the triad value from the chassis section of Alphax); Local 11 equals the value from the unit plan section of Units in alphax starting at 004FA08C; Local 14 represents the checking of a map square features starting at 004F8245; Local 21 equals the base location in horizontal spaces starting at address 004F8219; Local 22 equals Technology (Discover) Interest; Local 24 equals AI Power (Conquer) Interest; Local 35 equals the base location vertically starting at address 004F8216; Local 38 equals AI Wealth (Build) Interest; Local 41 equals AI Growth (Explore) Interest; -- it is these values that I have deciphered so far in this extremely important procedure. If Yitzi cares to add additional information, then it would simply add to the available information about this procedure.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #39 on: October 13, 2015, 09:53:11 PM »
It appears as though Drone Riots at a base with military facilities that completely repair a unit in a single turn prevent this effect from occuring while the drone riots remain active.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #40 on: October 24, 2015, 06:26:11 PM »
The memory address at 0096DA48 appears to correspond the sum of population for the faction. This becomes important because it influences the number of energy credits probe teams steal and the AI Social Model choices.

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #41 on: November 03, 2015, 01:25:31 AM »
An analysis of the section that starts at address 00526A00 reveals some information about the manner that the AI allocates Energy to Laboratories. The formula to determine the research in this section appears as follows: (Faction Discover Interest (0 or 1) - Faction Conquer Interest (0 or 1) - Faction Allocations of energy to Economy (Perhaps Psych as well???) + 12 - Faction Allocations of energy to Economy (Perhaps Psych as well???) / 2) - Faction Interest in Build Mandate (0 or 1). The value at the end of this process moves into the register that holds the Faction Energy Allocations to Laboratories. The section following has a conditional increase to the faction Research Allocations that appears as follows: (AI Discover Interest [0 or 1] - AI Conquer Interest [0 or 1] - AI Build Interest [0 or 1] + 3. The next step involves taking the following: (Result from previous operation + Result from previous operation *4). After the previous operation, the procedure performs the following step: (Product from previous operation + Product from previous operation * 4) compared against the number of mission years elapsed. If the number of mission years elapsed exceeds the value from the last step, then the procedure jumps over a +1 increase to the allocations of energy towards Laboratories.
« Last Edit: November 03, 2015, 01:48:43 AM by Dio »

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #42 on: December 18, 2015, 02:22:56 AM »
The number of minor atrocities that a faction must commit before they become expelled from elections for planetary governor must exceed (8 - Difficulty) * 4.
    The number of energy credits in a loan that a human player requests from an AI faction through the energy loan diplomatic proposal depends upon a comparsion between the commerce rates of these two factions. If the commerce rate of the faction that requests a loan exceeds the commerce rate of the faction that provides this loan, than the faction that provides this loan offers 1/4 of his or her energy reserves. If the commerce rate of the faction that requests a loan equals the commerce rate of the faction that provides this loan, than the faction that provides this loan offers 1/3 of his or her energy reserves. If the commerce rate of the faction that requests a loan remains below that of the faction that provides this loan, than the faction that provides this loan offers 1/2 of his or her energy credit reserve. This procedure remains seperate from the calculation that occurs as the AI requests a loan from a human player.
« Last Edit: December 18, 2015, 02:40:10 AM by Dio »

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #43 on: December 18, 2015, 02:44:32 AM »
Why does this sound like a bug? This explaination means that the higher a faction's commerce rate, the less energy they receive from a loan that they request. This stands in contrast with the statement from the original help file for the Morgan Industries Faction because the small blurb for the commerce bonus states that it increases the value of pacts, treaties, and loans. Who thinks this represents an oversight or bug?

Offline Dio

Re: Analyzed Procedures and Flags
« Reply #44 on: December 18, 2015, 02:47:02 AM »
The number of minor atrocities that the AI must perform before the flag for Commit Atrocities wantonly activates is 5 or more. The faction also cannot have the diplomatic status flag "I am an atrocity victim" active.

 

* User

Welcome, Guest. Please login or register.

Login with username, password and session length

Select language:

* Community poll

SMAC v.4 SMAX v.2 (or previous versions)
-=-
24 (7%)
XP Compatibility patch
-=-
9 (2%)
Gog version for Windows
-=-
103 (32%)
Scient (unofficial) patch
-=-
40 (12%)
Kyrub's latest patch
-=-
14 (4%)
Yitzi's latest patch
-=-
89 (28%)
AC for Mac
-=-
3 (0%)
AC for Linux
-=-
6 (1%)
Gog version for Mac
-=-
10 (3%)
No patch
-=-
16 (5%)
Total Members Voted: 314
AC2 Wiki Logo
-click pic for wik-

* Random quote

The genetic code does not, and cannot, specify the nature and position of every capillary in the body or every neuron in the brain. What it can do is describe the underlying fractal pattern which creates them.
~Academician Prokhor Zakharov 'Nonlinear Genetics'

* Select your theme

*
Templates: 5: index (default), PortaMx/Mainindex (default), PortaMx/Frames (default), Display (default), GenericControls (default).
Sub templates: 8: init, html_above, body_above, portamx_above, main, portamx_below, body_below, html_below.
Language files: 4: index+Modifications.english (default), TopicRating/.english (default), PortaMx/PortaMx.english (default), OharaYTEmbed.english (default).
Style sheets: 0: .
Files included: 45 - 1228KB. (show)
Queries used: 36.

[Show Queries]