True. That’s why I mentioned in the text that the review summary score isn’t always accurate. I only count -1 for missed guru. Points are “right” score - “wrong” score. This is less surprising (and perhaps less depressing) but also less accurate.
I knew lack of perfect accuracy would bother some people, but also that being accurate would confuse some people for the reason you mentioned - it seems like score should be “right” - “wrong” even though that’s not the case.
I’ll address this in an update sometime, but for now, just be impressed by your own cleverness and noticing
I just added more details about this to the FAQ at the bottom of the post
Why does the review summary score match the reviews page but not the dashboard?
Remember when I said “I lie to you sometimes on the review summary page, but trust me it’s better that way!”. I wasn’t joking.
When you miss a burn review, the item moves back to guru not enlightened. Thus for missed guru items, you’re “real score” on the dashboard will decrease by more than 1 point.
On the reviews page however, it seemed weird and somewhat depressing to see the counter go down by several points. My goal was to make things fun and not confusing, so I opted to show the simplified ‘correct items’ & ‘incorrect items’ score. Thus far, no one has mentioned this discrepancy, so I probably got this right.
On the reviews summary page, I had to chose what to show:
A) the accurate number of points accrued or lost (which the dashboard shows)
or
B) the “answered correctly” - “answered incorrectly” score, which seems to make sense but isn’t actually accurate if you missed a burn item.
Since the choice seemed arbitrary, I chose B, because I figured few people would notice, it was easier to code and the dashboard is always accurate so there’s not much harm in a little fib here.
But… a few people have noticed, so I’ll probably address this next time I make an update to the userscript, making it accurate in a way that’s not surprising.
Well, I’ve now burned everything and, while the tooltip does correctly say 100% done, my “real” level isn’t 60 yet. I’d better get to those 0 lessons pending
Not extremely weird. Computers don’t do well with floating point numbers because of the way the number is stored in memory. It looks like 1334.4, but is probably 1334.400000000000000000001 or something. Math.floor does the rest.
Suggested fix is to always calculate with integers whenever possible.
No no, it was literally set as 1334.4.
Edit: I finally understood what you meant. Yes, it would be stored as 1334.4000244140625 in memory on single precision.
Also, 60*1334.4 == 80064.0 but 80064.0/1334.4 gives 59.9999999…
By weird, I meant “floating point operation error”. It’s weird in the sense that it’s not mathematically exact (but can of course be expected… that’s how I guessed where to look in the first place)
On the lesson quiz page, I sometimes get the following error:
Error: null has no property 'firstElementChild'
Script: 'WaniKani Real Score'
Function: showPointsOnLessonSummary
Line: 178
The error doesn’t happen all the time though, only sometimes. I think it might be related to the fact that the script can run on https://www.wanikani.com/lessson/session even though the html elements it is looking for aren’t in that page. However, I don’t think you can just disable the script on that page by removing the @match statement for it because I’ve seen instances where doing that prevents the script from running on the lesson summary page too, even though it has a different URL. Instead, maybe check the current url of the document whenever the script does anything?
I had an idea that reminded me of this script. What if you had a review-style progress bar at the top of the dashboard to indicate your progress of burning everything?
edit: I imagine this to show progress of lower SRS levels too, of course
With tampermonkey you can easily edit the script. The maximum score is at line 23. Just correct the number and save the script (File - save / save to disk). The current value is 80991 (=8999*9) - until this evening.