Closed gecko655 closed 9 months ago
I'm getting the same error again when trying to upload .json files manually
ref: https://github.com/frozenpandaman/s3s/issues/155#issuecomment-1834636581
the Salmon Run job details query needs to be changed to the new value
This PR solves it.
@Zekrom101 you mean you've executed s3s with this patch and got the same error special_uses: Special Uses is invalid. unknown special unknown
?
I heard that a bug (in SplatNet) was causing "the new special to become Trizooka" right after the season switchover. Maybe uploading the current data instead of the saved JSON will solve the problem.
@gecko655 Yes same error: Error uploading job. (ID: Q29vcEhpc3RvcnlEZXRhaWwtdS1hNWg2ZGltYW9wcnFjaWFuZ25tbToyMDIzMTEzMFQwNDI3MjlfMTYyYThmMGUtZWFhYi00YzE2LWJjMjQtYjg2NzBhODhmMjc1) Message from server: { "error": { "waves": "special_uses: Special Uses is invalid. unknown special \"unknown\"" } }
Interestingly the "\" weren't there before, didn't notice that changed Edit: for some reason this comment doesn't show the other flipped "/" 🤔 That's what's meant to be between the "" "waves": "special_uses: Special Uses is invalid. unknown special /"unknown/""
@fetus-hina the Json file that failed in this example does not contain Trizooka but correctly has "Triple Splashdown" in it. I saved these files because I was playing a lot when the original error occured after the specials got added, and didn't want to lose what was 50+ games ago that wasn't uploaded yet
Umm, that's strange... Can you open the file "s3s.py" in your PC and confirm this source code is in it around line no. 1000?
Especially, these 2 lines should be in it to fix:
20017: "teioika",
20018: "ultra_chakuchi"
I directly copied the code, line 1000 is
20012: "kanitank",
Just to be clear, it successfully uploaded the last 50 games I had after your change.
Just the saved unuploaded Json files which had the new specials got this error
Error uploading job. (ID: Q29vcEhpc3RvcnlEZXRhaWwtdS1hNWg2ZGltYW9wcnFjaWFuZ25tbToyMDIzMTEzMFQwNDI3MjlfMTYyYThmMGUtZWFhYi00YzE2LWJjMjQtYjg2NzBhODhmMjc1) Message from server: { "error": { "waves": "special_uses: Special Uses is invalid. unknown special \"unknown\"" } }
I understand your situation. So, the problem is that you cannot upload salmon run result stored in your PC before some time.
Before the some time, Splanet3 app API returns wrong specials "trizooka" and you seemed to save such wrong data to JSON files. After some time (I don't know when exactly it is), Splanet3 app API returns the right specials.
Currently, you played more than 50 games and you cannot fetch the results from Splanet3. So, I'm afraid that only thing you can do is to amend the JSON data to correct specials (You have to remember which specials you used in each play, including those of your allies....) and upload again.
Thanks, this worked for me uploading directly from SplatNet.
Before the some time, Splanet3 app API returns wrong specials "trizooka" and you seemed to save such wrong data to JSON files. After some time (I don't know when exactly it is), Splanet3 app API returns the right specials.
* **some time** is probably around 2023-12-01 08:00am JST, according to Twitter search
FWIW that may not be entirely true. Even though SplatNet 3 did display the image for the wrong special for a while, in my JSON data exported during that time the weaponId
property does seem to contain the correct value 20017
for the new special (Kraken) which means the patched s3s should have no problem translating the special weapon code, at least in theory... (I didn't test it.)
@Zekrom101 check lines 1002-1004 and 1135-1136 and make sure they all match this patch.
I managed to change the files, there was enough information to just change the IDs and names Thanks for all the help! 👍
I heard that a bug (in SplatNet) was causing "the new special to become Trizooka" right after the season switchover. Maybe uploading the current data instead of the saved JSON will solve the problem.
I can confirm this bug, I have 3 battles where this happened. However, the weaponId of the special (20017 and 20018) are correct. I don't know how s3s works but if it only goes for the weaponId and ignores the name / image of the special, there should not be an issue.
The IDs of the player's special were indeed correct, the problem was the IDs of the used specials in the waves, I had to change the IDs of those, for Triple Splashdown for example its "U3BlY2lhbFdlYXBvbi0yMDAxOA==". Not sure if the name or images were important to change, but it definitely worked after changing the used specials' IDs
Thanks a ton! Traveling right now without a computer so sorry I haven't been able to follow the discussion above. Looks like this is ready to get merged as a fix for SR.
So I put in the new 20017 and 20018 specials and got this traceback:
Traceback (most recent call last): File "/home/runner/SPLATOON-3/s3s/s3s.py", line 2085, in <module> main() File "/home/runner/SPLATOON-3/s3s/s3s.py", line 2053, in main check_if_missing(which, blackout, test_run, skipprefetch) # monitoring mode hasn't begun yet File "/home/runner/SPLATOON-3/s3s/s3s.py", line 1514, in check_if_missing fetch_and_upload_single_result(id, noun, isblackout, istestrun) File "/home/runner/SPLATOON-3/s3s/s3s.py", line 1431, in fetch_and_upload_single_result post_result(result, False, isblackout, istestrun) # not monitoring mode File "/home/runner/SPLATOON-3/s3s/s3s.py", line 1227, in post_result payload = prepare_job_result(results[i]["data"], ismonitoring, isblackout, overview_data, prevresult=prevresult) File "/home/runner/SPLATOON-3/s3s/s3s.py", line 1140, in prepare_job_result special_uses[special_key] += 1 # increment value of the key each time it's found KeyError: 'teioika'
Yeah I made sure to add the specials to the list after line 1135 never mind it uploads!
Added teioika (kraken royale) and ultra_chakuchi (triple splashdown) to specials in salmon run.
I tested on my account and found that stat.ink already accepts these new specials
Fixes: https://github.com/fetus-hina/stat.ink/issues/1258