
Robloxのゲームを移植する
Robloxのゲームを、自分が所有する独立した作品へ移植する
Robloxのゲームの移植とは、自分が作った体験を独立したゲームとして作り直すことだ。Robloxはキャラクター、サーバー、ストアを用意してくれる。プラットフォームの外では、三つとも自分で用意する。
Robloxのゲームの移植とは、自分が作った体験をRobloxのクライアントの外で動く独立した作品として作り直すことだ。これは見た目より大きな変更になる。Robloxは多くの開発者が自分で作らずに済んでいたシステムを提供しているからだ。キャラクターコントローラ、物理の既定値、プレイヤーのアカウント、マッチメイキング、サーバーのホスティング、データの永続化、決済。
所有権には注意が要る。自分のスクリプト、自分のビルド、自分でアップロードしたアセットは自分のものだ。Robloxのライブラリや他の制作者から取ったモデル、メッシュ、音声は、一般にRoblox上での利用にライセンスされており、Steamで販売する商用ゲームのためではない。何よりも先にアセットの一覧を確認する。
利点は直接的だ。プラットフォームの外なら自分で価格を決め、分配ではなく収益をそのまま得られ、Robloxを使わないプレイヤーにも届く。Summer Engineはゲームを自分のプロジェクトとして作り直し、ロイヤリティなしでデスクトップ、モバイル、Web、コンソールへ書き出せる。
Robloxが提供していて、これから自分で作るもの
Robloxはどの体験にもHumanoidのキャラクターコントローラ、既定のカメラ、リスポーンの処理、チャット、プレイヤー一覧、フレンド、ロビーを与えている。独立したビルドには初期状態でそれが何もない。まずキャラクターコントローラを作り直す。Robloxの移動には独特の手触りがあり、プレイヤーはそれをそのゲームと結び付けているからだ。次にカメラ、次にリスポーンと状態の扱い。これらは普通のエンジン作業だが、元のプロジェクトの範囲では見えていないのが普通だ。
Luauは多くのスクリプト言語より移しやすい
Luauは型のあるLuaだ。構造が馴染みやすいので、スクリプトのロジックはよく移る。イベントの接続、毎フレームの更新、インスタンスの参照といった具合だ。RemoteEventとRemoteFunctionの呼び出しは自作のネットワーク層になる。インスタンスの階層はノードツリーへ自然に対応する。移らないのはRobloxのAPIそのもので、ゲームサービスの呼び出しにはすべて代替が要る。Summer EngineのゲームはC++とGDScriptで書き、C#もWeb以外では使える。
DataStore、マルチプレイ、ホスティング
DataStoreは自作のセーブシステムになる。一人用の独立したゲームならローカルのセーブファイルで、そのほうが単純で速い。マルチプレイのゲームなら、これが移植で最大の項目になる。Robloxがサーバーを走らせ、レプリケーションを扱い、プレイヤーを引き合わせていた。プラットフォームの外ではそれを自分で作り自分で払うか、独立版の範囲を一人用、ローカル対戦、ピアがホストするセッションに絞るかだ。他のどれよりも先にこれを決める。
収益化は形が変わる
Robuxの購入、ゲームパス、開発者向け商品はRobloxの仕組みで、プラットフォームの収益分配と支払い規則が付いている。プラットフォームの外ではモデルを選ぶ。Steamやストアでの有料ゲーム、ダウンロードコンテンツ、モバイルでの自前のアプリ内課金だ。ストア手数料はかかるが、プロジェクトは自分のもので、エンジンのロイヤリティも収益分配も払わない。客層も違うので、Robuxで機能した価格設計が固定価格でそのまま機能するとは限らない。
よくある質問
自分のRobloxのゲームをSteamで売れるか
自分の作業から作り直した独立したゲームなら売れる。自分のスクリプト、自分のビルド、自分でアップロードしたアセットは自分のものだ。他の制作者のライブラリやマーケットプレースのアセットは、一般にRoblox内での利用に限られるので差し替えが要る。
Luauのコードは他のエンジンへ移るか
ロジックは移るが、APIは移らない。イベントの接続、更新ループ、インスタンスの階層は、スクリプトを持つノードツリーへきれいに対応する。DataStore、RemoteEvent、Humanoidを含むRobloxのサービス呼び出しは、すべて自分で書く代替が要る。
Robloxのゲームの移植で最も難しい部分は何か
マルチプレイだ。Robloxはサーバーのホスティング、レプリケーション、マッチメイキングを無料で提供している。Robloxの外ではその基盤を自分で作って費用も負担するか、独立版の範囲を一人用、ローカル対戦、ピアがホストするセッションに絞ることになる。
DataStoreは何に置き換わるか
自作のセーブシステムだ。一人用のゲームならローカルのセーブファイルで、DataStoreより単純で速い。オンラインで進行を保持するゲームなら、自分で運用するバックエンドと、それに伴うアカウントと保存の仕組みが要る。
Robloxの外のほうが収益は多く残るか
ストア手数料の後は全部残る。Summer Engineはロイヤリティも収益分配も取らず、プロジェクトは自分のものだからだ。Steamやモバイルストアの手数料はかかり、価格モデルはRobuxの購入から有料ゲームか自前のアプリ内課金へ変わる。
さらに見る
Summer Engine で創るその他の方法
AI ゲームメーカー
説明するだけで完全な 2D・3D ゲームを作れるハブ。
開くMake a Roblox-style game with AI you actually own
Describe a Roblox-style game and Summer Engine builds a 3D world, a controllable character, obstacles and objectives, and multiplayer-ready scenes, inside one project you own and can export to undefined.
開くMake a game from a picture and the idea it holds
Bring a picture and Summer Engine builds a game inspired by its look and concept: scenes, gameplay, and matching art in one project you own.
開くPort a 3DS game by rebuilding it, not converting it
Porting a 3DS game means rebuilding a game you own as a new project that runs on platforms that still sell games. There is no file converter for this.
開くPort a Nintendo DS game to platforms that still sell games
A Nintendo DS port is a rebuild of a game you own. The stylus design is the asset worth keeping, because touch is native on every phone.
開くPort a Wii game and decide what happens to motion control
Porting a Wii game means rebuilding a title you own for hardware without a Wii Remote. The pointer and the motion gestures need a new input design.
開くPort a Wii U game off the smallest console audience
Porting a Wii U game means rebuilding a title you own for platforms with a single screen. The GamePad layer is the part that has to be redesigned.
開くPort a PSP game and give it a second analog stick
Porting a PSP game means rebuilding a title you own. The camera design is the biggest change, because the PSP had one analog nub and no right stick.
開くPort a PS Vita game before the platform disappears entirely
Porting a PS Vita game means rebuilding a title you own. The rear touch pad is the one input with no modern equivalent.
開くプラットフォーマーのテンプレート
既成のプロジェクトから始めて、変更を説明するだけ。
見るすべてのゲームテンプレートを見る
既成のプロジェクトから始めて、変更を説明するだけ。
見る