XGameSave no seu PC. Não a use enquanto o título estiver em execução. Fazer isso pode deixar os Game Saves do título em um estado indeterminado.
Esta ferramenta requer que o pacote do título esteja instalado no seu PC. Esse requisito é diferente do console, onde a implantação pelo Visual Studio é suficiente para que o xbstorage interaja com os Game Saves do título. Você pode gerar pacotes para PC com o makepkg e instalá-los com o wdapp install.
Se você precisar gerenciar os dados do
XGameSave no console, deverá usar o Gerenciar o armazenamento do XGameSave no console (xbstorage.exe).xgamesaveutil reset
xgamesaveutil reset for chamado, os salvamentos existentes na nuvem serão sincronizados para o dispositivo.
Há duas formas de especificar o local dos dados a serem excluídos:
- Se o parâmetro /context for usado e o nome de arquivo especificado por <infile> tiver uma seção ContextDescription preenchida corretamente, esse arquivo será usado para especificar o PFN e o SCID de destino.
- O PFN e o SCID podem ser especificados parcial ou totalmente por meio de parâmetros de linha de comando, que têm precedência sobre os respectivos elementos do PFN e do SCID especificados no arquivo de entrada.
Exemplos
xgamesaveutil import
XGameSave:
- Se o parâmetro /context for usado e o nome de arquivo especificado por <filename> tiver uma seção ContextDescription preenchida corretamente, esse arquivo será usado para especificar o PFN e o SCID de destino.
- O PFN e o SCID podem ser especificados parcial ou totalmente por meio de parâmetros de linha de comando, que têm precedência sobre os respectivos elementos do PFN e do SCID especificados no arquivo de entrada.
Exemplos
No PC, esta ferramenta grava os dados importados diretamente no armazenamento local. Ela não sincroniza com a nuvem antes ou depois da importação e não carrega automaticamente os dados importados na nuvem. Os dados são carregados na próxima vez que o título for iniciado e adquirir o provedor de Game Saves (por exemplo, chamando XGameSaveInitializeProvider).Isso é diferente da ferramenta do console (
xbstorage), que sincroniza com a nuvem antes de importar e carrega os dados imediatamente depois.XGameSave em um estado indeterminado.
Se /replace não for especificado, os contêineres especificados no arquivo de entrada serão apagados antes que os blobs especificados
no arquivo de entrada sejam gravados. Os contêineres do espaço de armazenamento do XGameSave que não forem especificados no arquivo de entrada não serão alterados.
xgamesaveutil export
XGameSave para o arquivo especificado por outfile. O arquivo XML contém os dados exportados. Para ver um exemplo, veja xgamesaveutil generate. Para obter detalhes sobre o formato XML, veja Formato de arquivo de importação e exportação.
Há duas formas de especificar de onde exportar os dados do XGameSave:
- Se o parâmetro /context for usado e o nome de arquivo especificado por <infile> tiver uma seção ContextDescription preenchida corretamente, esse arquivo será usado para especificar o PFN e o SCID de destino.
- O PFN e o SCID podem ser especificados parcial ou totalmente por meio de parâmetros de linha de comando, que têm precedência sobre os respectivos elementos do PFN e do SCID especificados no arquivo de entrada.
Exemplos
No PC, esta ferramenta lê os dados diretamente do armazenamento local. Ela não sincroniza com a nuvem antes de exportar. Os dados exportados refletem o que estiver atualmente no disco, o que pode não incluir os dados mais recentes da nuvem.
XGameSave em um estado indeterminado.
xgamesaveutil delete
XGameSave.
Para fazer isso corretamente, você deve:
- Verificar se o título não está em execução
- Executar
xgamesaveutil deletepara excluir os dados locais imediatamente. - Iniciar o título e adquirir o provedor de Game Saves. Isso permite que o
xgamesaveutilexclua automaticamente os dados da nuvem.
XGameSave:
- Se o parâmetro /context for usado e o nome de arquivo especificado por <infile> tiver uma seção ContextDescription preenchida corretamente, esse arquivo será usado para especificar o PFN e o SCID de destino.
- O PFN e o SCID podem ser especificados parcial ou totalmente por meio de parâmetros de linha de comando, que têm precedência sobre os respectivos elementos do PFN e do SCID especificados no arquivo de entrada.
Exemplos
XGameSave especificado, o sistema tenta sincronizar com a nuvem usando a mesma
lógica executada quando o espaço de armazenamento é adquirido por um app em execução.
Se um app com o mesmo SCID primário estiver em execução, essa operação poderá causar uma condição de corrida e deixar o conteúdo do
espaço de armazenamento do XGameSave em um estado indeterminado.
xgamesaveutil generate
Exemplos
XGameSave por usuário, altere o nó Account no arquivo XML para algo como o exemplo a seguir.
Formato de arquivo de importação e exportação
O arquivo XML usado com os comandos import, export e generate tem o formato mostrado no exemplo a seguir.XGameSave para um usuário, poderá usar
<Account msa="user@example.com"/> em vez de <Account machine="true"/>. Caso contrário, o contexto pode ser especificado
na linha de comando para a importação.
Os blobs e contêineres devem ter os nomes correspondentes atribuídos a eles pelo jogo ou app para o qual o arquivo está
sendo gerado.
O conteúdo de cada blob deve ser uma cadeia de caracteres envolvida em uma marca CDATA, gerada chamando
CryptBinaryToStringW com o sinalizador CRYPT_STRING_BASE64, fornecendo os dados desse blob como uma matriz de bytes
brutos. Por outro lado, os dados do blob podem ser convertidos de volta chamando CryptStringToBinary para fornecer a cadeia de caracteres
anteriormente criptografada. Para ver um exemplo de uso dessas duas funções, veja
CryptBinaryToString returns invalid bytes.
