# PCゲームのエンジンを見分ける
都度説明するのが面倒なので書いておきます。自由にこのページのリンクを共有したり内容を転載して構いません。
私はゲーム開発者でも詳しいわけでもなく、完全に我流で得た知識なので間違えていたら連絡してください。
連絡先
ActivityPub: @eai@stellaria.network
X: @eai04191
メール: eai@mizle.net
わからなかったから調査してなどの連絡は対応しかねます。
## 前提知識: Steamでインストールしたゲームファイルの見方


ライブラリでゲームを右クリックして、**管理** -> **ローカルファイルを閲覧** でエクスプローラーが開く
以下個人的にメジャーだと思う順。ゲームの選定は適当
## 楽をしたいならSteamDBを見る
Steamゲームならほぼほぼこれでわかる
やってることはこの記事の内容と同じのはず
<figure>
<img src="https://hackmd.io/_uploads/BJ-KrzH-A.png" />
<figcaption><a href="https://steamdb.info/app/2654470/info/">BUNNY GARDEN · SteamDB</a><br />Unity製であることがわかる</figcaption>
</figure>
## Unity
特徴
- ゲーム名.exe と ゲーム名_Data フォルダがある
- UnityCrashHandler64.exe がある (ないこともある)
- UnityPlayer.dll がある (ないこともある)
<figure>
<img src="https://hackmd.io/_uploads/SJ3x-MBWR.png" />
<figcaption><a href="https://store.steampowered.com/app/2482150/">TENSEI</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/H1SSkGSbA.png" />
<figcaption><a href="https://store.steampowered.com/app/2622000/">アストラル☆パーティー</a></figcaption>
</figure>
Unity製に限らず、ランチャーを介する場合など、インストール先のexeファイルがゲームの実ファイルとは限らない場合がある:
<figure>
<img src="https://hackmd.io/_uploads/BJJ2EMrZC.png" />
<figcaption><a href="https://hsr.hoyoverse.com/ja-jp/home">崩壊:スターレイル</a><br />インストール先ディレクトリにはランチャーファイルが置かれている<br /><code>Star Rail</code></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/Skc_EzHbR.png" />
<figcaption><a href="https://hsr.hoyoverse.com/ja-jp/home">崩壊:スターレイル</a><br />Gamesフォルダ内にUnity製であろうファイルが見つかる<br /><code>Star Rail\Games</code></figcaption>
</figure>
### Mono と IL2CPP の見分け方
おそらくこの情報も必要になる
IL2CPPは比較的新しい技術なので、2021年より古いゲームはほぼMonoのはず
- ゲーム名_Data フォルダの中に `Managed` があればMono, `il2cpp_data` があればIL2CPP
<figure>
<img src="https://hackmd.io/_uploads/B1f0WfrbA.png" />
<figcaption><a href="https://store.steampowered.com/app/2654470/">バニーガーデン</a><br />Mono<br /><code>BUNNY GARDEN\BUNNY GARDEN_Data</code></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/BkHq-MBZC.png" />
<figcaption><a href="https://store.steampowered.com/app/2622000/">アストラル☆パーティー</a><br />IL2CPP<br /><code>Astral Party\AstralParty_Data</code></figcaption>
</figure>
### Unity バージョンの調べ方
ゲーム名.exe のプロパティからファイルバージョンに記載されているX.Y.ZがUnityバージョン
<figure>
<img src="https://hackmd.io/_uploads/ByAszGB-R.png" />
<figcaption><a href="https://store.steampowered.com/app/2654470/">バニーガーデン</a><br />2022.3.12<br /><code>BUNNY GARDEN\BUNNY GARDEN.exe</code></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/Hyg0GMSWC.png" />
<figcaption><a href="https://store.steampowered.com/app/2622000/">アストラル☆パーティー</a><br />2021.3.32<br /><code>Astral Party\AstralParty.exe</code></figcaption>
</figure>
## Unreal Engine 4, 5
特徴
- Engine フォルダ と ゲーム名(コードネームの場合あり)フォルダ がある
- ゲーム名フォルダ 内にBinaries\Win64フォルダがあり
- その中に `ゲーム名-Win64-Shipping.exe` がある
<figure>
<img src="https://hackmd.io/_uploads/B1MT8GSWA.png" />
<figcaption><a href="https://store.steampowered.com/app/962130/">Grounded</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/SJA3LMr-R.png" />
<figcaption><a href="https://store.steampowered.com/app/962130/">Grounded</a><br /><code>Grounded\Maine\Binaries\Win64</code></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/SJLaDGrZC.png" />
<figcaption><a href="https://www.fortnite.com/">Fortnite</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/ry7AvMBbC.png" />
<figcaption><a href="https://www.fortnite.com/">Fortnite</a><br /><code>Fortnite\FortniteGame\Binaries\Win64</code></figcaption>
</figure>
### UE バージョンの調べ方
Win64-Shipping.exe のプロパティからファイルバージョンに記載されているX.Y.ZがUEバージョン
<figure>
<img src="https://hackmd.io/_uploads/HkKJcGrZA.png" />
<figcaption><a href="https://store.steampowered.com/app/962130/">Grounded</a><br />4.27.2<br /><code>Grounded\Maine\Binaries\Win64\Maine-Win64-Shipping.exe</code></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/HyxOFGrZR.png" />
<figcaption><a href="https://www.fortnite.com/">Fortnite</a><br />5.4.0<br /><code>Fortnite\FortniteGame\Binaries\Win64\FortniteClient-Win64-Shipping.exe</code></figcaption>
</figure>
## Electron
特徴
- `LICENSE.electron.txt` がある
<figure>
<img src="https://hackmd.io/_uploads/rk3ZizB-A.png" />
<figcaption><a href="https://store.steampowered.com/app/1454400/">Cookie Clicker</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/SkszofrWR.png" />
<figcaption><a href="https://store.steampowered.com/app/1964200/">ファントムローズ2 サファイア</a></figcaption>
</figure>
## Godot
特徴
- ファイル数が少なめ
- exeと`steam_api64.dll`しかないなど
- ファイル名だけからGodotだと確定できる情報はあまりない
<figure>
<img src="https://hackmd.io/_uploads/S1D54QrWR.png" />
<figcaption><a href="https://store.steampowered.com/app/2835570/">Buckshot Roulette</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/r1dOVmB-0.png" />
<figcaption><a href="https://store.steampowered.com/app/1942280/">Brotato</a></figcaption>
</figure>
## Ren'Py
Python製ビジュアルノベルゲームエンジン
特徴
- renpy フォルダがある
- game フォルダの中に .rpa ファイルがある
<figure>
<img src="https://hackmd.io/_uploads/BJA7IQrZC.png" />
<figcaption><a href="https://store.steampowered.com/app/1604000/">Milk outside a bag of milk outside a bag of milk</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/rkpQ87BZA.png" />
<figcaption><a href="https://store.steampowered.com/app/698780/">Doki Doki Literature Club!</a></figcaption>
</figure>
## その他
内製だったり一般的でないエンジン
おそらくあなたにできることはないでしょう
<figure>
<img src="https://hackmd.io/_uploads/HkCHgMSbC.png" />
<figcaption><a href="https://store.steampowered.com/app/1245620/">ELDEN RING</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/B1KF8zrZA.png" />
<figcaption><a href="https://store.steampowered.com/app/427520/">Factorio</a></figcaption>
</figure>
<figure>
<img src="https://hackmd.io/_uploads/ByUh5fr-R.png" />
<figcaption><a href="https://store.steampowered.com/app/1131620">Dominion</a></figcaption>
</figure>
<style>
figure {
border-radius:.25em;
padding:1em;
border:1px solid lightgray;
text-align:center;
font-size:.8em
}
</style>