Jump to content

R8 and R16 Graphics


D2k Sardaukar

Recommended Posts

So... do you have any idea what you're actually changing?

It's under the [unrevealed Terrain] code part, but is has more to do with the ground tiles vs building/units locations. The loaded value determines at what location from the top and left the ground tiles start in respect to the battleview. The original line is copy memory from the address [004E41DC], this has the value 14, but by changing it to the address [004E41DD] that contains such a heigh value it doesn't refresh the tiles and you get artistic effects.

 

Kinda figured that just out by looking at the code and changing the values.

Edited by D2k Sardaukar
  • Upvote 2
Link to comment
Share on other sites

Ah. It's just that I've seen the pretty questionable "randomly edit bytes in the exe until something happens ingame" approach here. I wasn't even sure a dissassembler would be involved :P

Would be more fun if you posted the ASM code, though :D

Link to comment
Share on other sites

Ah. It's just that I've seen the pretty questionable "randomly edit bytes in the exe until something happens ingame" approach here. I wasn't even sure a dissassembler would be involved :P

Would be more fun if you posted the ASM code, though :D

There is a lot of jumping and I can't get the code to display comments with the values, I'm not sure if it's useful to you.

00423D20  /$ 83EC 28        SUB ESP,2800423D23  |. 53             PUSH EBX00423D24  |. 8B1D 38857900  MOV EBX,DWORD PTR DS:[798538]00423D2A  |. 8BC3           MOV EAX,EBX00423D2C  |. 55             PUSH EBP00423D2D  |. 99             CDQ00423D2E  |. 33C2           XOR EAX,EDX00423D30  |. 56             PUSH ESI00423D31  |. 2BC2           SUB EAX,EDX00423D33  |. 57             PUSH EDI00423D34  |. 8B3D 3C857900  MOV EDI,DWORD PTR DS:[79853C]00423D3A  |. 83E0 1F        AND EAX,1F00423D3D  |. 33C2           XOR EAX,EDX00423D3F  |. C74424 28 0000>MOV DWORD PTR SS:[ESP+28],000423D47  |. 8BF0           MOV ESI,EAX00423D49  |. 8BC7           MOV EAX,EDI00423D4B  |. 2BF2           SUB ESI,EDX00423D4D  |. 99             CDQ00423D4E  |. 33C2           XOR EAX,EDX00423D50  |. 897424 1C      MOV DWORD PTR SS:[ESP+1C],ESI00423D54  |. 2BC2           SUB EAX,EDX00423D56  |. 83E0 1F        AND EAX,1F00423D59  |. 33C2           XOR EAX,EDX00423D5B  |. 8BC8           MOV ECX,EAX00423D5D  |. A1 DC414E00    MOV EAX,DWORD PTR DS:[4E41DC]	00423D62  |. 2BCA           SUB ECX,EDX00423D64  |. 8B15 486D7800  MOV EDX,DWORD PTR DS:[786D48]00423D6A  |. 895424 30      MOV DWORD PTR SS:[ESP+30],EDX00423D6E  |. 8B15 38C56D00  MOV EDX,DWORD PTR DS:[6DC538]00423D74  |. 894424 2C      MOV DWORD PTR SS:[ESP+2C],EAX00423D78  |. 03C2           ADD EAX,EDX00423D7A  |. 894424 34      MOV DWORD PTR SS:[ESP+34],EAX00423D7E  |. 8BC7           MOV EAX,EDI00423D80  |. 2BC1           SUB EAX,ECX00423D82  |. 894C24 24      MOV DWORD PTR SS:[ESP+24],ECX00423D86  |. 99             CDQ00423D87  |. 83E2 1F        AND EDX,1F00423D8A  |. 03C2           ADD EAX,EDX00423D8C  |. 8BF8           MOV EDI,EAX00423D8E  |. 8BC3           MOV EAX,EBX00423D90  |. 2BC6           SUB EAX,ESI00423D92  |. 8BD9           MOV EBX,ECX00423D94  |. 99             CDQ00423D95  |. 83E2 1F        AND EDX,1F00423D98  |. C1FF 05        SAR EDI,500423D9B  |. 03C2           ADD EAX,EDX00423D9D  |. 8B14BD F07D540>MOV EDX,DWORD PTR DS:[EDI*4+547DF0]00423DA4  |. C1F8 05        SAR EAX,500423DA7  |. 03D0           ADD EDX,EAX00423DA9  |. 03F8           ADD EDI,EAX00423DAB  |. A1 38C56D00    MOV EAX,DWORD PTR DS:[6DC538]00423DB0  |. 2BC1           SUB EAX,ECX00423DB2  |. 8D1452         LEA EDX,DWORD PTR DS:[EDX+EDX*2]00423DB5  |. F7DB           NEG EBX00423DB7  |. 83C0 20        ADD EAX,2000423DBA  |. 8D2C95 F07D510>LEA EBP,DWORD PTR DS:[EDX*4+517DF0]00423DC1  |. 3BD8           CMP EBX,EAX00423DC3  |. 0F8D D7010000  JGE DUNE2000.00423FA000423DC9  |. F7DE           NEG ESI00423DCB  |. 897424 20      MOV DWORD PTR SS:[ESP+20],ESI00423DCF  |. EB 04          JMP SHORT DUNE2000.00423DD500423DD1  |> 8B7424 20      /MOV ESI,DWORD PTR SS:[ESP+20]00423DD5  |> A1 486D7800     MOV EAX,DWORD PTR DS:[786D48]00423DDA  |. 8B5424 1C      |MOV EDX,DWORD PTR SS:[ESP+1C]00423DDE  |. 8BC8           |MOV ECX,EAX00423DE0  |. 2BCA           |SUB ECX,EDX00423DE2  |. 83C1 20        |ADD ECX,2000423DE5  |. 3BF1           |CMP ESI,ECX00423DE7  |. 0F8D 7E010000  |JGE DUNE2000.00423F6B00423DED  |. 8D57 10        |LEA EDX,DWORD PTR DS:[EDI+10]00423DF0  |. 895424 10      |MOV DWORD PTR SS:[ESP+10],EDX00423DF4  |> 33C0           |/XOR EAX,EAX00423DF6  |. 8A45 08        ||MOV AL,BYTE PTR SS:[EBP+8]00423DF9  |. 99             ||CDQ00423DFA  |. 33C2           ||XOR EAX,EDX00423DFC  |. 2BC2           ||SUB EAX,EDX00423DFE  |. 83E0 0F        ||AND EAX,0F00423E01  |. 33C2           ||XOR EAX,EDX00423E03  |. 2BC2           ||SUB EAX,EDX00423E05  |. 83F8 01        ||CMP EAX,100423E08  |. 0F84 35010000  ||JE DUNE2000.00423F4300423E0E  |. 8B15 DC414E00  ||MOV EDX,DWORD PTR DS:[4E41DC]		: 14 (here is the change)00423E14  |. 33C0           ||XOR EAX,EAX00423E16  |. 66:8B45 00     ||MOV AX,WORD PTR SS:[EBP]00423E1A  |. 8B0C85 589B6D0>||MOV ECX,DWORD PTR DS:[EAX*4+6D9B58]00423E21  |. 8D0413         ||LEA EAX,DWORD PTR DS:[EBX+EDX]00423E24  |. 8B5424 3C      ||MOV EDX,DWORD PTR SS:[ESP+3C]00423E28  |. 51             ||PUSH ECX00423E29  |. 50             ||PUSH EAX00423E2A  |. 8D4C24 30      ||LEA ECX,DWORD PTR SS:[ESP+30]00423E2E  |. 56             ||PUSH ESI00423E2F  |. 51             ||PUSH ECX00423E30  |. 52             ||PUSH EDX00423E31  |. E8 9AE40000    ||CALL DUNE2000.004322D000423E36  |. 8A45 09        ||MOV AL,BYTE PTR SS:[EBP+9]00423E39  |. 83C4 14        ||ADD ESP,1400423E3C  |. 3C 10          ||CMP AL,1000423E3E  |. 0F86 FF000000  ||JBE DUNE2000.00423F4300423E44  |. C0E8 04        ||SHR AL,400423E47  |. 884424 14      ||MOV BYTE PTR SS:[ESP+14],AL00423E4B  |. 8BC7           ||MOV EAX,EDI00423E4D  |. 99             ||CDQ00423E4E  |. 33C2           ||XOR EAX,EDX00423E50  |. 2BC2           ||SUB EAX,EDX00423E52  |. 83E0 01        ||AND EAX,100423E55  |. 33C2           ||XOR EAX,EDX00423E57  |. 2BC2           ||SUB EAX,EDX00423E59  |. C0E0 04        ||SHL AL,400423E5C  |. 884424 18      ||MOV BYTE PTR SS:[ESP+18],AL00423E60  |. 8B45 04        ||MOV EAX,DWORD PTR SS:[EBP+4]00423E63  |. F6C4 80        ||TEST AH,8000423E66  |. 74 67          ||JE SHORT DUNE2000.00423ECF00423E68  |. 8B4424 14      ||MOV EAX,DWORD PTR SS:[ESP+14]00423E6C  |. 8B4C24 18      ||MOV ECX,DWORD PTR SS:[ESP+18]00423E70  |. 25 FF000000    ||AND EAX,0FF00423E75  |. 81E1 FF000000  ||AND ECX,0FF00423E7B  |. 03C1           ||ADD EAX,ECX00423E7D  |. 6A 01          ||PUSH 100423E7F  |. 6A 01          ||PUSH 100423E81  |. 8B0D DC414E00  ||MOV ECX,DWORD PTR DS:[4E41DC]00423E87  |. 8B14C5 E87B6D0>||MOV EDX,DWORD PTR DS:[EAX*8+6D7BE8]00423E8E  |. 8B4424 18      ||MOV EAX,DWORD PTR SS:[ESP+18]00423E92  |. 52             ||PUSH EDX00423E93  |. 99             ||CDQ00423E94  |. 33C2           ||XOR EAX,EDX00423E96  |. 2BC2           ||SUB EAX,EDX00423E98  |. 83E0 0F        ||AND EAX,0F00423E9B  |. 33C2           ||XOR EAX,EDX00423E9D  |. 2BC2           ||SUB EAX,EDX00423E9F  |. 8B0485 D82E500>||MOV EAX,DWORD PTR DS:[EAX*4+502ED8]00423EA6  |. 03C3           ||ADD EAX,EBX00423EA8  |. 03C1           ||ADD EAX,ECX00423EAA  |. 50             ||PUSH EAX00423EAB  |. 8BC7           ||MOV EAX,EDI00423EAD  |. 99             ||CDQ00423EAE  |. 33C2           ||XOR EAX,EDX00423EB0  |. 2BC2           ||SUB EAX,EDX00423EB2  |. 83E0 0F        ||AND EAX,0F00423EB5  |. 33C2           ||XOR EAX,EDX00423EB7  |. 2BC2           ||SUB EAX,EDX00423EB9  |. 8D5424 38      ||LEA EDX,DWORD PTR SS:[ESP+38]00423EBD  |. 8B0C85 883F500>||MOV ECX,DWORD PTR DS:[EAX*4+503F88]00423EC4  |. 8B4424 4C      ||MOV EAX,DWORD PTR SS:[ESP+4C]00423EC8  |. 03CE           ||ADD ECX,ESI00423ECA  |. 51             ||PUSH ECX00423ECB  |. 52             ||PUSH EDX00423ECC  |. 50             ||PUSH EAX00423ECD  |. EB 6C          ||JMP SHORT DUNE2000.00423F3B00423ECF  |> A9 00000100    ||TEST EAX,1000000423ED4  |. 74 6D          ||JE SHORT DUNE2000.00423F4300423ED6  |. 8B4C24 14      ||MOV ECX,DWORD PTR SS:[ESP+14]00423EDA  |. 8B5424 18      ||MOV EDX,DWORD PTR SS:[ESP+18]00423EDE  |. 81E1 FF000000  ||AND ECX,0FF00423EE4  |. 81E2 FF000000  ||AND EDX,0FF00423EEA  |. 03CA           ||ADD ECX,EDX00423EEC  |. 6A 01          ||PUSH 100423EEE  |. 6A 01          ||PUSH 100423EF0  |. 8B04CD EC7B6D0>||MOV EAX,DWORD PTR DS:[ECX*8+6D7BEC]00423EF7  |. 50             ||PUSH EAX00423EF8  |. 8B4424 1C      ||MOV EAX,DWORD PTR SS:[ESP+1C]00423EFC  |. 99             ||CDQ00423EFD  |. 33C2           ||XOR EAX,EDX00423EFF  |. 2BC2           ||SUB EAX,EDX00423F01  |. 83E0 0F        ||AND EAX,0F00423F04  |. 33C2           ||XOR EAX,EDX00423F06  |. 2BC2           ||SUB EAX,EDX00423F08  |. 8B0C85 D82E500>||MOV ECX,DWORD PTR DS:[EAX*4+502ED8]00423F0F  |. A1 DC414E00    ||MOV EAX,DWORD PTR DS:[4E41DC]00423F14  |. 03CB           ||ADD ECX,EBX00423F16  |. 03C8           ||ADD ECX,EAX00423F18  |. 8BC7           ||MOV EAX,EDI00423F1A  |. 99             ||CDQ00423F1B  |. 33C2           ||XOR EAX,EDX00423F1D  |. 51             ||PUSH ECX00423F1E  |. 2BC2           ||SUB EAX,EDX00423F20  |. 8B4C24 4C      ||MOV ECX,DWORD PTR SS:[ESP+4C]00423F24  |. 83E0 0F        ||AND EAX,0F00423F27  |. 33C2           ||XOR EAX,EDX00423F29  |. 2BC2           ||SUB EAX,EDX00423F2B  |. 8B1485 883F500>||MOV EDX,DWORD PTR DS:[EAX*4+503F88]00423F32  |. 8D4424 38      ||LEA EAX,DWORD PTR SS:[ESP+38]00423F36  |. 03D6           ||ADD EDX,ESI00423F38  |. 52             ||PUSH EDX00423F39  |. 50             ||PUSH EAX00423F3A  |. 51             ||PUSH ECX00423F3B  |> E8 30C80000    ||CALL DUNE2000.0043077000423F40  |. 83C4 1C        ||ADD ESP,1C00423F43  |> 8B4C24 10      ||MOV ECX,DWORD PTR SS:[ESP+10]00423F47  |. A1 486D7800    ||MOV EAX,DWORD PTR DS:[786D48]00423F4C  |. 47             ||INC EDI00423F4D  |. 41             ||INC ECX00423F4E  |. 894C24 10      ||MOV DWORD PTR SS:[ESP+10],ECX00423F52  |. 8B4C24 1C      ||MOV ECX,DWORD PTR SS:[ESP+1C]00423F56  |. 8BD0           ||MOV EDX,EAX00423F58  |. 83C6 20        ||ADD ESI,2000423F5B  |. 2BD1           ||SUB EDX,ECX00423F5D  |. 83C5 0C        ||ADD EBP,0C00423F60  |. 83C2 20        ||ADD EDX,2000423F63  |. 3BF2           ||CMP ESI,EDX00423F65  |.^0F8C 89FEFFFF  |\JL DUNE2000.00423DF400423F6B  |> 8B0D F47D5400  |MOV ECX,DWORD PTR DS:[547DF4]00423F71  |. 8B7424 24      |MOV ESI,DWORD PTR SS:[ESP+24]00423F75  |. 99             |CDQ00423F76  |. 83E2 1F        |AND EDX,1F00423F79  |. 83C3 20        |ADD EBX,2000423F7C  |. 03C2           |ADD EAX,EDX00423F7E  |. C1F8 05        |SAR EAX,500423F81  |. 2BC8           |SUB ECX,EAX00423F83  |. 2BF8           |SUB EDI,EAX00423F85  |. 49             |DEC ECX00423F86  |. 8D0449         |LEA EAX,DWORD PTR DS:[ECX+ECX*2]00423F89  |. 8B0D 38C56D00  |MOV ECX,DWORD PTR DS:[6DC538]00423F8F  |. 2BCE           |SUB ECX,ESI00423F91  |. 83C1 20        |ADD ECX,2000423F94  |. 8D6C85 00      |LEA EBP,DWORD PTR SS:[EBP+EAX*4]00423F98  |. 3BD9           |CMP EBX,ECX00423F9A  |.^0F8C 31FEFFFF  \JL DUNE2000.00423DD100423FA0  |> 5F             POP EDI00423FA1  |. 5E             POP ESI00423FA2  |. 5D             POP EBP00423FA3  |. 5B             POP EBX00423FA4  |. 83C4 28        ADD ESP,2800423FA7  \. C3             RETN

I used OllyDbg to get the ASM code, but Cheat Engine has clearer code in the program, but copying it with comments is not possible, as far as I know.

Link to comment
Share on other sites

There is a lot of jumping and I can't get the code to display comments with the values, I'm not sure if it's useful to you.

00423D20  /$ 83EC 28        SUB ESP,2800423D23  |. 53             PUSH EBX00423D24  |. 8B1D 38857900  MOV EBX,DWORD PTR DS:[798538]00423D2A  |. 8BC3           MOV EAX,EBX00423D2C  |. 55             PUSH EBP00423D2D  |. 99             CDQ00423D2E  |. 33C2           XOR EAX,EDX00423D30  |. 56             PUSH ESI00423D31  |. 2BC2           SUB EAX,EDX00423D33  |. 57             PUSH EDI00423D34  |. 8B3D 3C857900  MOV EDI,DWORD PTR DS:[79853C]00423D3A  |. 83E0 1F        AND EAX,1F00423D3D  |. 33C2           XOR EAX,EDX00423D3F  |. C74424 28 0000>MOV DWORD PTR SS:[ESP+28],000423D47  |. 8BF0           MOV ESI,EAX00423D49  |. 8BC7           MOV EAX,EDI00423D4B  |. 2BF2           SUB ESI,EDX00423D4D  |. 99             CDQ00423D4E  |. 33C2           XOR EAX,EDX00423D50  |. 897424 1C      MOV DWORD PTR SS:[ESP+1C],ESI00423D54  |. 2BC2           SUB EAX,EDX00423D56  |. 83E0 1F        AND EAX,1F00423D59  |. 33C2           XOR EAX,EDX00423D5B  |. 8BC8           MOV ECX,EAX00423D5D  |. A1 DC414E00    MOV EAX,DWORD PTR DS:[4E41DC]	00423D62  |. 2BCA           SUB ECX,EDX00423D64  |. 8B15 486D7800  MOV EDX,DWORD PTR DS:[786D48]00423D6A  |. 895424 30      MOV DWORD PTR SS:[ESP+30],EDX00423D6E  |. 8B15 38C56D00  MOV EDX,DWORD PTR DS:[6DC538]00423D74  |. 894424 2C      MOV DWORD PTR SS:[ESP+2C],EAX00423D78  |. 03C2           ADD EAX,EDX00423D7A  |. 894424 34      MOV DWORD PTR SS:[ESP+34],EAX00423D7E  |. 8BC7           MOV EAX,EDI00423D80  |. 2BC1           SUB EAX,ECX00423D82  |. 894C24 24      MOV DWORD PTR SS:[ESP+24],ECX00423D86  |. 99             CDQ00423D87  |. 83E2 1F        AND EDX,1F00423D8A  |. 03C2           ADD EAX,EDX00423D8C  |. 8BF8           MOV EDI,EAX00423D8E  |. 8BC3           MOV EAX,EBX00423D90  |. 2BC6           SUB EAX,ESI00423D92  |. 8BD9           MOV EBX,ECX00423D94  |. 99             CDQ00423D95  |. 83E2 1F        AND EDX,1F00423D98  |. C1FF 05        SAR EDI,500423D9B  |. 03C2           ADD EAX,EDX00423D9D  |. 8B14BD F07D540>MOV EDX,DWORD PTR DS:[EDI*4+547DF0]00423DA4  |. C1F8 05        SAR EAX,500423DA7  |. 03D0           ADD EDX,EAX00423DA9  |. 03F8           ADD EDI,EAX00423DAB  |. A1 38C56D00    MOV EAX,DWORD PTR DS:[6DC538]00423DB0  |. 2BC1           SUB EAX,ECX00423DB2  |. 8D1452         LEA EDX,DWORD PTR DS:[EDX+EDX*2]00423DB5  |. F7DB           NEG EBX00423DB7  |. 83C0 20        ADD EAX,2000423DBA  |. 8D2C95 F07D510>LEA EBP,DWORD PTR DS:[EDX*4+517DF0]00423DC1  |. 3BD8           CMP EBX,EAX00423DC3  |. 0F8D D7010000  JGE DUNE2000.00423FA000423DC9  |. F7DE           NEG ESI00423DCB  |. 897424 20      MOV DWORD PTR SS:[ESP+20],ESI00423DCF  |. EB 04          JMP SHORT DUNE2000.00423DD500423DD1  |> 8B7424 20      /MOV ESI,DWORD PTR SS:[ESP+20]00423DD5  |> A1 486D7800     MOV EAX,DWORD PTR DS:[786D48]00423DDA  |. 8B5424 1C      |MOV EDX,DWORD PTR SS:[ESP+1C]00423DDE  |. 8BC8           |MOV ECX,EAX00423DE0  |. 2BCA           |SUB ECX,EDX00423DE2  |. 83C1 20        |ADD ECX,2000423DE5  |. 3BF1           |CMP ESI,ECX00423DE7  |. 0F8D 7E010000  |JGE DUNE2000.00423F6B00423DED  |. 8D57 10        |LEA EDX,DWORD PTR DS:[EDI+10]00423DF0  |. 895424 10      |MOV DWORD PTR SS:[ESP+10],EDX00423DF4  |> 33C0           |/XOR EAX,EAX00423DF6  |. 8A45 08        ||MOV AL,BYTE PTR SS:[EBP+8]00423DF9  |. 99             ||CDQ00423DFA  |. 33C2           ||XOR EAX,EDX00423DFC  |. 2BC2           ||SUB EAX,EDX00423DFE  |. 83E0 0F        ||AND EAX,0F00423E01  |. 33C2           ||XOR EAX,EDX00423E03  |. 2BC2           ||SUB EAX,EDX00423E05  |. 83F8 01        ||CMP EAX,100423E08  |. 0F84 35010000  ||JE DUNE2000.00423F4300423E0E  |. 8B15 DC414E00  ||MOV EDX,DWORD PTR DS:[4E41DC]		: 14 (here is the change)00423E14  |. 33C0           ||XOR EAX,EAX00423E16  |. 66:8B45 00     ||MOV AX,WORD PTR SS:[EBP]00423E1A  |. 8B0C85 589B6D0>||MOV ECX,DWORD PTR DS:[EAX*4+6D9B58]00423E21  |. 8D0413         ||LEA EAX,DWORD PTR DS:[EBX+EDX]00423E24  |. 8B5424 3C      ||MOV EDX,DWORD PTR SS:[ESP+3C]00423E28  |. 51             ||PUSH ECX00423E29  |. 50             ||PUSH EAX00423E2A  |. 8D4C24 30      ||LEA ECX,DWORD PTR SS:[ESP+30]00423E2E  |. 56             ||PUSH ESI00423E2F  |. 51             ||PUSH ECX00423E30  |. 52             ||PUSH EDX00423E31  |. E8 9AE40000    ||CALL DUNE2000.004322D000423E36  |. 8A45 09        ||MOV AL,BYTE PTR SS:[EBP+9]00423E39  |. 83C4 14        ||ADD ESP,1400423E3C  |. 3C 10          ||CMP AL,1000423E3E  |. 0F86 FF000000  ||JBE DUNE2000.00423F4300423E44  |. C0E8 04        ||SHR AL,400423E47  |. 884424 14      ||MOV BYTE PTR SS:[ESP+14],AL00423E4B  |. 8BC7           ||MOV EAX,EDI00423E4D  |. 99             ||CDQ00423E4E  |. 33C2           ||XOR EAX,EDX00423E50  |. 2BC2           ||SUB EAX,EDX00423E52  |. 83E0 01        ||AND EAX,100423E55  |. 33C2           ||XOR EAX,EDX00423E57  |. 2BC2           ||SUB EAX,EDX00423E59  |. C0E0 04        ||SHL AL,400423E5C  |. 884424 18      ||MOV BYTE PTR SS:[ESP+18],AL00423E60  |. 8B45 04        ||MOV EAX,DWORD PTR SS:[EBP+4]00423E63  |. F6C4 80        ||TEST AH,8000423E66  |. 74 67          ||JE SHORT DUNE2000.00423ECF00423E68  |. 8B4424 14      ||MOV EAX,DWORD PTR SS:[ESP+14]00423E6C  |. 8B4C24 18      ||MOV ECX,DWORD PTR SS:[ESP+18]00423E70  |. 25 FF000000    ||AND EAX,0FF00423E75  |. 81E1 FF000000  ||AND ECX,0FF00423E7B  |. 03C1           ||ADD EAX,ECX00423E7D  |. 6A 01          ||PUSH 100423E7F  |. 6A 01          ||PUSH 100423E81  |. 8B0D DC414E00  ||MOV ECX,DWORD PTR DS:[4E41DC]00423E87  |. 8B14C5 E87B6D0>||MOV EDX,DWORD PTR DS:[EAX*8+6D7BE8]00423E8E  |. 8B4424 18      ||MOV EAX,DWORD PTR SS:[ESP+18]00423E92  |. 52             ||PUSH EDX00423E93  |. 99             ||CDQ00423E94  |. 33C2           ||XOR EAX,EDX00423E96  |. 2BC2           ||SUB EAX,EDX00423E98  |. 83E0 0F        ||AND EAX,0F00423E9B  |. 33C2           ||XOR EAX,EDX00423E9D  |. 2BC2           ||SUB EAX,EDX00423E9F  |. 8B0485 D82E500>||MOV EAX,DWORD PTR DS:[EAX*4+502ED8]00423EA6  |. 03C3           ||ADD EAX,EBX00423EA8  |. 03C1           ||ADD EAX,ECX00423EAA  |. 50             ||PUSH EAX00423EAB  |. 8BC7           ||MOV EAX,EDI00423EAD  |. 99             ||CDQ00423EAE  |. 33C2           ||XOR EAX,EDX00423EB0  |. 2BC2           ||SUB EAX,EDX00423EB2  |. 83E0 0F        ||AND EAX,0F00423EB5  |. 33C2           ||XOR EAX,EDX00423EB7  |. 2BC2           ||SUB EAX,EDX00423EB9  |. 8D5424 38      ||LEA EDX,DWORD PTR SS:[ESP+38]00423EBD  |. 8B0C85 883F500>||MOV ECX,DWORD PTR DS:[EAX*4+503F88]00423EC4  |. 8B4424 4C      ||MOV EAX,DWORD PTR SS:[ESP+4C]00423EC8  |. 03CE           ||ADD ECX,ESI00423ECA  |. 51             ||PUSH ECX00423ECB  |. 52             ||PUSH EDX00423ECC  |. 50             ||PUSH EAX00423ECD  |. EB 6C          ||JMP SHORT DUNE2000.00423F3B00423ECF  |> A9 00000100    ||TEST EAX,1000000423ED4  |. 74 6D          ||JE SHORT DUNE2000.00423F4300423ED6  |. 8B4C24 14      ||MOV ECX,DWORD PTR SS:[ESP+14]00423EDA  |. 8B5424 18      ||MOV EDX,DWORD PTR SS:[ESP+18]00423EDE  |. 81E1 FF000000  ||AND ECX,0FF00423EE4  |. 81E2 FF000000  ||AND EDX,0FF00423EEA  |. 03CA           ||ADD ECX,EDX00423EEC  |. 6A 01          ||PUSH 100423EEE  |. 6A 01          ||PUSH 100423EF0  |. 8B04CD EC7B6D0>||MOV EAX,DWORD PTR DS:[ECX*8+6D7BEC]00423EF7  |. 50             ||PUSH EAX00423EF8  |. 8B4424 1C      ||MOV EAX,DWORD PTR SS:[ESP+1C]00423EFC  |. 99             ||CDQ00423EFD  |. 33C2           ||XOR EAX,EDX00423EFF  |. 2BC2           ||SUB EAX,EDX00423F01  |. 83E0 0F        ||AND EAX,0F00423F04  |. 33C2           ||XOR EAX,EDX00423F06  |. 2BC2           ||SUB EAX,EDX00423F08  |. 8B0C85 D82E500>||MOV ECX,DWORD PTR DS:[EAX*4+502ED8]00423F0F  |. A1 DC414E00    ||MOV EAX,DWORD PTR DS:[4E41DC]00423F14  |. 03CB           ||ADD ECX,EBX00423F16  |. 03C8           ||ADD ECX,EAX00423F18  |. 8BC7           ||MOV EAX,EDI00423F1A  |. 99             ||CDQ00423F1B  |. 33C2           ||XOR EAX,EDX00423F1D  |. 51             ||PUSH ECX00423F1E  |. 2BC2           ||SUB EAX,EDX00423F20  |. 8B4C24 4C      ||MOV ECX,DWORD PTR SS:[ESP+4C]00423F24  |. 83E0 0F        ||AND EAX,0F00423F27  |. 33C2           ||XOR EAX,EDX00423F29  |. 2BC2           ||SUB EAX,EDX00423F2B  |. 8B1485 883F500>||MOV EDX,DWORD PTR DS:[EAX*4+503F88]00423F32  |. 8D4424 38      ||LEA EAX,DWORD PTR SS:[ESP+38]00423F36  |. 03D6           ||ADD EDX,ESI00423F38  |. 52             ||PUSH EDX00423F39  |. 50             ||PUSH EAX00423F3A  |. 51             ||PUSH ECX00423F3B  |> E8 30C80000    ||CALL DUNE2000.0043077000423F40  |. 83C4 1C        ||ADD ESP,1C00423F43  |> 8B4C24 10      ||MOV ECX,DWORD PTR SS:[ESP+10]00423F47  |. A1 486D7800    ||MOV EAX,DWORD PTR DS:[786D48]00423F4C  |. 47             ||INC EDI00423F4D  |. 41             ||INC ECX00423F4E  |. 894C24 10      ||MOV DWORD PTR SS:[ESP+10],ECX00423F52  |. 8B4C24 1C      ||MOV ECX,DWORD PTR SS:[ESP+1C]00423F56  |. 8BD0           ||MOV EDX,EAX00423F58  |. 83C6 20        ||ADD ESI,2000423F5B  |. 2BD1           ||SUB EDX,ECX00423F5D  |. 83C5 0C        ||ADD EBP,0C00423F60  |. 83C2 20        ||ADD EDX,2000423F63  |. 3BF2           ||CMP ESI,EDX00423F65  |.^0F8C 89FEFFFF  |\JL DUNE2000.00423DF400423F6B  |> 8B0D F47D5400  |MOV ECX,DWORD PTR DS:[547DF4]00423F71  |. 8B7424 24      |MOV ESI,DWORD PTR SS:[ESP+24]00423F75  |. 99             |CDQ00423F76  |. 83E2 1F        |AND EDX,1F00423F79  |. 83C3 20        |ADD EBX,2000423F7C  |. 03C2           |ADD EAX,EDX00423F7E  |. C1F8 05        |SAR EAX,500423F81  |. 2BC8           |SUB ECX,EAX00423F83  |. 2BF8           |SUB EDI,EAX00423F85  |. 49             |DEC ECX00423F86  |. 8D0449         |LEA EAX,DWORD PTR DS:[ECX+ECX*2]00423F89  |. 8B0D 38C56D00  |MOV ECX,DWORD PTR DS:[6DC538]00423F8F  |. 2BCE           |SUB ECX,ESI00423F91  |. 83C1 20        |ADD ECX,2000423F94  |. 8D6C85 00      |LEA EBP,DWORD PTR SS:[EBP+EAX*4]00423F98  |. 3BD9           |CMP EBX,ECX00423F9A  |.^0F8C 31FEFFFF  \JL DUNE2000.00423DD100423FA0  |> 5F             POP EDI00423FA1  |. 5E             POP ESI00423FA2  |. 5D             POP EBP00423FA3  |. 5B             POP EBX00423FA4  |. 83C4 28        ADD ESP,2800423FA7  \. C3             RETN
I used OllyDbg to get the ASM code, but Cheat Engine has clearer code in the program, but copying it with comments is not possible, as far as I know.

what can this be used for??

how can I know which code does what??

I'm honestly confused using ida to edit dat/exe file..

Link to comment
Share on other sites

Aqib, please don't quote such entire blocks for no reason.

D2k Sardaukar: Woah, not even jump labels? I use IDA, and it allows me to name any location...

my bad nyer..

I was in a big rush mood I forgot to edit the quote..

U also use Ida?? can u tell me how to use it properly??

Link to comment
Share on other sites

  • 2 months later...
  • 4 weeks later...
  • 3 weeks later...

Someone asked me once about how to edit the .bmp files used in the world map (data\UI_GFX\Regions). I couldn't do it with (free software like) the Gimp, Irfanview etc and I don't know if Photoshop can edit them, but I found out it's rather easy with the original program: Paint Shop Pro 5 (from 1998). You can download it here for free (30 day trial): http://www.oldapps.com/Paint_Shop_Pro.php

 

Example of edit and in the game different region color:

 

post-2251-0-15711800-1391734180_thumb.pn

 

post-2251-0-31849200-1391734181_thumb.pn

Link to comment
Share on other sites

Someone asked me once about how to edit the .bmp files used in the world map (data\UI_GFX\Regions). I couldn't do it with (free software like) the Gimp, Irfanview etc and I don't know if Photoshop can edit them, but I found out it's rather easy with the original program: Paint Shop Pro 5 (from 1998). You can download it here for free (30 day trial): http://www.oldapps.com/Paint_Shop_Pro.php

 

Example of edit and in the game different region color:

 

This was an issue? Paint.NET (free) can edit them fine. 

  • Upvote 1
Link to comment
Share on other sites

I did not know that.

 

Paint Shop Pro can also save TGA in correct format. Paint.NET can't.

Since paint.net is still developed, im sure its possible to get it to work properly, whether by creating a plugin or by asking the developer. Either way, good information to know.

  • Upvote 1
Link to comment
Share on other sites

Fail at menu render. It's more work than I thought. Will probably not finish this, but I learned a lot about VB.NET

Nice, I started doing some work on a tool a couple of years ago, but I didn't get that far on it. I can send you the source code if you're interested (C#)

 

aWVpIUj.jpg

  • Upvote 3
Link to comment
Share on other sites

Nice, I started doing some work on a tool a couple of years ago, but I didn't get that far on it. I can send you the source code if you're interested (C#)

 

[image]

Would be cool to take a look at the code and play with it, because checking your image, it looks like one can even move the images around and save that? That is very nice!

 

I see you have the same problem with the buttons. The supplied width, height in the .uil is not being used. It's almost all the time wrong. The dimensions of the images are used.

 

I'm not sure if I will improve your code enough to release it, because getting it all to work properly is a lot of work. (I think)

  • Upvote 1
Link to comment
Share on other sites

Someone asked me once about how to edit the .bmp files used in the world map (data\UI_GFX\Regions). I couldn't do it with (free software like) the Gimp, Irfanview etc and I don't know if Photoshop can edit them, but I found out it's rather easy with the original program: Paint Shop Pro 5 (from 1998). You can download it here for free (30 day trial): http://www.oldapps.com/Paint_Shop_Pro.php

 

Example of edit and in the game different region color:

 

 

what settings do you need to use for the game to accept the tga?

 

Edit: apparently you need to overwrite an existing tga, so I just copied an existing one, pasted over the layer and renamed it.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...