[iOS] Mobile AlliCrab for WaniKani

Ah, understood. In that case, it could be similar to the problem reported by @Chellykins above (which I unfortunately have not yet had time to look at).

What the app does is use the earliest unlocked_date for the current-level radicals and kanji, and uses that as the level start date. As a cross-check, you can use @rfindley’s most excellent stats site at https://www.idigtech.com/wanikani/#progress and see whether that gives you the expected start date. If the site is correct and the app is wrong, it’d be a great help if you could mail me your API key so I can investigate.

Another broken Time in Level here. App says 12+ but it’s more like 2. Will mail my key.

I’m sorry but there’s no meaning+reading review mode? I’m not minimizing any effort you’ve put in this app cause it’s really great but that’s like the first thing I would implement before all those custom scripts.
Are you guys seriously using this app with hundreds of reviews?
If I’m missing something here please tell me

If you are doing reviews with meaning and reading together on your computer, you are already using a custom script. That functionality is not built into WaniKani, so it is a custom script, just like the ones currently included in the app.

Based on your comment, I assume you’re not aware of the wrap up button. It is built into the website, meaning it is available on the desktop version of the site as well as any mobile apps. When you click the wrap up button (it looks like a clock), you will review only 10 more items (some of which you may have already started). This ensures that you don’t have any partially done reviews and allows you to do them in smaller chunks.

You are right, i did not know about the wrap button and I thank you for that. I know it’s not a built in feature of wk but not knowing of the wrap button I couldn’t possibly think that one was using wanikani without said script. Thanks again!
That’ll keep me using this app (the other one isn’t giving me review alert so I uninstalled it) but it’s still a bit weird not having meaning then reading.

@Chellykins @StevePaget Thank you both for providing your API keys. I’ve had a look at the data and I can see what’s causing the issue. In determining the level start date, I’m considering the earliest unlock date for both radicals and kanji, and for some reason the unlock dates for kanji have become much earlier than the level start date whereas I don’t think that was the case before. The radical start dates all look reasonable, so I’ll change the app for the next version to only consider kanji unlock dates if there are no radicals (I think there’s one level where that’s the case). That should resolve the issue.


@cplaverty Could it be from items that they unlocked and then were moved to a later level? I think @rfindley doesn’t check the first unlocked item to avoid issues like that on his stats site. Maybe he has a specific recommendation to avoid this issue.

Top of my list is xMunch’s Reorder Ultimate, which will provide the option of a meaning+reading mode. This is pretty much the number one request I get from people, and it’s something I have been making very slow progress on for a very long time. There are a number of reasons why it’s been delayed, but I do consider it high priority.

When I consider a start date for a level, I exclude any unlock dates which are earlier than the shortest time to guru a single item from the previous level’s start date (i.e. 3 days 10 hours for a non-accelerated level) to try and compensate for moved items. All the radicals had unlock dates within a millisecond of each other. However, the kanji unlock dates were all over the place, and none of them matched the radical dates. I can only assume the kanji unlock dates are now the dates the component radicals were gurued.

As @seanblue said, there are ALL KINDS of problems with using radical and kanji dates.

  • Items that were moved will have weird dates. This sounds like the problem you are experiencing.
  • Until just recently, the dates around the paywall are all messed up. E.g. if you subscribed at level 3, your level3 and level4 unlocked_dates would all be the same.
  • A bit farther back in time, there was a similar problem with all of the levels that don’t have radicals.
  • Because of the combination of several of those bugs, it is literally impossible to calculate the true date of some levels. You can only calculate an educated guess.

I just recently rewrote the level-up date calculation on my stats site. You’re welcome to look at the [code] if you want. The relevant code is in the process() function starting on line 212.

So I just did a quick check on 杯, which I just learned today. The unlocked_date is December 21, 2016, one week after I unlocked the last radical it depended on. I also thought the unlock date was based on when you did the lesson. A breaking change to the API like this would almost certainly be a bug. Assuming we’re remembering correctly, it’s probably time to check with @viet or @oldbonsai and see if this changed recently.

While rewriting my level-up detection code, I found the following strange case for one user:

They reached level 57 on Aug 1, 2017
Their level 58 kanji have unlocked_dates ranging from May 3, 2016 to Mar 14, 2017.

I don’t even know where to begin in explaining that one!

My algorithm throws out all of their kanji dates, and ends up estimating a date based on the most frequent unlocked_date of their level-57 vocab.

Thank you!

Like @cplaverty and I were saying, it seems to be setting the kanji unlock date to when you guru’d all the required radicals, without taking into account the level the kanji is unlocked or when you did the lesson. That has to be a bug in the API, right?

I reread some prior emails with Viet (Dec 2015), and I think you’re at least partly right about how it’s working. Until now, I was interpreting his description a bit differently.

Basically, a script runs daily, looks at all items (up to your next level) to see if their prerequisites are met (or can be met within 1 day??). If so, they are added to your queue for possible unlocking. This is the “creation_date” in the backend, but they still don’t show up in your API data until you do the lesson. At that time, the creation_date was equivalent to the unlocked_date. But he proposed changing it so that the unlocked_date would be updated to the current time when you level-up. And that fixed a bug that we were seeing at the time.

But now it seems something changed, at least temporarily, because of the situation I described above. But I would expect to see it on more than one level if this was an ongoing thing.

I’ll be patient then, thank you

I’m having a similar problem. I levelled up 2 days ago but your app tells me that my current level time is 10 days plus.

This is fixed in the beta version. I’ll probably release this version next month, as there are a couple more features I want to add before releasing.

1 Like

Is one of those features adding the Close But No Cigar script? :slight_smile:

Also, I have a more general question. Have you considered allowing people to put in their own scripts, even if just by copying and pasting?

Are you looking for any contributions with this project at this time?