Gildor's Forums

Author Topic: Dead Island 2  (Read 5809 times)
cennoddoippoila
Newbie
*
Posts: 1


View Profile
Re: Dead Island 2
« Reply #15 on: August 09, 2023, 00:35 »

i managed to open assets, textures and animation, but i can't find a way to open all the others file. has someone managed to open them? Horever did that send me a text soo i will help ou more
Logged
AllEx
Newbie
*
Posts: 5


View Profile
Re: Dead Island 2
« Reply #16 on: November 27, 2023, 19:47 »

I'm also having problems with extracting data.
I'm using umodel_acl_1.3 with game override option.
Error message:

Loading Material3 M_Fluid_PostProcess_UnderSurface from package /DeadIsland/Plugins/DSWater/Content/Materials/PostProcess/M_Fluid_PostProcess_UnderSurface.uasset
ByteProperty: unknown UMaterial3 MaterialDomain
BoolProperty: unknown UMaterial3 bCastRayTracedShadows
StructProperty: unknown FMaterialCachedParameters Data
WARNING: Unknown class "Texture2DArray" for object "TA_Default_Caustics_D"
WARNING: Unknown class "Texture2DArray" for object "TA_Default_WaveFoam_D"
WARNING: Unknown class "Texture2DArray" for object "TA_Default_WaveFoam_D"
WARNING: Unknown class "TextureRenderTarget2D" for object "RT_SimTarget0"
WARNING: Unknown class "Texture2DArray" for object "TA_Default_Caustics_D"
Loading Texture2D PT_Linear_Noise from package /Game/DIShared/Effects/Materials/Noise/PT_Linear_Noise.uasset
Loading Texture2D T_UnderwaterDistortion_N from package /DeadIsland/Plugins/DSWater/Content/Textures/T_UnderwaterDistortion_N.uasset
Loading Texture2D T_Black_D from package /Game/DIShared/Core/Materials/T_Black_D.uasset
******** Loading object Texture2D'T_Black_D.T_Black_D' ********
*** ERROR: Access violation (C0000005) at umodel_acl_1.3.exe+0x34DA0
CachedExpressionData <- UMaterial3::ScanMaterialExpressions <- UMaterial3::PostLoad <- PostLoad: M_Fluid_PostProcess_UnderSurface <- UObject::EndLoad <- LoadWholePackage: /DeadIsland/Plugins/DSWater/Content/Materials/PostProcess/M_Fluid_PostProcess_UnderSurface.uasset <- ExportPackages <- UIMenuItem::HandleCommand <- UIMenu::Popup <- UIBaseDialog::WndProc <- UIBaseDialog::CustomMessageLoop <- UIBaseDialog::ShowDialog: modal=1, title="Choose a package to open" <- CUmodelApp::ShowPackageUI <- Main: umodel_build=1579 based
Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 2219


View Profile
Re: Dead Island 2
« Reply #17 on: November 28, 2023, 16:06 »

@AllEx: It should be fixed now in the updated build. Though such materials wouldn't be parsed properly anyway.
Logged
AllEx
Newbie
*
Posts: 5


View Profile
Re: Dead Island 2
« Reply #18 on: November 28, 2023, 18:04 »

@AllEx: It should be fixed now in the updated build. Though such materials wouldn't be parsed properly anyway.
I used the latest build version, but it crashes in other places. Ex.
Loading Texture2D T_Black_D from package /Game/DIShared/Core/Materials/T_Black_D.uasset
******** Loading object Texture2D'T_Black_D.T_Black_D' ********
*** ERROR: TArray: index 0 is out of range (0)
CachedExpressionData <- UMaterial3::ScanMaterialExpressions <- UMaterial3::PostLoad <- PostLoad: M_Opaque <- UObject::EndLoad <- LoadWholePackage: /Game/DI2/Art/Environment/Architecture/MapSpecific/Sewers/SM_ARC_Sewer_T04A_Fatberg_01.uasset <- ExportPackages <- UIMenuItem::HandleCommand <- UIMenu::Popup <- UIBaseDialog::WndProc <- UIBaseDialog::CustomMessageLoop <- UIBaseDialog::ShowDialog: modal=1, title="Choose a package to open" <- CUmodelApp::ShowPackageUI <- Main: umodel_build=1590

Is it possible to run UModel in such a way that it would ignore those assets that it can not export? It is quite sad to wait for a long time and somewhere on 90% to see crash of tool. After that you should try to export assets from subfolders many times until you realize, what exactly is causing crash.
Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 2219


View Profile
Re: Dead Island 2
« Reply #19 on: November 28, 2023, 20:37 »

@AllEx: It seems like you've accidentally used incorrect build, make sure you re-downloaded updated build via link in the first post. As for crashes in general - usually you can disable certain asset types, which are crashing umodel (meshes/materials+textures/animations), at startup screen. But it's better to report them, as most crashes can be somehow fixed.
Logged
AllEx
Newbie
*
Posts: 5


View Profile
Re: Dead Island 2
« Reply #20 on: November 29, 2023, 18:41 »

make sure you re-downloaded updated build via link in the first post
OK, my mistake. I checked version 1.3 again and noticed that you updated it. This time I tried exporting in PSK, not in GLTF. It looks like it works more stable, but unfortunately it crashes again:
Loading MaterialInstanceConstant MI_VertAnim_Zombie_Reach_EyeLevel from package /Game/DI2/Effects/Vertex_Animation/Reach_EyeLevel/MI_VertAnim_Zombie_Reach_EyeLevel.uasset
ArrayProperty: unknown UMaterialInstanceConstant CachedReferencedTextures
Loading Material3 M_Zombie_Vertex_Animation from package /Game/DIShared/Effects/Master_Materials/M_Zombie_Vertex_Animation.uasset
ByteProperty: unknown UMaterial3 MaterialDecalResponse
StructProperty: unknown UMaterial3 MaterialAttributes
IntProperty: unknown UMaterial3 NumCustomizedUVs
BoolProperty: unknown UMaterial3 bTangentSpaceNormal
StructProperty: unknown FMaterialCachedParameters Data
Loading Texture2D PT_VertexAnim_Reach_EyeLevel_UV1 from package /Game/DI2/Effects/Vertex_Animation/Reach_EyeLevel/PT_VertexAnim_Reach_EyeLevel_UV1.uasset
******** Loading object Texture2D'PT_VertexAnim_Reach_EyeLevel_UV1.PT_VertexAnim_Reach_EyeLevel_UV1' ********
*** unknown member TC_VertexAnimPos of enum ETextureCompressionSettings
Loading Texture2D PT_VertexAnim_Reach_EyeLevel_UV1_Normals from package /Game/DI2/Effects/Vertex_Animation/Reach_EyeLevel/PT_VertexAnim_Reach_EyeLevel_UV1_Normals.uasset
******** Loading object Texture2D'PT_VertexAnim_Reach_EyeLevel_UV1_Normals.PT_VertexAnim_Reach_EyeLevel_UV1_Normals' ********
*** unknown member TC_VertexAnimPos of enum ETextureCompressionSettings
*** ERROR: Memory: bad allocation size -469776384 bytes
appMalloc: size=-469776384 (total=865 Mbytes) <- FArray::Empty: 1065352960 x 56 <- TArray::Serialize: 0/0 <- FTexturePlatformData<< <- UTexture2D::Serialize4 <- UTexture2D::Serialize <- LoadObject: Texture2D'PT_VertexAnim_Reach_EyeLevel_UV1_Normals.PT_VertexAnim_Reach_EyeLevel_UV1_Normals', pos=55E, ver=518/0, game=di2 <- UObject::EndLoad <- LoadWholePackage: /Game/DI2/Effects/Vertex_Animation/Reach_EyeLevel/MI_VertAnim_Zombie_Reach_EyeLevel.uasset <- ExportPackages <- UIMenuItem::HandleCommand <- UIMenu::Popup <- UIBaseDialog::WndProc <- UIBaseDialog::CustomMessageLoop <- UIBaseDialog::ShowDialog: modal=1, title="Choose a package to open" <- CUmodelApp::ShowPackageUI <- Main: umodel_build=1579 based

Anyway, having ability to ignore failing assets would help a lot! Yesterday I spent 3+ hours trying to get non-failing assets. With checkbox "ignore failing assets" I would not spend any extra time Smiley I know I can disable some type of resources. But imagine that crash happen only with some material and with all static meshes, which uses this texture. To avoid crash I would have to disable export of all meshes and materials. But if we would have that checkbox, we would be able to export all meshes and materials which are not leading to crash. So, this tool would bring much more benefit to users. But I don't want to be insistent, it is just my opinion Smiley
« Last Edit: November 29, 2023, 19:08 by AllEx » Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 2219


View Profile
Re: Dead Island 2
« Reply #21 on: November 30, 2023, 04:49 »

@AllEx: This issue should be fixed now as well. As for the rest - it's not possible to bypass all possible errors by design, because most of them are caused by custom changes in the engine, which you don't expect while parsing binary data and all adjustments should be done manually on per game basis (mostly). There is no other way around. Also, you can copy only crash message, there is a button for this in the crash window.
Logged
AllEx
Newbie
*
Posts: 5


View Profile
Re: Dead Island 2
« Reply #22 on: November 30, 2023, 15:19 »

it's not possible to bypass all possible errors by design, because most of them are caused by custom changes in the engine, which you don't expect while parsing binary data and all adjustments should be done manually on per game basis (mostly). There is no other way around. Also, you can copy only crash message, there is a button for this in the crash window.
Got it. Thanks for explaining!
I have few more questions:
1. Should I keep reporting here about other crashes while parsing game's data? Or it doesn't make sense?
2. I managed to get meshes and some material parameters as texture names, set of scalar/vector parameters, etc. But what I didn't find is how to extract materials/shaders themselves. Having material inputs is nice and sometimes we can recreate simple materials. But some materials seems really complicated. Ex M_Weapon - it has a looot of inputs. Without shader code we can only guess what is it doing. Game has access to shader, so in theory shader code should be accessible. Yes, may be it will need to be "disassembled" later, but it should be available. Am I wrong?
Question: is there any way to extract shader code (or materials themselves)? If not by UModel, may be someone can suggest any other tool for this?
3. Did anyone figure out how to apply "blood" texture to weapons? It actually look quite weird - it looks more like mask, not blood image. Moreover, 3 layers (R, G and B) if that textures differ a lot. I can only guess that different layers may correspond to different amount of blood on weapon, but how later blood is applied to weapon's mesh - no idea. Also if my assumption is correct and "blood" textures, which comes with weapon, are just masks, then I could not find real blood texture, applied on this mask. Did anyone find it?
Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 2219


View Profile
Re: Dead Island 2
« Reply #23 on: November 30, 2023, 16:45 »

@AllEx: Well, obviously you can report crashes. Like I said, most of them can be somehow fixed, though I don't have time or enough space to do tests on whole games of this size. You can report multiple issues at once, in that case you can write only assets names, which are causing errors (usually it's the first name in error from the bottom, or related to it asset).

Regarding materials - for this game they've customized some materials in a way, which is not even properly parsed by umodel, while shaders are out of scope of the program in general. It's usually hard or nearly impossible to re-create some complex materials 1:1, but if you really want to dig into it, it's probably better to use graphic debuggers (like Nvidia Nsight or Intel GPA), unless you want to decompile shaders manually. But that's also out of scope of this forum.
Logged
AllEx
Newbie
*
Posts: 5


View Profile
Re: Dead Island 2
« Reply #24 on: December 01, 2023, 14:55 »

OK, then I will keep reporting about crashes. I know, that you are busy, so I will not expect fixes Smiley
"shaders are out of scope of the program in general" Oh, sad to hear that. Meshes without materials are not that attractive. Though, its better than nothing Smiley
"it's probably better to use graphic debuggers (like Nvidia Nsight or Intel GPA)" Thanks for the hint! I will dig into that direction.
"But that's also out of scope of this forum." Sure. I will not spoil it with offtopic. Just wanted to know direction, where to investigate. Thanks again!
Logged
Jump to:  

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