vn-tools / arc_unpacker Goto Github PK
View Code? Open in Web Editor NEWCLI tool for extracting images and sounds from visual novels.
License: GNU General Public License v3.0
CLI tool for extracting images and sounds from visual novels.
License: GNU General Public License v3.0
Can add support to this otoge?
http://store.steampowered.com/agecheck/app/447190/
You can use a retail copy, the cracked steam_api.dll of the 3DM works fine.... only change the game id to 447190
Hi,
First thanks for your work. I have been looking for a tool like this for long.
I try to build it on Visual C++. At least it successfully builds and it seems working on Touhou 13. test
not tried yet.
I have made two modifications.
formats/archives.cc
function void Archive::unpack(File &file, FileSaver &file_saver)
, the lambda expression captures file_saver_proxy
which is not initialized. VC++ (I'm using Visual Studio 2013 v120) does not support that. By creating a p_file_saver_proxy
and capture that by reference, and after setting p_file_saver_proxy
, pointing p_file_saver_proxy
to p_file_saver_proxy
, it can be successfully built. (I'm not sure whether this modification is legal, according to the logic of your program.)formats/kirikiri/tlg_converter.cc
, std::unique_ptr<File> decode_tlg_0(File &file)
, change ::decode
to decode
. (In VC++, functions in inline namespace can not be refered to as this.)Another issue is that usually the aux
folder can not be created on Windows. Would you mind giving it another name?
Though it is working, I don't think it's easy to have fully support for VC++ (or some other build tools supporting VC++ like CMake). But if you like, I can have a try.
Hi. Can you please add support for the English version of Sonicomi by JAST USA? This version uses NPK2 files (note that this is different from the original Japanese release, which used NPA instead), but the game isn't supported yet. If I try unpacking the files using the Tokyo Necro plugin, I get a "Premature end of file" error message.
VNDB: https://vndb.org/v4234
I don't think the Japanese title is necessary, since this request applies to the localized version exclusively, but here it is just in case: ソニコミ
Thank you!
Hello, my ultimate goal with this game is to be able to extract and inject the UI and script, however I am very new to this. I already understand that you don't do injection requests, but if you could get the script decoded and extracted that would be more than enough. If you can't help any tips or guides that have helped you in the past would be nice as well.
VNDB: https://vndb.org/v3095
It's an older game with an awesome soundtrack that has never been released AFAIK, so I'm trying to extract it instead.
I gave this game a try with --plugin=noop
but the resulting files were unreadable. It's a kirikiri/xp3 game, so I'm guessing it will probably require a custom plugin, but unfortunately I have no idea how to proceed further because that's the extent of my technical knowledge.
Let me know if you need me to upload the data files or tpm file somewhere or if there's anything else I can do to help!
Thanks!
Information:
a) おお勇者よ、イってしまうとは情けない!
http://www.getchu.com/soft.phtml?id=859767
b) 魔王のくせに生イキだっ! とろとろトロピカル!
http://www.getchu.com/soft.phtml?id=813499
Asmodean's tools:
http://asmodean.reverse.net/pages/exmaotarc.html
Asmodean's tool has not been updated in 3 years.
Plz support these games.
Thank you.
Games that have these files are:
-Mama Shibori - https://vndb.org/v6059
-Mama Shibori 2 - https://vndb.org/v6058
-Mama Mahjong - https://vndb.org/v3016
Developer's website: http://www.complets.co.jp
Right now user needs to pass --fmt
manually. This should be avoided, if possible.
Developer: アーモンドコレクティブ
Release date: 2013/11/03
Original title: 叔父貴と姪と
DLsite work number: RJ124336
Would like to extract game resources (videos, etc.) from the "Data.pac" file.
I left you a message in the email that is indicated here. Please check it for more details.
I'd like the table to include information such as:
Github doesn't render big tables too well, so I'd like to create a Github Page for this project.
Right now the state of the unit tests is pretty sad: each one takes years to compile and creates a new executable. There should be a nicer way to make them work.
Please support this game.
asmodean's exbelldat does not work for a newer WendyBell and TinkerBell games.
Thank you.
I very want to save this game tachie
But i can't find any extract tool can extract this game in internet
So i need your help
Can you supprot to extarct this game?
Thank You!
This game look like using maliesystem engine
But ziped file is in data.dat not *.lib(one largest file)
Game data is uploaded
Information:
http://www.campus.gr.jp/product/orloi_aria/index.html
https://vndb.org/r43080
http://www.getchu.com/soft.phtml?id=874045
The project would benefit from these as it would smoke out possible seg faults.
VNDB link: https://vndb.org/v5000
Developer: Regista
Something I have learned from the game:
The game store its data in the .cpk files. The .cpk files can be unpacked using quickbms with cpk.bms
http://aluigi.altervista.org/bms/cpk.bms
However, unpacking it will result in 3 types of file
VNDB link: https://vndb.org/v18803
Developer: Heiantei
Release date: 2016/03/24
Original title: 兄嫁京香さんとその母千佳子さん~美人妻と美熟母といっしょ~
English title (if available):
Hello. I'd like to request to support this game. Unfortunately the closest I've gotten to is ripping the files encrypted, but the elements cannot be seen.
Files are: dPi.dat (I think these are the CG/char sprites), includes a dPih.dat file related to it.
dSo.dat/dSoh.dat, which are music files.
There's another game I'm interested in requesting as well, but I also would request the game Lbzttt is requesting as well.
Sample WADY file: M02.zip (7.8 M)
Extracted from: 幻聖神姫LINEAGE, which has the archive files with extension of "*.med".
Command I use: arc_unpacker.exe -d ...\M02
OS: Windows
This problem doesn't occur on Linux, however, it's present in nightly Windows builds.
Probably it has to do with the fact that the file in question is over 5GB since other files work fine.
The first thing to check would be to verify sizeof(size_t)
which is used all over the place for file offsets. If it's 32-bit only, we're screwed and need to change size_t
to something else everywhere. Further more if Windows implementation of fseek
uses 32-bit integers, we're screwed even more and probably need to use fseeko
or _fseek_whatever
.
Fails to convert the .tlg to a .png when extracting from the fgimage.xp3.
Heres the file:
maf_1_2_c.zip
The target folder path should be figured out automatically if it isn't supplied manually.
Combined with #6 this should allow users to drag and drop folders onto executable without hassle.
Developer: アーモンドコレクティブ
Release date: 2016/03/05
Original title: パンツ泥棒たちとスク水マーメイド
English title: Panty pilferers and mermaid in school swimwear
DLsite work number: RJ172521/RE172521
Would like to extract game resources (videos, etc.) from the "Data.pac" file.
I extracted the files of clannad.
The program run well(i think) but it stops (core dump)
OS = GNU/Linux (ubuntu)
I'm not used Openssl
I applied a patch to clannad( http://gosita.altervista.org/download.php?file=Clannad%20-%20ITA%20-%200.16.tar.gz&id=clannad_g&nt=true)
file_decoder
and arc_unpacker
should be merged into one library. What I have in mind:
arc_unpacker file
Saves file~
in its directory if it's recognized.
arc_unpacker archive
Saves archive~
in its directory if it's recognized.
arc_unpacker file archive
Saves file~
in file
's directory and archive~
in archive
's directory.
arc_unpacker file archive --out DIR
Saves both file~
and archive~
in DIR
.
arc_unpacker --fmt=xp3 file archive
Tries to treat file
and archive
as xp3
, if it fails - prints error (= doesn't try to guess the format by itself).
arc_unpacker file.xp3 archive.nsa --plugin=noop
Tries to unpack file.xp3
with noop
plugin, and archive.nsa
with noop
plugin. XP3 is unpacked successfully, while NSA is not, because there is no such plugin as noop
for NSA archives.
sorry for bothering again 🐹
real-live
Test Archives .g00: CG_MY29_base
Source:
append02
thanks...I hope this problem is resolved 🔨
For #13 to work nicely, Archive
and Converter
should derive from a new class, Transformer
, which has pure virtual methods such as add_cli_help
and parse_cli_options
.
There is an error when decoding the picture.lib file.
For Dies Irae Amantes amentes:
error decoding "bg" std::bad_alloc
error decoding "chara" std::bad_alloc
error decoding "event" std::bad_alloc
"mask" decodes correctly
For Dies irae Acta est Fabula
error decoding "bg" std::bad_alloc
"chara" decodes correctly
error decoding "bg" std::bad_alloc
"mask" decodes correctly
Vndb: https://vndb.org/v548
Both are Regular Editions with Install versions. (No patches applied)
Both were tested on Windows 8.1 Pro 64bit
So...How can I unpack stand.cpz?
Current path management feels very inferior.
So, old tools doesn't seems working so as arc_unpacker. Game uses bgi/ethornell v2
https://vndb.org/v562
http://www.makura-soft.com/sakuranouta/
Thanks.
These games extract the iles from the .xp3 files but are innacessible due to protection.
These have corresponding .xp3.sig files if that means anything.
Games with just protected .xp3 files.
My discoveries so far:
cxdec.tpm
file.In the case of FHA the 32-bit private key seems to be 008F0313
.
The main difficulty lies in reversing the key derivation algorithm.
Please support archive .cpz
extract archives cg :(
archive .cpz
images .pb3
CMVS
Extract Games
-Hapymaher
-Hapymaher -Fragmentation Dream
-Chrono Clock
Info Game:
https://vndb.org/p132
http://www.purplesoftware.jp/main.php
I need help please
there is no extract tool cg
Thank you
I'll be waiting... :)
let me know if you need the game files
Thank you
Please
more information tools:
http://blog.sina.com.cn/s/blog_5e29812f0100r8ku.html
Please Support.....Thank you ;)
cmvs32.exeを
00051350 75 18 → EB 59
nitroplus using new format on new 凍京NECRO(TokyoNecro).
Can you please support these format in later?
I attached some file on this address.
http://www.mediafire.com/?0rupvjuzz8jo0
(I want it could be a small help >_<// not including cg.npk/3d.npk/voice.npk)
Thank you >_<
Tried drag and dropping a .gxt file as well as using cmd, both outcomes gave me an error saying that the file is not recognized.
The file in question is from DR 1.2 Reload, all image formats are .gxt.
Here is one file as an example.
http://puu.sh/nOukA/6c2ffd8b0d.gxt
gcc
and make
around. I assume it is a great PITA to get this right on Windows (used by the target audience) without using Cygwin.RubyInline
, but it causes multiple problems on every machine I try to install it on (surprisingly, biggest problems kept happening on Debian). It doesn't resolve the issues mentioned previous points either.The biggest issue with this is that when I started this project, I've chosen Ruby because I wanted it to be as clean and nice as possible... to developers. Now I feel like that as a byproduct, this tool can be used only by developers.
My suggestions are following:
Using --fkey or --gameexe doesn't work for Shinigami no Kiss wa Wakare no Aji.
Please add: keys
archive .LPK
GAME: [150227][WHITESOFT] さくらシンクロニシティ
sys
B5 B6 91 AE 5C ED 42 9D
chr
4E 99 C8 7D 99 24 E4 B6
pic
36 16 9D C6 69 B3 7D 38
data
C8 AA 4D 2D AE 75 5D E1
Thanks :)
game tool support game: modified
:( :( :( :(
It seems that XP3 archives use different encryption key.
Could you, please, add support for it?
https://vndb.org/v18974
Once we have to deal with only one binary executable thanks to #13, a generic Makefile should be much easier to create. The absolute requirement is to make make
figure dependencies out by itself, in an optimal way - otherwise there's nothing to gain.
VNDB link: https://vndb.org/v90
Developer: Leaf
Release date: 2008
Original title: ToHeart2 AnotherDays
Game request
I'm trying to unpack the voice files in this game. While I can unpack the .a files it uses, the files I get are in .g format which nothing seems to recognise.
I've been wanting to extract the music for ノラと皇女と野良猫ハート and was trying arc_unpacker on it.
Unfortunately it failed with the following error:
[task 0] arc3~.dat: initial recognition...
[task 0] arc3~.dat: guessing decoder among 1 decoders...
[task 0] arc3~.dat: recognized as whale/dat.
[task 0] arc3~.dat: archive contains 6 files.
[task 6] arc3~.dat: decoding "unk_5.dat"...
[task 6] arc3~.dat: Unknown hash: b0a8290f4eb61ead. File cannot be unpacked.
[task 6] arc3~.dat: decoding ommitted.
[task 5] arc3~.dat: decoding "unk_4.dat"...
[task 5] arc3~.dat: Unknown hash: bab502bf52eaa1fd. File cannot be unpacked.
[task 5] arc3~.dat: decoding ommitted.
[task 4] arc3~.dat: decoding "unk_3.dat"...
[task 4] arc3~.dat: Unknown hash: 2802801e254bbc31. File cannot be unpacked.
[task 4] arc3~.dat: decoding ommitted.
[task 3] arc3~.dat: decoding "unk_2.dat"...
[task 3] arc3~.dat: Unknown hash: ce66d85b0acb8dd6. File cannot be unpacked.
[task 3] arc3~.dat: decoding ommitted.
[task 2] arc3~.dat: decoding "unk_1.dat"...
[task 2] arc3~.dat: Unknown hash: dad04601b5141e79. File cannot be unpacked.
[task 2] arc3~.dat: decoding ommitted.
[task 1] arc3~.dat: decoding "unk_0.dat"...
[task 1] arc3~.dat: Unknown hash: 90cb6c1971148e65. File cannot be unpacked.
[task 1] arc3~.dat: decoding ommitted.
Executed 7 tasks in 0.10s (6 problems, 0 saved files)
Any idea what it'd take to get this game to extract properly? Thanks!
VNDB: https://vndb.org/v18486
For this game, I can use the asmodean(exafa) unpack *.afa, and use the westside(mankchcv) converts *.qnt to *.png.
However, the game uses a new format: *.dcf
It is said that have a way for converts *.dcf to *.qnt. But I can‘t find.
Can you supprot the new format for converts? Thanks. :)
The samples and related tools:
Download
to change 'standing CG' (clothes -> naked)
I need un-merged files
but the program keep merging images
what should I do
p.s. don't worry about 'repack' the 'arc_conv' can do it .......maybe XD
Right now the program just loops through all possible format readers and tries to unpack with each one of them. Exception happened? Try another reader.
This causes ugly anomalies. For example:
XP3\r\nWhatever
magic number inside. But I haven't supplied --plugin
, which causes me to throw an exception. The file is mistakenly delivered to next reader.This should be fixed. I could add new exception, say, RecognitionError
and catch only that, but this won't make any good to detecting false positives (example from second point).
What should be done instead:
Transformer
(#14) a new method, is_recognized
unpack
, loop through all Transformer
sunpack
on it, and then call it a day.
--plugin
parameter. Everything goes well, because the file is no longer passed to the next transformer.--fmt
manually.Cons of this solution are limited and, in my opinion, negligible:
is_recognized
needs --plugin
to be able to recognize the file perfectly. In these cases we can try looking at file extensions, their names, etc.is_recognized
for every support format. This is going to be tough!Developer: アーモンドコレクティブ
Release date: 2013/05/07
Original title: ゴリマッチョとブルマレッスン
English title: Bloomers Lesson
DLsite work number: RJ076908
Would like to extract game resources (videos, etc.) from the "Data.pac" file.
Currently all conversions happen on data-level. Even if the script correctly decodes everything, the extension remains the same.
There needs to be a way of providing correct file extension.
Rought scenario I imagined
File
structure. It has data
and name
.File
s.OutputFiles
is given File
s. It consumes and discards them ASAP like it does now.InputFiles
produces File
s.File
s. It consumes and discards them ASAP like it does now.Converter
s are given File
s and produce File
s.Image.raw_to_boxed
is given raw data and original File
and produces new File
.Sound.raw_to_boxed
.Image
and Sound
fill the file name with their own extensions.The only problem may arise with changing Image.raw_to_boxed
. There's a chance I abuse it and assume it produces raw PNG data, which is a bold assumption. That, however, can be easily dealt with with minimal effort.
For now, all the "junk" code is stored inside string/
directory. The responsibility of string/
directory has been very sketchy so far and what I mean by that can be seen from what it stores:
std::to_string
has been proven not to work for years now 😑)There is a growing list of other things that might be shared across the classes like the stuff in string/
, that doesn't belong to string/
no matter how you look at it. A good example would be the recently checked in Mersenne Twister used by QLiE or some of the basic RGB manipulations in Touhou's ANM decoder.
My proposition is to get rid of string/
in favor of util/
and throw all the junk in there.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.