That's not how TankView works, it just lists the files as they are in the game except it groups them by filetype.
It has some extra magic to be able to show previews of images sounds and text but that's it.
The 00C file has no context about what hero it belongs to or what skin it belongs to so there's no way it can do that.
Is it theoretically possible to add it as a feature to TankView? Yes. Will it? Probably not.
using the DataTool allows you to process a hero, and it nicely extracts the models, animations and textures, as a result they are nicely put into a folder structure so the lookup logic is there right?
So in my tiny brain mind I think it should be possible
I was first thinking, I extract everything using the DataTool, than build a library from the result and use the library as an input for building up the treeview. Every file that is not in the folder structure is a new one...
Anyways, just dreaming out loud here..
DataTool goes from Heroes > Skins > Models > ??? > Texture Files. I don't really know tbh but there's a lot of logic that goes into it. When you only have the texture you would need to work backwards which is a lot harder.
Can't extract refpose - any ideas?
https://files.facepunch.com/forum/upload/263253/de47f043-7adb-4893-8463-a223e32b500a/image.png
Show full launch command, i can't see it on the screenshot
From the looks of it you put refpose command into a place where extract-unlocks is expected
Just copy-paste this:
datatool.exe --language=enUS --extract-refpose=true "C:\Program Files (x86)\Overwatch" extract-unlocks "C:\Users\motor\Downloads\OverwatchExtractorUPTODATE\Extracted" "Tracer"
Before the update today, I found an audio error in Busan.
The latest Overwatch update which was a small bug fix does not require a new version of the tools. The previous release of the tools still support the latest version of Overwatch.
Hashes.txt
FYI, a list of all known hashes - files
example:
000000003AF3 NPC - Zomnic
000000004943 Hero - Ana - Beach Ball
000000003A5B Hero - Ana - Candy
0000000089B9 Hero - Ana - Yut Nori
...
includes heroes, npc's and maps
each hash is only appearing once in the list
Have fun
T.
Hey, i've been trying to extract stuff again but im having a problem.
[Core] DataTool v1.35.0.814-git-3600de037549d690df462d3cbf9d678a6f23ce1e
[Core] CommandLine: ["--directory=F:\Overwatch", "--mode=extract-unlocks", "-L=enUS", "-T=enUS", "--out-path=C:\Users\faint\Documents\toolchain-release\Output", "*|skin=(leagueteam=none)"]
[Core] CommandLineFile: C:\Users\faint\Documents\toolchain-release\DataTool.exe.args
[CASC] Set language to enUS
[CASC] Set speech language to enUS
[CASC] Overwatch build 1.35.0.1.57230
[CASC] Initializing...
[CMF] Using CMF procedure 57230
[CMF] Using CMF procedure 57230
[CASC] Ready
[Core] Checking ResourceKeys
[Core] Tooling...
Error parsing query:
Command format: "{hero name}|{type}=({tag name}={tag}),{item name}"
Each query should be surrounded by ", and individual queries should be separated by spaces
All hero and item names are in your selected locale
No matter what i put in for extracting unlocks it always gives me this.
"*|skin=(leagueteam=none)" is listed as a example argument for extract-unlocks but doesn't work.
I don't know what you have as a cmd line but did you try it like this:
( probably you don't need the --raw=true --skip-sound=true --convert-lossless-textures=true, but it is what I use)
DataTool.exe "c:\games\overwatch" extract-unlocks "E:\Blizzard\Overwatch\Extract\" "*|skin=(leagueteam=none)" --raw=true --skip-sound=true --convert-lossless-textures=true
That worked. Thanks!
Not working in new update.
I am not the only one right?
Hey guys, have seen its been mentioned about Tracers bike but I am still not quite sure how to get it.
I use quickdatatool has anyone got any tips for me to get it.
Thank you very much in advance ^_^
quickdatatool isn't very often being updated, so you better just use command line
to get tracer's bike you need to extract havana's menu version
The command is
datatool.exe --language=enUS --extract-refpose=true "Overwatch_Location" extract-maps "Extraction_folder" B56
Tracer's Bike will be in folder \Maps\Havana\B56\Models\0000000096F5.00C\
Hello. How can I extract Wrecking Ball, Hammond's mech model to use in Blender?
If you are looking for a specific command to extract Hammnd then it would be this:
datatool.exe --extract-refpose=true "C:\Program Files (x86)\Overwatch" extract-unlocks "C:\Program Files (x86)\Overwatch\Extracted" "Hammond"
First adress is Overwatch location, the second is the folder where files will be extracted
As for the polish voices there are two commands:
First will get you all the conversations reaper have with other team members. Not just from the event, but from the entiriety of game. There aren't many of them though so it shouldn't be that hard to sort them out
datatool.exe --language=plPL "C:\Program Files (x86)\Overwatch" extract-hero-convo "C:\Program Files (x86)\Overwatch\Extracted" "Reaper"
Second will get all voice lines reaper have. This one in case the first can't get all the necessary lines, though there will be a lot more to sort out
datatool.exe --language=plPL "C:\Program Files (x86)\Overwatch" extract-hero-voice "C:\Program Files (x86)\Overwatch\Extracted" "Reaper"
By the way, don't forget to set your game's voice and interface into polish and run the game at least once in order to get the needed language.
I am not new with DataTool.
And I were telling about Reyes convos from Retribution which aren't in Reaper convos. One day I could extract (Polish) Reyes but I lost his audio files on my computer. That's way I asking you for help in this because I was trying do it again in the same way as before and nothing. I think I know why I cannot. Reyes isn't in heroes list anymore. Am I wrong?
Whenever I'm trying to import the animations, smd skeleton or seanims, ...I can't describe it clearly... any advice?
This is what happened when I've added smd. (refpose) skeleton.
https://files.facepunch.com/forum/upload/263253/1f57258a-3c39-4224-bc47-7bc265872411/image.png
This is what's happening to the most of seanims for me.
https://files.facepunch.com/forum/upload/263253/44d3129c-e306-48fb-99f1-3ef2f9eaf103/image.png
https://files.facepunch.com/forum/upload/263253/10f4d786-d725-4bbf-be1a-ebb92a63507a/image.png
Core] CommandLineFile: E:\Download\toolchain-release\DataTool.exe.args
[CASC] Set language to enUS
[CASC] Overwatch build 1.35.1.1.57796
[CASC] Initializing...
[CASC] Mapping assets...
System.Reflection.TargetInvocationException: The caller created an exception. ---> System.NullReferenceException: The object reference does not indicate an object instance.
at TACTLib.Core.Product.Tank.ProductHandler_Tank..ctor(ClientHandler client, Stream stream)
--- End tracing internal exception stack ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
at System.Activator.CreateInstance(Type type, Object[] args)
at TACTLib.Core.Product.ProductHandlerFactory.GetHandler(TACTProduct product, ClientHandler client, Stream root)
at TACTLib.Client.ClientHandler..ctor(String basePath, ClientCreateArgs createArgs)
at DataTool.Program.InitStorage(Boolean online)
at DataTool.Program.Main()
What is the problem?
I dunno but that version of Overwatch is not supported yet.
Hmm. The only way i can think of would be to extract all sound files from the game with TankView. There will be ALL sounds from the intire game in all languages there is. Tens if not hundreds of thousands. The only way of making it even remotely possible to find the needed stuff would be cross-compoaring the extracted files from the game before the first Retribution event (may 2018) and any of the later builds.
Is an update for the tool in the works? I'd love to get the all-stars skins
An update is still being worked on, there is no current ETA.
An updated DataTool has been released
Release Notes:
Added support for Overwatch 1.35.1.1.57796
Added support for Overwatch 1.35.1.1.57979
Toolchain: https://ci.appveyor.com/api/buildjobs/729ek8psx70ny4xg/artifacts/dist%2Ftoolchain-release.zip
Other Artifacts: https://ci.appveyor.com/project/yukimono/owlib/builds/24471384/artifacts
Let us know if there is any issues with extraction or stuff.
Getting this error when trying to extract with the latest tools.
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.AggregateException: One or more errors occurred. ---> System.IO.EndOfStreamException: Unable to read beyond the end of the stream.
at System.IO.__Error.EndOfFile()
at System.IO.BinaryReader.FillBuffer(Int32 numBytes)
at System.IO.BinaryReader.ReadInt32()
at TACTLib.Container.ContainerHandler.OpenIndexEntry(IndexEntry indexEntry)
at TACTLib.Container.ContainerHandler.OpenEKey(EKey key)
at TACTLib.Client.ClientHandler.OpenEKey(CKey key)
at TACTLib.Client.ClientHandler.OpenCKey(CKey key)
at TACTLib.Core.Product.Tank.ApplicationPackageManifest.LoadPackage(Int32 i, ClientHandler client, ContentManifestFile cmf)
at TACTLib.Core.Product.Tank.ApplicationPackageManifest.<>c__DisplayClass12_2.<.ctor>b__0(Int32 i)
at System.Threading.Tasks.Parallel.<>c__DisplayClass17_0`1.<ForWorker>b__1()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object )
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally)
at System.Threading.Tasks.Parallel.For(Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body)
at TACTLib.Core.Product.Tank.ApplicationPackageManifest..ctor(ClientHandler client, ProductHandler_Tank tankHandler, Stream stream, String name)
at TACTLib.Core.Product.Tank.ProductHandler_Tank..ctor(ClientHandler client, Stream stream)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
at System.Activator.CreateInstance(Type type, Object[] args)
at TACTLib.Core.Product.ProductHandlerFactory.GetHandler(TACTProduct product, ClientHandler client, Stream root)
at TACTLib.Client.ClientHandler..ctor(String basePath, ClientCreateArgs createArgs)
at DataTool.Program.InitStorage(Boolean online)
at DataTool.Program.Main()
scan and repair
First time I've ever needed to do this, so I completely forgot about that. Thanks.
Having the same issue as GraczGhost with animations. Can't figure out any way to fix it...
[Core] DataTool v1.35.0.815-git-e5a92d5e0bd9410bcaf0fde76615520fc45b63a1
[Core] CommandLine: ["F:\Overwatch", "extract-unlocks", "C:\Users\faint\Documents\toolchain-release\Output", "Mercy|skin=Classic"]
[Core] CommandLineFile: C:\Users\faint\Documents\toolchain-release\DataTool.exe.args
[CASC] Overwatch build 1.35.1.1.57979
[CASC] Initializing...
[CMF] Using CMF procedure 57979
[CMF] Using CMF procedure 57979
[CASC] Ready
[Core] Checking ResourceKeys
[Core] Tooling...
Processing unlocks for Mercy
Extracting skin Classic
Finding
Saving
System.ArgumentNullException: Value cannot be null.
Parameter name: input
at System.IO.BinaryReader..ctor(Stream input, Encoding encoding, Boolean leaveOpen)
at TankLib.teTexturePayload..ctor(teTexture parent, Stream payloadStream)
at TankLib.teTexture.LoadPayload(Stream payloadStream)
at DataTool.SaveLogic.Combo.SaveTexture(ICLIFlags flags, String path, ComboInfo info, UInt64 textureGUID)
at DataTool.SaveLogic.Combo.SaveMaterial(ICLIFlags flags, String path, ComboInfo info, UInt64 material)
at DataTool.SaveLogic.Combo.SaveModel(ICLIFlags flags, String path, ComboInfo info, UInt64 modelGUID)
at DataTool.SaveLogic.Combo.Save(ICLIFlags flags, String path, ComboInfo info)
at DataTool.SaveLogic.Unlock.SkinTheme.Save(ICLIFlags flags, String directory, STUSkinBase skin, STUHero hero)
at DataTool.ToolLogic.Extract.ExtractHeroUnlocks.SaveUnlock(ICLIFlags flags, Unlock unlock, String path, String eventKey, Dictionary`2 config, Dictionary`2 tags, VoiceSet voiceSet, STUHero hero)
at DataTool.ToolLogic.Extract.ExtractHeroUnlocks.SaveUnlocks(ICLIFlags flags, Unlock[] unlocks, String path, String eventKey, Dictionary`2 config, Dictionary`2 tags, VoiceSet voiceSet, STUHero hero)
at DataTool.ToolLogic.Extract.ExtractHeroUnlocks.SaveUnlocksForHeroes(ICLIFlags flags, IEnumerable`1 heroes, String basePath, Boolean npc)
at DataTool.ToolLogic.Extract.ExtractHeroUnlocks.Parse(ICLIFlags toolFlags)
at DataTool.Program.Main()
not sure whats wrong here
scan and repair
Sorry, you need to Log In to post a reply to this thread.