セフィリアのMODを自分で作ってみたいけれど、何から始めればよいか分からない。ワークショップに出したら審査で止まった、という場面もあります。

セフィリアのMODは公式の制作ガイドとサンプルで作れる

セフィリアのMODは、開発元の TEAM HORAY の公式のMOD制作ガイド(日本語あり)と、翻訳・衣装・DLLのサンプルで作れます。自分のPCで作り、ゲーム内のボタンでSteamワークショップに上げる仕組みで、2026年10月29日のバージョン1.1.0で入りました。

1.1.0 からのアップデートは、セフィリアのアップデートまとめにまとめています。

作れるMODの種類と必要なもの

公式のサンプルがあるのは次の3つで、翻訳と衣装はコードを書かずに作れます。

種類できること必要なもの審査
翻訳文字の書き換え、言語の追加テキストエディターなし
衣装新しい衣装、今ある衣装の外見テキストエディター、PNGの絵なし
DLLC#のコードでアイテムや敵を足す.NET SDK 8以降、C#のエディター自動で申請

初めてなら翻訳か衣装から始めます。DLLは、プログラミングの基礎が分かる人向けです。

はじめてのMODを作る手順(WorkshopLocal と metadata.json)

MODは、インストールフォルダに作る WorkshopLocal の中で作り、そのままゲームで試します。

  1. Steamライブラリでセフィリアを右クリックし、「管理」→「ローカルファイルを閲覧」でインストールフォルダを開く
  2. WorkshopLocal フォルダを作り、その中に自分のMOD用のフォルダを作る
  3. MODのフォルダに metadata.json をUTF-8で作り、翻訳や衣装のファイルを置く
  4. ゲームを起動し、タイトル画面の「Steamワークショップ」ボタンからパネルを開く

パネルの「自分のMOD」の欄に名前が出れば、読み込めています。最初から有効なので、オンにする操作は要りません。

図解の予定インストールフォルダ → WorkshopLocal → 自分のMODのフォルダ → metadata.json・thumbnail.png・Localization フォルダ、の入れ子を木の形で示す
画像の予定オーナー撮影の候補 日本語表示のタイトル画面の「Steamワークショップ」ボタンと、パネルの「自分のMOD」の欄

metadata.json で決めること

metadata.json は、MODの名前と動き方を決める中心のファイルです。

項目決めること気をつけること
modIdMODを見分ける名前小文字の英字・数字・.・-・_ で64文字まで。公開後は変えない
versionMODのバージョン更新のたびに上げる
installationマルチで誰が入れるかlocal_only、everyone、host_only から選ぶ

modId は、ほかのMODとぶつからないよう yourname.my-mod のように先頭に自分の名前を付けます。

MODが反映されないときの確かめ方

パネルに出ない、ゲームで変わらないときは、JSONのかっこやカンマの誤り、path の大文字・小文字がフォルダ名と同じか、metadata.json が UTF-8 か、ゲームの言語と言語ファイルの名前が合っているかを確かめます。

翻訳MODの作り方

翻訳MODは、MODのフォルダの Localization に、言語の名前のJSONファイル(日本語なら ja-JP.json)を置いて作ります。

ファイルには、変えたい文字の「キー」と新しい文字の組だけを書きます。キーは、インストールフォルダの Sephiria_Data/StreamingAssets/Localization/ にある元のファイルで探します。

metadata.json の modules(MODの部品)は localization、installation は local_only にします。

{VALUE} のような波かっこ、<color=…> などのタグ、改行の \n は訳さず、大文字・小文字も変えずに残します。

ゲームに無い言語は、元の en-US.json を写してすべてのキーを訳します。訳の無いキーは英語で出ます。

衣装MODの作り方

衣装MODは、PNGの絵とJSONで作ります。MODのフォルダに Costumes を作り、衣装ごとにフォルダを作ります。

衣装のフォルダには、costume.json、アイコンの絵、動き(モーション)ごとの絵を置きます。必ず要る動きは idle(待機)と move(移動)です。

絵は動きごとに1枚のPNGにまとめ、コマを横に隙間なく並べます。1コマが 20×16 で6コマなら、120×16 の絵になります。

図解の予定1コマ 20×16 の絵を6つ横に並べ、全体が 120×16 になる様子を、コマの境目に番号を振って示す

costume.json には schemaVersion、id、name、icon、animations を必ず書きます。1コマが既定の 16×16 でないときは、frameSize に1コマの大きさも書きます。

name には言語ファイルのキーを書き、名前の文字は同じMODの Localization に置きます。キーがどの言語のファイルにも無いと、衣装が読み込まれません。modules には costume と localization の両方を書きます。

できあがったら、村の「衣装変更」で新しい衣装があるかを見ます。直したらゲームを再起動します。

DLL MODを作るとき

DLL MODは、.NET SDK 8以降で netstandard2.1、C# 9 のプロジェクトを作ってビルドします。ゲームのDLL(Sephiria_Data/Managed/ の中)は参照だけにして、MODへは写しません。

入口のクラスは WorkshopModBase を受け継いで作り、そのクラス名を名前空間つきで entryClass に書きます。

マルチで値を同期させるなら、バージョン1.1.2から使えるMOD用の SyncVar<T> と ModRpc を使い、installation を everyone にします。

ワークショップに公開する手順

公開は、パネルの「ワークショップにアップロード」で行います。上げる前に、1MB未満のプレビュー画像(PNGかJPG)を用意し、ゲームのDLLの写し、.pdb、ビルドの途中のファイルを外します。

  1. タイトル画面の「Steamワークショップ」からパネルを開く
  2. 自分のMODを選び、「ワークショップにアップロード」を押す
  3. ワークショップのページで自分のMODを購読し、動くかを確かめる
  4. 公開範囲を「公開」に変える

上げたばかりのMODは「Unlisted」(限定公開)で、DLL入りなら自動で審査に申請されます。

図解の予定「ワークショップにアップロード」→(DLL入りなら審査に自動で申請)→「Unlisted で購読して確かめる」→「公開に変える」の流れを矢印で示す
画像の予定オーナー撮影の候補 日本語表示のワークショップパネルで、自分のMODを選んだときの「ワークショップにアップロード」ボタンの位置

コード入りのMODの審査と、却下されるもの

審査では、DLLに通信、ファイルの読み書き、難読化、悪意のある動きがないかが見られます。

難読化したファイルと、C/C++ でコンパイルしたDLLは、中身を読めないため却下されます。フォルダを圧縮した大きさは20MB以下にします。

却下されたときは、パネルの「却下理由を確認」で理由を見て、直してから上げ直します。

遊ぶ側に出る表示と対処は、セフィリアのMODの入れ方|ワークショップの購読・有効化と起動しないときにまとめています。

MODを更新するとき

更新も「ワークショップにアップロード」で行い、そのたびに version を上げます。modId は変えません。

上げ忘れると、中身の違うMODの人どうしが同じロビーに入り、進行が止まることがあります。

上げた後にMODのフォルダにできる uploadticket.json は消しません。無いと、同じフォルダが別のアイテムとして上がります。

MODを作るときのルール

TEAM HORAY の9項目のルールがあり、違反するとMODの公開やゲームのプレイが制限されることがあります。売り物にしない、マルウェアや無断で情報を外へ送る機能を入れない、他人の権利を侵す中身や性的な中身を入れない、ゲームから抜き出した絵や音をそのまま配らない、他人のMODを同意なく改変・再配布しない、などです。

公式のサンプルは MIT ライセンスで、自分のMODの土台に使えます(ゲーム本体の絵や音は対象外)。

作ったMODをマルチで試すとき

WorkshopLocal のMODを読み込んでいる間はマルチで遊べないので、MODを Unlisted のまま上げ、WorkshopLocal を空にして、購読したMODで試します。参加する人もページのリンクから同じMODを購読して有効にし、ゲームを再起動して入り直します。

フレンドの招待のしかたは、セフィリアのマルチのやり方|招待の手順と参加できないときの対処にまとめています。

この記事は、2026年11月11日時点のバージョン1.1.2をもとにしています。