2 Attachment(s)
Prius Online DAT Extractor
Author: pushedx
HOW TO USE:
Copy "DLL.dll", "Loader.exe", and "log.txt" to your PriusOnline folder that
contains "prius.idx". If your updater is different than the one included, then
you will either need to use my updater (original from some specific version) or
update the tools and recompile to be compatible with your version.
Run "loader.exe" to begin extracting files. The process will take a very long time
and the output will be saved to "/output". Any errors are displayed in the console
window, so fix your "log.txt" as needed to fix the errors. The program hooks and uses
the official functions for extracting files, so you can be sure the data is 100% correct;
it's just my log.txt might hot have every file, but it should have ~99% at best guess.
Included is a copy of the "Updater.exe" that was used to get the addresses from.
If your "Updater.exe" updates ever, use it to find the new locations based on
the old addresses. Since this is a quick short term project, no auto-sig
searching logic was made.
"Log.txt" contains as many files ripped from "Prius.idx". It's possible some files
were missed, but until a tool is made to properly extract the files, this is as
good as possible for now. If you find files inside "Prius.idx" that are not in
the file, you can add them to the end of the file as needed or make other changes.
You can generate a new "log.txt" by using "SimpleDump.exe". I.e.
SimpleDump.exe "C:\PriusOnline\prius.idx" > log.txt
You must redirect it to a file since it just logs to console. Included is a batch
file for easy modification and use.
NOTE: There are some errors in the "log.txt" that you must correct by hand after
generation. There are some file names joined and maybe a few file extensions
mangled. Just look at the other file names around the errors and it should be
easy to fix. Errors are reported from the DLL in the console window.
For example (using default log.txt):
Code:
nsExtract::Setup
156872 file names have been found.
Press any key to continue . . .
Error loading file: mesh\character\monster\giantofextermination\000_[attack_01]..cai
Error loading file: mesh\character\player\lonmas\[skill_mountaincleave_axe_01].cew.cai
Error loading file: mesh\effect\monster\shotmonkey\shotmonkey_poisonarrow_01.cmimesh\effect\monster\simiashaman\simiashaman_cast01.cai
Error loading file: mesh\effect\player\beriah\sfx_prayer_summonmoonspirit_01_a.mmesh\effect\player\beriah\sfx_prayer_willofqueen_02.cai
Error loading file: mesh\item\parts\anima\infant\[head]_strawberrycakeminihat.cmmesh\item\parts\anima\infant\[head]_sunflower.mst
Error loading file: script\trigger\territory\beriah_3rdfield_land of requiem.luascript\trigger\territory\beriah_3rdfield_sundrop plain.lua
You would need to open log.txt and manually split the lines that are joined
and fix the extensions that got messed up.
mesh\character\monster\giantofextermination\000_[attack_01].cai
mesh\character\player\lonmas\[skill_mountaincleave_axe_01].cai
mesh\effect\monster\shotmonkey\shotmonkey_poisonarrow_01.cmi
mesh\effect\monster\simiashaman\simiashaman_cast01.cai
mesh\effect\player\beriah\sfx_prayer_summonmoonspirit_01_a.mst
mesh\effect\player\beriah\sfx_prayer_willofqueen_02.cai
mesh\item\parts\anima\infant\[head]_strawberrycakeminihat.cm
mesh\item\parts\anima\infant\[head]_sunflower.mst
script\trigger\territory\beriah_3rdfield_land of requiem.lua
script\trigger\territory\beriah_3rdfield_sundrop plain.lua
Just reference the lines around the errors :)
This is being provided as-is with no support or long term update plans! All work and
code is my own, so it's free to use and modify as you or the community need.