Giter Site home page Giter Site logo

steve1316 / genshin-inventory-scanner-android Goto Github PK

View Code? Open in Web Editor NEW
9.0 3.0 3.0 11.93 MB

This mobile application serves as a native way to scan your inventory in GOOD (Genshin Open Object Description) format for websites like Genshin Optimizer to parse data from for the mobile video game, Genshin Impact.

JavaScript 0.23% Java 4.41% Kotlin 76.82% TypeScript 14.69% Python 3.85%
android format genshin good impact inventory java javascript kotlin opencv optimizer python react react-native scan scanner tool typescript website

genshin-inventory-scanner-android's Introduction

Genshin Inventory Scanner for Android

GitHub commit activity GitHub last commit GitHub issues GitHub pull requests GitHub

This mobile application serves as a native way to scan your inventory in GOOD (Genshin Open Object Description) format for websites like Genshin Optimizer to parse data from for the mobile video game, Genshin Impact. It utilizes a combination of OpenCV and Tesseract OCR methodologies to accomplish this task. A similar implementation for PC platforms only is Inventory Kamera.

Features

  • Scan for the following data on the Inventory screen:
    • Weapons including Level, Refinement, and Ascension.
    • Artifacts including Level, Main Stat, and Sub Stats.
    • Materials including Character Development Items.
    • Characters including their Level, Ascension, Constellations, and Talents.
  • Output all scanned data into a JSON file in GOOD format to be used in other third-party websites for parsing and optimization purposes.

Requirements

  1. Android Device or Emulator (Nougat 7.0+)
    1. Tested emulator was Bluestacks 5 with the following settings:
      • P64 (Beta)
      • 1920x1080 (Landscape Mode as emulators do not have a way to tell the bot that it rotated.)
      • 240 DPI
      • 4+ GB of Memory
    2. If using a physical Android device:
      • Device used to test this application was at 2400x1080 in Landscape Mode. Width should be the key factor but I am currently unsure if the height is a factor or not.

Instructions

  1. Download the latest .apk from the Releases section on the right side of this page right under the About section and then install the application.
  2. Head to the Settings page of the application. Fill out your Traveler character name if you want the bot to detect and scan the Traveler.
  3. Enable any of the scan(s) and then head back to the Home page and press the Start button in order to start giving permissions for the MediaProjectionService and the AccessibilityService.
  4. After permissions are set, head back to the Home page and then press the Start button again to display the floating overlay button.
  5. Now head to the inventory page in the game by pressing on the "backpack" / "bag" icon near the top right of the screen.
    • It is very highly recommended to put the floating overlay button to the bottom right corner of the screen.
  6. Finally, you can press on the floating overlay button to start. Log messages can be viewed afterwards back on the Home page after the process finishes including where the actual log file was saved to.

Technologies used

  1. MediaProjection - Used to obtain full screenshots
  2. AccessibilityService - Used to dispatch gestures like tapping and scrolling
  3. OpenCV Android 4.5.1 - Used to template match
  4. Tesseract4Android 2.1.1 - For performing OCR on the screen
  5. AppUpdater 2.7 - For automatically checking and notifying the user for new app updates

genshin-inventory-scanner-android's People

Contributors

steve1316 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

genshin-inventory-scanner-android's Issues

java.lang.NumberFormatException when numbers have a comma in ImageUtils

Description

A user had reported that they were getting java.lang.NumberFormatException 4 seconds into program execution and could not proceed any further.

thunderbird_be5Yw9QL46

Relevant code:

// Set application locale to combat cases where user's language uses commas instead of decimal points for floating numbers.
Configuration config = this.getResources().getConfiguration();
Locale locale = new Locale("en");
Locale.setDefault(locale);
this.getResources().updateConfiguration(config, this.getResources().getDisplayMetrics());

should have prevented this type of thing from occurring across the app but will need to double-check now.

Artifact scanning issue

While scanning for artifact in bag not scrolling long enough.so after 3 rows of scanning 4th row is not recognised since it's not scrolled up fully plz fix the issue.due to this I had to scroll manually which causes.json file is not created only log files r created

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.