🎮Jogos
Os contratos de jogos permitem que você implemente um mecanismo de jogar e ganhar em torno de um jogo que você ou alguém mais implantou.
Aqui está um guia passo a passo para criar seu próprio jogo:
Criando Seu Jogo
Acesse a página de Jogos e clique no botão Criar Jogo
Preencha o formulário que aparece e valide a transação. Isso criará seu jogo. Se você planeja usar uma API para processar as pontuações de seus usuários, você deve definir a variável de endereço do contrato do jogo para o endereço primário do PaySwap (o endereço que possui o CanCan channel 1).
Marque o botão Apenas Meus para listar apenas seus jogos e encontrar o jogo que você acabou de criar mais rapidamente. Se não conseguir encontrar seu jogo, recarregue a página e tente novamente.
Configurando Seu Jogo
O próximo passo é atualizar o contrato do seu jogo. Clique no botão Painel de Controle no painel do seu contrato de jogo e em seguida no botão Atualizar Jogo. Preencha o formulário com o valor apropriado para cada parâmetro e valide a transação.
No passo seguinte, você precisa atualizar o link para jogar o jogo para que os usuários possam jogar. No menu do seu painel de controle, clique no botão Atualizar Informações e preencha o formulário com o valor apropriado para cada campo. Passar o cursor sobre o ícone de ajuda próximo a cada parâmetro permite que você leia uma descrição do parâmetro. Valide o formulário e confirme a transação.
PaySwap usa o link da API do jogo para buscar as pontuações por ID de token para que os usuários possam atualizar suas pontuações na blockchain.
Como Jogar
Aqui está um guia passo a passo para jogar jogos:
Primeiro, você precisa comprar minutos suficientes para jogar. Se você comprar 30 minutos, por exemplo, terá 30 minutos para obter e enviar uma pontuação do site do jogo. Qualquer pontuação enviada após isso não será elegível para recompensas do jogo.
Para comprar minutos, vá para o painel do seu jogo e clique no botão Ver Jogo para ir para a página do jogo. Clique no botão Cunhar novo ingresso e valide a transação para cunhar um NFT do jogo, que é necessário para jogar o jogo e reivindicar recompensas.
Após cunhar seu NFT do jogo, a última linha na imagem abaixo na página do seu jogo deve mudar de Você tem 0 ingressos para Você tem 1 ingresso(s) seguido por uma lista dos IDs de seus ingressos. Lembre-se do ID do seu ingresso, pois você precisará dele para a maioria das interações com seu jogo. Nosso ID de ingresso no exemplo abaixo é 2.
Agora podemos comprar minutos em nosso jogo, vamos comprar 30 minutos. Para fazer isso, clique no botão Jogar para Ganhar para ir ao formulário na imagem abaixo. Preencha o formulário com tokens suficientes para comprar o número de minutos que deseja adquirir e valide a transação.
Inserimos o ID do nosso NFT do jogo que é 2 e tokens suficientes para comprar 30 minutos no jogo. O texto Comprar XX Minutos muda conforme você altera o número de tokens a serem enviados.
Agora, precisamos jogar o jogo, obter uma pontuação e enviar essa pontuação antes que os 30 minutos expirem, ou teremos perdido nosso investimento. No topo da página do jogo, você pode ver um botão Jogar Jogo. Clique nele para iniciar o jogo em uma janela.
/assets/game9.png" alt="">
Você pode jogar o jogo na janela pop-up ou clicar no link no topo da pop-up para abrir o jogo em uma nova janela.
Depois de obter uma pontuação com a qual está satisfeito, como na imagem abaixo, insira o ID do seu NFT do jogo e clique no botão de envio na página do jogo.
Como visto na imagem acima, uma vez que obtivemos a melhor pontuação que pudemos antes do final dos 30 minutos que compramos, inserimos o ID do nosso NFT do jogo, que é 2, no campo apropriado na página do jogo e enviamos. Podemos continuar jogando até que os 30 minutos expirem e, se conseguirmos uma pontuação melhor, enviamos novamente para substituir a anterior.
Você pode descobrir quando seus minutos expiram inserindo o ID do seu ingresso do jogo no formulário abaixo na página do seu jogo. Em nosso exemplo abaixo, compramos nossos minutos às 19:12 (7:12 PM), então nossos minutos terminarão às 19:42 (7:42 PM); ou seja, podemos tentar até esse horário para obter uma pontuação melhor, enviando cada pontuação a cada vez para garantir.
Após o vencimento dos nossos minutos, podemos esperar pelo momento certo para processar nossa pontuação ou podemos processá-la imediatamente. Os contratos de jogos acumulam seu pote de prêmios com tokens coletados das compras de minutos e calculam os ganhos dos usuários com base em sua pontuação.
Para nosso cenário atual, o pote de prêmios do nosso jogo é de 3 USD, que você pode ver na página do jogo.
Suponhamos que tivéssemos um pote de prêmios de 1000 USD e que a soma total das pontuações obtidas no jogo pelos usuários fosse de 8000. Obtivemos uma pontuação de 800 jogando nosso jogo, então nossos ganhos seriam calculados da seguinte forma: 1000 * 800 / 8000 = 100 USD.
Se tivéssemos reivindicado nossos ganhos quando a soma total das pontuações obtidas no jogo fosse de 5000 e o pote de prêmios de 800, por exemplo, teríamos reivindicado: 800 * 800 / 5000 = 128 USD.
Portanto, decidir quando reivindicar seus ganhos é uma decisão estratégica a ser tomada, você quer reivindicar uma parte maior de um pote menor ou uma parte menor de um pote maior?
Como Reivindicar Seus Ganhos
Acesse a página de Jogos e encontre seu jogo.
Acesse o menu de controle do seu jogo e clique no botão Processar Pontuação. Você não pode preencher o formulário; você só precisa validar a transação para escrever a pontuação obtida no jogo anteriormente no contrato de jogo. O PaySwap consultará sua pontuação na API do jogo e preencherá o formulário para que você possa validá-lo.
Você deve ser capaz de ver a pontuação total do jogo atualizada com sua pontuação. O próximo passo é clicar no botão Reivindicar Recompensas no menu do painel de controle. Valide a transação para reivindicar suas recompensas e transferir seus ganhos para sua carteira. Você pode reivindicar suas recompensas imediatamente ou esperar um pouco para que o pote de prêmios fique maior com mais jogadores participando do jogo e comprando minutos. Quanto maior o pote de prêmios, mais você pode ganhar, mas isso é um pouco complicado, já que se os novos jogadores conseguirem aumentar a pontuação média do jogo, isso pode reduzir sua parte dos ganhos totais. Basicamente, você precisa escolher o momento certo para reivindicar suas recompensas: reivindicar uma parte maior de um pote menor ou uma parte menor de um pote maior?
Como Transformar Todo Jogo em um Jogo para Ganhar
Adicione um formulário no site do jogo para permitir que os usuários atualizem suas pontuações. No exemplo da imagem abaixo, os usuários podem inserir o ID do token do jogo e clicar no botão Salvar Pontuação sempre que tiverem uma pontuação com a qual estão satisfeitos, e o jogo registrará sua pontuação (salva com o nome score), bem como o horário de registro da pontuação (salvo com o nome deadline) e o horário que o usuário começou a jogar (salvo com o nome startime) no banco de dados Firebase (você pode usar qualquer banco de dados que desejar). Certifique-se de que seus jogos acompanhem o momento em que seus usuários começam a jogar seus jogos (startime), pois esse parâmetro é extremamente importante para garantir que os usuários possam registrar pontuações para os minutos do jogo que compraram. Sem isso, um usuário pode passar horas maximizando sua pontuação para um determinado jogo e, em seguida, apenas comprar 1 minuto na página do jogo no PaySwap e usar isso para registrar a pontuação. Com um parâmetro startime, seríamos capazes de detectar a discrepância entre os minutos comprados e os minutos jogados de fato.
Implante o contrato do jogo seguindo os passos acima e certifique-se de atualizar as informações do jogo com um link de API que retornará as pontuações e prazos de seus usuários.
Para nosso jogo do Mario, nosso link de API é: [https://firestore.googleapis.com/v1/projects/tiktok-a2bdb/databases/(default)/documents/c4/](https://firestore
.googleapis.com/v1/projects/tiktok-a2bdb/databases/(default)/documents/c4/1)
É isso que vamos atualizar em nosso jogo. Para buscar a pontuação e um prazo para o ID do token #1, por exemplo, o PaySwap apenas adicionará o ID do token #1 ao link da API que registramos, o que resultará em: https://firestore.googleapis.com/v1/projects/tiktok-a2bdb/databases/(default)/documents/c4/1 O PaySwap está apenas adicionando o ID do token do usuário ao seu link de API, portanto, certifique-se de que seu link de API salvo tenha uma barra final (/). Consultar esse endpoint retorna a pontuação e o prazo que foram registrados para o ID do token 1 pelo seu proprietário no seguinte formato. Certifique-se de que os parâmetros startime e deadline são salvos em segundos e não em milissegundos.
Contanto que sua API siga o formato acima e retorne um objeto com o formato acima, o sistema não deve ter problemas para atualizar as informações de pontuação de seus usuários na blockchain, o que é um passo necessário para que eles ganhem recompensas.
Parabéns, seu jogo agora tem um componente de jogar para ganhar!!! Seus usuários agora podem:
ver seu jogo na página de jogos
comprar minutos suficientes para eles fazerem suas melhores pontuações
atualizar suas pontuações para seu banco de dados centralizado
usar a plataforma PaySwap para relatar essa pontuação para a blockchain por meio de uma API que você forneceu
reivindicar seus ganhos se suas pontuações forem altas o suficiente
Last updated