System Size Boundaries

Galaxy Control Values; support/discussion/questions

Moderator: thunderchero

User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7849
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Re: System Size Boundaries

Post by thunderchero »

jonesie85two wrote:is this the info i need to make the additional major race starting planets have a minimum pop of 350 and a aximum of 650? (i have increased planet populations).
are you having problems reading the code or how to edit?

It plainly states that it will make those changes.
Gowron wrote:Additional Major Empire Starting Systems

Code: Select all

Offset    hex code                asm code

:004B4D3D 817C244CA00F0000        cmp dword[esp+4C], 0FA   // upper limit
----------
:004B4C6D 817C244C14050000        cmp dword[esp+4C], 00000514   // lower limit
----------
:004B4C7D 817C244C14050000        cmp dword[esp+4C], 00000514   // lower limit
----------
:004B4DFB 66837D6A07              cmp word[ebp+6A], 007   // maximum number of planets
The lower limit is 130 here, as well. Note that an additional major empire starting system will always get a class M planet (comparable to the home planet of a minor race).
thunderchero
User avatar
jonesie85two
Lieutenant-Commander
Lieutenant-Commander
Posts: 201
Joined: Sat Apr 26, 2008 2:00 am

Re: System Size Boundaries

Post by jonesie85two »

Honestly yes to both.

004B4C6D 817C244C14050000 cmp dword[esp+4C], 00000514 // lower limit

i understand that the first number is asm code that you convert to a hex location using UE. The second number is the 8 byte hex code that the previous address leads you too. Next i assume is the assembler instructions. I am unsure what the last number is (00000514).

Whilst i can easily find the 8 bytes of hex code in the trek.exe. I am unsure of what to change. 00000514 when converted through UE (4 byte integer(or 2 byte short)/big endian) gives me 1300 which is the lower limit (130). 1300 converted through UE (4 byte integer/little endian) gives me 14 05 00 00 which is identical to the last 4 bytes of the original 8 byte hex code.

So, if i change 14 05 00 00 (1300) (130 system pop lower limit) to A0 0F 00 00 (4000) it would give the additional major startem system of 400?

Whilst that altered number is large, i have increased the base pop levels of all planets using UE.
User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7849
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Re: System Size Boundaries

Post by thunderchero »

jonesie85two wrote:So, if i change 14 05 00 00 (1300) (130 system pop lower limit) to A0 0F 00 00 (4000) it would give the additional major startem system of 400?
correct

for new values use Integer (4 Bytes) in UE converter. You also need to change all 3 locations for each type (both lower and upper limits.

thunderchero
User avatar
jonesie85two
Lieutenant-Commander
Lieutenant-Commander
Posts: 201
Joined: Sat Apr 26, 2008 2:00 am

Re: System Size Boundaries

Post by jonesie85two »

thunderchero wrote:
jonesie85two wrote:So, if i change 14 05 00 00 (1300) (130 system pop lower limit) to A0 0F 00 00 (4000) it would give the additional major startem system of 400?
correct

for new values use Integer (4 Bytes) in UE converter. You also need to change all 3 locations for each type (both lower and upper limits.

thunderchero
bot of the lower limits to the same value and the upper limit so that it is higher than the lower limit?
Haleth
Ensign
Ensign
Posts: 23
Joined: Sat Sep 25, 2010 2:00 am
Location: Germany

Re: System Size Boundaries

Post by Haleth »

ok i dont get it

i have downloaded a hex editor and used him but i dont find the offsets

my offsets are too small for the most offsets that are showed in forum

my trex.exe ends whit 0x1B2DF0

what is my failure ?

wrong programm or preference ?

mfg
Haleth
User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7849
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Re: System Size Boundaries

Post by thunderchero »

Haleth wrote:my trex.exe ends whit 0x1B2DF0what is my failure ?wrong programm or preference ?
those are assembler offset.

use UE to convert them (tools/other/convert addresses)

thunderchero
Haleth
Ensign
Ensign
Posts: 23
Joined: Sat Sep 25, 2010 2:00 am
Location: Germany

Re: System Size Boundaries

Post by Haleth »

ok lets take a look

ok i try to change the max limit of a free system

offset 004B48bd

convert it to hex

hex: 0xb3cbd deci: 736445

817C244C100E00000F8E5BFFFFFF8B4424

817C244C100E0000

ok so far
but what now? im clueless.

0F8 is the vakue to change ?

depending on what i read above its 100E0000

sooo convertet whit the calculator in ue

its 3600 (360 population?)

and if i convert and replace there is no upper limit ?
Last edited by Haleth on Tue Jun 11, 2013 8:48 am, edited 1 time in total.
User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7849
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Re: System Size Boundaries

Post by thunderchero »

what are you editing? vanilla or a mod?

if you look below this part you will not change (hex code) 81 7C 24 4C

after that the is changeable code some mods have already changed these values so they may not match below.
Gowron wrote:UPDATE:


Free Systems

Code: Select all

Offset    hex code                asm code

:004B48BD 817C244CA00F0000        cmp dword[esp+4C], 0FA   // upper limit
----------
:004B4849 817C244C20030000        cmp dword[esp+4C], 00000320   // lower limit
----------
:004B485C 817C244C20030000        cmp dword[esp+4C], 00000320   // lower limit
----------
:004B492C 66837D6A07              cmp word[ebp+6A], 007   // maximum number of planets
The lower limit is stored twice. The "maximum number of planets" is used for the check if the game can add another planet to a system that does not reach the lower limit yet.


Minor Race Systems

Code: Select all

Offset    hex code                asm code

:004B4B0B 817C244CA00F0000        cmp dword[esp+4C], 0FA   // upper limit
----------
:004B4A43 817C244C14050000        cmp dword[esp+4C], 00000514   // lower limit
----------
:004B4A53 817C244C14050000        cmp dword[esp+4C], 00000514   // lower limit
----------
:004B4B7C 66837D6A07              cmp word[ebp+6A], 007   // maximum number of planets
The lower limit is 130 for minor race systems (stored as 0x514, i.e. 1300).
Note that the population capacity of the home planet does not count.


Additional Major Empire Starting Systems

Code: Select all

Offset    hex code                asm code

:004B4D3D 817C244CA00F0000        cmp dword[esp+4C], 0FA   // upper limit
----------
:004B4C6D 817C244C14050000        cmp dword[esp+4C], 00000514   // lower limit
----------
:004B4C7D 817C244C14050000        cmp dword[esp+4C], 00000514   // lower limit
----------
:004B4DFB 66837D6A07              cmp word[ebp+6A], 007   // maximum number of planets
The lower limit is 130 here, as well. Note that an additional major empire starting system will always get a class M planet (comparable to the home planet of a minor race).
Haleth
Ensign
Ensign
Posts: 23
Joined: Sat Sep 25, 2010 2:00 am
Location: Germany

Re: System Size Boundaries

Post by Haleth »

jepp i see

im editing a mod

slowly i understood maybe the language is also a barrier for me ^^

i editet my secound post a few times did that work as i discript it there ?

mfg

Haleth
Post Reply

Return to “Galaxy Control Values”