Okkei Patcher is a companion app for localizing the Android version of CHAOS;CHILD visual novel. It downloads the latest revision of CHAOS;CHILD Android localization patch and automatically applies it to the installed game while creating a backup of its original installation, so that you can easily go back to the unpatched Japanese version.
Minimum supported Android version: Android 4.4 KitKat.
Go to the Releases page to download the latest APK.
ATTENTION: versions below 2.0.9 are now defunct due to domain name used for backend API has been shut down.
Okkei Patcher follows Clean Architecture principles and best practices of modern Android app development, such as edge-to-edge UI, adapting to different screen sizes, MVI pattern for presentation layer logic, Repository pattern and single-activity approach, while also adhering to Material 3 design guidelines (not wholeheartedly, though).
UI is built with Android View system (no Jetpack Compose, sorry, we have to support KitKat anyway).
Core logic of the app is highly abstracted and lives in the domain
layer. It contains interfaces
such as Operation
, Game
, GameFile
, PatchUpdates
. Interacting with other layers is achieved
via dependency inversion.
Reliable task execution and status tracking is ensured by using Jetpack WorkManager.
- Kotlin Coroutines & Flow for handling asynchronous cancellable tasks and reactive streams
- Android Jetpack
- DataStore and Room for data persistence
- Dagger Hilt for dependency injection
- WorkManager for reliable task execution
- Navigation for implementing navigation with single-activity UI architecture
- Android Architecture Components for handling components lifecycle and managing UI state holder
- Ackpine for handling APK install sessions with Kotlin Coroutines
- JetMVI for implementing UI state management
- Okio for I/O operations and file system abstraction
- Zip4j for working with ZIP archives
- apksig for signing APK files
- PseudoApkSigner for signing APK files on API < 24
- Retrofit & OkHttp for working with network requests
- Moshi for deserializing JSON data
- Material Components for Material Design 3 UI components implementation
- Lottie for vector animations
- Insetter for easy window insets handling
- ProgressButton for displaying progress indicator over a button
- ViewBindingPropertyDelegate for simple access to view binding
Okkei Patcher requires Android Studio Ladybug and higher to build (Android Gradle Plugin 8.7+).
Okkei Patcher has two flavors: prod and mock.
Prod flavor is release version of the app. Mock flavor is a version with mocked implementation of patch, restore and update functions and it doesn't require network or CHAOS;CHILD to be installed. It's used to test the overall flow logic of the app and UI layouts.
By default release builds are signed with debug keystore. To use your own Android keystore in
release build, create keystore.properties
file in root folder of the project with the following
contents:
storePassword=YOUR_KEYSTORE_PASSWORD
keyPassword=YOUR_KEY_PASSWORD
keyAlias=YOUR_KEY_ALIAS
storeFile=PATH_TO_YOUR_KEYSTORE_FILE
Okkei Patcher is licensed under GNU GPLv3 license.