> For AI agents: the complete documentation index is available at https://renmori.mewbaka.cn/ja/llms.txt, the full documentation bundle is available at https://renmori.mewbaka.cn/ja/llms-full.txt.

# 開発者向けの注意事項

本ページは、RenMori で自身の作品を保護する開発者とパブリッシャーを対象に、ライセンスで許可される行為と禁止される行為、ゲームと共に配布する際に履行すべきサードパーティのライセンス義務、およびリリース前に完了すべき確認事項を説明します。条項は [RenMori License 1.0](https://github.com/MewBaka/RenMori/blob/main/LICENSE) に従います。正本は英語の LICENSE であり、本ページはその日本語による要約です。免責条項は[免責事項](https://renmori.mewbaka.cn/ja/license/disclaimer.md)を参照してください。

## ライセンスで許可される行為

| 行為                                                  | 根拠         |
| --------------------------------------------------- | ---------- |
| 商用作品を含む任意の Ren'Py ゲームを、RenMori を使って無料・ロイヤリティなしで保護する | ライセンス第 1 条 |
| 保護済みのゲームを販売し、その中に RenMori のランタイムを無償で同梱する            | ライセンス第 2 条 |
| 自身のゲームを保護するために RenMori を改変する（自己使用に限る）               | ライセンス第 3 条 |
| ゲームが RenMori で保護されていることを正確に表示する                     | ライセンス第 5 条 |

使用許諾は、ゲーム自体の内容やライセンスの状態にかかわらず適用されます。RenMori のランタイムがあなたの手を離れるのは、あなた自身の保護済みゲームに組み込まれた形に限られます。

## ライセンスで禁止される行為

有償か無償かを問わず、以下を行ってはなりません。

- RenMori そのもの、またはその実質的な部分を、改変の有無を問わず、製品やサービスの形で販売、転売、貸与、リース、サブライセンスまたは配布すること
- RenMori を使用して他者の Ren'Py ゲームを保護または暗号化し、料金を受け取ること、または商業的なサービスとして提供すること（例：「Ren'Py 暗号化代行」サービス）
- RenMori の改変版を第三者に配布すること、またはいかなる改変版も RenMori として提示すること
- ゲームが RenMori で保護されていることの正確な表示以外の目的で「RenMori」の名称やロゴを使用すること（例：他の製品の名称や宣伝への使用）

許諾範囲を超える使用はライセンスが付与する権利を終了させますが、すでに適法に配布したゲームについての第 1 条および第 2 条に基づく権利は影響を受けません。

:::tip
提携先の作品に対して保護を実行する場合や、ツール、エンジン、サービスに RenMori を組み込む場合など、ある使用方法が許諾範囲内かどうか判断できないときは、事前に [team@mewbaka.cn](mailto:team@mewbaka.cn) までご連絡のうえ確認してください。
:::

## ゲーム内での RenMori の表記

ライセンスは、ゲーム内に RenMori を表記することを要求していません。表記する場合は、スタッフクレジットや技術情報に正確な表現を使用できます。例：

```
リソース保護：RenMori（https://renmori.mewbaka.cn）
```

ゲームが RenMori の作者によって開発、発売または承認されたと誤解されるおそれのある表現は使用せず、RenMori のロゴも改変しないでください。

## サードパーティのライセンス義務

保護済みの配布用ビルドには、引き続き Ren'Py エンジンとそれに同梱されたサードパーティコンポーネントが含まれます。RenMori はこれらのコンポーネントのライセンス条項を変更せず、対応する義務は引き続きゲームを配布する側が負います。

| コンポーネント       | 義務                                                                                                                                                           |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Ren'Py        | Ren'Py は寛容な MIT 類似のライセンスで公開されており、一部の同梱コンポーネントにはそれぞれの条項が適用される。Ren'Py 自身のライセンスと表示をゲームと共に保持し、配布用ビルド内の関連ファイルを削除しない                                               |
| FFmpeg        | Ren'Py に同梱された FFmpeg は音声・動画のデコードに使用され、LGPL-2.1 以降でライセンスされている（一部のビルド構成は GPL）。FFmpeg のライセンス文をゲームに同梱し、その要求に従ってソースコードの入手方法を提供する。実際に同梱される FFmpeg ビルドのライセンス種別を確認する |
| その他の同梱コンポーネント | [NOTICE](https://github.com/MewBaka/RenMori/blob/main/NOTICE) と各コンポーネント自身のライセンスに従って義務を履行                                                                     |

`renmori protect` のベースライン処理は `game/` ディレクトリのみを対象とし、`renpy/`、`lib/` およびビルドルートにあるエンジンファイルとそのライセンスファイルは変更しません。NOTICE の要求に従い、RenMori の保護方式は、LGPL に基づく再リンクを妨げる形で FFmpeg を静的に結合してはなりません。リリース前に、上記のライセンスファイルが配布用ビルドに残っていることを確認してください。

## 鍵とバックアップ

- **バックアップディレクトリ**：インプレース保護で生成される `<dir>_bak` には平文のリソースとスクリプトがすべて含まれるため、配布用ビルドと共にアップロードまたは配布してはならない
- **ベースラインの鍵**：`[keys]` で指定する環境変数を CI の Secret に保存し、設定ファイル、スクリプトやバージョン管理には書き込まない。ベースライン形式では鍵がゲームと共に配布されるローダー拡張に書き込まれるため、鍵を固定してもビルドの一貫性を保つだけであり、ベースラインの安全性は向上しない
- **フル保護**：鍵はビルド時にクローズドプラグインが導出するため、開発者が個別に管理する必要はなく、管理することもできない
- **ビルドマニフェスト**：`renmori-manifest.json` に鍵は含まれないが、ベースラインのマニフェストにはすべてのアセットのパスとサイズが列挙される。配布用ビルドに残すかどうかはあなたの判断に委ねられ、削除する場合は事前に `renmori verify` を完了しておく
- **ソースプロジェクト**：RenMori が保護するのは配布用ビルドのみであり、ソースプロジェクトと `.rpy` のシナリオは、バージョン管理のアクセス権限などによって自ら保護する必要がある

## リリース前チェックリスト

- [ ] 保護の対象が Ren'Py ランチャーで生成した新しい配布用ビルドである
- [ ] 正式なリリースには `--strength baseline` ではなくフル保護を使用している
- [ ] ロックダウンが有効で、`--no-lockdown` を使用していない
- [ ] `--keep-plaintext` を使用していない
- [ ] `exclude` と `keep_on_disk` にスクリプトファイルも不要なリソースも含まれていない
- [ ] `renmori verify` に合格した
- [ ] すべての対象プラットフォームで実際に起動して通しでプレイし、セーブ、ロード、CG 鑑賞、音楽鑑賞、動画再生と多言語の切り替えを確認した
- [ ] `renmori.rmc` と `renmori.rpe` の両方が配布用ビルドに含まれている
- [ ] 配布用ビルドに `_bak` バックアップディレクトリ、鍵ファイルやソースプロジェクトが含まれていない
- [ ] 保護済みディレクトリを、保護の後に Ren'Py ランチャーで再ビルドしていない
- [ ] Ren'Py や FFmpeg などのコンポーネントのライセンスファイルが配布用ビルドに残っている
- [ ] Steam でリリースする際に Steam DRM の実行ファイルラッパーを重ねていない（[Steam へのリリース](https://renmori.mewbaka.cn/ja/integration/steam-release.md)を参照）

## 互換性とテスト

RenMori は Ren'Py 8.x（Python 3）を対象としており、Ren'Py 7.x 以前の Python 2 系のバージョンには対応していません。ランタイムは Windows、Linux、macOS 上の実際の Ren'Py エンジンで検証済みであり、Steam Deck（Proton）での動作検証は現在進行中です。チームは現在 Steam の開発者権限を持っていないため、Steam SDK や Steam オーバーレイなどの関連機能は実機でテストされていません。

Ren'Py の読み込み処理をカスタマイズしているプロジェクト、ディスク上のファイルを直接読み込むサードパーティのプラグインを使用しているプロジェクト、または Python コードで `renpy.loader` ではなくファイルシステム API を通じて `game/` 内のリソースを読み込んでいるプロジェクトでは、該当するファイルに `keep_on_disk` を設定し、保護後に関連機能を重点的にテストする必要がある場合があります。

## プライバシー

RenMori のランタイムはエンジン内部でデータを復号するだけで、プレイヤーの情報を収集せず、ネットワークリクエストも発行しません。ローダーフレームワークをオープンソースにしている目的の一つは、開発者とプレイヤーがこれを検証できるようにすることです。`renmori` CLI がネットワークにアクセスするのはクローズドプラグインの初回取得時のみであり、`RENMORI_NO_DOWNLOAD` によって完全に禁止できます。

## サポート

- 許諾範囲と技術的なサポート：[team@mewbaka.cn](mailto:team@mewbaka.cn)
- 問題の報告：[GitHub Issues](https://github.com/MewBaka/RenMori/issues)。提出要件は[提出要件](https://renmori.mewbaka.cn/ja/license/contributing.md#%E5%95%8F%E9%A1%8C%E3%81%AE%E5%A0%B1%E5%91%8A)を参照
- セキュリティ脆弱性：公開の場で報告せず、[セキュリティ脆弱性の報告](https://renmori.mewbaka.cn/ja/license/contributing.md#%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3%E8%84%86%E5%BC%B1%E6%80%A7%E3%81%AE%E5%A0%B1%E5%91%8A)を参照
