Open nathan130200 opened 1 year ago
Searching for information about chunk controller 0829 i've found this code part inside game executable (translated to pseudo code using IDA), also this is the only thing i was able to found about CONTROLLER_CHUNK_DESC_0829
.
I will keep search for CAF and DBA files parsing.
The 0x0829 controller chunk is supported now, but I can't test against these files. The game files are tough to extract. :(
Thanks alot! Yeah, warface files uses some different methods to decrypt files, i will test and give feeback :D
I was able to test, i'm having an different exception now.
cgf-converter.exe "%cd%\combat_idleAimPoses_mech_01.caf" -objectdir "D:\WarfaceBackup\BR-1.18000.944.21500\Game_Ext"
Using up to 4 threads
Source [Filesystem]: D:\WarfaceBackup\BR-1.18000.944.21500\Game_Ext
Found input: D:\WarfaceBackup\br-1.18000.944.21500\game_ext\animations\boss\mech\combat\combat_idleaimposes_mech_01.caf
[INF:Program] [1/1 0.00%] D:\WarfaceBackup\br-1.18000.944.21500\game_ext\animations\boss\mech\combat\combat_idleaimposes_mech_01.caf
[INF:combat_idleaimposes_mech_01.caf] Found following potential material files. If you are not specifying a material file and the materials don't look right, trying one of the following files:
[ERR:Program] Failed to render: D:\WarfaceBackup\br-1.18000.944.21500\game_ext\animations\boss\mech\combat\combat_idleaimposes_mech_01.caf
AggregateException: One or more errors occurred. (Sequence contains no elements)
InvalidOperationException: Sequence contains no elements
at System.Linq.ThrowHelper.ThrowNoElementsException()
at System.Linq.Enumerable.MinMaxInteger[T,TMinMax](IEnumerable`1 source)
at System.Linq.Enumerable.Max[TSource](IEnumerable`1 source, IComparer`1 comparer)
at CgfConverter.CryEngine.CreateMaterials()
at CgfConverter.CryEngine.ProcessCryengineFiles()
at CgfConverter.Program.ExportSingleModel(String inputFile)
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
[INF:Program] Finished. Rendered 0 file(s)
[ERR:Program] Failed to convert 1 file(s).
I really don't know how to convert these CAF/DBA files :(
If you want i can provide the extracted paks with anim/obj files.
Is your feature request related to a problem? Please describe. Its a feture request.
Describe the solution you'd like Add support for Warface that uses DBA and CAF files.
Additional context Tried to drag and drop as cga (renamed to cga to test if works) but didn't worked.
Sample files for CAF and DBA
sample_files.zip
Additional notes I can actually conver just models (cgf/skin) and textures, but not streamed animations with CAF/DBA.
EDIT: I've identified that chunk controller 829 is compressed animations (my guess, based on CE5 source code)