A tool that detects in-game elements and extracts text using YOLO and EasyOCR, displaying the price of items directly on screen without interrupting gameplay.
example_3.mp4
- Capture screen
- YOLO model detect regions (e.g., text class)
- Apply EasyOCR to cropped regions
- Process text to send it to WFM API
- Render price of items on top of the game
Install Python < 3.12 and Git.
- Clone this repo
git clone https://github.com/BernardoEsc/pl-in-relics.git && cd pl-in-relics
- Install libraries
pip install -r requirements.txt
- Go to
C:\Users\UserName\pl-in-relics\and runpl-in-relics.bat. - The first time, choose a language.
- Press "0" to get the price.
- If you want to change the language, run
change_language.bat.
The model (YOLOv8) was trained on images of opened relics, where you must choose an item.
- Detects:
- Items
- Formas
- Their text regions
The model has three classes, but only one is used (text of items and formas) ._.
EasyOCR is used to extract the text. Supports all languages of WFM Api.
- 한국어: ko
- Русский: ru
- Deutsch: de
- Français: fr
- Português: pt
- 简体中文: ch_sim
- 繁體中文: ch_tra
- Español: es
- Italiano: it
- Polski: pl
- Українська: uk
- English: en
NOTE: ch_sim and ch_tra use English text, so you must use both languages, ch and en, for proper operation.
The extracted text must contain the item's name. This is processed to send a request to the API https://api.warframe.market/v2/orders/item/{slug}.
NOTE: slug is the item's name
The response provides a list of all orders for an item from users who were online within the last 7 days. This is processed to get the median price of the item. Then, it's displayed on the screen.
For more details about the API, refer to the documentation