Skip to content
This repository has been archived by the owner on Oct 27, 2022. It is now read-only.

Latest commit

 

History

History
113 lines (90 loc) · 6.61 KB

README.md

File metadata and controls

113 lines (90 loc) · 6.61 KB

ニンテンドースイッチ用の吉里吉里

吉里吉里アイコン

Please read README.en_US.md for English documentation.

このリポジトリには、ニンテンドースイッチに移植された吉里吉里互換のコアが含まれています。
吉里吉里は、ほとんど常に排他的にKirikiri Adventure Game 3 (KAG3)ビジュアルノベルエンジン(またはその派生物)で使用されますが、E-moteなどのデスクトップアプリケーションおよびユーティリティ(Electronの使用例と同様)にも使用できます。

建物

dkp-pacmanを使用して前提条件のライブラリをインストールした後、単純なmkdir b && cd b && cmake .. && makekrkrs.nroを生成します。
エンジンのコンパイル中に「ファイルが見つかりません」または「ライブラリが見つかりません」エラーが発生した場合は、 dkp-pacmanから不足しているライブラリをインストールしてください。

RomFS統合

ゲームを1つのnroファイルに統合するには、次のようにします。

  • 「Makefile」の43行目をコメント解除します
  • ゲームファイルを「romfs」という名前のディレクトリに配置します
  • すべてのファイルとフォルダの名前を小文字に変更します
  • 「ビルド」セクションの説明に従ってビルドします。

ファイルとフォルダ名が小文字に変換されていない場合、ファイルが見つからないときにエラーが発生することに注意してください。
また、ファイル名が7ビットセーフでない場合、ファイルにアクセスできませんのでご注意ください。 その場合は、XP3アーカイブをご利用ください。

プロジェクトディレクトリの選択

RomFSにstartup.tjsが存在する場合、プロジェクトディレクトリと現在のディレクトリはromfs:/に設定されます。
上記の条件が満たされない場合、プロジェクトディレクトリは現在のディレクトリに設定されます(通常、 krkrs.nroがあるディレクトリと同じディレクトリ)。

プラグイン

現在、外部プラグインの使用はサポートされていません。
次の内部「プラグイン」がサポートされています。

内部プラグインの機能を使用するには、プラグインの名前で Plugins.linkを呼び出す必要があります。 例:

Plugins.link("csvParser.dll");

その後、プラグインの機能を使用できます。

var x = new CSVParser();

書体

フォントを使用するには、 Font.addFontを使用して追加する必要があります。 使用例:

Font.addFont("fonts/meiryo.ttf");

テキストファイルのエンコード

BOMを使用したUTF-16LEエンコードが推奨されます。これは、再エンコードや解凍を行わなくてもストリーミングできるためです。
エンコード検出のルールは次のとおりです。
最初のバイトが0xfe 0xfeの場合、ファイルはデコード/解読され、エンコードの検出が続行されます。
最初のバイトが0xff 0xfe(UTF-16LE BOM)の場合、ファイルはUTF-16LEとしてロードされます。
最初のバイトが0xef 0xbb 0xbf(UTF-8 BOM)の場合、ファイルはUTF-8としてロードされます。
それ以外の場合、エンコーディングは -readencodingコマンドラインオプションを使用して設定されます。
TVP_TEXT_READ_ANSI_MBCSが定義されている場合、デフォルト値はShift_JISになります。
それ以外の場合は、UTF-8になります。 有効なオプションは、 """UTF-8""Shift_JIS""GBK"です。
オプションが ""の場合、デコードは "Shift_JIS""UTF-8""GBK"の順に試行されます。
デコードに失敗すると、 TJSNarrowToWideConversionErrorがスローされます。

アーカイブのサポート

このエンジンを使用してサポートされるアーカイブは、暗号化されていないXP3アーカイブのみです。
アーカイブは、SDカードファイルシステムまたはRomFSに配置できます。
アーカイブを使用すると、ファイル名のエンコーディングとファイル名の大文字と小文字の問題を軽減できます。
アーカイブには、アーカイブ区切り文字を使用してアクセスできます(デフォルトは>で、-arcdelimコマンドライン引数で設定できます)。
使用例:

Scripts.execStorage("archive.xp3>file.tjs");

サードパーティプロジェクトの使用

次のプロジェクトのコードが使用されました:

ライセンス

このプロジェクトは、修正されたBSDライセンスの下でライセンスされています。 詳しくは LICENSEファイルを読んでください。
複数のサードパーティプロジェクトが使用されています。 詳しくは LICENSE.3rdpartyファイルをお読みください。