launcher_profiles.jsonは.minecraftにあるJSONファイルで、Minecraftのランチャー設定、プロファイル、選択したユーザー/プロファイル、キャッシュされたユーザー情報(Eメール、アクセストークンなど)が含まれている。このファイルを使用することで、古いバージョンのランチャーから新しいものへの柔軟なアップデートが可能になり、またその逆も可能になる。
一般的なファイル構成[]
launcher_profiles.jsonはJSON構造体を使用してデータを保存・取得する。主なJSONキーは以下の図で説明している。
キー | 種類 | 説明 |
---|---|---|
profiles | マップ | 全てのランチャープロファイルとその設定。 |
clientToken | 文字列 | 現在ログイン中のクライアントのトークン。 |
authenticationDatabase | マップ | ログインしているすべてのアカウント。このキーの各アカウントには、UUIDハッシュ化されたマップ(選択したユーザーを保存するために使用される)が含まれており、これにはアクセストークン、電子メール、およびプロファイル(アカウントの表示名を含む)が含まれている。 |
launcherVersion | マップ | 現在のランチャーのビルド名、形式、プロファイルの形式が含まれている。 |
settings | マップ | 全てのランチャー設定を含む |
analyticsToken | 文字列 | アナリストを追跡する最新のトークン。これらはランチャーがセッションの管理とトラッキングのためローカルで使用する。 |
analyticsFailcount | 整数 | 分析学の失敗回数(???) |
selectedUser | マップ | UUIDハッシュ化されたアカウントと現在選択されているユーザーのUUIDを含む |
すべてのマップの構造については、以下のセクションで説明する。
プロファイルの構成[]
プロファイルは、profilesセクションのマップに保存される。プロファイルの構造は以下の表で説明する。
キー | 種類 | 説明 |
---|---|---|
name | 文字列 | プロファイル名。文字、数字、句読点、空白を含むことができる |
type | 文字列 | プロファイルの種類。種類には、custom(ユーザーが手動で作成)、latest-release(最新の安定版リリースを使用)、latest-snapshot(Minecraftの最新buildを使用)がある。 |
created | 文字列 | プロファイルが作成された時刻を表すISO 8601形式の日付。 |
lastUsed | 文字列 | プロファイルが最後に使用された日付を表すISO 8601形式の日付。 |
icon | 文字列 | プロファイルメニューのプロファイルのアイコンを表すBase64でエンコードされた画像。 |
lastVersionId | 文字列 | プロファイルが対象とするバージョンID。バージョンIDは、~/versionsの各ディレクトリにあるversion.jsonで決定される。 |
gameDir | 文字列 | このプロファイルがその内容を保存するために使用するディレクトリ。 |
javaDir | 文字列 | ゲームが実行されるJavaディレクトリ。デフォルトではシステムのJavaディレクトリ。 |
javaArgs | 文字列 | プロファイルの起動引数。それらには、ゲームのパフォーマンスに具体的な経験があることがある。 |
logConfig | 文字列 | プロファイルのログ設定へのパス。以下の設定が真の場合、これはXMLファイルになる。 |
logConfigIsXML | ブール値 | ログ設定がXMLファイルであるかどうか。 |
resolution | マップ | ゲームウィンドウの起動時の解像度 |
解像度構成[]
解像度情報はプロファイルのresolution マップに保存される
キー | 種類 | 説明 |
---|---|---|
height | 整数 | ゲームウィンドウの高さ |
width | 整数 | ゲームウィンドウの幅 |
認証データベースの構成[]
認証データベースはauthenticationDatabaseセクションに保存される。以下に構造を説明する。
認証データベースは、ログインしているすべてのユーザーのUUIDハッシュ化されたキーで構成される。各ログインユーザはそれぞれ独自のキーを持ち、現在選択されているユーザーなどを保存する際に使用される。
各認証済みキーはいくつかの値で構成されており、以下の図で説明する。
キー | 種類 | 説明 |
---|---|---|
accessToken | 文字列 | ログインセッションを保存するトークン。 |
username | 文字列 | アカウントのメール。 |
profiles | マップ | アカウントのプロフィール。このマップには、アカウントのUUIDが含まれ、そのアカウントの表示名が含まれる。 |
ランチャーバージョンの構造[]
ランチャーのバージョンは、JSONファイル(launcherVersion)の独自のセクションに保存される。このファイルには、現在使用されているランチャーのビルドに関する情報が含まれている。特定のバージョンのランチャーを実行する度に、これらの値は最新のランチャーに合わせて更新される。このセクションでは、アップデートのチェックと同様、ランチャーのバージョン間の互換性を高めることができる。
ランチャーのバージョンキーについては以下で説明する。
キー | 種類 | 説明 |
---|---|---|
name | 文字列 | 現在のランチャーのビルド名 |
format | 整数 | ファイルのフォーマットバージョン |
profilesFormat | 整数 | プロファイルセクションのフォーマットバージョン |
設定の構成[]
これはファイルの中で最も重要なセクションの一つである。ランチャーから制御されるすべての設定が含まれており、settingsセクションに保存されている。すべてのオプションは下の表で説明されている。
キー | 種類 | 説明 |
---|---|---|
enableSnapshots | ブール値 | プロファイルを閲覧する際に、ゲームスナップショットのバージョンIDを含めるかどうか |
enableAdvanced | ブール値 | 新しい起動引数を追加する際に、高度なJava設定を変更することを有効にするかどうか |
keepLauncherOpen | ブール値 | ゲーム実行中にランチャーを開いたままにしておくかどうか |
showGameLog | ブール値 | すべてのゲームログを含む別ウィンドウを作成するかどうか |
locale | 文字列 | ランチャーで選択されている言語。デフォルト値はen-us。 |
showMenu | ブール値 | Minecraftのロゴの下にスライドメニューを表示するかどうか(News、Skins、Settings、Launch optionsが含まれている)。 |
enableHistorical | ブール値 | 歴史的バージョンの利用を可能にするかどうか |
profileSorting | 文字列 | プロファイルメニューでのプロファイルの並び替え方法。並び替えの種類は2種類ある: byNameとbyLastPlayed。byNameはアルファベット順に、byLastPlayedは使用した最新のプロファイルに基づいて並び替える。 |
crashAssistance | ブール値 | クラッシュが発生した際にMojangに連絡するかどうか |
enableAnalytics | ブール値 | ユーザーセッションの分析を有効にするかどうか。これは通常メンテナンスができない/ランチャーからは制御できない。 |
選択したユーザー構造。[]
選択されたユーザーセクションには、現在選択されているプロファイルと選択されたアカウントに関する情報が格納される。前述したように、アカウントはUUIDハッシュ化されたキーとして保存される。そして、使用されてここで保存される。
キーの説明は下図のようになっている。
キー | 種類 | 説明 |
---|---|---|
account | 文字列(UUID) | 現在選択されているアカウントのUUIDハッシュ化キー |
profile | 文字列(UUID) | 現在選択されているプレーヤーのUUID |
デモ版 | |||||||
---|---|---|---|---|---|---|---|
開発 |
| ||||||
技術的情報 |
| ||||||
マルチプレイ | |||||||
ゲームのカスタマイズ |