Gildor's Forums

Author Topic: UE Explorer can view the code, but how do I modify it?  (Read 21469 times)
sskillz
Newbie
*
Posts: 12


View Profile
UE Explorer can view the code, but how do I modify it?
« on: August 16, 2012, 23:07 »

Hello,
I opened a decompressed package file with the EU Explorer and it works great.
I'm trying to modify a single variable value in the defaultpropertise of some object,
but I can't figure out how to use the Explorer to do it. When I use "View Buffer" on that object
I get a hex view of the CLASS file of the extracted files from the package.
But I can find any sense in it nor the current variable value so I could edit the CLASS file
with an hex editor.

Can you help me do that?

Thanks.
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7971



View Profile WWW
Re: UE Explorer can view the code, but how do I modify it?
« Reply #1 on: August 16, 2012, 23:26 »

Hello. You've posted your message on wrong forum - UE Explorer was developed by another guy and have it's own site and forum.
Logged
sskillz
Newbie
*
Posts: 12


View Profile
Re: UE Explorer can view the code, but how do I modify it?
« Reply #2 on: August 18, 2012, 02:24 »

Oh sorry about that.

Anyways, I found the variable in the hex editor and I've changed its value.
I used the tool on your site to decompress the package before I could do that.
Can you help me how I recompress the package?

Thanks ahead.
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7971



View Profile WWW
Re: UE Explorer can view the code, but how do I modify it?
« Reply #3 on: August 18, 2012, 10:06 »

There is no way to recompress package. By the way decompressed package should be used by game without a problem.
Logged
sskillz
Newbie
*
Posts: 12


View Profile
Re: UE Explorer can view the code, but how do I modify it?
« Reply #4 on: August 18, 2012, 12:39 »

The game I'm trying to modify is tribes ascend, do you know which compression they used? Since your tools support that game.
And do uncompressed packages have a checksum that could fail because I changed a single byte?
The game crushes with KERNELBASE.dll fault if that helps :|
I would love some info on how the compression is done, is it the same format as normal packages?, Any info would help :|

BTW Thanks for the quick responses and your great tools.


« Last Edit: August 18, 2012, 12:41 by sskillz » Logged
Gildor
Administrator
Hero Member
*****
Posts: 7971



View Profile WWW
Re: UE Explorer can view the code, but how do I modify it?
« Reply #5 on: August 18, 2012, 12:42 »

If the game verifies checksum you cannot modify anything.
KERNELBASE.dll has a lot of functions including generation of software exception which could be called by game authors when checksum is mismatched.
Logged
sskillz
Newbie
*
Posts: 12


View Profile
Re: UE Explorer can view the code, but how do I modify it?
« Reply #6 on: August 18, 2012, 14:13 »

I tried just running with it decompressed and unmodified and it fails the same.
Yes if its checksum, Ill have to modify other parts to make the checksum the same.
Need to learn how to do that :|

Thanks!
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7971



View Profile WWW
Re: UE Explorer can view the code, but how do I modify it?
« Reply #7 on: August 18, 2012, 14:19 »

If you would know more about checksums (hashing) you probably could know that there is no way to adopt other parts of the file to make checksum the same.
By the way what's the reason of tuning script values of the online game? Cheating?
Logged
sskillz
Newbie
*
Posts: 12


View Profile
Re: UE Explorer can view the code, but how do I modify it?
« Reply #8 on: August 18, 2012, 15:38 »

No, Curiosity, just trying a different value (double speed) for a projectile.
Online its value is server side, so it won't be used to cheating. but I want to
try it on the training map - offline. Its just to give feedback on how to improve that
specific weapon (What values should they try)
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7971



View Profile WWW
Re: UE Explorer can view the code, but how do I modify it?
« Reply #9 on: August 18, 2012, 15:39 »

By the way you can't change the package without patching a game executable to exclude CRC checking.
Logged
sskillz
Newbie
*
Posts: 12


View Profile
Re: UE Explorer can view the code, but how do I modify it?
« Reply #10 on: August 18, 2012, 18:30 »

Can you tell me or point me to info on how the package is compressed.
I do understand the decompressed one (Header, Exports, Objects Tables and some of the header) and
the compressed file has almost the same header(different flags - compression flag), and the same address for the start of export table
but that table is complete different. Probably not only the objects them self are compressed but the tables too.
And do you know which compression Tribes Ascend uses as you program is able to decompress it.

Thanks.

EDIT:
One thing I don't understand about the decompressed file, is I know that each element in the export table is 68 bytes, is that a standard
or a variable that written elsewhere in the header?

EDIT2:
Ok the compressed one has a table of chunks with Chunk offset and side that I found in the hex editor, but what is UC Offset and UC Side?

Edit3:
Ok found one of you posts, its Uncompressed offset and Uncompressed Size. So each of this chunks is a bunch of blocks that are compressed using one of
the compression algorithms(Which I think is 2 - LZO, is that the second DWORD behind the first of the chunk table) as a standalone piece of data?
And I need to those individual blocks of each chunk and map it by that chunk table offset?


 
« Last Edit: August 18, 2012, 18:59 by sskillz » Logged
Gildor
Administrator
Hero Member
*****
Posts: 7971



View Profile WWW
Re: UE Explorer can view the code, but how do I modify it?
« Reply #11 on: August 18, 2012, 19:12 »

Can you tell me or point me to info on how the package is compressed.
check "Unreal coding" board on this forum.
Quote
And do you know which compression Tribes Ascend uses as you program is able to decompress it.
usually PC games uses LZO
Quote
each element in the export table is 68 bytes, is that a standard
or a variable that written elsewhere in the header?
export table entry has floating format - some fields could appear or disappear depending on object represented by it

There is no point to compress decompressed package back unless you want to save disk space.
Logged
sskillz
Newbie
*
Posts: 12


View Profile
Re: UE Explorer can view the code, but how do I modify it?
« Reply #12 on: August 18, 2012, 20:10 »

Ok I wrote (exported) the 8 blocks of compressed data containing the defaultproperties I want to modify to a different binary file.
Now I'm gonna try different decompression on those 8 131072bytes blocks of data (the last one is a bit smaller).
As I understand this is raw data blocks, so I can try and decompress them one at a time and compare it to the original by the uncompressed offset.

I want to try LZO, Do you know which program/library and settings should I use to decompress?

Logged
Gildor
Administrator
Hero Member
*****
Posts: 7971



View Profile WWW
Re: UE Explorer can view the code, but how do I modify it?
« Reply #13 on: August 18, 2012, 20:13 »

Did you read my last message?
There is no point to compress decompressed package back unless you want to save disk space.
Why do you want to compress the package while your problem is just CRC verification?
Logged
sskillz
Newbie
*
Posts: 12


View Profile
Re: UE Explorer can view the code, but how do I modify it?
« Reply #14 on: August 18, 2012, 20:19 »

First its interesting :|.
Second, Maybe to game doesn't check a hash but doesn't run decompressed packages,  so I will just need to compress it.
Hopefully I can just modify of of the compressed chunk blocks with a different one..


Do you know what tool I could use to decompress with LZO the raw block?
Or should I get C++ compiler and compile LZO from source...
« Last Edit: August 18, 2012, 20:36 by sskillz » Logged
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Leviathan design by Bloc | XHTML | CSS