Gildor's Forums

Author Topic: Splinter Cell Series (SC1-4)  (Read 573 times)
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Splinter Cell Series (SC1-4)
« on: September 25, 2023, 12:26 »

This will be an informational post about the Splinter Cell series, focusing on their current compatibility with UModel and known methods for extracting assets.


It is required to override game detection: Unreal Engine 2 > Splinter Cell 1-4 when loading these packages.

Splinter Cell
Developed by Ubisoft Montreal and based on Unreal Engine 2, build 829.

UModel Compatibility: The official UModel build supports SkeletalMesh, Texture, Animation, but not StaticMesh. However, spiritovod added support for StaticMesh packages to a specific UModel build, available in this topic.



Splinter Cell: Pandora Tomorrow

Single Player: Developed by Ubisoft Shanghai, expanding on the original Splinter Cell engine with some slight enhancements.

Versus (Multiplayer): Developed by Ubisoft Annecy and based on Unreal Engine 2, build 2110. A public UnrealEd was released for the Versus mode called the "Pandora Tomorrow Editor."

UModel Compatibility: spiritovod added support for SkeletalMesh, Texture, Animation, and StaticMesh packages for the Single Player engine to a specific build, linked above. Additionally, this build supports StaticMesh and Texture packages for the Versus engine.



Splinter Cell: Chaos Theory

Single Player / Coop:  Developed by Ubisoft Montreal, a massive overhaul based on the original Splinter Cell engine. It contains some features from newer Unreal Engine 2.5 builds and includes Havok Physics. Internally, Ubisoft called this engine the "SCX Engine" starting with this game.

Versus (Multiplayer): Developed by Ubisoft Annecy, based on Pandora Tomorrow's Versus engine. A public UnrealEd was also released for this Versus mode called the "Chaos Theory Editor," which was included with the game. Texture, StaticMesh, and Sound packages, as well as maps from Pandora Tomorrow Versus, can be imported into Chaos Theory Versus directly. The Chaos Theory Editor can export StaticMeshes into .ASE format, unlike the original Pandora Tomorrow Editor.

UModel Compatibility: The official UModel build supports Texture packages for the Single Player / Coop engine. Ubisoft began using UMD containers for storing their assets. Single Player / Coop stores its assets in a file named "dynamic-pc.umd" within the System directory. It is possible to extract the contents of this file using a tool called UMODExtractor. spiritovod added support for StaticMesh and Texture packages for the Versus engine to a specific UModel build, linked above.



Splinter Cell: Double Agent

Single Player: Developed by Ubisoft Shanghai and is an enhanced version of the Chaos Theory engine, known internally as the Enhanced SCX Engine.

Versus (Multiplayer): Developed by Ubisoft Annecy, and it received an overhaul of engine enhancements, making it more on par with the single player engine graphically.

UModel Compatibility: The official UModel build does not support Single Player or Versus engines. The assets for the Single Player engine are stored in proprietary containers created by Ubisoft, and there is currently no known way to extract them. spiritovod added support for Texture packages for the Versus engine to a specific UModel build, linked above.



Sound Packages

Ubisoft developed a unique sound format for all of their Splinter Cell games. In the sounds folder for each game, there is usually a large file named "Stream.SS0" that contains most of the sounds, each language's voiceovers are typically split up into different .SS0 files. In most cases, the .UAX files typically serve as references to Unreal Engine but do not contain actual sounds.

The sound file extension does change per platform:
.SS0 - PC
.SS1 - PS2
.SS2 - Xbox
.SS3 - GameCube
.SS4 - Xbox 360
.SS6 - PS3
.SS7 - Wii

A tool called DecUbiSnd (source code available) was created that will allow you to playback and extract the sounds from Splinter Cell 1-4's Single Player engines as well as Double Agent's Versus engine. Some other Ubisoft titles are also supported such as XIII.

Pandora Tomorrow Versus and Chaos Theory Versus are not supported as their sound used a different format.



Console Versions

Extracting assets from the console versions are likely much more difficult. All assets except sound and video files are typically compressed into .LIN format.

Splinter Cell: Double Agent's Versus (Multiplayer) engine for Xbox 360 and PS3 store their files in new Ubisoft proprietary formats: ULL, ULLSkin, and ULLData. This is the one and only instance of these formats being used in the series as Ubisoft Annecy's Versus engine was discontinued after Double Agent.

It's worth mentioning that there is another version of Splinter Cell: Double Agent developed for: Xbox, PS2, GameCube, Wii. It was developed by Ubisoft Montreal, and nearly identical to the SCX Engine from Chaos Theory's Single Player / Coop.

There was a Double Agent Versus (Multiplayer) mode developed for Xbox and PS2 as well, but Ubisoft Milan worked on it as Ubisoft Annecy was busy with the online modes for Xbox 360, PC, and PS3. The multiplayer mode for sixth generation consoles closely matches the engine used in Chaos Theory Versus.
« Last Edit: October 02, 2023, 02:28 by Joshhhuaaa » Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 1852


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #1 on: September 26, 2023, 18:49 »

@Joshhhuaaa: Thank you for such detailed info Cheesy Though offline version of Pandora Tomorrow was already supported in official umodel build, except for static meshes. It's just it can't be autodetected due to detection overlapping, but if respective override is set manually, everything should work (except for static meshes).

Some notes from my own researches:
1) Online (versus) format for static meshes in Pandora Tomorrow and Chaos Theory is the same, it's just in second one names table is additionally obfuscated. Double Agent online static meshes format is around the same, but actually closer to static meshes in offline versions of SC1-2.
2) Chaos Theory also contains some data in raw "bin" format (_tex.bin/_sm.bin for textures and meshes respectively), which consists of index (object names and offsets/sizes for raw data) and data itself. There is "scl" format as well, which is modified UE2 package.
3) Offline version of Double Agent is using some proprietary "hlnc+ulnc" format, which works more like UE4 asset, but with embedded UE2 packages(?).
« Last Edit: September 26, 2023, 18:52 by spiritovod » Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #2 on: September 27, 2023, 05:23 »

1) Online (versus) format for static meshes in Pandora Tomorrow and Chaos Theory is the same, it's just in second one names table is additionally obfuscated. Double Agent online static meshes format is around the same, but actually closer to static meshes in offline versions of SC1-2.
I had a good feeling PT Versus and CT Versus packages were nearly identical, but just wanted to avoid making assumptions without someone experienced looking into it.

That's interesting about SCDA Online being closer to SC1-2 single player, would you say SCDA Online's packages are likely easier to support than SCCT single player?

2) Chaos Theory also contains some data in raw "bin" format (_tex.bin/_sm.bin for textures and meshes respectively), which consists of index (object names and offsets/sizes for raw data) and data itself. There is "scl" format as well, which is modified UE2 package.
You are correct with the Original Xbox versions of Chaos Theory and Double Agent using those .bin files for Textures and StaticMeshes alongside the .LIN format.

However, just to clarify, Chaos Theory on PC does not rely on any .bin formats for Textures or StaticMeshes, just the standard *.utx / *.usx that are stored inside the dynamic-pc.umd.

.scl format are the actual map files, but as you mentioned, they are essentially UE2 packages and may also contain assets. Many games modify the file extension for their map files, such as UT 2004, which refers to them as .ut2 instead of the default .unr used by UE2.

3) Offline version of Double Agent is using some proprietary "hlnc+ulnc" format, which works more like UE4 asset, but with embedded UE2 packages(?).
Yeah, those are the correct formats. I probably should have gone into more detail about SCDA in the post.

It seems that each map gets its own .HLNC and .ULNC file. .ULNC files in particular tend to be larger and seem to store the actual assets. You may also notice that .LIN format does exist in the PC version of SCDA, unlike the console versions of the format, the data in those seem readable.
For each .LIN package on SCDA PC, there is also a small .HLN file generated, reflecting the same relationship between .ULNC and .HLNC.

Textures are organized into "HighResTex" for high resolution textures and "LowResTex" for low resolution textures. Within those folders, each map has both a .TLNC and .HLNC file. The .TLNC files appear to store the actual textures, while the .HLNC files, like those in the System folder are small in size.

.LIN format is only used in three large "common" files, it seems these were only used when assets and textures were shared across all the game's levels.
Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #3 on: September 27, 2023, 06:11 »

Update: spiritovod fixed all the packages mentioned below from Splinter Cell and Splinter Cell Pandora Tomorrow (single player) that were previously crashing. Update to the latest version of the UModel build, available in this topic.



Just to update the status on UModel Compatibility for Splinter Cell and Splinter Cell: Pandora Tomorrow (Single Player), you may run into some issues when loading some packages. I'm not certain whether these specific packages can be easily fixed or if they have unique issues compared to the others.

The following packages currently cause errors or crashing:

Splinter Cell

Animation:
EMiniV.ukx (Memory: bad allocation size -939524096 bytes) [SCPT has this package and it works, SC1 is a little bigger in size]


Texture:
1_3_Cinematic_TEX.utx (Memory: bad allocation size -1476395008 bytes)
6_1_1_kolatex.utx (Property ZTest expected type byte but read bool)
lambert_office_tex.utx (Memory: bad allocation size -1140850688 bytes) [SCPT has this package and it works, SC1 is a little bigger in size]
Maps.utx (Unable to read 641882 bytes at pos=0x1000) [This package is identical to the Maps.utx seen in SCPT]



Splinter Cell: Pandora Tomorrow

Animation:
EBird.ukx (Memory: bad allocation size -1342177280 bytes)
ELada.ukx (Memory: bad allocation size -1140850688 bytes)
EParA.ukx (Access violation (C0000005) at umodel_materials.exe+0xFF549)
EParB.ukx (Memory: bad allocation size -67108864 bytes)
EWinGlass.ukx (Memory: bad allocation size -469762048 bytes)
EZodiac.ukx (Memory: bad allocation size -671088640 bytes)

StaticMesh:
431_TVS.usx - Loads package sometimes or crashes without an error message. Some meshes appear broken (picture below). Will crash on certain meshes, application just closes with no error.
EMeshCharacter.usx (Wrong import index 61)
LeafSM.usx (Memory: bad allocation size -86528 bytes)
LightGenOBJ.usx (Same behavior as 431_TVS.usx)

Texture:
111_EmbassyT.utx (Memory: bad allocation size -98112 bytes)
3_1ShipyardTXT.utx (Serializing behind stopper (DC0EB2+508 > DC11BB))
411_VillageT.utx (Property ZTest expected type byte but read bool)
ETexAccessories.utx (assertion failed: Colors.Num() == 256)
GUIContent.utx (Memory: bad allocation size -911106 bytes)
Maps.utx (Unable to read 641882 bytes at pos=0x1000)
MiningTown_Tex.utx (Memory: bad allocation size -872415220 bytes)
NucRoom2.utx (Memory: bad allocation size -1744830464 bytes)
WarehouseAD.utx (Access violation (C0000005) at umodel_materials.exe+0xFF549)



These StaticMesh packages will load correctly without textures. They currently fail with textures loaded as they rely on Texture packages that fail currently.
      2_2_TrainS.usx (assertion failed: Colors.Num() == 256) - Failing because ETexAccessories.utx
      411_VillageS.usx (Property ZTest expected type byte but read bool) - Failing because 411_VillageT.utx
      EMeshAccessories.usx (assertion failed: Colors.Num() == 256) - Failing because ETexAccessories.utx



In terms of priority, the most important packages to get fixed as they contain full map assets:
Splinter Cell: Pandora Tomorrow

StaticMesh:
431_TVS.usx

Texture:
111_EmbassyT.utx
411_VillageT.utx
ETexAccessories.utx



Example of 431_TVS.usx and LightGenOBJ.usx having broken meshes. These are the only 2 packages that can load without problem occasionally but have broken meshes. I noticed the affected meshes are usually in the Group named "breakablelight."

« Last Edit: October 02, 2023, 02:22 by Joshhhuaaa » Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 1852


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #4 on: September 27, 2023, 19:47 »

All of the mentioned errors should be fixed now in the updated build. Though some textures, which are using non-standard palettes, can't be loaded. Also those weird looking meshes are using non-standard rendering (triangle strips or quads), which is not supported in umodel in general - but at least they shouldn't crash.

On the side note, static meshes from Pandora Tomorrow (online) and Chaos Theory (versus) should be supported now as well, without textures.
Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #5 on: September 28, 2023, 04:59 »

All of the mentioned errors should be fixed now in the updated build. Though some textures, which are using non-standard palettes, can't be loaded. Also those weird looking meshes are using non-standard rendering (triangle strips or quads), which is not supported in umodel in general - but at least they shouldn't crash.

Thanks for all these updates and fixes, I really appreciate you taking the time. I noticed the non-standard palettes not being loaded as well, I forgot to bring that up but thanks for letting me know.

I've confirmed that all packages for SC1/SCPT are now working on the latest build.

On the side note, static meshes from Pandora Tomorrow (online) and Chaos Theory (versus) should be supported now as well, without textures.

I definitely didn't expect anyone to bother adding support for these but nice work. SCCT Versus StaticMesh support is flawless with all packages that shipped with the game working and even the Ubisoft DLCs released later load without any issues.

If a StaticMesh package has been created or modified with the retail Chaos Theory Editor, it will break UModel support. Only packages created by Ubisoft and not modified will load correctly. User-created packages give the error: "Serialized FString is not null-terminated."

This is definitely low on the list in priority, I wouldn't worry about this problem if it is difficult to fix. If you are interested in looking into it, here are a few custom StaticMesh packages.



The following packages currently cause errors:

SCPT Versus

StaticMesh:
chantier_poc_stm.usx (Serializing behind stopper (A88+7068 > 12B0) [SCCT Versus has this file working with all the same StaticMeshes, plus some more.]
CTF_static.usx (Memory: bad allocation size -549494240 bytes) [SCCT Versus has this file working with all the same StaticMeshes.]
FX_WAR_warp.usx (Memory: bad allocation size -1960704 bytes) [SCCT Versus has this file working with all the same StaticMeshes.]
KRA07_Specifik_XBox.usx (Memory: bad allocation size -1080 bytes) [Highest priority to fix as it is related to a map's assets.]
POC_TESTLD_SM.usx (Memory: bad allocation size -126 bytes)
SEffectStatic.usx (wrong export index 61)
SIcoMinimap_.usx (Memory: bad allocation size -803370 bytes)
Sminimap_SM.usx (bad allocation size -10 bytes)
SoundVisionMesh.usx (Memory: bad allocation size -9572 bytes)
stm_lab.usx (Memory: bad allocation size -1368 bytes)
TestMapStaticM.usx (wrong export index 62)
SM_EgoutsNeew.usx (Serializing behind stopper (799+FECD90 > 273B) [Package was created by Ubisoft, but released as DLC later.]

None of these are too concerning, if someone wanted any of these failing SCPT Versus StaticMeshes, they can import the package into the Chaos Theory Editor and then export into .ASE format from there.



Thanks again spiritovod with all the progress.
« Last Edit: September 29, 2023, 10:13 by Joshhhuaaa » Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 1852


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #6 on: September 29, 2023, 06:13 »

@Joshhhuaaa: I've rolled some fixes in the updated build (meshes created in editor for Chaos Theory should be supported now), but I guess it's quite pointless trying to support all possible formats for Pandora Tomorrow, since they're using like 10 different formats or more within one game version (it can be guessed from packages versioning as well). Engine supporting all those variants at once should be a flying spaghetti monster...
« Last Edit: September 29, 2023, 06:15 by spiritovod » Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #7 on: September 29, 2023, 10:37 »

@Joshhhuaaa: I've rolled some fixes in the updated build (meshes created in editor for Chaos Theory should be supported now), but I guess it's quite pointless trying to support all possible formats for Pandora Tomorrow, since they're using like 10 different formats or more within one game version (it can be guessed from packages versioning as well). Engine supporting all those variants at once should be a flying spaghetti monster...

No worries about the remaining SCPT Versus packages that are causing issues, I can't thank you enough, and it is impressive how fast you've been rolling out these updates.

Packages like TestMapStaticM.usx and POC_TESTLD_SM.usx are not even used in the game and are only developer test packages. The minimap/soundvision packages are also not used in the game and canceled content.  This latest build supports all StaticMeshes that are actually used in levels.

SCCT Versus StaticMesh support is perfect now, no issues at all.



I noticed you added Texture support for SCPT Versus as well. If it is any useful, here are the packages that currently fail in latest build:

SCPT Versus:

Texture:
DTK_Textures_TC.utx (wrong name index -6592)
EditorTex.utx (wrong name index -1879048191)
GUIContent.utx (wrong name index -1048564)
Krauser_TXT.utx (wrong name index 65229360)
MHOSFX_Xbox.utx (wrong name index -48)
Prison_TEX.utx (wrong name index -32)
SFont.utx (wrong name index 2013265921)
SFX_KRA_Xbox.utx (wrong name index 66216172)
SFX_SCH_Xbox.utx (wrong name index 1046167)
SGameplayObjectsTex.utx (GetTypeName: unknown type index 0)
SHUDTextures.utx (wrong name index -1048575)
SIcoMiniMap.utx (wrong name index -1342177279)
SMiniMap.utx (wrong name index -1048573)
SPersoTextures.utx (wrong name index -1048565)
TXT_Spy.utx (wrong name index -52)
TXT_WAR.utx (wrong name index -29)

In terms of priority, the most important packages to get fixed as they contain textures used in maps:
SCPT Versus:

Texture:
DTK_Textures_TC.utx
Krauser_TXT.utx
MHOSFX_Xbox.utx
Prison_TEX.utx
SFX_KRA_Xbox.utx
SFX_SCH_Xbox.utx
TXT_Spy.utx
TXT_WAR.utx
Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 1852


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #8 on: October 01, 2023, 20:09 »

Since I don't quite understand what they're doing with some struct properties (like FMatrix), workaround is added for such cases. Now umodel will stop reading any properties after bumping into any unknown struct property. It should help to avoid related crashes, but the rest of properties would be skipped, which may affect materials.

With this update, textures now works for Pandora Tomorrow (online) and Chaos Theory (versus). Textures from Double Agent (online) partially works as well, but due to additional properties some of them can't be loaded properly at the moment.
« Last Edit: October 01, 2023, 20:15 by spiritovod » Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #9 on: October 01, 2023, 23:25 »

Since I don't quite understand what they're doing with some struct properties (like FMatrix), workaround is added for such cases. Now umodel will stop reading any properties after bumping into any unknown struct property. It should help to avoid related crashes, but the rest of properties would be skipped, which may affect materials.

With this update, textures now works for Pandora Tomorrow (online) and Chaos Theory (versus). Textures from Double Agent (online) partially works as well, but due to additional properties some of them can't be loaded properly at the moment.

Nice update as always, I wasn't expecting to see SCDA Versus so quickly even if it is just partial texture support. SCDA Versus StaticMesh support would be awesome to get added eventually.

SCPT Versus and SCCT Versus are very good in compatibility now, you can consider them complete, unless interested in supporting their Animation packages.

Appreciate all the recent work, most people tend to avoid the Splinter Cell series because engine is too modified. The builds have been helpful for plenty of people already within the community.




Update on the packages that current fail on latest build:

SCPT Versus

Again, these packages are no big deal in terms of priority. I would consider this game complete.

Texture:
EditorTex.utx (wrong name index -1879048191)
SFont.utx (wrong name index 2013265921)
SIcoMiniMap.utx (wrong name index -1342177279)

StaticMesh:
POC_TESTLD_SM.usx (Memory: bad allocation size -126 bytes)
SEffectStatic.usx (wrong export index 61)
SIcoMinimap_.usx (Memory: bad allocation size -803370 bytes)
Sminimap_SM.usx (bad allocation size -10 bytes)
SoundVisionMesh.usx (Memory: bad allocation size -9572 bytes)



SCCT Versus has perfect support now with this build, all Texture and StaticMesh packages are working including newly created packages with the retail editor.



SCDA Versus

Texture:
Menu_ContextItem.utx (Serializing behind stopper (4F8+A8 > 516))
MMain_Test_Particules.utx (Serializing behind stopper 15A442+3D6120 > 172E88)

StaticMesh:
BLW_SFX.usx (Serializing behind stopper (4C74+53E08 > 19BF5))
BntMap_StaticMesh.usx (Memory: bad allocation size -532643832 bytes)
HUD_STM.usx (Memory: bad allocation size -266321788 bytes)
LightVolume_SM.usx (Memory: bad allocation size -24668 bytes
MMain_Particles_Mesh.usx (TArray: index 0 is out of range (0))
NotUsedAnymore_STM.usx (Memory: bad allocation size -208 bytes)
Objectifs.usx (Memory: bad allocation size -80 bytes)
ProtoMenuPackage.usx (Serializing behind stopper (4C72+1F180 > 55E2))
Seb.usx (TArray: index 0 is out of range (0))
SFX_SHP02_STM.usx (Serializing behind stopper (4C89+53E08 > 19C0A))
SGameplayObjects.usx (Memory: bad allocation size -264 bytes)
XTST_STM.usx (Memory: bad allocation size -20 bytes)

In terms of priority, the most important packages to get fixed as they contain assets used in maps:

SCDA Versus

StaticMesh
BLW_SFX.usx (Serializing behind stopper (4C74+53E08 > 19BF5))
SFX_SHP02_STM.usx (Serializing behind stopper (4C89+53E08 > 19C0A))
« Last Edit: October 04, 2023, 07:04 by Joshhhuaaa » Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 1852


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #10 on: October 03, 2023, 16:09 »

Static meshes from Double Agent (online) are now supported as well. Though they're using custom material class for most materials and thus they don't work.
« Last Edit: October 03, 2023, 16:13 by spiritovod » Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #11 on: October 04, 2023, 02:43 »

Static meshes from Double Agent (online) are now supported as well. Though they're using custom material class for most materials and thus they don't work.

Very nice to see them supported regardless. Are custom material classes and those non-standard palettes from SC1/SCPT out of UModel's scope to ever support or just difficult to implement?

Also, the latest build that added SCDA Online StaticMesh support ended up having a little regression. SCCT Versus StaticMesh packages that were created in the retail Chaos Theory Editor are now crashing again. These packages are now getting the error: "Serializing behind stopper (BB9+2070 > 20A9)".

I understand that fixing one issue for one game could potentially break another game. If ensuring all games work seamlessly under a single build becomes too complicated, I've saved backups of previous builds in case regressions like this ever happen, so no worries.

« Last Edit: October 05, 2023, 06:18 by Joshhhuaaa » Logged
spiritovod
Global Moderator
Hero Member
*****
Posts: 1852


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #12 on: October 06, 2023, 19:05 »

@Joshhhuaaa: That regression should be fixed now. I forgot that packages from editor for Chaos Theory are using higher engine version than Double Agent.

Speaking of palettes, I have no idea how they work in context of umodel and I guess there are other things to look into aside from them. As for materials - well, the point is that even for UE4 games, where approach for custom materials is more convenient, there are cases when materials are not even parsed or linked to meshes. And in latest Splinter Cell games those are custom classes, which is a way harder to implement, so I doubt they will be supported.
Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #13 on: October 17, 2023, 05:54 »

@Joshhhuaaa: That regression should be fixed now. I forgot that packages from editor for Chaos Theory are using higher engine version than Double Agent.

Speaking of palettes, I have no idea how they work in context of umodel and I guess there are other things to look into aside from them. As for materials - well, the point is that even for UE4 games, where approach for custom materials is more convenient, there are cases when materials are not even parsed or linked to meshes. And in latest Splinter Cell games those are custom classes, which is a way harder to implement, so I doubt they will be supported.

I see, thanks for the fix on latest build. I think that covers about everything that UModel can support without being very difficult to implement. SCCT Versus Animation support would be useful to have if it is not difficult, but can't thank you enough for everything so far.
Logged
Joshhhuaaa
Newbie
*
Posts: 20


View Profile
Re: Splinter Cell Series (SC1-4)
« Reply #14 on: October 18, 2023, 04:46 »

I thought I would add this info regarding Splinter Cell: Chaos Theory (Single Player / Coop) and exporting its Texture packages. I couldn't edit the original post to have this info as this will definitely go over the character limit.

UModel can export some of the Texture packages from SCCT (Single Player / Coop) with no issues, but there are some that are still failing.

The following packages currently cause errors or crashing:

Splinter Cell: Chaos Theory

Texture:
00_Training_COOP_TEX.utx (Access violation (C0000005) at umodel_materials.exe+0xFFA29)
00_Training_NPC_TEX.utx (Memory: bad allocation size 1214297212 bytes)
01_LightHouse_NPC_TEX.utx (Memory: bad allocation size -255032112 bytes)
02_CargoShip_Custom.utx (Memory: bad allocation size -257372976 bytes)
02_CargoShip_NPC_TEX.utx ( Memory: bad allocation size -465774540 bytes)
03_Bank_NPC_TEX.utx (Memory: bad allocation size -255032112 bytes)
04_Penthouse_Memorable_Tex.utx (Memory: bad allocation size -1462223244 bytes)
05_NuclearPlant_TEX.utx (Memory: bad allocation size -1878255444 bytes) [Coop DLC that released later in v1.05 patch]
07_UNhq_TEX.utx (Memory: bad allocation size 1217415388 bytes) [Coop DLC that released later in v1.05 patch]
08_Seoul01_NPC_TEX.utx (Memory: bad allocation size -465774540 bytes)
09_Seoul02_NPC_TEX.utx (Memory: bad allocation size -465774540 bytes)
09_SeoulTwo_TEX.utx (Memory: bad allocation size 1414038700 bytes)
10_Bathhouse_NPC_TEX.utx (Memory: bad allocation size -465774540 bytes)
Characters_Tex.utx (Memory: bad allocation size 1414038700 bytes)
Coop_Heros.utx (Memory: bad allocation size -465774540 bytes)
COOP_MAIN_VILAIN_TEX.utx (Memory: bad allocation size -465774540 bytes)
COOP_NPC_TEX.utx (Memory: bad allocation size -465774540 bytes)
IngredientsCoop_Tex.utx (Memory: bad allocation size -1876645680 bytes)
MAIN_VILAIN_TEX.utx (Memory: bad allocation size -465774540 bytes)
NPC_CubeMap_Tex.utx (Memory: bad allocation size -255032112 bytes)
Opsatmap_TEX.utx (Memory: bad allocation size -262893516 bytes)
SFX_Tex.utx (Memory: bad allocation size -1876645680 bytes)




UCC BatchExport (workaround for some packages)

With a copy of Splinter Cell: Double Agent, in the SCDA-Offline\System directory, there will be a UCC.exe for the Unreal commandlet (SCDA's Offline Demo can also be used). Surprisingly, we can use this to BatchExport Texture packages from Chaos Theory (Single Player / Coop). However, the Double Agent packages cannot be exported due to their unique container format.

To export a Texture package to DDS format using the command line, use the following command:
Code:
UCC BatchExport ..\PathToFile\TexturePackage.utx Texture DDS ..\PathToExport

Here is an example:
Code:
UCC BatchExport ..\SCCT_Tex\00_Training_COOP_TEX.utx Texture DDS ..\Export

These packages can be exported using BatchExport on Double Agent's UCC.exe but not through UModel currently:

00_Training_COOP_TEX.utx
02_CargoShip_Custom.utx
04_Penthouse_Memorable_Tex.utx
08_Seoul01_NPC_TEX.utx
09_Seoul02_NPC_TEX.utx
Coop_Heros.utx
COOP_NPC_TEX.utx
IngredientsCoop_Tex.utx
NPC_CubeMap_Tex.utx
Opsatmap_TEX.utx
SFX_Tex.utx


These packages currently cause errors or crashing on both Double Agent's UCC.exe and UModel:

00_Training_NPC_TEX.utx.utx
01_LightHouse_NPC_TEX.utx
03_Bank_NPC_TEX.utx
05_NuclearPlant_TEX.utx [Coop DLC that released later in v1.05 patch]
07_UNhq_TEX.utx [Coop DLC that released later in v1.05 patch]
09_SeoulTwo_TEX.utx
10_Bathhouse_NPC_TEX.utx
Characters_Tex.utx
COOP_MAIN_VILAIN_TEX.utx
MAIN_VILAIN_TEX.utx
Logged
Jump to:  

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