2022/11/4未明、VRChatのサーバー負荷軽減のためShow AvatarおよびHide Avatarの設定がローカルストレージ化されました。
この設定はパソコン内に保存され、同期されることはありません。
現在はサーバーからローカルストレージへの移行の経過措置期間であり、2022/11/11頃にはこの措置も終了します。
そのため、現在VRChatをプレイしているプレイヤーがこの設定を維持するには2022/11/11頃までにPCでログインする必要があります。
設定ファイルの場所
ローカルストレージ化された後、Show AvatarとHide Avatarの設定は次の場所に保存されています。
%UserProfile%\AppData\LocalLow\VRChat\VRChat\LocalPlayerModerations
設定は次のファイル名で保存されます。VRChatにログインするユーザーIDごとに1ファイルが生成され、保存されます。
usr_********-****-****-****-************-show-hide-user.vrcset
ファイルフォーマット
中身はテキストファイルのため、テキストエディタでの閲覧や修正ができます。
ファイルフォーマットは次のようになっています。1行ごとに、1人のShow AvatarとHide Avatarの設定が書き込まれています。
1行あたり67バイトの固定長ファイルとなっています(改行文字は含みません)。
usr_********-****-****-****-************ 004
usr_********-****-****-****-************ 005
各行の最初の64バイトで、ユーザーIDを表現します。ただし、現在のVRChatのユーザーIDは40バイトであるため、残りの24バイトは空白(20h)でパディングされています。
公式ドキュメント上、ユーザーIDはUTF-8でエンコードされるとされていますが、ASCII文字列で表現できる範囲内ですので関係ありません。
次の3バイトで、相手に対して起こしたアクションを定義します。10進数で、先頭は0でパディングします。
現時点では、次の2つが定義されています。
004:Hide Avatar
005:Show Avatar
ファイルはASCIIフォーマットで、CRLF(0Dh0Ah)で改行されます。
UTF-8であったとしても、BOM(Byte order mark)はありません。
公式ドキュメントに沿って表現した場合、次のようになりますので参考にしてください。
<key> UTF-8 encoded key
VRChatのユーザーIDを、40バイトで表現します。
<padding> ‘ ‘ (padded by spaces up to 64)
ユーザーIDを表現して、64バイトに満たなかった24バイト分を半角スペースでパディングします。
<value> 3 bytes, human-readable decimal, 0-prefixed (e.g. 127, 004, 012)
ユーザーIDに対して行ったアクションを表現します。3桁の10進数で表現され、先頭は0埋めします。
<newline> “\r\n”
ファイルの改行文字です。CRLFで改行します。
公式ドキュメント
ローカルストレージに保存される設定の詳細については、公式ドキュメントをご覧ください。