# BepInEx のインストール
## 必要条件
- _対応している OS_
- Windows 7, 8, 8.1, 10 (x86 と x64 の両方に対応しいます)
- GCC 10 以降が使える Linux ディストリビューション、できれば GNU/Linux ディストリビューション (x86_64 と x86 アーキテクチャに対応しています)
- macOS 10.13 High Sierra かそれ以上
- [ハードパッチ](https://bepinex.github.io/bepinex_docs/master/articles/user_guide/installation/hardpatching.html)ができるその他の OS
- [Wine](https://www.winehq.org/)に対応している OS (Linux, macOS, FreeBSD, ...)
- [Mono](https://www.mono-project.com/)に対応している OS (Windows, Linux, macOS)
- _対応している Unity ゲーム_
- Unity 3 以降
:::warning
**IMPORTANT**
現在、IL2CPP でビルドされたゲームは対応していません。ただし、[Il2CppAssemblyUnhollower](https://github.com/knah/Il2CppAssemblyUnhollower)などのプロジェクトのおかげでツールが改善されたため、対応が予定されています。
:::
## BepInEx の入手先
BepInEx は stable(安定版)と bleeding edge(最新版)の 2 つのビルドが配布されています。
**安定版ビルド** は [GitHub](https://github.com/BepInEx/BepInEx/releases)で配布しています。
安定版は BepInEx の新機能が完成したと判断された時にリリースされます。
安定版はバグが少ないですが、最新の機能が利用できない場合があります。
**ほとんどの場合において、安定版を使用することをおすすめします。**
**Bleeding edge ビルド**は [BepisBuilds](https://builds.bepis.io/projects/bepinex_be) で配布しています。Bleeding edge ビルドは常に最新のソースコードを使用しています。つまり安定版ビルドとは正反対です。最新の機能とバグ修正が含まれていますが、最もバグが多い傾向にあります。
そのため、Bleeding edge ビルドを使用するのは、使うように指示された場合や、BepInEx の次期バージョンをプレビューしたい場合のみにしてください。
## BepInEx のインストール
現在、BepInEx は手動でのインストールが必要です。
1. 正しいバージョンの BepInEx をダウンロードする
[提供されている配布元から BepInEx をダウンロードしてください。](#BepInEx-の入手先)
お使いの OS に合わせてバージョンを選択してください。
:::spoiler {state="open"} **Windows**
以下のどちらかをダウンロードしてください。
- **32 ビット実行ファイル**に対応する `x86`
- **64 ビット実行ファイル**に対応する `x64`
:::
:::spoiler **Linux/macOS**
`nix` と書いてあるアーカイブをダウンロードしてください。32 ビット、64 ビットの実行ファイルで BepInEx を実行するために必要なすべてのものが含まれています。
:::
2. ゲームルートにファイルを展開する
ゲームにあったバージョンの BepInEx をダウンロードしたら、アーカイブの内容をゲームフォルダにコピーしてください。
:::spoiler {state="open"} **Windows**
ゲームのルートフォルダは、ゲームの実行ファイルがある場所です。
:::
:::spoiler **Linux/macOS**
Linux でのゲームのルートフォルダは `<Game>.x86` か `<Game>.x86_64` がある場所です。
macOS でのゲームのルートフォルダは `<Game>.app` がある場所です。
:::
3. 設定ファイルを生成するために初回起動を行う
:::spoiler {state="open"} **Windows**
単純にゲームを実行してください。BepInEx の設定ファイルが `BepInEx/config` に、ログファイルが `BepInEx/LogOutput.txt` に作成されます。
:::
:::spoiler **Linux/macOS**
<div class="alert alert-danger part">
<b>NOTE</b>
<p>Steam ゲームを改造する場合は、<a href="https://bepinex.github.io/bepinex_docs/master/articles/advanced/steam_interop.html">BepInEx を実行できるように Steam を設定する</a>必要があります。</p>
</div>
まず、実行スクリプト`run_bepinex.sh`をお好みのテキストエディタで開き、以下の行を編集します。
```sh
executable_name="";
```
ここに、**ゲームの実行ファイル名**を入力します。
- Linux では、これは単にゲームの実行ファイルの名前です。
- macOS では、, これは **`.app` 拡張子を含む** ゲームアプリの名前です つまり `HuniePop.app` のようになります。
最後に、ゲームフォルダをターミナルで開き、`run_bepinex.sh` スクリプトを実行可能な状態にします。
```bash
chmod u+x run_bepinex.sh
```
これで、スクリプトを使って BepInEx を実行できるようになりました。
```bash
./run_bepinex.sh
```
BepInEx の設定ファイルが `BepInEx/config` に、にログファイルが `BepInEx/LogOutput.txt` に作成されます。
:::
4. 必要に応じて BepInEx を設定する
`BepInEx/config/BepInEx.cfg` お好みのテキストエディタで開きます。
すべての設定項目は、設定ファイルの中で文章化されています。
また、詳細については[設定ガイド](https://bepinex.github.io/bepinex_docs/master/articles/user_guide/configuration.html)を参照してください。
## さらなる手順とトラブルシューティング
一部のゲームでは、異なるバージョンの Unity の特定の制限を回避するために、いくつかの追加の変更が必要となることがあります。
追加のインストール手順の詳細については、[トラブルシューティング](https://bepinex.github.io/bepinex_docs/master/articles/user_guide/troubleshooting.html)の項目を参照してください。