Publique um jogo no marketplace
Um jogo de marketplace é um jogo que você constrói uma vez e qualquer um pode embutir: você publica um repositório público no GitHub, a plataforma o indexa, e os usuários o alcançam pelo seu id de jogo sem envolvimento seu. Esta é a ponta oposta de um jogo personalizado, que só você pode usar e que você mesmo hospeda. Esta seção é o guia detalhado de construir e publicar o caminho de marketplace.
Se você só quer um jogo para as suas próprias chaves de site, você quer desenvolvimento de jogo personalizado em vez disso. Venha aqui quando quiser distribuir um jogo a cada usuário Caputchin.
O pipeline inteiro
Cada caixa mapeia para uma página nesta seção:
| Peça | O que é | Página |
|---|---|---|
| O jogo | Um bundle JS autossuficiente construído contra o SDK de jogo que roda no iframe em sandbox do widget. | Construir um jogo de marketplace, Referência do SDK |
| O manifesto | Um caputchin.json na raiz do repositório descrevendo o jogo, seus presets e seu bundle. | O manifesto caputchin.json |
| O contrato de replay | Um run(seed, trace) -> verdict determinístico que o servidor reexecuta para chegar à decisão autoritativa. | O contrato de replay |
| O kit de engine | Um kit de autoria opcional que produz um run conforme a partir de um reducer simples. | O engine-kit |
| Publicação | Marque o repositório com uma tag, o indexador o descobre e o fixa, opcionalmente automatize com CI. | Publicar no marketplace |
Reproduzível vs não reproduzível
A ideia mais importante deste caminho: um jogo de marketplace pode proteger a verificação só se for reproduzível no servidor. Quando o indexador ingere seu jogo ele roda uma autoverificação de replay: ele carrega seu artefato run headless em um isolate selado e confirma que ele produz um veredito válido.
- A autoverificação passa → o jogo é reproduzível: a rodada de um jogador real é reexecutada no servidor para chegar à decisão, então o jogo pode proteger uma chave de site.
- A autoverificação falha → o jogo mostra Não reproduzível. Ele ainda é listado e ainda embutível, mas só como UX (não um portão de segurança) até você publicar uma versão que passe. Sites já em uma versão reproduzível anterior continuam rodando aquele instantâneo exato.
É por isso que o determinismo não é um polimento opcional: ele é a linha entre um jogo que pode guardar uma chave de site e um que é meramente decorativo.
Como um jogo de marketplace difere de um jogo personalizado
| Jogo de marketplace | Jogo personalizado | |
|---|---|---|
| Quem pode embuti-lo | Qualquer um, pelo id de jogo | Só você |
| Hospedagem | Fixado pela plataforma do seu GitHub / npm | Você hospeda o bundle (game-src) |
| Esquema de personalização | Declarado em caputchin.json | Declarado no painel |
| Artefato de replay | Indexado do run do manifesto | Enviado no painel |
| Descoberta | Marketplace navegável | Nenhuma |
Por onde começar
Se você nunca construiu um jogo Caputchin, leia Construir um jogo de marketplace de cima a baixo, depois O contrato de replay. Quando estiver pronto para publicar, siga Publicar no marketplace. O kit de engine é opcional e pode ser pulado por completo.
Veja também
- Construir um jogo de marketplace: o tutorial de construção.
- O contrato de replay: o que torna um jogo reproduzível.
- Publicar no marketplace: marcar com tag, indexar, automatizar.
- Desenvolvimento de jogo personalizado: a alternativa auto-hospedada, só-suas-chaves.