Skip to content
realonepiecefreak edited this page Apr 14, 2020 · 15 revisions

Home

  1. Order to read
  2. Motivation
  3. Project Description
  4. Dependecy Map

Order to read

It is recommended that you read the pages in the following order:

This will provide you with enough information on Kuriimu 2 to better understand the contents of our other pages.

Motivation

For most games out there exists at least one dedicated tool, which can edit its different file types. Be it a compression, encryption, or just loading up an image or text file. Most of the time, developers reinvent the wheel with each of those tools, copying code or reinventing a user interface.

This can not be the standard way of making the contents of file types accessible to a common user. Not to mention the sheer amount of command line tools a common user may not be able to operate.

Project Description

Like its predecessor, Kuriimu 2 aims to be a general purpose toolkit for common users and fan translators to get their mods and translations organized better.

Kuriimu 2 is also meant to provide developers with a standard set of libraries for common operations in reverse engineering like cryptography, compression, image conversion and interpretation, and more.

A developer can write their own plugins for our toolkit, by utilizing our powerful plugin API and libraries. Or use the libraries in their own software in compliance to our license.

Dependency Map

Dependency Map

The above image shows the current dependency chain of the components in Kuriimu 2.

Kontract provides all APIs to implement plugins or components for Kuriimu 2 and its libraries. Kore is an encapsulation of managing files, managing information exposition and doing the groundwork for a modular user interface.

A user interface can be any GUI or command line representation. A developer can decide if they want to use our already prepared user interfaces or developing their own, depending on Kontract and Kore.

A plugin is a piece of software, which needs to inherit from the main interfaces in Kontract to be used in the user interfaces. A plugin can also reference other plugins or framework/3rd-party libraries, such as Kryptography, Komponent, etc.

Komponent, Kryptography, Kompression and Kanvas are additional libraries, which expose more helpful methods and classes for the certain tasks they were created for.

Clone this wiki locally