Minor Race Frequency

Minor Race Frequency; support/discussion/questions

Moderator: thunderchero

Post Reply
User avatar
Gowron
Code Master
Code Master
Posts: 304
Joined: Sat Apr 26, 2008 2:00 am
Location: 50° N, 11° E

Minor Race Frequency

Post 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.
Last edited by Gowron on Wed Apr 08, 2009 2:57 am, edited 1 time in total.
A discovery consists in seeing something everybody has seen and at the same time thinking something nobody has thought yet.
User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7848
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Post 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
User avatar
Spocks-cuddly-tribble
Code Master
Code Master
Posts: 1883
Joined: Sun Apr 27, 2008 2:00 am

Post 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)
I don't know how many bugs is too many but that point is reached somewhere before however many in BotF is.
User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7848
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Post by thunderchero »

thanks Spocks-cuddly-tribble,

it worked perfect.

thunderchero
User avatar
DCER
Code Master
Code Master
Posts: 683
Joined: Sat Apr 26, 2008 2:00 am

Re: Minor Race Frequency

Post 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
User avatar
Gowron
Code Master
Code Master
Posts: 304
Joined: Sat Apr 26, 2008 2:00 am
Location: 50° N, 11° E

Re: Minor Race Frequency

Post 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.
A discovery consists in seeing something everybody has seen and at the same time thinking something nobody has thought yet.
User avatar
Kyrfamor
Cadet 2nd Year
Cadet 2nd Year
Posts: 8
Joined: Wed Nov 26, 2008 3:00 am

Post 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
User avatar
Flocke
BORG Trouble Maker
BORG Trouble Maker
Posts: 3194
Joined: Sun Apr 27, 2008 2:00 am
Location: Hamburg, Germany
Contact:

Post by Flocke »

You'll have to edit an existing one, the number of minors is hardcoded ingame.
User avatar
EnPhreg
Lieutenant-Commander
Lieutenant-Commander
Posts: 130
Joined: Thu Jul 10, 2008 2:00 am

Re: Minor Race Frequency

Post 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.
Post Reply

Return to “Minor Race Frequency”