[2021年決定版] CFWにNSPをインストールしよう

CFW

NSPをダンプしよう

どうにもこうにも、まずはインストールするためのNSPを手に入れなければいけません。

NSPはゲームのカートリッジ、またはeShopからダウンロードしたダウンロード版ゲームや体験版やDLC、または配布されたアップデートなどが該当します。

NSPをゲームから抽出するにはHACGUINXDumpToolを使うのが基本的な手順となりますが、この際に署名付きでダンプしないとパッチをあてていないCFWではインストールができないので以下の手順を読んで正しく署名付きでNSPを作成するようにしてください。

HACGUIとNXDumpToolの使い方は上のリンク参照!

NSPの抽出の手順

以下の表がHACGUIとNXDumpToolの比較表です

HACGUINXDumpTool
カートリッジ版×
※署名にバグあり?
ダウンロード版
※制限あり

※オプションが必須
アップデータ
DLC

◯は署名付きで正しくダンプし、パッチをあてていないCFWでインストール可能なNSPが作成できることを意味しています。じゃあ気になる△はなんなのかということになるわけです。

NXDumpToolでカートリッジ版をダンプ

署名付きで正しくダンプしたつもりでも、スプラトゥーンの場合は何故か署名でエラーを吐かれてインストールすることができません。

カートリッジ版を無理やりダウンロード版のNSPとして扱っているのが良くない可能性があります。

HACGUIはそもそもカートリッジ版をダンプすることができないので、この問題は発生しません。

HACGUIでダウンロード版をダンプ

HACGUIでダウンロード版をダンプすると署名付きNSPができるのですが、この署名はpersonalized ticketと呼ばれるチケットでありダンプしたNANDでしか効果を発揮しません。

なので、例えばSysNANDでeShopからゲームをダウンロードし、それをEmuNANDにインストールしようとした場合は、一度でもEmuNAND側で本体の初期化などで内部IDが変わるような操作をしているとゲームが起動できなくなります。

よっって、このケースではHACGUIは実際には使い物にならないケースが多いです。

NXDumpToolでダウンロード版をダンプ

NXDumpToolにはダウンロード版のpersonalized ticketをcommon ticketに変換する機能が備わっています。

この署名変換機能があるおかげで、ダウンロード版のゲームをSigpatchなしに起動することができるようになります。

どのように設定すれば署名を切り替えられるかは以下の記事を読んでください。

非署名のNSPをインストールしたい

さて、ここまでを読めばわかると思うのですがどうもカートリッジ版から署名付きのNSPをダンプすることは難しいようです。以前はWEIN DUMPERと呼ばれるカートリッジからダンプする専用のアプリがあったのですが、libnxの更新に対応していないのか最新版のCFWでは動作しません。

また、自作アプリでもNROではなくNSPとして配布しているものがあり、それらは当然任天堂公式の署名がされていないのでインストールすることができません。

そこで、非署名のNSPをインストールする仕組みが考えられました。それが、Sigpatchです。

Sigpatch Updater

Release Sigpatch-Updater v0.1.3 - New Download URL · ITotalJustice/sigpatch-updater
What's new? New repo for hosting the patches. These are the same patches as before, just hosted in a way which is easier for me to manage (I don't have to par...

SigpatchをGitHubのリリースページから自動で取得してくれるアプリがあります。

それがこのSigpatch Updaterで、これ自体は既に更新が停止してしまっているのですが、パッチは更新されているので常に最新のパッチをあてることができます。

パッチはFWのバージョンとCFWのバージョン(より具体的にはatmosphereのバージョン)で動作するかしないかが決まってくるので、FWやCFW(またはDeepSea)などをアップデートした場合には、再度Sigpatch Updaterを起動して最新のパッチをあてるようにしてください。

当然ですが、リリース直後はそのFWやCFWに対するパッチに更新されていない場合もあります。

Sigpatch Updaterの使い方については以下のリンクを参考にどうぞ。

hekate_ipl.ini

Sigpatch UpdaterはSigpatchをダウンロードしてくれますが、有効化はしてくれないのでパッチを読み込むようにhekate_ipl.iniを更新する必要があります。

特に難しいことはなくて、以下のように書き換えればSigpatchを読み込んでくれます。

[config]
autoboot=0
autoboot_list=0
bootwait=3
verification=1
backlight=100
autohosoff=0
autonogc=1
updater2p=1
 
{DeepSea/DeepSea v1.9.4}
{}
{Discord: invite.sdshrekup.com}
{Github: https://github.com/orgs/Team-Neptune/}
{}
 
{--- Custom Firmware ---}
[CFW (EMUMMC)]
emummcforce=1
kip1patch=nosigchk
fss0=atmosphere/fusee-secondary.bin
atmosphere=1
logopath=bootloader/bootlogo.bmp
icon=bootloader/res/icon_payload.bmp
kip1=atmosphere/kips/*
{}
 
{--- Stock ---}
[Stock (SYSNAND)]
emummc_force_disable=1
fss0=atmosphere/fusee-secondary.bin
stock=1
icon=bootloader/res/icon_switch.bmp
{}

これはDeepSea 1.9.4向けのhekate_ipl.iniですが、他のバージョンでも(極端にhekateのバージョンが低くなければ)同じ書き方で動作すると思います。

まとめ

ここだけ読めばなんとかなるやろページが完成しました。

正直、Sigpatchってなんかいろいろ派生があってよく分かってないんですよね。

そういえばこの前海外ドキュメントを読み漁っていたらatmosphereから最新のSigpatchを作成するためのコマンドみたいなのも見た気がするんですが、履歴の彼方にとんでいってしまったのでわからなくなってしまいました。

ニンテンドースイッチ向けの自作アプリって今まで一度も作ったことがないのでチャレンジしてみたいんですが、どこかにチュートリアルとかありませんかね?

記事は以上。

コメント

  1. マイルド より:

    度々失礼します。

    どうやら「ほかのNintendo Switch本体で~」の注意書きが出るのが問題だったようです。
    EmuNANDのNintendoフォルダを削除した所注意書きが出なくなり、無事NSPもGoldleafでインストールできました!
    起動してタイトル画面までいくのも確認できました。
    解決してみるとすごく単純な問題でした・・・お手数おかけしました。
    注意書きの事も最初に書いておくべきでした、申し訳ないです。

    相談に乗っていただき有難うございます、これからも参考にさせて頂きますね。

  2. すげる より:

    3.1.0のNSPを入れたのですが、アップデートが必要とか何とかでアップデートしなくちゃいけなくなったのですが、どうすればいいのですかね…?

タイトルとURLをコピーしました