Pular para o conteúdo principal
Este início rápido ajuda você a fazer sua primeira chamada à API do PlayFab usando o Defold. Antes de chamar qualquer API do PlayFab, você precisa ter uma conta de desenvolvedor do PlayFab.

Configuração do projeto Defold

SO: Este guia foi escrito para o Windows 10. Ele também deve funcionar bem em um Mac.
  1. Crie uma conta e baixe o Defold, ou entre em https://www.defold.com/ (usa Google O-Auth): https://d.defold.com/stable/.
  2. Se você ainda não concluiu o “Getting Started Tutorial” do Defold, faça isso agora.
  3. Crie um novo projeto no Defold Dashboard, conforme mostrado abaixo.
Create new Defold project
  1. Execute o Defold e carregue seu novo projeto. Você verá várias janelas parecidas com o exemplo mostrado abaixo.
Defold dashboard
  1. Atualize as configurações do projeto (Project Settings) e inclua o PlayFab nas dependências: https://github.com/PlayFab/LuaSdk/raw/master/Defold/PlayFabClientSdk.zip
Add PlayFab to dependencies
  1. Selecione: Project -> Fetch Libraries, e você verá uma nova pasta interna do PlayFab, conforme mostrado abaixo.
Project fetch libraries
  1. Crie alguns arquivos:
    • main/PfGettingStarted.gui
    • Selecione a pasta “main” -> new -> Gui File -> PfGettingStarted.gui.
    • main/PfGettingStarted.gui_script
    • Selecione a pasta “main” -> new -> Gui Script File -> PfGettingStarted.gui_script.
  2. Conecte nossa nova GUI em main.collection.
    • Selecione main.collection para abri-lo.
    • No painel Outline:
      • Selecione Add Game Object (opcionalmente, renomeie para PfGui).
        • Selecione o novo objeto, Add Component From File…
          • PfGettingStarted.gui (criado acima).
    • O painel Outline exibindo main.collection deve ficar parecido com o exemplo mostrado abaixo. Main Outline panel
A instalação do PlayFab está concluída. Este projeto ainda não está pronto para ser compilado, mas vamos corrigir isso na próxima etapa.

Configurar sua primeira chamada à API

Este guia fornecerá as etapas mínimas para fazer sua primeira chamada à API do PlayFab. A confirmação ficará visível na janela do jogo.
  1. No editor do Defold, clique duas vezes em PfGettingStarted.gui_script.
  2. Isso deve abrir o arquivo para edição de texto.
  3. Atualize o conteúdo de PfGettingStarted.gui_script conforme mostrado abaixo.
Para consultar o formato correto do objeto loginRequest neste exemplo, consulte a referência da API de LoginWithCustomID.
  1. No editor do Defold, clique com o botão direito em PfGettingStarted.gui -> Open With -> Text Editor. Infelizmente, isso altera uma configuração interna do Defold, então:
    • Abra-o novamente: clique com o botão direito em PfGettingStarted.gui -> Open With -> GUI Editor. Isso restaura o padrão normal.
    • Selecione a guia de edição de texto de PfGettingStarted.gui.
    • Atualize o conteúdo de texto de PfGettingStarted.gui conforme mostrado abaixo.

Concluir e executar

Primeiro, verifique se tudo foi salvo e selecione outra guia. Em seguida, procure marcadores ” * ” — às vezes o Defold não atualiza. Depois, compile seu jogo (Ctrl+b ou menus suspensos: Project -> Build and Launch). Você verá o seguinte texto na tela: “Congratulations, you made your first successful API call!” Para obter uma lista de todas as chamadas disponíveis da API de cliente, consulte nossa documentação de Referências de API do PlayFab. Boa programação!

Desconstruir o código

  • PfGettingStarted.gui
    • Nossas instruções para PfGettingStarted.gui visam a praticidade, não o ensino. Este arquivo é uma definição de GUI que adiciona uma caixa de texto à tela e a vincula ao nosso outro script: PfGettingStarted.gui_script. Normalmente, você NÃO editaria esses arquivos em formato de texto.
    • Para obter instruções adequadas sobre como criar widgets de GUI no Defold, leia este guia:
    • GUI scenes in Defold
  • PfGettingStarted.gui_script
    • Instruções require e configuração.
      • PlayFabClientApi permite fazer chamadas à API de cliente — é por isso que você está aqui.
      • IPlayFabHttps e PlayFabHttps_Defold:
        • Os plug-ins do PlayFab para Defold são criados sobre o PlayFab LuaSdk. A linguagem Lua não tem um módulo HTTPS adequado. Cada mecanismo de jogo que usa Lua implementa o seu próprio. Essas duas variáveis informam ao PlayFabSdk como acessar HTTPS. Você só precisa fazer isso uma vez no projeto, na primeira cena. Fora isso, é um código clichê obrigatório
    • PlayFabClientApi.settings.titleId = "144"
      • Todo projeto que usa o PlayFab deve criar um título exclusivo no site do PlayFab, que chamamos de Game Manager. Encontre seu titleId no Game Manager e substitua 144 pelo seu titleId.
    • function init(self)
      • Função do Defold — é chamada quando a GUI é inicializada.
    • local loginRequest = { TitleId = PlayFabClientApi.settings.titleId, CustomId = "GettingStartedGuide", CreateAccount = true }
      • A maioria dos métodos da API do PlayFab exige parâmetros de entrada, e esses parâmetros são empacotados em um objeto de requisição
      • Cada método da API exige um objeto de requisição exclusivo, com uma combinação de parâmetros opcionais e obrigatórios
        • Para LoginWithCustomIDRequest, há um parâmetro obrigatório CustomId, que identifica um jogador de forma exclusiva, e CreateAccount, que permite a criação de uma nova conta com essa chamada.
      • Para o logon, a maioria dos desenvolvedores vai querer usar um método de logon mais adequado
    • PlayFabClientApi.LoginWithCustomID(loginRequest, OnLoginSuccess, OnLoginFailed)
      • Isso executa a chamada à API usando a requisição e fornece funções de callback para as condições de sucesso e falha.
    • function OnLoginSuccess(result)
      • O objeto result de muitos callbacks de sucesso da API conterá as informações solicitadas.
      • LoginResult contém algumas informações básicas sobre o jogador, mas, para a maioria dos usuários, o logon é simplesmente uma etapa obrigatória antes de chamar outras APIs.
    • function OnLoginFailed(error)
      • As chamadas à API podem falhar por vários motivos, e você deve sempre tentar tratar a falha.
      • Por que as chamadas à API falham (em ordem de probabilidade)
        • PlayFabSettings.TitleId não está definido. Se você se esquecer de definir titleId para o seu título, nada funcionará.
        • Parâmetros da requisição. Se você não tiver fornecido as informações corretas ou obrigatórias para uma determinada chamada à API, ela falhará. Consulte error.errorMessage, error.errorDetails ou error.GenerateErrorReport() para obter mais informações.
        • Problema de conectividade do dispositivo. Celulares perdem e recuperam a conectividade constantemente, portanto qualquer chamada à API pode falhar aleatoriamente a qualquer momento e funcionar logo em seguida. Entrar em um túnel pode desconectar você completamente.
        • Problema no servidor do PlayFab. Como em qualquer software, podem ocorrer problemas. Consulte nossas notas de versão para obter atualizações.
        • A internet não é 100% confiável. Às vezes, a mensagem é corrompida ou não chega ao servidor do PlayFab.
      • Se você estiver com dificuldades para depurar um problema e as informações do erro não forem suficientes, visite nossos fóruns
    • local pfTestOutput = gui.get_node("pfOutput")
      • Esta é outra função de GUI do Defold. Ela busca o objeto de GUI pfOutput definido no nosso arquivo PfGettingStarted.gui e atribui a ele o texto a ser exibido ao usuário.
Última modificação em 8 de outubro de 2026