kel-z / HSR-Scanner

Scanner for exporting light cone, relic, and character data from Honkai: Star Rail to JSON format.
GNU General Public License v3.0
171 stars 10 forks source link

Scanner can't seem to scan character after light cones and artifacts. #66

Open pmcochran opened 7 months ago

pmcochran commented 7 months ago

I'm using HSR Scanner beta v0.6.1 and made sure the game is in 16:9 resolution and window. Stood in a dark space and no light in the background. Scanning was going just find, but, when it gets to characters it goes the data bank instead and it abort the scan. I don't what else I need to do for characters, but i did try it with faster scanning settings. My only guess is the scanner hasn't registered the new characters, so I'm turning to you guys if got any idea. [17:57:24] > Starting scan... [17:57:24] > Scanning light cones... [17:57:30] > Quantity: 210/1500. [17:58:18] > Finished scanning light cones. [17:58:18] > Scanning relics... [17:58:24] > Quantity: 650/1500. [17:58:24] > Sorting by Rarity... (was Lv) [18:01:01] > Finished scanning relics. [18:01:01] > Scanning characters... [18:01:03] > Character total: 43. [18:01:03] > Scan aborted with error ValueError: Failed to parse character count from Data Bank screen. Got "43" instead. (Try scanning with a different in-game background, window resolution, or fullscreen/windowed mode, or increasing nav/scan delay in scanner configuration.) Honkai_ Star Rail 2_9_2024 18_04_28

kel-z commented 7 months ago

Looks like the number "40" isn't being parsed correctly from "40/43" under Character.

Could you turn Debug Mode in the scanner configure tab, scan only characters, and then go to the debug folder (it gets created in the same folder as your output directory) and send the screenshot that has "40/43" on it here? Looks like I'm gonna need to tweak the sensitivity of the image processing for that part.

kel-z commented 7 months ago

And as an extra test, does this still happen on 1600x900 resolution?

pmcochran commented 7 months ago

Here is the screenshot in 1600x900 resolution. 075655068377

I also try other methods like turning on HDR, then I tried HDR off and adjust my color settings to where the game look really dark and bright in others and it worked. However, i did notice so error in the relic part. It showed 'failed to extract level. Setting to 0.' Plus, errors for the relic rarity. I set the minimum to 4. I'm not sure if i did something wrong here, but I assume the rarity is the number of stars the relics are in. Lastly, the character traces maybe showing the wrong levels.

HSR Scan 2024-02-10_08_10_13 Log.txt Screenshot 2024-02-10 084101

kel-z commented 7 months ago

Hmm, your game looks abnormally bright. For reference, this is what my screenshots look like: 225518842017 225423580272 225500043801

Could you try turning off any colour adjustment settings that you might have?

hdaniel1 commented 6 months ago

I'm also getting this same error. Running at 1600 x 900 resolution. Here's my screenshot from the latest debug. Currently running with only characters.

183534386737

kel-z commented 6 months ago

I'm also getting this same error. Running at 1600 x 900 resolution. Here's my screenshot from the latest debug. Currently running with only characters.

183534386737

That is so strange. I'm able to parse 40/43 correctly when I save and run the exact same OCR function on that image.

It does look like that the 40 is rather close to the boundary of the image, so I'm gonna try increasing the size of the character count screenshot that the scanner takes and hopefully the numbers will get picked up properly.

kel-z commented 6 months ago

Lmk if it works or not on the latest release

hdaniel1 commented 6 months ago

Now I get the following exception:

[10:13:13] [WARN] > Failed to parse character name. Got error: not enough values to unpack (expected 2, got 1). Retrying... (5/5) [10:13:14] [ERROR] > Failed to parse character name. Got '' instead. Ending scan early.

Same settings as above (1600 x 900) 101304380663 log.txt

image

kel-z commented 6 months ago

That looks like a different issue now because it managed to reach the character screen. Which character does it not parse correctly? (could you send the screenshot of the character name)

PureIsntHere commented 5 months ago

I had this same issue, I was able to fix it by disabling HDR on my monitor. Seems the increase in brightness can cause issues with the detection

janaipakos commented 4 months ago

Adding a quick note here, I was getting 'Failed to parse level.' and errors related to having invalid values for relics. Used Debug mode and saw my screenshots were super bright. Should have read the NOTES more closely about HDR needing to be off. I feel like that should be a second bullet, instead of being in the dual monitor config bullet, but that might just be me

kel-z commented 4 months ago

I feel like that should be a second bullet, instead of being in the dual monitor config bullet

That makes sense to me. I'll do that, thanks for the suggestion!

prismatic-rose commented 1 week ago

Hi I've been having the same issue for a while, I do not have HDR enabled. It doesn't even seem to open the Databank to scan the characters? I've tried at 1600x900 and 1280x1800

[18:46:20] [INFO] > Scanning characters... [18:46:21] [DEBUG] > Locating Data Bank button... [18:46:21] [DEBUG] > Data Bank button found at (0.39114583333333336, 0.8296296296296296). [18:46:22] [INFO] > Saving 184622621094.png. [18:46:22] [INFO] > Character total: . [18:46:22] [WARN] > Failed to parse character count. Retrying... (1/5) [18:46:23] [INFO] > Saving 184623925837.png. [18:46:24] [INFO] > Character total: . [18:46:24] [WARN] > Failed to parse character count. Retrying... (2/5) [18:46:25] [INFO] > Saving 184625224597.png. [18:46:25] [INFO] > Character total: . [18:46:25] [WARN] > Failed to parse character count. Retrying... (3/5) [18:46:26] [INFO] > Saving 184626528324.png. [18:46:26] [INFO] > Character total: . [18:46:26] [WARN] > Failed to parse character count. Retrying... (4/5) [18:46:27] [INFO] > Saving 184627828470.png. [18:46:27] [INFO] > Character total: . [18:46:27] [WARN] > Failed to parse character count. Retrying... (5/5) [18:46:29] [INFO] > Saving 184629129534.png. [18:46:29] [INFO] > Character total: . [18:46:29] [FATAL] > Scan aborted with error ValueError: Failed to parse character count from Data Bank screen. Stack trace: "Traceback (most recent call last): File "services\scanner\scanner.py", line 427, in scan_characters ValueError: invalid literal for int() with base 10: ''

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "main.py", line 610, in run File "asyncio\runners.py", line 44, in run File "asyncio\base_events.py", line 646, in run_until_complete File "services\scanner\scanner.py", line 162, in start_scan File "services\scanner\scanner.py", line 432, in scan_characters ValueError: Failed to parse character count from Data Bank screen.

Screenshot of Relic: 183458857618 Last Screenshots mentioned in the Debug: 184622621094

kel-z commented 1 week ago

Hi I've been having the same issue for a while, I do not have HDR enabled. It doesn't even seem to open the Databank to scan the characters? I've tried at 1600x900 and 1280x1800

Hello! I wonder if it's because of the choice of ESC menu (cellphone) background skin. Can you try different skins and see if that fixes the problem?

prismatic-rose commented 1 week ago

Hi I've been having the same issue for a while, I do not have HDR enabled. It doesn't even seem to open the Databank to scan the characters? I've tried at 1600x900 and 1280x1800

Hello! I wonder if it's because of the choice of ESC menu (cellphone) background skin. Can you try different skins and see if that fixes the problem?

It works when I only scan my Light Cones and Characters, but when I try to scan all 3 I get: [21:04:42] [FATAL] > Scan aborted with error ValueError: Failed to parse character count from Data Bank screen. Stack trace: "Traceback (most recent call last): File "services\scanner\scanner.py", line 427, in scan_characters ValueError: invalid literal for int() with base 10: ''

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "main.py", line 610, in run File "asyncio\runners.py", line 44, in run File "asyncio\base_events.py", line 646, in run_until_complete File "services\scanner\scanner.py", line 162, in start_scan File "services\scanner\scanner.py", line 432, in scan_characters ValueError: Failed to parse character count from Data Bank screen. " (Try increasing nav/scan delay in the scanner settings, or scan with a different in-game background, window resolution, or fullscreen/windowed mode.)

I tried changing the background a couple times

kel-z commented 1 week ago

It works when I only scan my Light Cones and Characters, but when I try to scan all 3 I get:

Can you try increasing the navigation delay slider in the configure tab?