disassembler help/energy screen project

Energy Screen with 15+ Building Buttons + patchtool; support/discussion/questions

Moderator: thunderchero

User avatar
Peter1981
Rear-Admiral
Rear-Admiral
Posts: 1118
Joined: Tue May 06, 2008 2:00 am
Location: England

Post by Peter1981 »

yes i changed those as wee ;) but didn't make any diffrence.

as i understand it the data at unk_590A80 is only read at two seperate locations within trek.exe therefore the ctd must be caused in one of these two subroutines or the subroutines that either of these two call -- however really we need to understand the 'command code' better i.e. how and why trek.exe uses this.
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 »

Peter1981 wrote:yes i changed those as wee ;) but didn't make any diffrence.

as i understand it the data at unk_590A80 is only read at two seperate locations within trek.exe therefore the ctd must be caused in one of these two subroutines or the subroutines that either of these two call -- however really we need to understand the 'command code' better i.e. how and why trek.exe uses this.
I agree

Also I wish I could go back and change calling "command code" to "trek.exe object reference number"

while the 6A 09 00 00 ect would be called "wdf object reference number"

lol

thunderchero
User avatar
Peter1981
Rear-Admiral
Rear-Admiral
Posts: 1118
Joined: Tue May 06, 2008 2:00 am
Location: England

Post by Peter1981 »

cut, copy and paste image not in-game screen shot

it is definately to do with the trek.exe object number the current hurdle but maybe concentrate on just one line not two? maybe try to just get and eighth structure per line?
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 »

I don't think lines have any thing to do with it if you look at my image below this was ingame



the wdf just give the postion we could put them any where

thunderchero
User avatar
Peter1981
Rear-Admiral
Rear-Admiral
Posts: 1118
Joined: Tue May 06, 2008 2:00 am
Location: England

Post by Peter1981 »

so this brings us back directly to the wdf object reference number and the trek.exe object reference number , and it is the latter tht i think is cruical to understanding and solving the current stumbling block. I hope to work on this tomorrow.
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 »

also just a note if you notice the vanilla reference number go

defense images (7) in order
defense text (7) in order
special image (7) in order
special text (7) in order

when I have been setting up I have done same

defense images (14) in order
defense text (14) in order
special image (14) in order
special text (14) in order

thunderchero
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 »

I may have what is needed. It will take me some time to setup the trek.exe but I was able to use images and text from 2-7 positions without editing the unk or wdf in vanilla



everyone wish me luck

I have a few things to do real quick but am eager to get back to this.

thunderchero
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 »

:x :x :x :x :x :x :x :x :x :x :x :x :x :x

It failed :cry: :cry: :cry: :cry: :cry: :cry: :cry:

I really thought I had it this time and maybe with so more work I will find it.

here is what I found and attempted.

at

0xf1289 90 01 00 00 defence image set reference
0xf1314 AC 01 00 00 defence text set reference
0xf13b4 AC 01 00 00 defence text set reference
0xf1577 AC 01 00 00 defence text set reference
0xf13e1 C8 01 00 00 special image set reference
0xf146c E4 01 00 00 special text set reference
0xf150c E4 01 00 00 special text set reference
0xf1547 E4 01 00 00 special text set reference

But when I changed the unk values to something completely different so they would not conflict with the other objects in that section I get non-responsive CTD at galaxy generation.

what I changed it to was

in unk for trek.exe object reference numbers
00 03 00 00 - 34 03 00 00
70 03 00 00 - A4 03 00 00
38 03 00 00 - 6C 03 00 00
A8 03 00 00 - DC 03 00 00

then in reference locations above I changed them to match.

and set at

0xf125f (special) 07 -> 0E (14)

and

0xf127d (defense) 07 -> 0E (14)

could some one tell me if I am correct in assuming the statement below would jump by 4

90 01 00 00 to 94 01 00 00?

Code: Select all

mov     esi, [ecx+eax*4+190h]
if so what would hex code be to make it jump 2

90 01 00 00 to 92 01 00 00

sorry to ask but I understand little (none) about ecx, eax

I just fly by the seat of my pants and a lot of trial and error :wink:

thunderchero
User avatar
Peter1981
Rear-Admiral
Rear-Admiral
Posts: 1118
Joined: Tue May 06, 2008 2:00 am
Location: England

Post by Peter1981 »

a mov statement just moves data (i.e. copy and paste) so its not a jump command (i'm not an expert tho!) hope that helps a little tc.


whoa -- gonna work on this -- you are really finding some gems in the tc. I wish i could find even just a small gem ;)

good luck - hang tough.
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 »

after creating a list of these references I wonder if all are needed maybe you would know.

mov esi, [ecx+eax*4+300h] 8B B4 81 00 03 00 00
mov ebx, [ecx+edx*4+338h] 8B 9C 91 38 03 00 00
mov eax, [ecx+eax*4+338h] 8B 84 81 38 03 00 00
mov esi, [ecx+eax*4+370h] 8B B4 81 70 03 00 00
mov ebx, [ecx+ebx*4+3A8h] 8B 9C 99 A8 03 00 00
mov eax, [ecx+eax*4+3A8h] 8B 84 81 A8 03 00 00
mov eax, [ecx+eax*4+3A8h] 8B 84 81 A8 03 00 00
mov eax, [ecx+eax*4+338h] 8B 84 81 38 03 00 00

these are all edited unk locations

thunderchero
User avatar
Peter1981
Rear-Admiral
Rear-Admiral
Posts: 1118
Joined: Tue May 06, 2008 2:00 am
Location: England

Post by Peter1981 »

did you change the references in both trek.exe and *senergy.wdf TC?
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 »

Peter1981 wrote:a mov statement just moves data (i.e. copy and paste) so its not a jump command (i'm not an expert tho!) hope that helps a little tc.
ok jump was a bad term

mov esi, [ecx+eax*4+300h] 8B B4 81 00 03 00 00

300h = start point value

*4 = move 4 for next object 90 01 00 00 to 94 01 00 00 until max allowed

esi, [ecx+eax = how to find start point?

I am just guessing on all this.

thunderchero
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 »

Peter1981 wrote:did you change the references in both trek.exe and *senergy.wdf TC?
From last set of files I uploaded I have not changed anything in wdf files. since the wdf reference is in unk it should stay the same.

first energy structure image unk data
0D 00 00 00 B0 09 00 00 90 01 00 00

0D 00 00 00 = type 0D = image 0E = text 02 = button 07 = slider

B0 09 00 00 = always same data in wdf and unk of trek.exe

90 01 00 00 = this data is only in trek.exe

thunderchero
User avatar
Peter1981
Rear-Admiral
Rear-Admiral
Posts: 1118
Joined: Tue May 06, 2008 2:00 am
Location: England

Post by Peter1981 »

Code: Select all

trek.exe  offset [OLD]  Description                 offset [new]
0xf1289   90 01 00 00	defence image set reference 09 01 00 00
0xf1314   AC 01 00 00	defence text set reference  C8 01 00 00
0xf13b4   AC 01 00 00	defence text set reference  C8 01 00 00
0xf1577   AC 01 00 00	defence text set reference  C8 01 00 00
0xf13e1   C8 01 00 00	special image set reference 00 02 00 00
0xf146c   E4 01 00 00	special text set reference  38 02 00 00
0xf150c   E4 01 00 00	special text set reference  38 02 00 00
0xf1547   E4 01 00 00	special text set reference  38 02 00 00

Code: Select all

OLD          NEW             Command [OLD]   Command [NEW]   Description             Old        New	hex		
60 09 00 00  60 09 00 00     00 02 00 00     70 02 00 00     Energy Managment text   512	624	0270	
61 09 00 00  61 09 00 00     04 02 00 00     74 02 00 00     Special text            516	628	0274	
62 09 00 00  62 09 00 00     08 02 00 00     78 02 00 00     Defence text            520	632	0278	
63 09 00 00  63 09 00 00     0C 02 00 00     7C 02 00 00     Orbital Batteries text  524	636	027C	
66 09 00 00  66 09 00 00     10 02 00 00     80 02 00 00     Energy text             528	640	0280	
9C 09 00 00  9C 09 00 00     14 02 00 00     84 02 00 00     *s_sdrl.tga button      532	644	0284	
9D 09 00 00  9D 09 00 00     18 02 00 00     88 02 00 00     *s_sdrr.tga button      536	648	0288	
64 09 00 00  64 09 00 00     7C 01 00 00     7c 01 00 00     *s_sld30.tga slide      380			
65 09 00 00  65 09 00 00     78 01 00 00     78 01 00 00     *s_sld31.tga slide      376			
A0 09 00 00  A0 09 00 00     20 02 00 00     90 02 00 00     orbital battery image   544	656	0290	
			
6A 09 00 00  B0 09 00 00     90 01 00 00     90 01 00 00     structure 1 row 1 image 400	400	0190	
6B 09 00 00  B1 09 00 00     94 01 00 00     94 01 00 00     structure 2 row 1 image 404	404	0194	
6C 09 00 00  B2 09 00 00     98 01 00 00     98 01 00 00     structure 3 row 1 image 408	408	0198	
6D 09 00 00  B3 09 00 00     9C 01 00 00     9C 01 00 00     structure 4 row 1 image 412	412	019C	
6E 09 00 00  B4 09 00 00     A0 01 00 00     A0 01 00 00     structure 5 row 1 image 416	416	01A0	
6F 09 00 00  B5 09 00 00     A4 01 00 00     A4 01 00 00     structure 6 row 1 image 420	420	01A4	
70 09 00 00  B6 09 00 00     A8 01 00 00     A8 01 00 00     structure 7 row 1 image 424	424	01A8	
			
             C0 09 00 00     90 01 00 00     AC 01 00 00     structure 1 row 2 image 		428	01AC
             C1 09 00 00     94 01 00 00     B0 01 00 00     structure 2 row 2 image 		432	01B0
             C2 09 00 00     98 01 00 00     B4 01 00 00     structure 3 row 2 image 		436	01B4
             C3 09 00 00     9C 01 00 00     B8 01 00 00     structure 4 row 2 image 		440	01B8
             C4 09 00 00     A0 01 00 00     BC 01 00 00     structure 5 row 2 image 		444	01BC
             C5 09 00 00     A4 01 00 00     C0 01 00 00     structure 6 row 2 image 		448	01C0
             C6 09 00 00     A8 01 00 00     C4 01 00 00     structure 7 row 2 image 		452	01C4
			
7E 09 00 00  D0 09 00 00     C8 01 00 00     00 02 00 00     structure 1 row 3 image 456	512	0200	
7F 09 00 00  D1 09 00 00     CC 01 00 00     04 02 00 00     structure 2 row 3 image 460	516	0204	
80 09 00 00  D2 09 00 00     D0 01 00 00     08 02 00 00     structure 3 row 3 image 464	520	0208	
81 09 00 00  D3 09 00 00     D4 01 00 00     0C 02 00 00     structure 4 row 3 image 468	524	020C	
82 09 00 00  D4 09 00 00     D8 01 00 00     10 02 00 00     structure 5 row 3 image 472	528	0210	
83 09 00 00  D5 09 00 00     DC 01 00 00     14 02 00 00     structure 6 row 3 image 476	532	0214	
84 09 00 00  D6 09 00 00     E0 01 00 00     18 02 00 00     structure 7 row 3 image 480	536	0218
			
             E0 09 00 00     C8 01 00 00     1C 02 00 00     structure 1 row 4 image 		540	021C
             E1 09 00 00     CC 01 00 00     20 02 00 00     structure 2 row 4 image 		544	0220
             E2 09 00 00     D0 01 00 00     24 02 00 00     structure 3 row 4 image 		548	0224
             E3 09 00 00     D4 01 00 00     28 02 00 00     structure 4 row 4 image 		552	0228
             E4 09 00 00     D8 01 00 00     2C 02 00 00     structure 5 row 4 image 		556	022C
             E5 09 00 00     DC 01 00 00     30 02 00 00     structure 6 row 4 image 		560	0230
             E6 09 00 00     E0 01 00 00     34 02 00 00     structure 7 row 4 image 		564	0234
			
74 09 00 00  B8 09 00 00     AC 01 00 00     C8 01 00 00     structure 1 row 1 text 428		456	01C8
75 09 00 00  B9 09 00 00     B0 01 00 00     CC 01 00 00     structure 2 row 1 text 432		460	01CC
76 09 00 00  BA 09 00 00     B4 01 00 00     D0 01 00 00     structure 3 row 1 text 436		464	01D0
77 09 00 00  BB 09 00 00     B8 01 00 00     D4 01 00 00     structure 4 row 1 text 440		468	01D4
78 09 00 00  BC 09 00 00     BC 01 00 00     D8 01 00 00     structure 5 row 1 text 444		472	01D8
79 09 00 00  BD 09 00 00     C0 01 00 00     DC 01 00 00     structure 6 row 1 text 448		476	01DC
7A 09 00 00  BE 09 00 00     C4 01 00 00     E0 01 00 00     structure 7 row 1 text 452		480	01E0
			
             C8 09 00 00     AC 01 00 00     E4 01 00 00     structure 1 row 2 text 		484	01E4
             C9 09 00 00     B0 01 00 00     E8 01 00 00     structure 2 row 2 text 		488	01E8
             CA 09 00 00     B4 01 00 00     EC 01 00 00     structure 3 row 2 text 		492	01EC
             CB 09 00 00     B8 01 00 00     F0 01 00 00     structure 4 row 2 text 		496	01F0
             CC 09 00 00     BC 01 00 00     F4 01 00 00     structure 5 row 2 text 		500	01F4
             CD 09 00 00     C0 01 00 00     F8 01 00 00     structure 6 row 2 text 		504	01F8
             CE 09 00 00     C4 01 00 00     FC 01 00 00     structure 7 row 2 text 		508	01FC
			
88 09 00 00  D8 09 00 00     E4 01 00 00     38 02 00 00     structure 1 row 3 text 484		568	0238
89 09 00 00  D9 09 00 00     E8 01 00 00     3C 02 00 00     structure 2 row 3 text 488		572	023C
8A 09 00 00  DA 09 00 00     EC 01 00 00     40 02 00 00     structure 3 row 3 text 492		576	0240
8B 09 00 00  DB 09 00 00     F0 01 00 00     44 02 00 00     structure 4 row 3 text 496		580	0244
8C 09 00 00  DC 09 00 00     F4 01 00 00     48 02 00 00     structure 5 row 3 text 500		584	0248
8D 09 00 00  DD 09 00 00     F8 01 00 00     4C 02 00 00     structure 6 row 3 text 504		588	024C
8E 09 00 00  DE 09 00 00     FC 01 00 00     50 02 00 00     structure 7 row 3 text 508		592	0250
			
             E8 09 00 00     E4 01 00 00     54 02 00 00     structure 1 row 4 text 		596	0254
             E9 09 00 00     E8 01 00 00     58 02 00 00     structure 2 row 4 text 		600	0258
             EA 09 00 00     EC 01 00 00     5C 02 00 00     structure 3 row 4 text 		604	025C
             EB 09 00 00     FO 01 00 00     60 02 00 00     structure 4 row 4 text 		608	0260
             EC 09 00 00     F4 01 00 00     64 02 00 00     structure 5 row 4 text 		612	0264
             ED 09 00 00     F8 01 00 00     68 02 00 00     structure 6 row 4 text 		616	0268
             EE 09 00 00     FC 01 00 00     6C 02 00 00     structure 7 row 4 text		620	026C
Is this close to what you tried TC? -- When I try this I get CTD on game launch?
Last edited by Peter1981 on Sun Jul 03, 2011 6:16 pm, edited 1 time in total.
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 »

I did not change any of the first 10 objects (Buttons, sliders, and odd text and image) I changed only the 28 energy structures (image and text)

I did not have reference locations for those objects. so I started with 00 03 00 00 so to not conflict with other objects.

thunderchero
Post Reply

Return to “Energy Screen with 15+ Building Buttons + patchtool”