Games · Devlog #01 · projeto pessoal
Ecos de Aether
A Ruína do Véu
Um RPG de fantasia por turnos no navegador, em pixel art e multiplayer, onde o Véu entre mundos rachou e os inimigos aprendem por reforço num laboratório NetLogo antes de chegar ao jogo em C#.

O gancho
Comecei pelo que me incomoda em muitos RPGs: o chefe final é só um monstro com mais vida e um script previsível. Em Ecos de Aether, a aposta é outra. Os inimigos não fingem inteligência: eles aprendem.
Em muitos jogoso dragão tem 10.000 HP e um script.
Aquio dragão tem uma política treinada.
Em muitos jogoso NPC é um balão de fala.
AquiDarkover e Kemancouver jogam pelas mesmas regras que você: arena, loja, missões e presença no mapa.
Por trás disso existe um laboratório invisível em NetLogo, onde espécies inteiras lutam milhares (às vezes milhões) de vezes no escuro. O que sobra não é cutscene: é um JSON de Q-values que o runtime .NET importa como instinto de combate. Não é “IA no slide”, é arquitetura de aprendizado costurada à lore.
Aetherion não precisa de mais um monstro com barra de vida maior. Precisa de adversários que lembram como você venceu ontem.
— das notas de design
Capturas de tela
Exploração em visão de cima, em pixel art, com outros jogadores no mesmo mapa. Clique numa imagem para ampliar; dentro dela, as setas ← → trocam de captura e Esc fecha.




O mundo: Aetherion
Por séculos, o Véu, uma barreira forjada por magos e guerreiros antigos, separou o mundo mortal do Vazio. O Véu rachou. Das fissuras saem criaturas esquecidas, florestas adoecem, mortos despertam com a memória pela metade e sombras aprendem a usar nomes humanos.
A ordem das Sentinelas do Véu sumiu depois da primeira grande ruptura. O jogador carrega uma Marca ligada a ela, que lateja perto das fissuras como um instrumento afinado no silêncio errado.
O tom é de fantasia sombria leve: heroísmo, mistério, magia antiga, sacrifício, esperança e humor na hora certa. Sem gore e sem conteúdo adulto: a classificação é Livre (L).
Glossário de bolso
Véu
A fronteira que protegia tudo. Agora é cicatriz.
Fenda
A ruptura por onde o Vazio respira.
Aether
Energia residual do Véu: combustível de magia e de presságio.
Eco
Resto de consciência ou criatura que repete padrões de combate.
Marca
A herança das Sentinelas gravada no corpo do herói.
No lore, um Eco não é só um monstro: é memória combatente. No código, a metáfora fica perfeita para políticas treinadas, padrões que sobreviveram a milhares de mortes simuladas e voltaram ao mundo vivo.
Lugares
Nada de “área 1, área 2”. Cada lugar tem nome próprio e direção de arte, e o mapa-múndi e os mapas de diagnóstico já existem como arte pronta.
A vila
Ruas de pedra, casas com placas e oficinas, a Casa dos Artesãos e gente andando de um lado para o outro. É aqui que a missão “Ecos na Estrada dos Sussurros” começa: encontrar Mira na Estrada dos Sussurros.
Caverna dos Ecos
A entrada fica do lado de fora da muralha, perto do Arsenal da Guarda. Lá embaixo há galerias vulcânicas, pontes sobre o magma e o cristal do Santuário Oculto. Nos níveis profundos você não está sozinho: agentes andam pelo mesmo grid.
Salas particulares
Um canto só seu, com cama, lareira, baú e estante. O próprio jogo resume: “descanso seguro · canal privado”. A da captura é a de Sazinho.
Legenda do mapa
- Valebruma · cidade sob tempestades púrpuras; ponto de partida, forja, cura, fofoca e medo
- Lago Espelhado · água que devolve o que você não quer ver
- Santuário Oculto · trilha e silêncio ritual
- Bosque Enfermo · verde corrompido, bestas e espíritos que pedem cura ou fogo
- Minas de Ferro Negro · túneis, armadilhas e Grothar, o Coração da Mina
- Torre de Arken · puzzles, grimórios, autômatos e Seraphine: enfrentar ou redimir
- Fortaleza da Fenda · o cerco final contra Malachar, o Arauto da Fenda
- Caverna dos Ecos · descidas sob Valebruma: andares de magma, pontes e cristais
Jogar junto: grupos, missões e combate
O mapa é compartilhado: a presença dos jogadores é sincronizada em tempo real com SignalR, e o HUD mostra o seu grupo e quem está online na área. Nas capturas, dá para ver os nomes sobre os personagens, o painel do grupo e o botão de sair, além dos controles de toque.
Encontrar Mira na Estrada dos Sussurros (0/1)
→ Estrada dos Sussurros
Arco 1: a cadeia de missões
- PrólogoA Noite das Cinzastutorial sob ataque; a Marca desperta
- Cap. 1Estrada dos Sussurrosemboscadas, escolha moral e um posto abandonado das Sentinelas
- Cap. 2O Bosque Enfermocura, mini-chefe e um fragmento rúnico
- Cap. 3As Minas de Ferro NegroGrothar
- Cap. 4A Torre de ArkenSeraphine: lâmina ou misericórdia
- Cap. 5A Fortaleza da FendaMalachar e três finais
Flags narrativas estáveis (SavedBlacksmith, SeraphineSpared, ArtifactPreserved…) fazem o epílogo lembrar o que você fez, não só o nível que você farmou. São três finais:
Origens, classes e facções
- Três origens: Guardião de Valebruma (dever e defesa), Estudioso Errante (mana, grimório e perguntas perigosas) e Sobrevivente das Fronteiras (agilidade, pragmatismo e um mapa rasgado). Nenhuma é melhor no papel; cada uma muda o primeiro cheiro do mundo.
- Guerreiro, movido a Fúria: corpo a corpo, posturas e provocação. Caminhos: Guardião, Berserker e Mestre de Armas.
- Mago, com mana e Ressonância, que recompensa sequências (o Aether gosta de ritmo). Caminhos: Piromancia, Criomancia e Arcano.
- Facções: Sentinelas do Véu (um fantasma histórico), Guarda de Valebruma, Culto da Fenda, Mercado Errante e Arquivo de Arken.
Combate por turnos que se explica
Dano, loot, ouro e XP nunca nascem no cliente: trapaça morre na porta. O log e os tooltips explicam por que você sangrou. Fogo contra pele que derrete, gelo contra sangue quente, resistência que pune a magia preguiçosa.
A dificuldade vai de História a Normal, Veterano e Pesadelo (pós-arco). E Pesadelo não é “+200% de vida”: é padrão melhor, foco no alvo vulnerável e gestão de recurso.
Agentes que aprendem
O bestiário tem duas filosofias. Slimes, ratos e goblins baixos usam IA fixa: regras e probabilidade, honestas e baratas (“HP baixo → cura”). Já orcs, elementais, dragões e The Architect usam IA treinável: ninguém entrega a eles a regra “se HP < 20%, cure”. Eles descobrem sozinhos, por recompensa e punição, ou morrem tentando, milhões de vezes, longe dos olhos do jogador.
Do laboratório NetLogo para o C#
- O jogo em C# define atributos, skills e regras.
- O NetLogo, em modo de treino, roda milhares ou milhões de batalhas sem animação.
- O agente observa um estado discretizado: faixa de HP, distância, MP, status…
- ε-greedy: explora bastante no começo e cada vez menos depois.
- Atualiza
Q(s,a) ← Q + α [r + γ max Q(s′,a′) − Q]. - Exporta um JSON por espécie ou por chefe.
- O
PolicyImporter(.NET) escolhe a ação em tempo de jogo, por argmax ou softmax.
O estado canônico usa a mesma string no simulador e no jogo:
- Memória por espécie: goblins comuns compartilham uma Q-table, o Goblin King tem a dele e cada chefe carrega a própria política.
- Self-play com arquivo: versões antigas (V1…V10) ficam guardadas para o agente não virar especialista em derrotar só a si mesmo de ontem.
- Currículo: oponente simples → intermediário → classes diversas → equipamentos → estratégias → combate aleatório → adversários também treinados.
- Fraqueza paga, resistência custa: no treino, explorar fraqueza elemental dá recompensa. O chefe não precisa de diálogo para parecer esperto; ele aprendeu que Fireball em golem de pedra é burrice cara.
Habitantes, não só inimigos
Darkover
Jogador-NPC autônomo. Usa DarkoverBrain com Q-learning tabular e os mesmos serviços que você (batalha, loja, missão, viagem). Aparece no mapa e pode ser recrutado.
Kemancouver
Explorador e memória do mundo: explora, conversa e compartilha fatos pelo AgentKnowledgeBridge.
Diálogo entre agentes
Um orquestrador com Ollama local dá voz ao mundo, com qualidade auditada e fallback offline.
Ecoeterno
Bot de farm que roda um loop HTTP de verdade (combate, loja, missões) e mantém o servidor sob pressão contínua: um teste de carga vivo. O nome junta eco e eterno: é o eco que nunca para de repetir.
Darkover não trapaceia: tem identidade e personagem próprios e segue o ciclo tick → política → executor → recompensa (ΔXP, ouro, missão, sobrevivência e novidade, menos a morte). Quando termina o arco, entra em modo Curiosity: o fim do conteúdo vira começo da vagância inteligente.
The Architect
O inimigo mais inteligente do sistema inicial, no nível 100: várias fases, escolha de alvo, buffs e debuffs, fraquezas, economia de recurso, combos, reação a padrões, invocação e terreno. Foi treinado contra Warrior, Mage, Tank, Healer, Assassin, Archer e Hybrid, não contra um único build de laboratório.
Stack e ferramentas
A parte de que mais me orgulho é o ferramental. Como todo herói precisa de equipamento, aqui vai o inventário:
- Arma principalASP.NET Core MVC 8 · Razor · SignalRCamada web, com presença no mapa em tempo real.
- GrimórioDomínioEntidades, enums e exceções: as regras de fantasia escritas como código.
- EscudoGameEngineCombate com autoridade do servidor, progressão e IA.
- ArmaduraEF Core · IdentityInfraestrutura: persistência, identidade, seed e auditoria.
- Tomo arcanoNetLogo 6 + extensão tableTreino de combate por Q-Learning, com export em JSON.
- AnelPolicyImporterRuntime de política: argmax ou softmax.
- FamiliarBackgroundServices · Ollama (opcional)Agentes com políticas persistidas.
- LanternaCanvas/JS · Web AudioCliente do mundo, com VFX de qualidade adaptável e respeito a prefers-reduced-motion.
Mochila de ferramentas
- Estado canônico idêntico no simulador e no jogo
- Arquivo de self-play (V1…V10)
- Currículo de treino em 7 degraus até The Architect
- Métricas de win-rate e de convergência
AgentKnowledgeBridgepara memória compartilhada- Diálogo de agentes com qualidade auditada e fallback offline
- Bot de farm como teste de carga contínuo
- Mapa-múndi e mapas de diagnóstico
- Flags narrativas estáveis para o epílogo
- Story bible e GDD
A solução se divide em EchoesOfAether.Domain, GameEngine, Application, Infrastructure e Web. Os pilares de engenharia: autoridade do servidor, combate legível, narrativa distribuída, duas identidades fortes e extensibilidade (novas classes, áreas e capítulos sem reescrever o motor).
Diário de bordo e roadmap
Ecos de Aether está em desenvolvimento ativo. Não é um AAA lançado; é uma visão que eu já consigo executar, com lore, simulação e runtime no mesmo fio. Sem datas por enquanto: é projeto pessoal, e o ritmo é o do Aether.
Já forjado
- Story bible e GDD
- Combate
- Seed de inimigos
- Presença multiplayer no mapa
- Agentes de RL
- Laboratório NetLogo
- Arte de mapas
Próximas missões
- Fechar o Arco 1, do Prólogo à Fortaleza da Fenda
- Dificuldade Pesadelo, depois do arco
- Suporte a controle (joystick/gamepad) planejado
- Arco 2, a partir do final “Fenda Contida”
Meta de conteúdo do Arco 1
Planejado, não entregue: é o tamanho que o arco deve ter.
- áreas
- 12
- missões
- 25
- NPCs
- 20
- inimigos
- 30
- mini-chefes
- 6
- chefes
- 3
- itens
- 80
- equipamentos
- 30
- skills
- 30+
- finais
- 3
Pergaminhos de bolso (frases do projeto)
RPG onde a dificuldade tem currículo.
Inimigos que treinaram fora do mapa.
Companheiros que usam a mesma API que você.
Pesadelo não é HP. É política.
Curtiu o devlog, ou quer trocar ideia sobre jogos, simulação ou aprendizado por reforço?
Me escreva