Aurkad 1.0 · código aberto · Apache-2.0

Crie mundos multiplayer persistentes.

A engine de código aberto para jogos 2D multiplayer. Pinte o mapa, escreva as regras e abra as portas: os jogadores entram pelo navegador, no computador ou no celular, num servidor que é seu.

Comece grátis
Aurkad 1.0 · trailer

Ver no YouTube

Jogadores e o Captain Brand defendem o portão de um cemitério iluminado por lanternas enquanto esqueletos se aproximam, rodando na Aurkad

Capturado na engine

2.800+
testes automatizados
25
módulos oficiais
1.000+
jogadores por instância
20 Hz
tick autoritativo

01 / Engine

Feita para as partes difíceis

As partes que costumam matar um projeto de MMO são justamente as que a Aurkad trata como infraestrutura central.

Simulação autoritativa

O servidor é dono do estado. Os clientes enviam intenções e o tick decide o que é verdade. RNG determinístico com seed mantém as execuções reproduzíveis.

tick p50 37,8 ms

Rede em tempo real

Snapshots diferenciais, estado quente e frio separados, replicação por entidade, AOI por quadtree e cadência por observador.

websocket · AOI

Regras de jogo em script

Escreva sistemas em JavaScript ou TypeScript sobre uma API tipada, com hot reload enquanto o mundo continua rodando.

tipado · hot reload

Sistemas modulares

Quests, guildas, magia, trocas, crafting e mais vêm como módulos opcionais sobre um núcleo pequeno e rigoroso.

25 módulos oficiais

Replay e auditoria

Replay determinístico, trilha de auditoria, feature flags, versionamento de schema e backup/restore para live-ops de verdade.

replay · auditoria

Ferramentas no navegador

Editores sem código para mapas, itens, NPCs, quests, loot, diálogos e o visual do jogo, além de um editor de scripts e um painel de administração, tudo no navegador.

10 tipos de conteúdo

Sob carga

Teste de carga incluído no repositório. Bots e servidor dividem a mesma máquina, então estes números são um piso.

jogadores numa única multidão
~300–350
jogadores espalhados pelo mundo
1.000+
tick p99, dentro de um orçamento de 50 ms
46,8 ms
por jogador, com 10 na tela
~12 KB/s
de memória por jogador com 1.000 online
0,22 MB
de RSS em 1 h de reconexões
−0,6 MB/h

02 / Arquitetura

Três camadas, um runtime

Seu jogo fica sobre os módulos opcionais, que ficam sobre um núcleo autoritativo e rigoroso. Cada camada pode ser trocada sem mexer na de baixo.

runtime
Node.js + WebSocket
banco
MongoDB
cliente
React + Canvas 2D
  1. 03

    Seu jogo

    Conteúdo, scripts, mapas, regras: tudo o que é específico do mundo que você lança.

    mapas · quests · scripts · assets · tema · balanceamento

  2. 02

    Módulos opcionais

    Sistemas de jogo oficiais que você ativa, substitui ou ignora.

    guildas · trocas · magia · party · crafting · iluminação

  3. 01

    Núcleo da Aurkad

    Rede, simulação autoritativa, persistência, replicação, live-ops.

    netcode · sessões · AOI · persistência · observabilidade

03 / Módulos

Sistemas, não andaimes

25 módulos oficiais. Ative o que o seu mundo precisa; tudo aqui é opcional e substituível.

Combate7

  • magia
  • PvP
  • arquearia
  • knockback
  • linha de visão
  • efeitos de status
  • pets

Social5

  • guildas
  • party
  • amigos
  • correio
  • ranking

Economia5

  • trocas
  • banco
  • leilão
  • crafting
  • conjuntos de equipamento

História4

  • quests
  • diálogos
  • cutscenes
  • conquistas

Mundo4

  • dia/noite
  • clima
  • iluminação
  • minimapa

Garantias da plataforma

Live-ops

  • feature flags
  • replay determinístico
  • RNG com seed
  • trilha de auditoria
  • analytics de jogadores

Observabilidade

  • métricas Prometheus
  • tracing distribuído
  • health / readiness
  • smoke e2e

Dados e segurança

  • backup e restore
  • versionamento de schema
  • exportação e exclusão (LGPD)
  • 2FA

Escala e alcance

  • sharding multi-instância
  • i18n

04 / Começar

Do mundo vazio ao mundo no ar

Três comandos a partir de uma pasta vazia. O Docker baixa a engine, a primeira inicialização escreve um pequeno jogo jogável em game/ e o mundo está no ar.

  1. 01

    Suba a stack

    Baixe um arquivo compose, gere um jogo inicial jogável e suba tudo com Docker. Sem clone, sem build. Endpoints de health e readiness avisam quando o mundo está no ar.

  2. 02

    Crie conteúdo no navegador

    Pinte mapas ortogonais ou isométricos, monte quests, ajuste tabelas de loot, escreva diálogos e mude o visual da interface com editores sem código ligados à instância em execução.

  3. 03

    Defina as regras do jogo

    Escreva o comportamento em JavaScript ou TypeScript tipado sobre a API da engine e faça hot reload sem derrubar as sessões.

# bash ou zsh, a partir de uma pasta vazia
$curl -LO https://github.com/christianaurichzm/aurkad/releases/latest/download/compose.yml
$echo "ADMIN=yourname" > .env
$docker compose up -d

Depois abra https://localhost e cadastre o nome de admin que você escolheu. Requer Docker com o plugin Compose. Num servidor, aponte um domínio para ele e o Caddy obtém um certificado de verdade.

05 / Origem

Por que a Aurkad existe

Quero que a Aurkad ajude as pessoas a transformar um tema que importa para elas num mundo online que outros possam aproveitar.

Christian Aurich Zanettini Martins · Criador da Aurkad

Em 2008, aos 8 anos, eu queria transformar minha imaginação num mundo online que outras pessoas pudessem explorar. Muitos MMORPGs que eu jogava eram pay-to-win; eu era uma criança sem dinheiro para jogos, e essa frustração me deu mais um motivo para criar o meu.

Comecei com o Elysium Diamond e o Eclipse Origins, engines escritas em Visual Basic 6. O editor bastava para fazer um jogo, mas eu queria recursos no núcleo, então abri o código-fonte. Com o tempo, escrevi minha própria engine em VB6, mantive um servidor no ar e liderei sua comunidade.

Anos depois, já trabalhando como Lead Software Engineer, voltei à minha antiga engine como hobby e como teste do que eu tinha aprendido. Ao longo de dois anos, eu a reconstruí entre o trabalho e outros projetos: o VB6 no Windows deu lugar a TypeScript, contêineres e clientes no navegador via WebSocket, com simulação autoritativa e mapas distribuídos entre instâncias de servidor.

O nome

Aur vem de Aurich, meu sobrenome, e de aurum, ouro em latim. Kad ecoa arcade.

Seu servidor. Suas regras. Construa o mundo que você quiser.

Livre e de código aberto sob a Apache-2.0. Seus mapas, artes, scripts e módulos não carregam nenhuma obrigação da licença: mantenha-os fechados e venda-os.

Suporte, integração ou um módulo sob medida? contact@aurkad.com