Page 1 of 1

Minor Race Frequency

Posted: Fri Mar 27, 2009 6:26 pm
by Gowron
The number of minor races in a game is influenced by

a. the settings (galaxy size and minor races setting),

b. the minor race density,

c. star frequency.


b and c have already been covered. The minor race density can be found among the Galaxy Control Values, and there's also a topic about star frequency.


The connection with the settings can be found in subroutine 4B22A0, and the following numbers are used:

Code: Select all

address   size   minors  default
------
4B22BD   small     none        0
4B22DE              few        3
4B22E5             some        5
4B22EC             many        8
------           
4B22BD  medium     none        0
4B22EC              few        8
4B22F3             some       15
4B22FA             many       21
------
4B22BD   large     none        0
4B2301              few       12
4B2308             some       24
4B230F             many       30
Note that two values (8 and 0) are shared.

As long as there are plenty of available star systems, then you'll consistently (100% accurately during my tests) get one less minor race than the number in the table, except if the number in the table is 4 or less (then you get exactly that many minor races).

If star systems are scarce, then there might be fewer minors. But we can use the star frequency reference values to keep this from happening :)

The highest default number is 30, but setting it 31 works and leads to 30 minor races. Setting a value to 32 or more is NOT a good idea ;)

-----

There's another subroutine at position 4B2350 which looks exactly as sub_4B22A0, but with other (always lower) numbers. For some strange reason, changing these numbers did not have any effect. Maybe they're not used, at least not for the frequency of minor races.

Posted: Mon May 25, 2009 6:09 pm
by thunderchero
Hi everyone,

I was wondering is there a way for this to only use large values on all sizes? for large maps there would be no reason to have that few of minors with a galaxy that big. and the two values (8 and 0) that are shared make editing evenly impossible.

thunderchero

Posted: Mon May 25, 2009 7:38 pm
by Spocks-cuddly-tribble
This overrides small & medium values and takes the large instead for all sizes (if this was desired?):

At 0xB15E4 & at 0xB1626 repace A1 B8 36 5A 00 (mov eax, ds: dword_5A36B8) with B8 02 00 00 00 (mov eax, 2)

Posted: Mon May 25, 2009 8:17 pm
by thunderchero
thanks Spocks-cuddly-tribble,

it worked perfect.

thunderchero

Re: Minor Race Frequency

Posted: Sat Jun 06, 2009 6:10 am
by DCER
Gowron wrote:There's another subroutine at position 4B2350 which looks exactly as sub_4B22A0, but with other (always lower) numbers. For some strange reason, changing these numbers did not have any effect. Maybe they're not used, at least not for the frequency of minor races.
These seem to be used after all as minimum minor race numbers. On vanilla I've edited the lower value for large galaxy and many minors. If you set the value higher you'll generally get more minors. If you set it low, you'll get less minors. I've set it to 1 for example and got 13 and 17 minors on a large galaxy with min and max values being 1 and 30. If this value is set too high it gets ignored and you get less than the minimum of minors.
Kyrfamor wrote:How to do this, which editor shall I use?
Any editor should let you do this. On windows I use HxD, just click on the byte you want to edit and type away. At the start of this tutorial are some basics that might help: http://members.aon.at/zelli/shiplist.htm

Re: Minor Race Frequency

Posted: Sat Jun 20, 2009 7:41 am
by Gowron
DCER wrote:
Gowron wrote:There's another subroutine at position 4B2350 which looks exactly as sub_4B22A0, but with other (always lower) numbers. For some strange reason, changing these numbers did not have any effect. Maybe they're not used, at least not for the frequency of minor races.
These seem to be used after all as minimum minor race numbers.
Well, I've tested them again, and they're NOT used as minimum values.

If you wish, you can re-test this:
Set reference value to 30 minors.
Set presumed "minimum value" to 29 minors.
Set minor race density (pos. 0x17D668) to 0.01.
Run a few games and count your minors.

Posted: Sun Jul 19, 2009 2:10 pm
by Kyrfamor
Hi!
I am wondering, is there a possibilty to add a next minor race to a game? I.e. I am playing UDM III newest version and I would like to know, if there is a way, to add the bajorans to the game. I've tried to do a minor changes myself, and edited the bajoran system (home system of the Dominion) to Indra, and created a new star system and edited the name to Bajor. Now I have to add the bajorans to the game(as they are not in this version included), but Iam not sure,how to do this. Can anyone say, is this possible, and how to do this.
Thx

Posted: Sun Jul 19, 2009 2:25 pm
by Flocke
You'll have to edit an existing one, the number of minors is hardcoded ingame.

Re: Minor Race Frequency

Posted: Thu Dec 15, 2016 12:04 pm
by EnPhreg
Well, I've tested them again, and they're NOT used as minimum values.
i've also done several tests with the subroutine at position 4B2350 and after all it really seems to be a minimum value for the number of minor races placed at game start on the map. with both subroutines (sub_4B2350 & sub_4B22A0) you can adjust really exact how many minors occur.