/KrkrExtract

A tool that can extract and pack krkr2 and krkrz's xp3 files

Primary LanguageC++

KrkrExtract

A tool can extract and pack krkr2 and krkrz's xp3 files (32Bit & 64Bit)

Try this

⚠️ Not Under Maintain

中文说明

  • 我平时很忙,本工程开源并且可以编译,遇到问题应该先自己解决,然后提交PR。
  • wiki还在建设中,不知道什么时候能完成。
  • 受保护的程序一律不支持,支持就是打开潘多拉魔盒,你得保证各类bypass不冲突。
  • krkr2打包请直接使用UI上的封包功能
  • krkrz打包请直接使用Universal Patch功能
  • 转发本工具请附上本README

Universal Dumper!!

  • Only valid for krkrz target
  • Just click !!Dump!! and wait
  • warning!! : may extremely slow on low performance platform
  • warning!! : may run out of memory on low performance platform

New Universal Patch

  • Using KrkrExtract to automatically generate KrkrExtract.db
  • Copy KrkrExtract.db to your game dir
  • Universal Patch will read info from KrkrExtract.db firstly
  • now, Universal Patch is able to override top level script!
    override sample

Build

  • vs2019
  • Win10 SDK (10.0.17763.0)
  • Only Release build is supported

Build with debug version

  • require vs2019

  • This method requires kirikiri engine built with address sanitizer (asan) support

  • Asan will siglificently slow down debugee and impacts memory allocation behaviour

  • Bug & vulnerability feedback : any RPs are welcomed

  • Install required packages for visual studio installer

    override sample

  • Select krkrExtract.Core project

    override sample

  • Retarget project to v142

    override sample

    override sample

  • Enable address sanitizer (aka asan)

    override sample

Improvement & New feature

  • PRs are welcomed. Since I'm very busy with my work, I almostly have no time to develop this project.
  • KrkrExtract will NEVER support custom kirikiri version (if it's not widely used)
  • Make sure executable binaries are not being protected

Bug report

  • screenshot (stack trace, ...)
  • BUT please strip game information from your screenshots

The Next Generation of KrkrExtract

KrkrzExtract Website

OpenSource License

Files

All source code files are licensed under GNU General Public License v3 (GPLv3).

Note

Since I have no time on this project, KrkrExtract will only focus on xp3-like archive unpack.
KrkrExtract will not foucs on modified krkr engines.
If you have any needs, pls develop by yourself.

Encrypted(protected) executable file

Actually, If I add some bypass supports in this project, It's very difficult to support make sure they will not conflict with other parts.
So you're sure that the executable file is protected, pls remove the protection or just patch the binary and then use KrkrExtract to unpack archives.

Separated tools

I provide many separated tools to you.
If krkrExtract is not able to process some files corrently, you should try seperated tools first.

More English docs?

I'm trying to do this.
Since I almostly have no time on open source project, I'm not sure when can I upload more docs about my tools.

Any differences between krkr2 and krkrz?

My answer is NO DIFFERECES.
krkrz supports msvc while krkr2 can only built by bcb.
Some companies modified krkrz so we need more steps to unpack archives.

Why universal patch not compatible with krkr2?

krkr2 use bcb(C++ Builder, legacy version...) as default compiler.
bcb will make code more complex so sometimes it's more difficult to analyze code automatically, plus, KrkrExtract can pack archives for krkr2.

How to use & How to ...

I know maybe have many questions about KrkrExtract, Pls see the website below firstly.
KrkrExtract Website

Any problem about repack?

Why not try to use universal patch?

Other krkr Project

AlphaMovie Decoder:
AlphaMovie Decoder Project

64Bit Version

useless:)
I've removed all source codes about 64bit version.
I don't think any company will use 64bit version.

Website

KrkrExtract Website