Welcome
Ladies and Gents:

These forums are now closed and registration disabled.

Please join us at our new forum on Proboards. Our hope is that these new forums are more stable, provide more and better features, and allow continuation of the project forums in a safer, more secure, long term environment.

me3explorer.proboards.com

--The ME3Explorer Team

Beta 2.0.5

Information and links to new stable & beta releases.

Beta 2.0.5

Postby SirCxyrtyx » 24 May 2016, 04:55

Issues Resolved
#365(Bug minor: Package Editor adjust import meta-data not working): Kinkojiro
import edits are saved now

#368(Beta: Package Editor saves wrong class): FemShep
Offending save method has been removed.

#363(Clone entire sequences): SirCxyrtyx
Right click on an object in the Sequence Editor, and select clone to clone it. Sequences will also clone all their children, recursively. It will also change all links and properties that reference other sequence objects.

Additional Changes
  • ME3 Creator: You can edit existing names now.
  • ME3 Package Editor: Right-click on an export or import to get the option to clone it. In the Tree View, you'll also have the option to clone it and all of its children.
  • ME3 Package Editor: If you open two instances of the Package Editor and set them both to treeview, you can just drag imports and exports from one to the other. If the import/export has children, they will be imported as well, and the tree structure will be preserved.

In the PackEd, you may notice that the saving options have been reconfigured a bit. Here's what they all do:
  • "Save (Ctrl + S)" - Overwrites the file without asking for confirmation. Uses append save, unless cloning or importing has occurred, in which case it uses reconstruction save.
  • "Save As (append)" - Asks where to save, then does an append save (appends name table and exports whose data length has grown)
  • "Save As (reconstruction)" - Asks where to save, then does a reconstruction save (like ME3Creator)

If the file has a SeekFreeShaderCache that has not been neutralized, PackEd will not allow you to clone, import, or do a reconstruction save. If you have cloned or imported, it will not let you do an append save.

Get It Here
(Disclaimer: This is a beta release, so the only person who has tested any of this is me. That means there will be bugs, and you will encounter them. When you do, please make a bug report on Github so that they can be fixed.)

Now I can finally start working on the GUI overhaul.

SirCxyrtyx has been thanked by:
User avatar
SirCxyrtyx
Toolset Lead
 
Posts: 345
Joined: 16 Apr 2014, 00:20
Has thanked: 28 time
Have thanks: 288 time

Re: Beta 2.0.5

Postby Kinkojiro » 24 May 2016, 06:24

Wow, copying entire trees! Great work.
User avatar
Kinkojiro
Modder
 
Posts: 578
Joined: 02 Dec 2013, 04:14
Has thanked: 233 time
Have thanks: 249 time

Re: Beta 2.0.5

Postby FemShep » 24 May 2016, 07:24

In interpreter how are you able to determine if it's a list of names or import exports for an array? I noticed the switcher is gone now.
Image
ME3Tweaks has modding guides, tools, forums for mods, a modding wiki, and ModMaker, an online mod creation tool.
ME3 Mod Manager, the civilized way of installing and managing ME3 mods.
ME3Tweaks Facebook Page
User avatar
FemShep
Modder
 
Posts: 1101
Joined: 18 Oct 2012, 20:48
Has thanked: 42 time
Have thanks: 76 time

Re: Beta 2.0.5

Postby SirCxyrtyx » 24 May 2016, 16:32

FemShep wrote:In interpreter how are you able to determine if it's a list of names or import exports for an array? I noticed the switcher is gone now.

All* classes, structs, and enums are defined in the pccs. Most of them are defined in Core.pcc, Engine.pcc, SFXGame.pcc, or WWiseAudio.pcc, but some (SFXGameContent) are defined in the pcc that they are used in. I wrote some code that scans every pcc in the game, builds a database of class, struct, and enum definitions, and stores it in ME3ObjectInfo.json, which is included in the exec folder. That code isn't accessible to the user, I just run it whenever I change what data it collects and then include the new json file in the next release. When the toolset starts up, it loads that database into memory. So when the interpreter encounters an array property, it just looks up that property and finds out what kind of array it is. This is also how the add property feature works. The interpreter just gets the list of all possible properties for that class.

*StaticMesh and Level are not for some reason, so the interpreter will be less helpful when dealing with those.

SirCxyrtyx has been thanked by:
User avatar
SirCxyrtyx
Toolset Lead
 
Posts: 345
Joined: 16 Apr 2014, 00:20
Has thanked: 28 time
Have thanks: 288 time

Re: Beta 2.0.5

Postby giftfish » 24 May 2016, 16:49

Wow, that sounds amazing, Sir. Very nice work :D
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: Beta 2.0.5

Postby FemShep » 24 May 2016, 22:27

Pretty impressive. The interpreter is quite useful these days now.
Image
ME3Tweaks has modding guides, tools, forums for mods, a modding wiki, and ModMaker, an online mod creation tool.
ME3 Mod Manager, the civilized way of installing and managing ME3 mods.
ME3Tweaks Facebook Page
User avatar
FemShep
Modder
 
Posts: 1101
Joined: 18 Oct 2012, 20:48
Has thanked: 42 time
Have thanks: 76 time

Re: Beta 2.0.5

Postby Kinkojiro » 25 May 2016, 01:25

So testing the drag and drop it seems to be working well. Just need to change object references and classes. Saves so much time.
User avatar
Kinkojiro
Modder
 
Posts: 578
Joined: 02 Dec 2013, 04:14
Has thanked: 233 time
Have thanks: 249 time

Re: Beta 2.0.5

Postby SirCxyrtyx » 25 May 2016, 17:33

I'd love to have it set the class automatically, but I can't think of a way to do that. Obviously I could have it search for an export or import with the right name and a class of "Class", but if it can't find it then it would have to add it. Adding it would be very complicated. If it was an import in the source file (most common) then that would be simple enough, just import that import too. If it was an export that would be more difficult, as it would have to import all the many exports that would make up that class definition, and any imports they needed, and so on. I'm not sure that can be done well. So it would only be able to set the class properly most of the time, which seems dangerous, because you might think you don't need to set the class but sometimes you would. Maybe I could have a messagebox show up when it couldn't set the class?

In case it wasn't clear, I was brainstorming as I typed there. So I may be able to do it after all? Input on my ramblings would be appreciated.
User avatar
SirCxyrtyx
Toolset Lead
 
Posts: 345
Joined: 16 Apr 2014, 00:20
Has thanked: 28 time
Have thanks: 288 time


Return to New Releases

Who is online

Users browsing this forum: No registered users and 0 guests

suspicion-preferred