mirror of
https://github.com/kwsch/pkNX.git
synced 2026-05-27 07:08:19 -05:00
48 lines
2.8 KiB
Markdown
48 lines
2.8 KiB
Markdown
# pkNX
|
|
|
|

|
|
|
|
pkNX: A package of Pokémon (Nintendo Switch) ROM Editing Tools, programmed in [C#](https://en.wikipedia.org/wiki/C_Sharp_%28programming_language%29).
|
|
|
|
Similar to [pk3DS](https://github.com/kwsch/pk3ds) for the Nintendo 3DS, pkNX provides an editing environment to manipulate game binary assets such as stats, learnsets, trainers, and more!
|
|
|
|

|
|
|
|
## Download
|
|
Download the latest version [here](https://dev.azure.com/project-pokemon/pkNX/_build?view=runs).
|
|
|
|
(click on latest run at the top, then click Artifacts - published, and download the folder)
|
|
<img src="https://user-images.githubusercontent.com/60387522/193828925-2c5f3142-f8cb-4daa-af49-9663919ec9bf.png" width=75% height=75%>
|
|
<img src="https://user-images.githubusercontent.com/60387522/193829124-02db4dfa-2e61-421c-a5fd-129552df8aca.png" width=75% height=75%>
|
|
|
|
_Note: To run the app it is required to have the [.NET Desktop Runtime](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) installed_
|
|
<img src="https://user-images.githubusercontent.com/60387522/197339943-630c03c6-1dde-4528-8e78-75e0e0152749.png" width=50% height=50%>
|
|
|
|
## Features
|
|
Supports the following games:
|
|
* Let's Go, Pikachu! / Let's Go, Eevee!
|
|
* Sword / Shield
|
|
* Legends: Arceus
|
|
* Scarlet / Violet **(Currently only for dumping information, not to edit files!)**
|
|
|
|
**For Sword, Shield, Scarlet, and Violet, pkNX operates under the assumption that your dumped ROM includes the latest available update data.**
|
|
|
|
Editors can be launched from the program's main window after opening a dumped & unpacked ROM.
|
|
* To lessen read/write lag, data is only saved when the user cleanly quits the program.
|
|
* Edited files do not overwrite the original dumped file; instead, they are redirected to a "patch folder" for easy use with layeredFS.
|
|
* When the program requests to read a set of files, it will first check to see if an edited version exists, and if not, falls back to the original dump file.
|
|
|
|
With custom firmware, layeredFS functionality will selectively redirect file loading to files that are present in the patch folder, removing the need to rebuild a custom ROM.
|
|
|
|
pkNX also provides some utility to extract from supported container types, e.g. `gfpak`. Simply drag & drop a container (or many) into the main window, and pkNX will unpack all files to a new folder.
|
|
|
|
## Building
|
|
|
|
pkNX is a Windows Forms application which requires [.NET 6](https://dotnet.microsoft.com/en-us/download/dotnet/8.0) for Windows.
|
|
|
|
The executable can be built with any compiler that supports C# 12.
|
|
|
|
## Dependencies
|
|
|
|
pkNX's shiny sprite collection is taken from [pokesprite](https://github.com/msikma/pokesprite), which is licensed under [the MIT license](https://github.com/msikma/pokesprite/blob/master/LICENSE).
|