Spocks-cuddly-tribble wrote:Wrt to trek.exe this is good news, since it indicates a wdf file only problem. Your analysis of wdf seems incomplete i.e. there must be internal format limitations, counter, pointers or something else, that have to be adapted.
Also BotF loads & checks many important files at game start rep. when loading a savegame.
Thanks, you made me go back and analyze the wdf file a little more.
It got us a little further.
With edited WDF I can now get into game. But hangs up when selecting build/F2 screen.
at 0x29 of wdf file change 26 to 2A (total objects used)
at 0x5d of wdf file change 0F to 11 (total image objects used)
at 0x61 of wdf file change 13 to 15 (total text objects used)
I will post a complete analysis of the hsenergy.wdf (vanilla unedited with every thing I know) later tonight.
EDIT
This is what I know about
hsenergy.wdf unedited
0x00 02 00 00 00
0x04 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x14 BB 01 00 00
(size of main tga file width)
0x18 C6 01 00 00
(size of main tga file height)
0x1c 68 73 5F 65 6E 62 6B 67 2E 74 67 61 20
(main tga file used)
0x29 26 00 00 00
(total objects used)
0x2d 00 00 00 00
0x31 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
(02 00 00 00 might be total buttons used?) untested
0x45 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
(02 00 00 00 might be total sliders used?) untested
0x5d 0F 00 00 00
(total image objects used)
0x61 13 00 00 00
(total text objects used)
0x64 00 00 00 00
0x69 02 00 00 00
(02 is code used button)
0x6d 9D 09 00 00
(code to idenify object)
0x71 8B 01 00 00
(placement of top right pixel from right edge of *senbkg.tga)
0x75 4F 01 00 00
(placement of top right pixel from top edge of *senbkg.tga)
0x79 0D 00 00 00
(width of area in pixels to be used)
0x7d 10 00 00 00
(height of area in pixels to be used)
0x81 48 73 5F 73 64 72 72 2E 74 67 61 20 20
(tga file used)
0x8e FF FF FF FF 00 00 00 00 00 00 00 00 00
0x9b 48 73 5F 73 64 72 72 2E 74 67 61 20 20
(tga file used)
0xa8 68 73 5F 73 64 72 72 6F 2E 74 67 61 20
(tga file used)
0xa5 02 00 00 00
(02 is code used button)
0xb9 9C 09 00 00
(code to idenify object)
0xbd BA 00 00 00
(placement of top right pixel from right edge of *senbkg.tga)
0xc1 4F 01 00 00
(placement of top right pixel from top edge of *senbkg.tga)
0xc5 0D 00 00 00
(width of area in pixels to be used)
0xc9 10 00 00 00
(height of area in pixels to be used)
0xcd 48 73 5F 73 64 72 6C 2E 74 67 61 20 20
(tga file used)
0xda FF FF FF FF 00 00 00 00 00 00 00 00 00
0xe7 48 73 5F 64 72 6C 2E 74 67 61 20 20
(tga file used)
0xf4 68 73 5F 73 64 72 6C 6F 2E 74 67 61 20
(tga file used)
0x101 07 00 00 00
(07 is code used slider)
0x105 64 09 00 00
(code to idenify object)
0x109 CE 00 00 00
(placement of top right pixel from right edge of *senbkg.tga)
0x10d 4F 01 00 00
(placement of top right pixel from top edge of *senbkg.tga)
0x111 B6 00 00 00
(width of area in pixels to be used)
0x115 10 00 00 00
(height of area in pixels to be used)
0x119 48 73 5F 73 6C 64 33 30 2E 74 67 61 20
(tga file used)
0x126 00 00
0x128 5B 00 00 00
0x12c 5B 00 00 00
0x130 B6 00 00 00
(width of area in pixels to be used)
0x134 00 00 00 00
0x138 48 73 5F 73 6C 64 33 30 2E 74 67 61 20
(tga file used)
0x145 48 73 5F 73 6C 64 33 31 2E 74 67 61 20
(tga file used)
0x152 6E 6F 6E 65 20 20 20 20 20 20 20 20 20
0x15f 6E 6F 6E 65 20 20 20 20 20 20 20 20 20
0x16c 10 00 00 00
(height of area in pixels to be used)
0x170 00 00 00 00 00 00 00 00 00
0x178 07 00 00 00
(07 is code used slider)
0x17c 65 09 00 00
(code to idenify object)
0x180 CE 00 00 00
(placement of top right pixel from right edge of *senbkg.tga)
0x184 86 01 00 00
(placement of top right pixel from top edge of *senbkg.tga)
0x188 B6 00 00 00
(width of area in pixels to be used)
0x18c 10 00 00 00
(height of area in pixels to be used)
0x190 48 73 5F 73 6C 64 33 30 2E 74 67 61 20
(tga file used)
0x19d 00 00
0x19f 5B 00 00 00
0x1a3 5B 00 00 00
0x1a7 B6 00 00 00
(width of area in pixels to be used)
0x1ab 00 00 00 00
0x1af 48 73 5F 73 6C 64 33 30 2E 74 67 61 20 (tga file used)
0x1bc 49 73 5F 73 6C 64 33 31 2E 74 67 61 20 (tga file used)
0x1c9 6E 6F 6E 65 20 20 20 20 20 20 20 20 20
0x1d6 6E 6F 6E 65 20 20 20 20 20 20 20 20 20
0x1e3 10 00 00 00 00 00 00 00 00 00 00 00 (height of area in pixels to be used)
Image data area
starts 0x1ef - 0x455
it has 15 objects total 14 of them are for energy images.
other 1 is for orbital battery image
41 bytes of data each
0x1ef 0D 00 00 00 (0D is code used for images)
0x1f3 6A 09 00 00 (code to idenify object)
0x1f7 50 00 00 00 (placement of top right pixel from right edge of *senbkg.tga)
0x1fb 5A 00 00 00 (placement of top right pixel from top edge of *senbkg.tga)
0x1ff 1E 00 00 00 (width of area in pixels to be used)
0x203 1E 00 00 00 (height of area in pixels to be used)
0x207 6E 6F 6E 65 20 20 20 20 20 20 20 20 20
0x214 FF FF FF FF
text data area
starts 0x456 - 0xbd4
it has 19 objects total. 14 of them are used for energy value used.
101 bytes of data each.
0x456 0E 00 00 00 (0E is code used for text)
0x45a 60 09 00 00 (code to idenify object)
0x45e 47 00 00 00 (placement of top right pixel from right edge of *senbkg.tga)
0x462 23 00 00 00 (placement of top right pixel from top edge of *senbkg.tga)
0x466 AA 00 00 00 (width of area in pixels to be used)
0x46a 16 00 00 00 (height of area in pixels to be used)
0x46e 6E 6F 6E 65 20 20 20 20 20 20 20 20 20
0x47b 00 00 00 00 00 00 00 00
0x483 AA 00 00 00 (width of area in pixels to be used)
0x487 16 00 00 00 (height of area in pixels to be used)
0x48b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x4ae 68 75 6D 61 6E 31 35 2E 66 6E 74 20 20 (font file used)
EDIT
I hope this might help someone I have no idea what it means.
when I ran debugger in ida pro when I clicked to enter build "F2" screen game will freeze and go non responsive. And I get this message in debugger.
Code: Select all
trek.exe: The instruction at 0x540607 referenced memory at 0x2E353176. The memory could not be read (0x00540607 -> 2E353176)
I also took some screen shots here is 1 image.
I hope this might help someone
Edit I thought I would try 2 other different possible ways.
first test - I removed the 14 text from wdf and from trek.exe. all known pointer reset crashed/froze at same point when entering F2 screen.
second test - removed the 14 text from wdf and replaced them with 14 images (using the text codes from wdf and trek.exe from text) and reset all known pointer. crashed/froze at same point when entering F2 screen.
I figure if we used only images we could increase size of image and add a permanent energy requirement value below image.
thunderchero