L2 Market Parser

Кроссплатформенный локальный прототип для захвата нескольких окон Lineage II и сбора предметов из tooltip торгового окна.

Запуск

Нужен Node.js 20 или новее и Chrome либо Edge.

npm install
npm run dev

Открой адрес, который напечатает Vite, обычно http://127.0.0.1:5173.

На macOS браузеру потребуется разрешение System Settings → Privacy & Security → Screen & System Audio Recording. После выдачи разрешения браузер иногда нужно перезапустить.

Сценарий

  1. В разделе «Источники» нажми «Добавить окно» для каждого окна игры.
  2. В разделе «Калибровка» сделай снимок или загрузи готовый скриншот.
  3. Выдели постоянный нижний элемент продажи, например Adena + Confirm, как маркер продажи. По возможности не захватывай изменяемые числа.
  4. Выдели имя торговца в верхней панели цели.
  5. Выдели широкую область всех возможных положений tooltip, не захватывая нижний Price основного окна.
  6. Внутри tooltip обведи только постоянную надпись Price :.
  7. Отдельно выдели точную строку названия и точную строку цены. Для названия лучше использовать длинный предмет и оставить запас справа.
  8. Сохрани калибровку, нажми «Начать сбор» и вернись в игру.
  9. Наводи курсор на каждый предмет. Уникальные пары название + цена будут накапливаться в таблице.

Калибровка хранится в localStorage текущего браузера. При первом OCR Tesseract.js загружает английскую языковую модель и кеширует её в браузере.

Ограничения прототипа

  • Источники выбираются вручную после каждого обновления страницы.
  • Одна калибровка рассчитана на один масштаб интерфейса Lineage II.
  • Сбор работает, пока открыта страница прототипа и он не остановлен кнопкой «Остановить сбор».
  • Курсор перемещает пользователь, приложение не управляет игрой и не эмулирует ввод.
  • Отправки на сервер пока нет.

Проверки

npm test
npm run build
S
Description
No description provided
Readme
11 MiB
Languages
JavaScript 79.5%
CSS 14.2%
HTML 6.3%