The user-facing workflow is under active development.
This guide describes the intended workflow from the master architecture. It does not claim that every screen or package operation is currently implemented.
NotY Game Repacker is a native Windows application for packaging files and games that the user legitimately owns or possesses.
The project is intended to provide two applications:
- NotY Game Repacker for creating packages
- Generated Setup.exe for installing packages
The project does not provide DRM, license, activation, launcher, or ownership bypass functionality.
The intended workflow is:
- Welcome
- Select source directory
- Select game cover
- Configure package
- Review settings
- Repack
- Verify package
- Finish
The source directory should contain the complete set of files intended for packaging.
The final implementation should collect:
- files
- directories
- file sizes
- relevant metadata
- package totals
Large directories should be processed without loading all file data into memory.
The package cover is game-specific artwork.
It is separate from the project's NotY215 logo.
The intended supported image set includes common formats such as PNG and JPEG. Exact implementation support will be documented once the image subsystem is complete.
The Repacker is intended to collect:
- game name
- source directory
- game cover
- chunk configuration
- Setup executable name
- repacker username
The displayed repacker name is explicitly entered by the package creator.
It must not silently use the Windows %USERNAME% value.
The default project value is intended to be:
NotY215
Before starting a package operation, the UI should present the selected configuration so the creator can confirm it.
The target processing flow is:
Scanning files
|
v
Building manifest
|
v
Processing data
|
v
Creating chunks
|
v
Generating Setup
|
v
Validating package
Progress must represent actual work.
The project must not use fake progress percentages.
Cancellation should be safe and cooperative.
The intended behavior is:
Cancel
-> request cancellation
-> finish safe current operation
-> close files
-> clean temporary state
-> return safely
The intended Setup flow is:
- Launch
- Load package metadata
- Validate package structure
- Select installation directory
- Check permissions
- Check disk space
- Select optional components when available
- Install
- Verify
- Finish
The generated installer must be generic and must not contain game-specific hardcoded logic.
Before installation, the Setup application should validate:
- package metadata
- package structure
- chunk count
- chunk identifiers
- supported format version
- required disk space
- installation directory
If a validation step fails, installation should stop safely and display a useful explanation.
The installer should show:
Required: 64.2 GB
Available: 183.4 GB
Status: Enough space
If there is not enough space, installation should be disabled or stopped before destructive installation work begins.
The intended package layout is:
GameName/
├── Setup.exe
├── manifest.noty
├── cover.png
├── GameName.001.noty
├── GameName.002.noty
└── ...
The exact final layout may change while the package format is being implemented.
For large packages:
- Prefer SSD storage when available.
- Keep source and output on reliable storage.
- Avoid unnecessary copies.
- Use bounded memory.
- Do not run one thread per file.
- Keep the UI responsive.
- Use 64-bit file sizes.
The fastest configuration is not always the safest configuration. Correctness and data integrity come first.
Cryptography is not implemented in the current stage.
Do not enable, advertise, or assume encryption features until they are actually implemented.
Check:
- Windows x64 environment
- Visual Studio 2022/MSVC
- Windows SDK
- CMake 3.24+
- selected CMake preset
See BUILDING.md.
Check that the expected resource exists under resources/.
The build system can continue without the logo, but reports that the embedded logo is unavailable.
Record:
- the application/build version
- Windows version
- build configuration
- operation being performed
- error message
- relevant log output
- approximate package size
Do not include passwords, tokens, private keys, or unrelated personal data.
For bug and documentation reports, see REPORTING_GUIDELINES.md.
For architecture and development questions, see DEVELOPMENT.md.