Giter Site home page Giter Site logo

atenfyr / uassetgui Goto Github PK

View Code? Open in Web Editor NEW
367.0 18.0 53.0 323 KB

A tool designed for low-level examination and modification of Unreal Engine 4 game assets by hand.

License: MIT License

C# 100.00%
gui unreal-engine c-sharp json modding modding-tools

uassetgui's People

Contributors

atenfyr avatar longerwarrior avatar trumank avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

uassetgui's Issues

Import .json

Thank you very much for making this tool, but I have a doubt, how do I import the extracted .json file!
I exported all dialogs, but I don't know how to import them all at once!

cant open the signature file

”failed to parse this file!
System.FormatException: File signature mismatch“

by the way, I modify Ghostwire Tokyo

Cannot open Unreal Engine 5 assets

UassetGUI doesn't open unreal engine 5 assets, you should update because there are a lot of games coming to that new version of the engine

Btw that's a awesome asset editor, the best I've ever seen :)

"##NOT SERIALIZED##" on export local var in kimset bytecode

Describe the bug
on unreal versions before 4.26 export references/links/local var show "##NOT SERIALIZED##" when the export is being read and when exported as json it shows proper info

To Reproduce
Steps to reproduce the behavior:

  1. Go to any file from a game using Old field path
  2. Click on a script bytecode instruction set
  3. See error

Expected behavior

The same that's done with import references(the name of the export) or the export number

image

Ability_Headcannon.zip

open *pak.files

Hi

how can i open .*pak files with UAssetGUI ?
or do i need another tool for it ?

thx 4 answers
greets

Feature Request

I find it kind of hard to edit and change light and fog colors, maybe you could try putting R, G, B, A to help better understand which colors you are changing?

Support UTF-8

I use UAssetGUI edit text in en-US uasset from Tales of Arise, It looks like unicode characters is not saved and in game all unicode text display as ????

Curve Editor?

Hey there!

A lot of Games using Curves for XP Rates etc. and I am curious, if you could add a Curve Editor into your Tool?

I'm still trying to figure out, how to edit curves, but sadly I can't find any way, so it would be cool, if you could add a tool opening linked curves and edit them.

Most of the Time Curves only show Extra Data with some random bytes.

Copy/Paste Multiple Boxes

Most applications of mine for UAssetGUI result in me having to replace multiple boxes with very similar parameters.

For example, for one of my ACE COMBAT 7: SKIES UNKNOWN mods that edits HUD labels, I have to type the same thing over and over for each individual entity in a given mission. An example I'm doing right now is that there are twelve entities all named the same thing - F/A-18F UNKNOWN.

Therefore, I have to go through and write the same order of "ObjNameID / StrProperty / us-ascii / F/A-18F" on one line, and on the next line, "CallsignID / StrProperty / us-ascii / UNKNOWN". In other words, I have to fill out eight text boxes in a large uasset file twelve times in a row... and those aren't the only changes I'm making to the file. This has gotten so laggy in the past that I have had to revert to UAssetGUI v1.0.0.3, since that version seems to not have as much issues with editing large umap/uasset files.

I propose a row or column copy/paste feature to fix this issue. Being able to simply copy over every single change from one export to another would save an unbelievable amount of time.

CopyPasteUassetGUI

If I could select all eight of those boxes and copy-paste them to all other eleven of those exports instead of writing them out over and over (I have 'StrProperty' currently on my clipboard just for that purpose), it would make workflow a lot easier.

ArgumentOutOfRangeException

Describe the bug
I have a .umap and uexp combo packed in ue 4.24 that refuses to open in newer version above 1.0.0.5 with the error System.ArgumentOutOfRangeException: Non-negative number required.
Parameter name: count

To Reproduce
Steps to reproduce the behavior:

  1. Open the newest commit and or release of UAssetGui
  2. Open the attached file
  3. See error
    From UE 4.24, game is Project Wingman

Expected behavior
It should open

Screenshots
If applicable, add screenshots to help explain your problem.
image

Desktop (please complete the following information):

  • OS: Windows 10
  • Version or Commit: 1.0.0.7

Additional context
I dont know if this is an issue with the file, or maybe with the program, but it would be nice to still open if able and maybe point out the issue
Alternatively, if someone can find what is causing the issue so i can change it.
Thank you
C_M22.zip

Failed To Parse Exports

Some exports in UAsset files for SIFU fail to parse when in previous versions of UAssetGUI they parsed.

Last time they parsed was in update v4 with the included "Override.json" applied in the map struct type overrides.
UAsset Files.zip

Failed to parse 1 export

Describe the bug
open a RaceSimdataasset.uasset give this error and load 1 row empy. shoud be 197 object
ue 4.27
To Reproduce
open file linked

Expected behavior
image

Screenshots
image
image

Desktop (please complete the following information):

  • OS: . Windows 11
  • Version or Commit: last. 1.0.0.0 alpha 6/946a8a0

RaceSimDataAsset.zip

Wrong offset address?

I'm not sure this is a bug or just something wrong on me, look like the tool's given memory offset address is wrong.
The same file offset address from AssetEditor and UAssetGUI is different, I'm pretty sure the AssetEditor is right address because I already test it in game. any help for this?

AssetEditor_5kH5ilfYje
offsetbug.zip

SFV(UE4.7) DA_XXX_Setup Files (Failed to parse 1 export)

Game: StreetFighterV
Engine Ver: 4.7.6 (4.7)

I keep getting the (Failed to parse 1 export) when opening the setup files that include a BGM file path leading to Raw data only being displayed

The following files seem to work fine as they dont include a BGM path
DA_D04_Setup.uasset
DA_AS1_Setup.uasset
DA_AS4_Setup.uasset
DA_AS6_Setup.uasset
DA_B00_Setup.uasset

as for the rest of them dont seem to work, It would be greatly appreciated if you guys could take a look at these files
SFV_UE4.7_DA_XXX_Setup_Files.rar

(hopefully i did this right i have no idea what im doing on github half of the time)

Error when handling large assets

Describe the bug
A System.NullReferenceException is thrown when I try to read a .uasset that comes with a large .uexp.

To Reproduce
Steps to reproduce the behavior:

  1. Extract the two files in ST_Equipment.zip.
  2. Open them with UAssetGUI.
  3. Try to show the 2980 items, or export as JSON to somewhere.
  4. See a System.NullReferenceException error.

Unreal Engine version: 4.26
Game: Tower of Fantasy

Expected behavior
The 2980 items are shown / exported normally.

Desktop (please complete the following information):

  • OS: Windows 11
  • Version or Commit: v1.0.0.3 (4b72161 - 44401ba)

Additional context
Most of the small assets in this game can be shown / exported normally. Prior to a recent update of the game, the particular asset given above was smaller and couldn't be shown directly in UAssetGUI, but could be exported normally as JSON. So I guess there somehow are two thresholds, the first one blocks the direct shows, and the second one blocks JSON exports.

Thank you for creating and maintaining this amazing tool!

[request] search feature

If possible a search feature would be really nice that allows users to search a string and directly open the index in which it is situated.

Category Data is always empty.

Hello.
I've been trying to open uassets extracted from a pak of a shipped UE4 game. The Header List, Linked Sectors, and Section Information seem to work well, but not the Category Data. It has the sub-elements like Category Data 1, Category Data 2 but they all seem to have only Raw Data (0B). Also, opening any uasset file results in a "Uh-oh!" dialog, complaining about how it "Failed to verify parsing...". Any ideas why it happens?

Failed To Parse 1 export

i have a game called "sword art online fatal bullet"
try to open file attached
AVID.zip

i dont know really what to do in this case hope you can help me solved it
any information you thing may help you detect the issue i be glad to let you know
i checked the source and after doing breakpoint i discover the issue came from here
reader.BaseStream.Seek(Exports[i].SerialOffset, SeekOrigin.Begin);

Add command line for opening file & specifying version to open with

Describe the solution you'd like
It looks like the only command line arguments are for json encoding? I'd like to specify the path to a uasset file & version needed to open with on command line.

Additional context
Something like:
uassetgui.exe open path/to/file.uasset VER_UE4_22

Issues opening two .UAsset on Unreal 4.27 (for Into the Radius)

Hello, never made one of these issue reports before so forgive me if I do it wrong.

Currently, UAssetGUI works great for editing Into the Radius assets, however there are two files that are fairly important that do not open correctly with the error: "Failed to parse 1 exports", with the information inside the file being "Raw Data".

I've included some of the files here, if you'd like to open them up and give them a try while diagnosing the issues.
GameDifficultyConfig works as intended.
GameConfig and PlayerConfig do not.

IntoTheRadiusUAssets.zip

Thank you.

Index of Array out of Range

Describe the bug

Uh oh!

Encountered an unknown error when trying to open this file!
System.ArgumentException: Das Zielarray ist nicht lang genug, um alle Elemente in der Sammlung zu kopieren. Überprüfen Sie Arrayindex und -länge.

To Reproduce
Steps to reproduce the behavior:
Open the asset I attached.

Version seems to be 4.27.2

Expected behavior
Open the Asset fine.

Additional context
(https://mega.nz/file/yER2FJDJ#TL_PNmuWra48feReqWoe9PUralTqJULfWHf24umwkWQ)
https://mega.nz/file/WF4Q3aYD#e5nwG4FpTztyHQXBmaRfRb7dwQi5tnJQtHMksC2L0Rw

Requesting Copy Paste keyboard shortcuts

Hello,

I don't know if it's intentional or not but the copy paste shortcuts are not working in your application. I always have to use the "right click copy and right click paste" method instead of Ctrl+C and Ctrl+V. Normally I wouldn't be that lazy but when I try to add dozens of new records manually, to a datatable for example, the lack of this feature can be very painful. Could you please add this to your UAssetGUI? That would be very helpful and appreciated.

Thank you very much

dot character changed to ? mark when saved if copied and pasted back

Small issue but thought I'd let you know, as I have to use asseteditor.exe to get these back in by copying pasting it from an original file.

(localisation file)
OT_York_Dungeon_STR.zip
.

  1. Open export data
  2. Open export 2
  3. Select stringdictionarydata
  4. Go to Text(0) value 3 "・Where's Shionne?"
  5. Copy and paste the dot over itself (it sometimes shows as a dot or doesn't paste and shows v instead, try again)
  6. When you managed to paste the dot, save file.
  7. Reopen saved file, it will appear as ? mark (and also ingame).
    Thanks again

Cant Build/Compile in Visual Studio 2019 (?)

Hey and Happy New Year to all!

I follow your Instructions: "Open the UAssetAPI.sln solution file in Visual Studio" and "Restore Nuget Packages." and "Set as Startup Project."UAssetGUI and compile. Dont work.

Visual Studio is on "Debug" "Any CPU"

Describe the bug
When i set UassetGUI as Start Up and compile Visual Studio 2019 give me this:

Der Befehl "git rev-parse --short HEAD > "C:\Users\USERNAME\Documents\GitHub\UAssetAPI\UAssetAPI\git_commit.txt"" wurde mit dem Code 9009 beendet. (Translate: git_gommit.txt was closed with Code 9009)
Der Befehl "git rev-parse --short HEAD > "C:\Users\USERNAME\Documents\GitHub\UAssetAPI\UAssetGUI\git_commit.txt"" wurde mit dem Code 9009 beendet.

When i klick "Creat a Solution" Visual Studio give me this:
unknown_2022 01 04-16 45

"C:\Users\USERNAME\Documents\GitHub\UAssetAPI\UAssetAPI\bin\Debug\UAssetAPI.dll" wurde nicht gefunden. (Translate: UAssetAPI.dll Dont found)
Der Befehl "git rev-parse --short HEAD > "C:\Users\USERNAME\Documents\GitHub\UAssetAPI\UAssetAPI\git_commit.txt"" wurde mit dem Code 9009 beendet. UAssetAPI
Der Befehl "git rev-parse --short HEAD > "C:\Users\USERNAME\Documents\GitHub\UAssetAPI\UAssetGUI\git_commit.txt"" wurde mit dem Code 9009 beendet. UAssetGUI

When i start Debug, Visual Studio say something like this:

"Cant start Debug dont find UAssetGUI.exe
unknown_2022 01 04-16 34

Expected behavior
What did i wrong and how can i fix this?

Desktop (please complete the following information):

  • OS: Windows 11

Thanks and have a nice day!
( By the Way, Sorry for my poor english :D)

Ace Combat 7 - Failed to maintain binary equality on pawn file

Describe the bug
Pawn file from Ace Combat 7 throws error "Failed to maintain binary equality"

To Reproduce
Steps to reproduce the behavior:

  1. Go to the link and download the file offered
  2. Select engine version 4.18
  3. Open file
  4. See error

Expected behavior
Error not showing at all, no "UNHANDLED_EXCEPTION" crashes for it.

Screenshots
image

Cannot change bIsEnabled value

Describe the bug
Changed .uasset data bIsEnabled to true and packed file using unrealpak. But bIsEnabled is still false in the FModel.
When load .uasset "Failed to parse 11 exports!" happens,and modified .uasset causes game crash.

Screenshots
Error
Uasset modified
FModel
(After Modified)

Desktop (please complete the following information):

  • OS: Windows 11
  • Version: v1.0.0.0-alpha.6 (ebcdfce)
  • Game: Sword and Fairy 7
  • Game UE4 version: 4.25
  • File: Pal7\Content\UI\UMG\System\UMG_Photo.uasset

UMG_Photo.zip

What would make this more convenient - Copy with ctrl +c, ctrl v, trim strings and other things

A huge inconvenience of this tool is that edition is not well done in compare to other text editors.
So pretty trivial suggestion would be, sorted by size:

  • possibility to copy/paste text by ctrl c ctrl v via normal operating system buffer
  • please trim string input fields, because it may go wrong if you have spaces or newlines at the begin or in the end of the string. It is basic what you do in editor,
  • end editing a textfield with pressing "enter", without creating a newline in the string
  • ability to copy-pste or duplicate a row.
  • maybe duplicate multiple rows and between editors?
  • searching for some text and open the results in the treeview.
  • detailed answer about what exactly is wrong in the file, in case of an error

Thanks for possible attention.
I could participate in this project, best regards

FF7R files won't parse exports and says they may not save correctly.

Describe the bug
7R assets don't parse correctly. The engine is a 4.26.1/pre4.19 hybrid that uses unversioned serialization for skeletal meshes.

To Reproduce
Steps to reproduce the behavior:
Open any asset with any version selected.
Unable to upload assets here, DMing on discord. Thank you for any help!

Screenshots
If applicable, add screenshots to help explain your problem.

  • OS: Windows 10

Failed to parse export

Getting a "Failed to parse 1 exports!" error when trying to open the attached files. Other files work fine.

Game runs on Unreal Engine 4.27
(4.27.7.0, ++UE4+Release-4.27-CL-0)

DT_BeerStyles.zip

Windows 10 / UAssetGUI v1.0.0.0-alpha.7

UE4 4.17 Game Error Detials Inside .

Hello Dear @atenfyr

i try to using your tool on a game called sword art online fatal bullet
unreal engine 4.17
aes key value is : h67GrjX2aGMgrAQeNwf9VmCYbt50ylJFeP3rIhbxh4e9bZXnqm8sbvEjWGOi6rgs
in case you need

the tool report : failed to parse 1 export

great program, works perfect in most cases but some values don't save right or something is corrupted when saving?

Making edits to values in BtlSkillDatabase_Arise.uasset (tales of arise), (engine 4.20) editing value with the same original value then saving causes some form of corruption relating to the edit of the item inside the game. No errors from the program noticed. It would appear only that record is corrupted while others seem to save okay, it's only when you type the same value in the box (or a different value) then save where it corrupts (that specific record).

Earlier versions of uassetgui tested and sometimes gives error, and outcome slightly different where the top half of the record is removed after saving.
BtlSkillDatabase_Arise.zip

To reproduce:

  1. Go to Export Data
  2. Expand Export 1
  3. Expand Btlskilldatabase
  4. Expand Database
  5. Expand Record
  6. Go to 15th record ID SKILL_ACC_CHANT_DOWN
  • Change row 8 Value(0) to same original value.
  • Change row 13 Max(0) to same original value.
  • Change row 19 FixValue(0) to same original value.

Save file.

Io Store uasset support

Hey, so I have a question is it possible to support Io store uasset format for UAssetGUI?
Its used by some games where I want to modify a uassets.

Failed to parse 1 export

When I try to open some assets, I get the error "Failed to parse 1 export" and can't change anything in the Export Data because it's empty.
Game: Lego 2K Drive
UE4 version: 4.27.2.0
I tried latest release: v1.0.0.7 (9418e64 - a5978d9)
Also tried latest build (follow compilation process): v1.0.0.7 (d0773e5 - 79e998b)
OS: Win10
Here are example files:
assets.zip

Unreal Engine 4.21 DataAsset Parse Fail (Raw Data)

Hello,

The following DataAsset file (DA_Global.uasset) has a Parse Fail and provide just Raw Data.
I've put everything into a Google Drive Link:
https://drive.google.com/file/d/12EONs0hwwCuxF5Uauqd6YH5ETMV05xcY/view?usp=sharing

  • uasset/uexp files
  • Screenshots about the error and the raw data
  • Heilos' Asset Editor can open it partly
  • The asset exported as json file by FModel
  • The issue was happened with UAssetGUI v1.0.0.0-alpha.2, OS: Windows 10 x64
  • Game is Dragon Ball Z: Kakarot
  • Engine: UE 4.21

Thank you

Subverse game, is it possible to change some text with your utility.

Changing the text in uasset and uexp files using a program for further translation of games.
I'm translating text for a game and I've run into a problem where I can't change some of the text (screenshots below). Is it possible to make the program somehow learn how to change this type of text. I encounter this type of text in many games.

Game: Subverse
Unreal Engine 4.22.3

Using the program
The program unfortunately at the moment can not change this text.

Screenshots
Text:
Position
on the highlighted tile(s).

Text in game:
Subverse-Win64-Shipping_2022_05_28_12_06_14_178
Text in hex editor:
unknown (5)
Text in your utility (latest version):
image
Text in JSON after saving by your utility:
image
Also a warning when opening the file:
image

Files:
Subverse_0.4.5_(ModGridCombat_UI).zip

Desktop PC:

  • OS: Windows 10 Pro
  • Version v1.0.0.0-alpha.4

Additionally:
There is a lot of such text, but I threw off one of the examples. If necessary, I can throw off another text from this game or some other.

Unreal 5 Support

Is your feature request related to a problem? Please describe.
Hey there, cool tool! It would be great to also open ue5 uassets? Is it planned to have this option in the future, or is it already somehow working? Currently I get a System.ArgumentOutOfRangeException when trying to open an ue5 animation montage uasset.

Describe the solution you'd like
Support ue5.

Describe alternatives you've considered
I checked if there are other tools out there, but yours seems to be the most actively maintained.

Additional context
image

Could you please analyze this --------------------------- Uh oh! --------------------------- Failed to maintain binary equality! UAssetAPI may not be able to parse this particular asset correctly, and you may not be able to load this file in-game if modified.

--------------------------- Uh oh! --------------------------- Failed to maintain binary equality! UAssetAPI may not be able to parse this particular asset correctly, and you may not be able to load this file in-game if modified.

https://www.mediafire.com/file/lf20tps6iiniy63/18021_LynF.zip/file

UassetGUI can't open any Hello Neighbor's alpha 1 assets running on 4.10

I am not able to open assets running on 4.10 and 4.8, pretty sure it also is like that for older versions, but the game I tried it on was Hello Neighbor alpha 1. If you try to open any uasset in HN alpha 1 or pre alpha, you get an error "Encountered an unknown error when trying to open this file! System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: startIndex"
Here's an image of the error and the asset:
https://drive.google.com/file/d/1doSC-pRh7J2flE-pphaH8wSVMQeCuapV/view?usp=sharing

How to know SerialSize?

I'm adding new data to a .json export of a UAsset file but I don't know how to fill SerialSize. How can I measure this?

Unable to parse all The Outer World files.

Program is unable to parse specific files for the game The Outer Worlds (Appears to work with most*, but ones inside the item section at least do not)

Simply trying to load the .uasset file results in at least 1 failure to parse
UAssetGUI_upXKCjycM2

UAssetGUI_RpUtFll3sK

Have tried some other files and all appear to work as intended

Attached is the file that I have been trying to edit
Drug_SC_Adreno.zip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.