Andrewthe13th / Inventory_Kamera

Scans Genshin Impact characters, artifacts, and weapons from the game window into a JSON file.
MIT License
652 stars 114 forks source link

"Invalid refinement level" on R5 weapons #482

Open ghGhost-cs opened 8 months ago

ghGhost-cs commented 8 months ago

Current Behavior

Scanner doesn't properly recognise the R5 weapon refinement and doesn't include them, because it thinks that refinement level is at -1. Scanner continues to run and outputs all weapons, except those with invalid refinement level into the JSON file. I have this happening to all R5 weapons in my inventory when using the scanner. Weapons with other refinement levels don't have this issue. Delay for scanning is set to "Slow"

Expected Behavior

The scanner to correctly exports the data

Reproducing a Behavior

Device OS

Windows 10

Genshin Impact Version

4.1

Inventory Kamera Version

1.3.11

Screen resolution, screen mode, and UI scale

3840x2160 screen with 175% scaling. game in 3200x1800 windowed borderless (-screen-fullscreen 0 -popupwindow)

Additional notes and remarks

My theory is that different color of the box with number in it causes OCR to give up. My suggestion would be to read the text right to it, as it doesn't change the color and has the same information

Evidence

image

Unable to validate information for weapon ID#14

Invalid refinement level

Weapon ID: 14

Name: TheViridescentHunt

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Diona

Unable to validate information for weapon ID#15

Invalid refinement level

Weapon ID: 15

Name: Rust

Rarity: 4

Level 90

Refinement: -1

Locked: False

Unable to validate information for weapon ID#16

Invalid refinement level

Weapon ID: 16

Name: SacrificialBow

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Fischl

Unable to validate information for weapon ID#17

Invalid refinement level

Weapon ID: 17

Name: TheStringless

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Venti

Unable to validate information for weapon ID#18

Invalid refinement level

Weapon ID: 18

Name: FavoniusWarbow

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Gorou

Unable to validate information for weapon ID#20

Invalid refinement level

Weapon ID: 20

Name: SolarPearl

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: ShikanoinHeizou

Unable to validate information for weapon ID#21

Invalid refinement level

Weapon ID: 21

Name: TheWidsith

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Lisa

Unable to validate information for weapon ID#22

Invalid refinement level

Weapon ID: 22

Name: TheCatch

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: RaidenShogun

Unable to validate information for weapon ID#23

Invalid refinement level

Weapon ID: 23

Name: FavoniusLance

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Zhongli

Unable to validate information for weapon ID#26

Invalid refinement level

Weapon ID: 26

Name: SerpentSpine

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: AratakiItto

Unable to validate information for weapon ID#27

Invalid refinement level

Weapon ID: 27

Name: PrototypeArchaic

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Noelle

Unable to validate information for weapon ID#28

Invalid refinement level

Weapon ID: 28

Name: CinnabarSpindle

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Albedo

Unable to validate information for weapon ID#31

Invalid refinement level

Weapon ID: 31

Name: IronSting

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: KukiShinobu

Unable to validate information for weapon ID#33

Invalid refinement level

Weapon ID: 33

Name: SacrificialSword

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Xingqiu

Unable to validate information for weapon ID#34

Invalid refinement level

Weapon ID: 34

Name: FavoniusSword

Rarity: 4

Level 90

Refinement: -1

Locked: False

Equipped character: Kaeya

Unable to validate information for weapon ID#35

Invalid refinement level

Weapon ID: 35

Name: FadingTwilight

Rarity: 4

Level 80

Refinement: -1

Locked: False

Unable to validate information for weapon ID#36

Invalid refinement level

Weapon ID: 36

Name: OathswornEye

Rarity: 4

Level 80

Refinement: -1

Locked: False

Unable to validate information for weapon ID#38

Invalid refinement level

Weapon ID: 38

Name: SacrificialGreatsword

Rarity: 4

Level 70

Refinement: -1

Locked: False

Equipped character: Chongyun

Unable to validate information for weapon ID#39

Invalid refinement level

Weapon ID: 39

Name: LionsRoar

Rarity: 4

Level 70

Refinement: -1

Locked: False

Equipped character: Keqing

Unable to validate information for weapon ID#40

Invalid refinement level

Weapon ID: 40

Name: DodocoTales

Rarity: 4

Level 60

Refinement: -1

Locked: False

Equipped character: Klee

Unable to validate information for weapon ID#41

Invalid refinement level

Weapon ID: 41

Name: EyeOfPerception

Rarity: 4

Level 60

Refinement: -1

Locked: False

Unable to validate information for weapon ID#42

Invalid refinement level

Weapon ID: 42

Name: MissiveWindspear

Rarity: 4

Level 60

Refinement: -1

Locked: False

Unable to validate information for weapon ID#43

Invalid refinement level

Weapon ID: 43

Name: PrototypeStarglitter

Rarity: 4

Level 60

Refinement: -1

Locked: False

Unable to validate information for weapon ID#44

Invalid refinement level

Weapon ID: 44

Name: LuxuriousSeaLord

Rarity: 4

Level 50

Refinement: -1

Locked: False

Equipped character: Diluc

Unable to validate information for weapon ID#45

Invalid refinement level

Weapon ID: 45

Name: FavoniusCodex

Rarity: 4

Level 40

Refinement: -1

Locked: False

Unable to validate information for weapon ID#46

Invalid refinement level

Weapon ID: 46

Name: MailedFlower

Rarity: 4

Level 40

Refinement: -1

Locked: False

Unable to validate information for weapon ID#49

Invalid refinement level

Weapon ID: 49

Name: IbisPiercer

Rarity: 4

Level 20

Refinement: -1

Locked: False

Unable to validate information for weapon ID#52

Invalid refinement level

Weapon ID: 52

Name: PrototypeAmber

Rarity: 4

Level 20

Refinement: -1

Locked: False

Unable to validate information for weapon ID#53

Invalid refinement level

Weapon ID: 53

Name: SacrificialFragments

Rarity: 4

Level 20

Refinement: -1

Locked: False

Unable to validate information for weapon ID#56

Invalid refinement level

Weapon ID: 56

Name: DragonsBane

Rarity: 4

Level 20

Refinement: -1

Locked: False

Unable to validate information for weapon ID#58

Invalid refinement level

Weapon ID: 58

Name: Rainslasher

Rarity: 4

Level 20

Refinement: -1

Locked: False

Unable to validate information for weapon ID#59

Invalid refinement level

Weapon ID: 59

Name: ToukabouShigure

Rarity: 4

Level 20

Refinement: -1

Locked: False

Unable to validate information for weapon ID#62

Invalid refinement level

Weapon ID: 62

Name: Rust

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#63

Invalid refinement level

Weapon ID: 63

Name: Rust

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#64

Invalid refinement level

Weapon ID: 64

Name: SacrificialBow

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#74

Invalid refinement level

Weapon ID: 74

Name: TheWidsith

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#76

Invalid refinement level

Weapon ID: 76

Name: FavoniusCodex

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#77

Invalid refinement level

Weapon ID: 77

Name: FavoniusCodex

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#82

Invalid refinement level

Weapon ID: 82

Name: DragonsBane

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#88

Invalid refinement level

Weapon ID: 88

Name: FavoniusGreatsword

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#89

Invalid refinement level

Weapon ID: 89

Name: FavoniusGreatsword

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#94

Invalid refinement level

Weapon ID: 94

Name: LionsRoar

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#99

Invalid refinement level

Weapon ID: 99

Name: TheFlute

Rarity: 4

Level 1

Refinement: -1

Locked: False

Unable to validate information for weapon ID#101

Invalid refinement level

Weapon ID: 101

Name: ThrillingTalesOfDragonSlayers

Rarity: 3

Level 90

Refinement: -1

Locked: False

Equipped character: Sucrose

Unable to validate information for weapon ID#102

Invalid refinement level

Weapon ID: 102

Name: BlackTassel

Rarity: 3

Level 90

Refinement: -1

Locked: False

Equipped character: YunJin

Level 1

Refinement: -1

Locked: False

Preflight Checklist

Cupcak3 commented 4 months ago

This issue is a bit old. Can you please let me know if this still occurs in the latest version?

ghGhost-cs commented 1 month ago

Hi, wasn't looking into this issue thread after few month and only now noticed. I still have this exact issue on my system with latest version of the game, graphics drivers and tool in question. No modifications to the game or system are made that would affect output image.

ghGhost-cs commented 2 weeks ago

@Cupcak3 Finally had time to look into this issue as it was still bothering me. It was still happening to me even in the latests version. Issue was occuring on line 338 of WeaponScrapper as GenshinProcesor.AnalyzeText was returning empty string when was given refinement level 5. My first guess was to set argument of numbersOnly to true, but it would only lead the code being stuck in a loop and not allowing anything to be scanned at all past first few weapons. I can't find any other code that uses this argument and should probably be just removed entirely. Then I was trying different pageMode values and SingleChar fixed an issue and all weapons are now parsing properly. If you can push this fix it would be amazing and finally resolve my long running issue with refinement level 5 scans. Thanks