Skip to main content
Glama

latam-market

Ferramentas para o mercado de jogadores do Ragnarok Online LATAM (FREYA e NIDHOGG): o inventário inteiro de um personagem a partir de um replay, uma busca no catálogo do jogo e uma lista de favoritos com preço e alerta consultados direto no site oficial.

🔗 https://mercado.latam-tools.com.br

Sem cadastro, sem login, sem servidor. Licença MIT.

O que é

Um site estático. Tudo roda no navegador de quem usa:

  • Inventário de replay — escolha o .rrf e a própria página lê inventário, carrinho de mercador, equipamento e, quando a janela foi aberta durante a gravação, os armazéns do Kafra e do clã. O arquivo nunca sai do seu computador: a leitura é feita com o rrfparser ali mesmo, sem upload. Cada item vem com nome, slots e categoria do catálogo do jogo, que é baixado uma vez e fica em cache.

  • Busca no catálogo — o catálogo inteiro do jogo, por nome ou ID, com filtro por tipo e por onde equipa. Favorite item por item ou todos os resultados de uma vez. Não consulta o site do mercado.

  • Favoritos com preço e alerta — a lista mora no navegador, e a consulta de preço também: uma aba auxiliar aberta no site oficial do mercado, acionada por um bookmarklet (o favorito Conectar latam-market), consulta os itens do seu navegador e do seu IP.

    • Atualizar todos os preços consulta a lista inteira; itens de nome parecido saem numa consulta só (uma busca por "Zangão" traz as três cartas de Zangão).

    • Os itens com alerta são checados sozinhos a cada 5, 10, 15, 30 ou 60 minutos, e o aviso chega no celular pelo ntfy.

    • As consultas respeitam o limite por IP do site: uma por vez, 5 s entre elas, no máximo 30 a cada 15 minutos. Se o site bloquear (HTTP 429) ou pedir a verificação do Cloudflare, a tela mostra na hora e as consultas param sozinhas até poder voltar.

    • Limpar favoritos esvazia a lista, com a opção de manter os itens que têm alerta.

    Instruções detalhadas moram na interface, no "i" ao lado do título de cada aba.

Ninguém do outro lado guarda preço, replay ou lista de favoritos: não existe outro lado.

Related MCP server: mcp-server-runescape

API e MCP: aposentados em 2026-09-15

Até essa data um servidor coletava o mercado do site oficial a cada 10 minutos, guardava o histórico e respondia preço por uma API REST e por um servidor MCP. O site oficial pôs proteção contra robôs da Cloudflare na frente do mercado, e a coleta feita por servidor ficou bloqueada de vez.

A API pública (/api/v1/*) e o MCP foram desligados e não voltam. A busca no catálogo e a leitura de replay, que ainda eram rotas do servidor, passaram para o navegador, e o servidor deixou de existir. Quem integrava com eles não tem substituto aqui; o catálogo em pt-BR continua publicado pelo ragassets.

O roteiro manual da migração (projeto no Pages, domínio, arquivamento do histórico e desligamento da VM) está em infra/DESLIGAMENTO.md.

Rodando localmente

Precisa de Node 22 e pnpm.

pnpm install              # na raiz; web/ é membro do workspace
pnpm --filter web dev     # a interface em http://localhost:5173

Não há backend para subir: o predev gera o catálogo a partir de data/latam-items.json e o Vite serve o resto.

Comando

O que faz

pnpm --filter web dev

Interface com recarga automática

pnpm --filter web build

Build de produção em web/dist

pnpm --filter web test

Testes da interface

pnpm --filter web typecheck

Tipos

pnpm test

Testes de tools/

pnpm sync:items

Atualiza data/latam-items.json a partir do ragassets

Rode pnpm sync:items depois de uma atualização do cliente do jogo, quando um item novo não aparece na busca. O arquivo é versionado: o diff dele é a revisão da atualização.

Estrutura

web/     o site inteiro (React + Vite): interface, leitura de replay, conexão com o mercado
         e o gerador do catálogo — detalhes em web/README.md
data/    latam-items.json, o catálogo do cliente do jogo em pt-BR (fonte do build)
tools/   scripts de manutenção: sync do catálogo e anúncio de novidades no Discord
infra/   o roteiro do desligamento da VM

Deploy

Push na main → GitHub Actions (.github/workflows/deploy.yml) → Cloudflare Pages.

O workflow roda typecheck, testes da raiz e do web/, o build (que gera o catálogo), confere que o dist tem index.html, _headers e os três JSON do catálogo, e publica com wrangler pages deploy no projeto latam-market. Os cabeçalhos de cache moram em web/public/_headers. Quando a versão do package.json muda, o mesmo workflow anuncia as novidades no Discord.

A migração da VM para o Pages teve passos manuais únicos, registrados em infra/DESLIGAMENTO.md.

Limites conhecidos

  • O retrato de um replay é do início da gravação. Itens pegos ou gastos durante a gravação não aparecem.

  • O armazém só existe no replay se a janela foi aberta durante a gravação. Ele não está no arquivo: o servidor do jogo manda a listagem no instante em que a janela abre. Sem isso, o armazém aparece como "não aberto" — que não é o mesmo que "vazio".

  • Alguns containers de item do .rrf ainda não foram identificados e aparecem à parte. Já se supôs que fossem o armazém; não são — numa gravação com as duas janelas de armazém abertas eles vêm vazios do mesmo jeito.

  • O alerta de preço depende do navegador. A checagem roda enquanto a aba Favoritos e a aba do mercado estão abertas (podem ficar em segundo plano). Fechou uma, parou.

  • A consulta usa o seu IP. O limite do site é por IP, e a sua própria navegação no mercado gasta da mesma cota. Um bloqueio (429) vale também para o site no seu navegador.

  • O agrupamento de consultas supõe que a busca do site casa por trecho do nome, como sempre casou. Se um grupo vier com a página cortada, o item é consultado sozinho em seguida.

  • O preço é do item base. O site não expõe refino, cartas nem encantamentos dos anúncios.

Créditos

Catálogo de itens em pt-BR extraído do cliente do jogo pelo ragassets, que publica as tabelas do cliente em assets.latam-tools.com.br/raw/. A leitura de .rrf usa o rrfparser, portado do projeto irmão latam-ro-calc (simulador de dano), que por sua vez segue o Rrf-Parser do Tokeiburu.

Projeto não-oficial, feito para a comunidade. Sem vínculo com a Gravity ou a Gnjoy.

Licença

MIT.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    This MCP server allows you to interact with the EVE Tycoon API to retrieve market data, price statistics, order books, and historical pricing information for EVE Online items across different regions.
    6
    4
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    An MCP server for querying your Pricempire CS2 trader portfolio, providing total value, category breakdowns, top holdings, cross-marketplace price comparison, and price history.
    5
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Remote MCP server providing live Warframe data via Warframe.market and WarframeStat.us APIs. Enables price checks, worldstate lookups, item/drop searches, and more through natural language tools.
    207 npm
    MIT