mrdepth / Neocom

Neocom iOS Application
https://www.facebook.com/groups/Neocom
GNU Lesser General Public License v2.1
107 stars 29 forks source link

[Neocom II] Skills Not Showing #72

Closed colcrunch closed 6 years ago

colcrunch commented 6 years ago

Selecting Skills, then Skill Browser, then under the "My" tab, almost all skills are missing. It appears to show only the last skill that was completed.

thegilm commented 6 years ago

There might be an even bigger problem: https://imgur.com/gallery/nQPSP

colcrunch commented 6 years ago

@thegilm 2 different ESI endpoints, so likely not related to one another. (i.e probably deserves its own issue)

jesta777 commented 6 years ago

I have the same issue. To be precise; I can see my training queue and it seems to be updating and up to date. However the ‘My’ list of training skills was empty, which is wrong. Today it has starting showing the skill I just completed training, but still no other completed skills. The ‘All’ skills list shows all the skills (afaik), but all are shown as no levels trained. Which is also incorrect. The displays for the other skill list ‘Can Train’ is the same, so incorrectly show empty skills where levels 1-4 are already completed.

jesta777 commented 6 years ago

I should also add that on the accounts screen, under the name of my character, is a small line of text;

The operation couldn’t be completed. (EVEAPI.ESIError error 1.)

FrazJ commented 6 years ago

I am also experiencing this problem. Noticed this problem when navigating Market to a ship, and loookig at the required skills; all of which would show as needing to be train despite having already trained some.

Given that Neocom hasn’t been updated, I imagine this issue is on CCPs end. Either the API has changed in some way or is currently down

packetman commented 6 years ago

Well I could be wrong, but based on my research the ESI route "GET /characters/{character_id}/skills/" payload has changed from:

{
  "application/json": {
    "skills": [
      {
        "skill_id": 1,
        "skillpoints_in_skill": 10000,
        "current_skill_level": 1
      },
      {
        "skill_id": 2,
        "skillpoints_in_skill": 10000,
        "current_skill_level": 1
      }
    ],
    "total_sp": 20000
  }
}

to:

{
  "application/json": {
    "skills": [
      {
        "skill_id": 1,
        "skillpoints_in_skill": 10000,
        "trained_skill_level": 4,
        "active_skill_level": 3
      },
      {
        "skill_id": 2,
        "skillpoints_in_skill": 10000,
        "trained_skill_level": 1,
        "active_skill_level": 1
      }
    ],
    "total_sp": 20000
  }
}

So I think it is a matter of NCCharacter.swift to use activeSkillLevel in place of currentSkillLevel. I tried to test this but I was unable to build the database from the latest SDE.

colcrunch commented 6 years ago

Could also change to a versioned endpoint

jesta777 commented 6 years ago

Had update for Neocom II oniphone today and it seems to have fixed things. iPad version still errors though, is there an update for that on its way?

FrazJ commented 6 years ago

Can confirm that this is fixed on iPhone with latest update.

colcrunch commented 6 years ago

@jesta777 from what I saw of the iPad version (dont have one) it looks like when the skills do load, the "My"tab has all of them at 0, and the "Can Train" tab has all of the actual skill info that should be in the other tab.

jesta777 commented 6 years ago

@colcrunch I just tried again on iPad version. Still nothing in ‘My’ list. ‘All’ and ‘can train’ show some skills, but all at zero trained. Which is in error. Skill queue shows correctly as far as I can see, and seems to be updating. Still shows an error under character name. Guessing iPad version still needs the same update as the iPhone version got, assuming there are two versions.

jesta777 commented 6 years ago

Update yesterday to iPad version, error has gone, skills seem to be working fine now. Thanks for the updates and the work that went into them.

colcrunch commented 6 years ago

Everything seems to be fixed. Time to close the issue.