
ゲームの進捗やプレイヤー情報を簡単に保存・読み込みできるプラグイン。キャラクター情報、インベントリ、レベル進度などを数クリックで管理できます。カスタマイズ可能なUIウィジェット付きで、初心者でも使いやすい!
RPG、アドベンチャー、サバイバルゲームなど、プレイヤーの進捗状況を長期保存する必要があるゲーム開発に最適。キャラクターレベル、インベントリアイテム、ダンジョン進捗などを自動管理することで、セーブ機能の実装時間を大幅短縮できます。特にマルチプラットフォーム対応が必要なカジュアルゲームやモバイルゲームでも活躍します。
このPluginを選ぶ理由
Blueprintで即座に実装でき、UIウィジェットもプリセット提供されるため、セーブシステムを一からコーディングするより開発速度が格段に速い。ただしMMOのような大規模マルチプレイヤーゲームには不向きで、複雑なデータベース連携が必要な場合は自作またはサーバー側実装の検討が必要。
✅ 向いているジャンル
ツール
開発効率化・ワークフロー改善に
ゲームプレイ
ゲームシステム・メカニクス構築に
UI
HUD・メニュー・ダッシュボード実装に
セーブ後にゲームを再起動してもデータが読み込まれない
GameInstanceクラスでセーブデータを管理している場合、BeginPlayではなくInitialize段階でLoadGameを呼び出す必要があります。また、SaveGameComponentが正しくレベルに存在しているか、変数にUPROPERTY(SaveGame)マクロが付いているか確認してください。
ActorやCharacterの位置情報がセーブされない
個別の変数ではなく、カスタムセーブデータ構造体(Struct)を作成し、位置情報、回転値、スケールをまとめて保存することをお勧めします。フォーラムの事例では、Actor参照を直接保存するのではなく、座標値を変数として分離して管理している開発者が多いです。
複数のセーブスロットから特定のデータだけを読み込みたい
ForEachLoopで全セーブスロットを走査し、条件判定ノード(Boolean変数チェックなど)で目的のスロットを特定してからLoadGameを実行してください。事前にセーブ時にメタデータ(プレイ時間、キャラクター名など)を含めておくと検索が効率化します。
【シナリオ1: RPG冒険ゲーム】
プレイヤーがダンジョンを探索し、モンスター撃破でレベルアップ、アイテムを獲得していくゲーム。SaveGameComponentを使ってキャラクターレベル、現在地座標、インベントリ内容、ボス撃破フラグを自動保存。メインメニューに「コンティニュー」ボタンを配置し、前回セーブ時点から即座に再開できます。複数エリアをセーブスロット番号で管理することで、プレイヤーが異なるダンジョン進行ルートを試験できます。
【シナリオ2: サバイバルゲーム(モバイル対応)】
モバイルゲームとして、プレイヤーが拠点を建設・管理し、資源採集するゲーム。ゲーム終了時とポーズ画面で自動セーブを実行し、拠点の建造物レイアウト、資源数、クエスト進度を保持。マルチプラットフォーム対応により、スマートフォンで開始したセーブをPC版で継続プレイ可能。セーブファイルサイズを圧縮するため、不要な変数は除外する設定をプロジェクト設定で統一管理します。
複数のセーブスロット対応、10個のカスタマイズ可能なUIウィジェット、4つのBlueprint関数、15個のC++クラスを搭載。インストール・ヘルス保存・インベントリ保存・レベル移動の詳細YouTubeチュートリアル完備で、初心者向けとしての学習リソースが充実している。
【Unreal Engine 5:初心者の方へ】2Dゲーム開発:ラン&ジャンプゲームを作ってみよう
おおたに OHTANI
【個人ゲームに使えるテクニックを学ぼう】Unreal Engine 5 で作るストアシミュレーターゲーム
Katsuhiko Mikami
※ Udemyアフィリエイトリンクを含みます