A lightweight local latency monitor and auction house tool for Mabinogi (Erinn server). Pings all channels simultaneously and lets you search the NA auction house — all from your browser.
- TCP ping all 16 channels + Login + Housing simultaneously
- Live dashboard — latency bar, color-coded status (green / amber / orange / offline)
- Auto-ping every 30 seconds with live countdown
- Ping history sparklines — last 20 pings per channel visualized inline
- Sort by latency — click the Latency column header to rank channels
- 5 stat cards — Online, Offline, Best, Avg, and Worst ping
- Editable channel list — update IPs and ports directly in the browser, saved to
channels.json
- Search by item name on the Mabius 6 server via mabibase.com
- Autocomplete dropdown — suggestions appear as you type (debounced, cached)
- Paginated results — 20 listings per page with Prev / Next controls
- Shows item name, type (Fixed / Auction), price, owner, and end date
The AH feature uses Puppeteer to drive a headless Chrome instance rather than calling mabibase.com's API directly. When you search:
- The server launches headless Chrome and navigates to the mabibase.com search URL
- A network response listener watches for the GraphQL POST that mabibase's own frontend fires automatically
- Once captured, the response is parsed and returned as JSON — the browser is then closed
This approach piggybacks on mabibase's existing page behavior instead of reverse-engineering the API, making it more resilient to auth or CORS changes. The tradeoff is that each search spawns a full browser instance (~2–5s per query).
Node.js is a free runtime that lets you run this tool. If you've never installed it:
- Go to https://nodejs.org
- Download the LTS version (the left button)
- Run the installer, click Next through everything, leave all options as default
To check it installed correctly, open Command Prompt and type:
node --version
You should see something like v22.0.0. If you do, you're ready.
Click the green Code button on this page and choose Download ZIP, then extract it anywhere you like (e.g. your Desktop).
Or if you have Git:
git clone https://github.com/RamenFighter03/Mabi-Ping-Tool.git
Open a Command Prompt inside the folder and run:
npm install
This installs puppeteer-core, which is required for the Auction House feature.
Note: The auction house search uses a hardcoded Chrome headless shell path. If it doesn't work out of the box, run
npx puppeteer browsers install chrome-headless-shellonce to download it.
node server.js
You should see:
MabiPing running → http://localhost:7799
Open your browser and go to http://localhost:7799
That's it. The tool will start pinging all channels automatically and refresh every 30 seconds.
To stop it, press
Ctrl+Cin the terminal window.
mabi-ping/
├── server.js # Node.js server (routes, TCP ping logic, AH scraper)
├── public/
│ └── index.html # Dashboard UI (HTML/CSS/JS) — Ping + Auction House tabs
├── channels.json # Created on first save — stores custom IPs/ports
└── package.json
Default IPs are sourced from the Mabinogi World Wiki lag page. If IPs change, use the Edit Channels panel in the dashboard to update them — changes are saved locally to channels.json.
| Color | Range |
|---|---|
| Green | < 80 ms |
| Amber | 80–179 ms |
| Orange | ≥ 180 ms |
| Red | Offline / timeout |
