Voltar
Releases

Changelog

Atualizado em 2026-04-21

Acompanhe a evolucao da plataforma. Dividimos o changelog entre a Plataforma BrutusForge (o software self-hosted que você instala) e o Portal & Licensing (a experiencia de compra, minha conta e cobranca).

Plataformacliente self-hosted
v1.0.4039GitHub ↗
## [Redesign completo — novo site público + painel admin (Cinematic HUD)] - 2026-08-07 Reformulação visual completa do site público e do painel admin sob um único design system ("Cinematic HUD"). - **Site público novo.** Home cinematográfica com key-art dos jogos em alta, servidores com capa/mapa/população, ranking, comunidade, eventos e sorteios, perfil público de jogador, suporte, regras e changelog. - **Loja com carrinho.** "Adicionar ao carrinho" na loja e na página do produto → carrinho com controle de quantidade → checkout MercadoPago (cupom e escolha de servidor preservados). Aba "Todos" na loja. - **Painel admin redesenhado.** Drill-in por servidor com abas por jogo (status, console RCON, mods, plugins, agenda, backups, etc.) e cockpit de cluster. - **Slogan editável.** O subtítulo da marca ("SURVIVAL NETWORK") agora é editável em Whitelabel. - **Conectividade e escalabilidade.** Filas duráveis com dead-letter, reconexão automática do game-agent, pool de conexões do banco e índices — mais estabilidade sob carga. - **Novos endpoints públicos** (detalhe de servidor, perfil público, estatísticas da rede) com whitelist anti-PII. Validação: API 5233 testes, web ~2001 testes, build verde. Atualização in-place pelo auto-updater — não precisa reinstalar plugins nem reiniciar servidores. ---
v1.0.3370GitHub ↗
## [Correções de status de config + limpeza de dicas duplicadas] - 2026-07-24 - **Voting Rewards deixa de aparecer como "pendente".** As chaves de voto ficam por site (em "Sites de Voto"), então o campo "ARK-Servers.net API Key" da config do cluster virou **opcional** (era só um fallback). Com as chaves por-site preenchidas, a feature agora marca **Ativo/Configurado** corretamente. - **Tribe Log Relay: webhook central agora é opcional.** O canal de logs do bot já centraliza os tribe logs, e cada tribo pode vincular o próprio webhook via `/tlr` no jogo — então o webhook central deixou de ser obrigatório e o status não fica mais "Parcial" à toa. - **Removida a feature duplicada de "Dicas Aleatórias".** Havia dois sistemas de dicas in-game; ficou só o completo ("Dicas automáticas", com rotação/estilo/cor). O simples (dentro do Chat Bridge) foi removido. Validação: `pnpm validate` verde (API 4428 testes, Domain 103). Atualização in-place pelo auto-updater — não precisa reinstalar plugins nem reiniciar servidores.
v1.0.3369GitHub ↗
## [ASA: plugins atualizados para a AsaApi 2.02] - 2026-07-24 ⚠️ **Este update recompila os plugins C++ do ASA (ARK: Survival Ascended).** Para valer nos servidores ASA: atualize o launcher com os **servidores ASA desligados**, depois **"Atualizar todos"** os plugins e **reinicie o ASA**. - **Plugins do ASA agora são compilados contra a AsaApi 2.02** (a versão mais recente da API do ArkServerApi), saindo da 1.21. Alinha o BrutusForge com o rework de hooks/cache da API 2.x. - Ajuste interno de compatibilidade: no ASA 2.02 mudou a forma de obter o inventário do jogador (usada no "Encontrar Corpo"); atualizada nos dois jogos de forma equivalente. Build C++ ASE + ASA (18 DLLs) compilando limpo. Sem mudanças de backend/web nesta versão (é só plugin — nada entra por auto-update).
v1.0.3368GitHub ↗
## [Correção de VIP por tempo + console dos plugins mais limpo + anti-grief] - 2026-07-24 ⚠️ **Este update mexe nos plugins C++ do servidor.** Para valer: atualize o launcher com os **servidores ARK desligados**, depois use **"Atualizar todos"** os plugins e **reinicie o ARK**. - **VIP por tempo corrigido (duração).** O comando que concede grupo temporário (VIP com prazo) era enviado ao plugin Permissions em **segundos**, mas o plugin espera **horas** — então um VIP de 24h virava praticamente permanente. Agora a duração é convertida certo (24h = 24h). Vale para qualquer grupo temporário (VIP de assinatura, recompensa, etc.). - **Console do servidor muito mais limpo.** Diagnósticos repetitivos (status periódico, sincronização de config, registro de hooks/comandos, entrega item-a-item, carga de cada plugin) saíram do nível normal e agora só aparecem em modo depuração. No nível normal ficam só entradas/saídas de jogador, avisos e erros. - **Uma versão só no console.** A linha de carregamento do BrutusForge mostra a **versão do release** (ex.: 1.0.3368), em vez de números soltos por plugin. - **Mensagens de log em português.** Traduzidas as mensagens de erro/aviso que ainda estavam em inglês. - **"nivel 0" removido** da mensagem de entrada de jogador (o nível ainda não existe no instante em que o jogador entra, então o número era sempre 0 e só confundia). - **Anti-grief PvE — 2 proteções novas (configuráveis no painel, em Plugins → AntiPveGriefing):** - **Bloquear acasalamento entre tribos inimigas** — evita o exploit de breeding cruzado. - **Carência do dano offline (seg)** — tempo após o logout até a proteção de dano offline ativar (0 = imediato, como antes); evita deslogar no meio de um ataque só para ficar imune. Validação: `pnpm validate` verde (API 4428 testes, Domain 103) + build C++ ASE/ASA (18 DLLs). Limpeza interna: removidos endpoints órfãos de "cluster padrão/favorito" (o sistema já escolhe o cluster sozinho).
v1.0.3367GitHub ↗
## [Upload de capa de produto + seletor de pasta] - 2026-07-23 - **Enviar a capa do produto direto pelo painel.** No cadastro de produto, além de colar uma URL, agora dá pra **enviar um arquivo de imagem** (PNG, JPG, WebP ou GIF, até 5 MB). A capa fica guardada no seu servidor e aparece na loja; se uma imagem quebrar, a loja mostra o ícone da categoria no lugar. - **Correção do "Selecionar pasta" (importar servidor).** O botão que abre o explorador de pastas voltou a funcionar no aplicativo — o seletor passou a usar um caminho nativo mais confiável. Validação: `pnpm validate` verde (API 4427 testes, Web 1251) + revisão de segurança do upload. Atualização in-place pelo auto-updater — não precisa reinstalar plugins nem reiniciar os servidores.
v1.0.3366GitHub ↗
## [Limpeza do painel + loja mais robusta] - 2026-07-23 - **Nomes de itens mais legíveis no aviso de entrega.** O aviso de "compra entregue" agora usa nomes curados para itens comuns (ex.: "Tek Bow Alfa", "Elemento") em vez do nome técnico do blueprint. - **Loja: imagem de produto quebrada não deixa mais buraco.** Se a URL da imagem de um produto falhar ao carregar (ou estiver vazia), a loja mostra o ícone da categoria no lugar — tanto na grade quanto na página do produto. - **Cadastro de produto: removida a busca "ARK Data".** Aquele seletor gerava um ícone que nunca aparecia (link quebrado). Continue usando o campo de **URL da imagem** para a capa do produto. - **Menos controles sem uso no painel.** Removidos os botões de "cluster padrão/favorito" (o sistema já escolhe o cluster automaticamente) e a tela interna "ARK Data" (catálogo que não era usado por loja nem kits). Validação: `pnpm validate` verde (API 4418 testes, Web 1251, Domain 103) + revisão holística. Atualização in-place pelo auto-updater — não precisa reinstalar plugins nem reiniciar os servidores ARK.
v1.0.3365GitHub ↗
## [Notificação de entrega agora lista os itens] - 2026-07-23 - **A notificação de "compra entregue" mostra os itens do kit.** Além de sair uma vez só por pedido, agora o aviso (no canal de compras e no seu privado) **lista cada item entregue com nome e quantidade** (e a qualidade quando houver). Assim dá pra conferir de relance tudo que o jogador recebeu no kit, num único aviso. Validação: `pnpm validate` verde. Atualização in-place pelo auto-updater. ---
v1.0.3364GitHub ↗
## [Uma notificação por kit + nome do servidor + modal] - 2026-07-22 - **Fim do spam de "compra entregue" no Discord.** Um kit com vários itens virava várias entregas, e o bot mandava **uma notificação por item** (no seu privado e no canal de compras) — poluindo tudo com mensagens repetidas. Agora sai **uma única notificação por pedido**, quando o kit inteiro é entregue, mostrando o produto e a **quantidade de itens** entregues. Item avulso continua com uma notificação (naturalmente). - **Nome do servidor no pedido:** onde aparecia **"Servidor: undefined · Ragnarok"** agora mostra o nome certo do servidor. - **Janela "Dar produto":** não corta mais o conteúdo — a janela ganha rolagem interna e o botão **"Entregar"** fica sempre visível, mesmo em telas menores ou com produto selecionado. Validação: `pnpm validate` verde (+ migração `deliveredNotifiedAt`). Atualização in-place pelo auto-updater. ---
v1.0.3363GitHub ↗
## [Fim das tentativas em servidores desligados] - 2026-07-22 - **O sistema para de tentar aplicar coisas em servidor offline.** Quando um servidor estava desligado, o painel ficava tentando, a cada ciclo, liberar acesso VIP e sincronizar a loja nele via RCON — gerando um monte de "conexão recusada" no log sem sentido. Agora ele **pula servidores offline** e **reaplica automaticamente assim que o servidor volta a ficar online** (o VIP no próximo ciclo; a loja já reaplicava na reconexão). Menos ruído, menos desperdício. Validação: `pnpm validate` verde. Atualização in-place pelo auto-updater (não precisa mexer nos plugins). ---
v1.0.3362GitHub ↗
## [Entrega de itens do kit corrigida de verdade] - 2026-07-22 - **Os itens do kit agora chegam mesmo no inventário do jogador.** A entrega usava um comando que, por baixo dos panos, espera um número de jogador pequeno — mas recebia o SteamID (17 dígitos), que "estourava" o campo, então **nenhum item era criado**, mesmo com o jogador online. Pior: o painel marcava "Entregue" assim mesmo (só os pontos, que vão por outro caminho, chegavam). Agora a entrega **coloca o item direto no inventário do jogador** (do mesmo jeito que a loja in-game faz) e **confirma se o item foi realmente criado**. - **"Entregue" passa a ser honesto:** só marca entregue quando o item de fato entrou. Se o jogador estiver offline, aguarda ele entrar; se o item não puder ser criado (ex.: blueprint inválido), fica pendente em vez de mentir "Entregue". Validação: build C++ (ASE + ASA) verde + `pnpm validate` verde. ⚠️ Para valer nos servidores: **Cluster → Plugins & Config → "Atualizar todos" + reinicie o ARK** (o backend atualiza sozinho pelo auto-updater). ---
Portalv0.1.0licensing + checkout

v0.1.0 — Primeira venda (2026-04-21)

Portal público de licensing funcional com Stripe + MercadoPago Checkout Pro, admin interno (M2) e dashboard do cliente (M3).

Licensing

  • Emissão de JWT Ed25519 por compra, phone-home diario, HWID fingerprint, grace period de 7 dias.
  • Rate limit + HMAC-SHA256 em /api/licenses/* e webhooks MP.
  • 59 testes criticos (Ed25519, HMAC, subscription, webhook idempotency).

Checkout e renovacoes

  • Stripe subscription lifecycle: renovacao via invoice.paid, revogacao automática em customer.subscription.deleted.
  • MercadoPago Checkout Pro com BRL (PIX/boleto/cartao 12x).
  • Emails transacionais via Resend (confirmação, expiracao, revocacao, 2FA) com templates aplicados na marca.

Admin interno (portal)

  • Dashboard com MRR, gestao de licenses (revoke, estender, transferir HWID).
  • Visao de clientes e pedidos com filtros e paginacao.

Minha conta

  • Cliente acompanha licenses, transfere HWID self-service (1x/mês sem custo), abre Stripe Customer Portal.
  • Login por magic link (email) — em breve: Discord OAuth + email/senha.

Compliance e SEO

  • Páginas legais revisadas: Termos (CDC art. 49 — 7 dias arrependimento), Privacidade (LGPD art. 18 completo + DPO + transferência internacional), EULA (L1 + OFAC + indenizacao).
  • sitemap.xml, robots.txt e OpenGraph image com brand.

Proximos passos

  • Login Discord OAuth + email/senha (além do magic link).
  • Auditoria de acoes admin.
  • Reprocessamento manual de compras.
  • i18n completo (pt-BR + en-US).