Skip to content

kvnzrch/argentum-online-atlas-viewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Argentum Online Atlas Viewer

Visor web de los mapas de Argentum Online 0.13.x (cliente VB6 original) con fidelidad de renderizado al motor original (color-key, anclajes Center=1, 3 pasadas L1+L2 / objetos+npcs+L3 / L4) y conectividad multi-mapa por teleports inferidos.

➡️ Demo: https://kvnzrch.github.io/argentum-online-atlas-viewer/

Features

  • 317 mapas conectados (BFS + colisión bidireccional desde los .inf).
  • Render canvas2d ~equivalente al motor VB6.
  • 692 cuerpos / 237 cabezas / 476 NPCs / catálogo completo de objetos.
  • Tooltip flotante por celda (NPC / Obj / Teleport).
  • Click derecho: teleport si lo hay, recentrado libre si no.
  • Toggle por capa (1–4) y categorías (NPCs, Cabezas, Objetos, Teleports, Bloqueado, Nombres).
  • Zoom continuo (1e-6 → 4×); minimaps regenerados en WebP.

Stack

  • packages/ao-extract — Node + TypeScript: parsea .map/.inf/.dat del cliente, Personajes.ind/Cabezas.ind (binario), *.ini (cp1252) y emite JSON normalizado en packages/ao-viewer/public/data/.
  • packages/ao-viewer — Vite + TS + canvas2d. Carga lazy por mapa, cache LRU de sprites, crossOrigin=anonymous para color-key sobre jsDelivr.

Sprites: jsDelivr (sin re-hostear)

Los PNGs (~230 MB) se sirven directamente desde el repo upstream ao-libre/ao-cliente vía jsDelivr:

https://cdn.jsdelivr.net/gh/ao-libre/ao-cliente@master/Graficos/<N>.png

Esto evita re-subir gráficos y mantiene la atribución al proyecto original. Override en build con VITE_SPRITES_BASE (ej. para apuntar a un mirror).

Desarrollo local

git clone https://github.com/kvnzrch/argentum-online-atlas-viewer.git
cd argentum-online-atlas-viewer
npm ci

# (opcional) Symlinks a un checkout local de ao-cliente para servir
# los gráficos desde el filesystem en lugar de jsDelivr:
ln -s /ruta/a/ao-cliente/Graficos          packages/ao-viewer/public/grh
ln -s /ruta/a/ao-cliente/Graficos/MiniMapa packages/ao-viewer/public/minimaps
# Y en .env.local:
echo 'VITE_SPRITES_BASE=/grh' > packages/ao-viewer/.env.local

npm run -w @argentum/ao-viewer dev

Re-extracción de datos (opcional)

Solo si querés regenerar los JSON desde una copia del cliente:

npm run -w @argentum/ao-extract extract -- /ruta/a/ao-cliente

Deploy

Push a main → GitHub Actions builda y publica en GitHub Pages (.github/workflows/deploy.yml). El base se setea automáticamente al nombre del repo.

Licencia

AGPL-3.0, igual que el upstream ao-libre/ao-cliente. Los assets gráficos son propiedad del proyecto Argentum Online y se sirven desde su repositorio oficial.

Créditos

  • Argentum Online — Pablo Ignacio Márquez (autor original) y la comunidad.
  • ao-libre/ao-cliente — código y recursos del cliente 0.13.x.

About

eso, para ver el mundo completo del argentum online

Topics

Resources

License

Stars

2 stars

Watchers

0 watching

Forks

Contributors