Jump to content

EliotVU

Members
  • Posts

    61
  • Joined

  • Last visited

Everything posted by EliotVU

  1. The NativeTables are necessary for UE Explorer to detect if a bytecode is for a specific Native function. Here's an example: // Export UObject::execSaveConfig(FFrame&, void* const) native(536) final function SaveConfig(); as you can see this function is native and has this number 536 which is the bytecode that will represent the call to this function, so whenever UE Explorer sees a bytecode with a high number it'll assume there's another one, so a 2 bytes bytecode and then it'll scan the NativesTableList for this number which has the name of each function and its number, and so this way UE Explorer knows the name, format and anything else necessary. UE Explorer includes a tool that can automatically generate these tables by simply loading every package suspicious of having such native function declarations(note only those with the numbers matter). These numbers may vary from game to game so NTLs are needed to solve this issue.
  2. Hey, thanks for the donation, it's great to know people find my tool worthy a donation :smile: Yes, I've fixed the issues, although the closing isn't fixed, I have put in a hack so it'll just play nice with other tools, so in a way it is fixed but not a true fix, but to the end-users that doesn't matter. Resolved Issues: 1. Streams now play nice together with other processes2. Not fixed(Virtual size problems are not indicated as you described)3. Not resolved(Links still don't open, no idea why, haven't looked into it yet!)4. Resolved(Replaced hyphens with spaces)5. Resolved(Paths are fully displayed)6. Resolved(Allow multiple instances using -newwindow commandline argument) (Single-instance is an intended feature by default)7. Not resolved(Minimum size is still at the minimum possible size the interface is designed for)*. Dozen of fixes and improvements. Also you are welcome to submit issues at https://bitbucket.org/eliotvu/ue-explorer/issues or view known issues and resolved issues. You can submit issues without registering if desired!
  3. Been working on an awesome new feature! Before: http://img442.imageshack.us/img442/1718/lgt150b.png After: http://i.imgur.com/INZFUzZ.png Noticed what it is? If not, it is now possible to edit within the Hex Viewer, save(permanently no dialog), and see the changes instantly without clicking anything but Ctrl+D to force-deserialize!
  4. Glad you find it useful! How about this? http://img571.imageshack.us/img571/2108/5bb089aca83246688e296bb.png I also updated the Hex Viewer to highlight selected and hovered tokens. The pink is a JumpIfNot token's content, then the more purple/pink color is the IntConstToken's content. http://img189.imageshack.us/img189/9682/45b882ba6e6c48ddaa4bd73.png
  5. Native functions are written in C++ which is compiled to the GAME.exe file. UE Explorer outputs a comment above the function's declaration indicating what it might be called in the Export table of the .exe file, though this could be inaccurate in some games. For example: "// Export UXGGameData::execisHuman(FFrame&, void* const)" Says the C++ name is execIsHuman, you could try look for that with a reverse-engineering tool.
  6. Hmm... Try out this https://code.google.com/p/lessmsi/ program. Open the .MSI file and extract the files manually to a directory wherever you want it to be.
  7. Change your NativeTableList right on the status bar to the latest UDK or the one generated by this community(search the forums). Thanks for appreciating my work :)
  8. 0x00000000 : CharToCorpse :UFunction => CharToCorpse(72) 0x00000000 : ExportSize :Int32 => 230 0x00000000 : NetIndex :UIntProperty => iChar(71) You could just look at the first 4 bytes of the object you want the index of. The first 4 bytes represent the NetIndex variable which usually points to what came before it, like in the above example CharToCorpse is index 72 and the NetIndex is 71 if you increment by one you get the index 72. This may differ from engine version but works like described most of the times.
  9. It does: 0x00000000 : CharToCorpse :UFunction => CharToCorpse(72) 0x00000000 : ExportSize :Int32 => 230 0x00000000 : NetIndex :UIntProperty => iChar(71) 0x00000004 : NameIndex :String => None 0x0000000C : NextField :UScriptStruct => XGUnitVisibilityInformation(69) Super ScriptText 0x00000018 : Children :UIntProperty => iChar(71) CppText 0x00000020 : Line :UInt32 => 1712 0x00000024 : TextPos :UInt32 => 41209 0x00000028 : ByteScriptSize :Int32 => 179 0x0000002C : DataScriptSize :Int32 => 167 0x000000D7 : NativeToken :UInt16 => 0 0x000000D7 : OperPrecedence :Byte => 0 0x000000DA : FunctionFlags :FunctionFlags => Defined, Static, Public 0x000000DE : FriendlyNameIndex :UNameTableItem => CharToCorpse This is the structure of function CharToCorpse. If you look at "Children" you'll see that it points to iChar which is an UIntProperty, this is one of the local/parameter of that function, when you look at iChar you should then look at "NextField" which is the next local/parameter of the function until it points to "None".
  10. Yes they have to either exist in C++ or UnrealScript both are possible. Any class with config(INI_NAME_HERE) is configurable. When you open an ini file you can see these sections like [Package.ClassName] this tells the engine for which class the variables are configured.
  11. New variables can be added in non-native classes although that would be a hard task to do and not to mention this would change the file size causing the package to non-function. It's also possible to make existing variables configurable so long the class is configurable too.
  12. Hey again, If anyone is interested or wondering on how to contribute/help with UE Explorer, I have written several bullet points on how: http://eliotvu.com/forum/showthread.php?tid=61&pid=338#pid338 I've been lurking that thread sometime ago, I didn't even know SWF files were available in the .upk files :P Although this looks complicated and definitely too much effort to decompile another language, but I guess maybe in the future I could definitely have it clean it up ready for exporting so you can then decompile that file by a third-party more easily!
  13. Make sure you have decompressed the packages first before opening(it should say it's compressed except for some files of XCom it crashes before getting there) Here's a how to: http://eliotvu.com/forum/showthread.php?tid=41&pid=246#pid246
  14. I have released version 1.2.2 with many fixes and general improvements especially considering performance. Download: EliotVU.com
  15. I'm quite surprised there's interest for this :dance: I might as well release the source code for NTL files: https://gist.github.com/a9d16bfdb650b45708b8
  16. Just rename the extension to .u it doesn't matter.
  17. Yes you can. But you'll have to use 1.1 for that because I broke it in 1.2 sorry :wallbash: It's under Tools->Natives Table Generator, select all the game packages whom contain native functions.
  18. No, UE Model Viewer would be better at doing that but Gildor is not willing to do this either.
  19. Yeah, same issue again, my FTP added .rar twice :wallbash:
  20. I have temporary fixed the crashing issue by finding the origin of the cause, I have removed that particular feature until it's fixed. The fixed version is on the same link :) Thanks for the help guys!
  21. UE? Looks like it isn't getting the full name due the space inbetween it, perhaps that might be it.. but then again why am I not experiencing this issue :wallbash: I'm off to sleep, thanks for keeping on trying guys.
  22. Thanks for keeping on trying, but unfortunately the errors don't tell me anything useful :s I haven't had any other reports, but never has anyone told me yet if it works for them either :(
  23. With or without the folder, it crashes even on another computer with Win Vista. Only feature working for me is cmd line extraction of classes and scripts. I will be happy to help troubleshoot the issue, if you tell me what to do. Good to know that that at least works. Could you try launching the program via a Unreal package file? This would suppress the homepage, which might be causing the invalidoperationexception, though this can be caused by many other things as well.
  24. I have absolutely no idea why this is happening, does anyone else have the same crash issue? Also just a wild guess, try delete the nl folder, perhaps the dutch localization isn't working properly on non-english operating systems.
  25. That's odd, I suppose it's missing some files sorry for the trouble. Rregardless of that, you can just launch UE Explorer from rar, no need to run the setup file.
×
×
  • Create New...