# PCゲームのエンジンを見分ける 都度説明するのが面倒なので書いておきます。自由にこのページのリンクを共有したり内容を転載して構いません。 私はゲーム開発者でも詳しいわけでもなく、完全に我流で得た知識なので間違えていたら連絡してください。 連絡先 ActivityPub: @eai@stellaria.network X: @eai04191 メール: eai@mizle.net わからなかったから調査してなどの連絡は対応しかねます。 ## 前提知識: Steamでインストールしたゲームファイルの見方 ![image](https://hackmd.io/_uploads/H1ULRZBZC.png) ![image](https://hackmd.io/_uploads/r1otC-SZR.png) ライブラリでゲームを右クリックして、**管理** -> **ローカルファイルを閲覧** でエクスプローラーが開く 以下個人的にメジャーだと思う順。ゲームの選定は適当 ## 楽をしたいなら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>