Jump to content
  • Sign Up

API:v2/account change for PoF


Zok.4956

Recommended Posts

When I get the data of my account that has purchased and unlocked PathOfFire the API still says in field “Access” only “HeartofThornes” and not “PathOfFire”.And because an account can have purchased PathOfFire but not HeartOfThornes and vice versa, it maybe would be a good idea to change the value of the field “access” to a comma separated list or to a real array where the values

  • None
  • PlayForFree
  • GuildWars2
  • HeartOfThorns
  • PathOfFire

could be independent from each other included.

For backward compatibility the field "access" could be a comma separated list or there could be a new field "accesses" which is a real array.

Link to comment
Share on other sites

Thumbs up for this request!!Here my ideas:

  • a new field "Accesses" or "AccessTo" as an array of strings would be the better solution while the existing "Access" field could be removed.
  • we can keep the "Access" field for a single core value (None, PlayForFree or Guild Wars2) and add a new one as an array of strings for all expansions that someone own (HeartOfThorns, PathOfFire and future expansions).

I would not think about backward compatibility because with Path of Fire the existing field has no sense and in my opinion the first idea is the best one, because in any app I could get the list of accesses and work locally with only one object.

Hoping for the change before PoF comes out...

Link to comment
Share on other sites

@Illconceived Was Na.9781 said:So '3' means both expansions? (And presumably [4] would be expansion #3 and so on.)

It is not the ordering/index or the length of the list that should be evaluated, but the value of the array elements that exist in the list.

Examples:An account with PoF but without HoT would have (0=> GuildWars2, 1=>PathOfFire)An account with Hot but without PoF would have (0=> GuildWars2, 1=HeartOfThornes)An account with HoT and PoF and the NextExpansion would have (0=> GuildWars2, 1=> HeartOfThornes, 2=> PathOfFire, 3=> NextExpansion).An account with PoF and the NextExpansion would have (0=> GuildWars2, 1=> PathOfFire, 2=> NextExpansion).

Link to comment
Share on other sites

@Zok.4956 said:Thanks, field access is now an array.

Example:

        [access] => Array            (                [0] => GuildWars2                [1] => HeartOfThorns                [2] => PathOfFire            )

If none of these three is set, I assume it is a F2P account.

There's theoretically a FreeToPlay flag that can go in there too. I don't think FreeToPlay is removed when you upgrade, so checking for the existence of one of the three you pointed out is probably the best way. I'm not entirely sure when GuildWars2 gets set -- my understanding of the game's feature codes is from the original F2P launch (when you had to buy the core game) -- I'm not sure if the FreeToPlay flag is even set anymore.

Link to comment
Share on other sites

@Lawton Campbell.8517 said:

@Zok.4956 said:Thanks, field
access
is now an array.

Example:
        [access] => Array            (                [0] => GuildWars2                [1] => HeartOfThorns                [2] => PathOfFire            )

If none of these three is set, I assume it is a F2P account.

There's theoretically a
FreeToPlay
flag that can go in there too. I don't think
FreeToPlay
is removed when you upgrade, so checking for the existence of one of the three you pointed out is probably the best way. I'm not entirely sure when
GuildWars2
gets set -- my understanding of the game's feature codes is from the original F2P launch (when you had to buy the core game) -- I'm not sure if the
FreeToPlay
flag is even set anymore.

In the game there is still a difference in features/functions between F2P and the "GW2 base game" and there are still players, that have purchased the license code for "GW2 base game", but not HoT or PoF. With the purchase of HoT or PoF the "GW2 base game" is included.

So in my understanding the feature codesGuildWars2 and FreeToPlay are mutually exclusive.

Well, but in the actual API-data they are not. :/

I see account data where GuildWars2 is set together with FreeToPlay and I see account data, where GuildWars2 is set without FreeToPlay.

So, the usage of FreeToPlay seems inconsistent to me. Maybe FreeToPlay gets set (and will not get reset) when the account is first created as a F2P-account and then upgraded later and only accounts, that were created before F2P was introduced have no FreeToPlay. In consequence this means that checking for FreeToPlay can not be used to verify if an account is actual a F2P-account.

If HeartOfThorns or PathOfFire are set in the account data, GuildWars2 is always set, too. So I assume the absence of GuildWars2 means, it is a F2P account.

My actual evaluation is now: It is a F2P-account if none of the "upgrade-feature-codes" (at the moment GuildWars2, HeartOfThorns,PathOfFire ) is set.

Link to comment
Share on other sites

AFAIK, the feature codes are sticky -- once you have a feature flag applied to your account, it doesn't get removed. So accounts that started with FreeToPlay will always have that flag (even post-upgrading); accounts that registered with a serial code won't have that flag.

Does it make sense to strip FreeToPlay when other flags are on the account? I can make the API normalize the data a bit.

Link to comment
Share on other sites

@Lawton Campbell.8517 said:Does it make sense to strip FreeToPlay when other flags are on the account? I can make the API normalize the data a bit.

Yes it makes sense in my opinion, because you then can see FreeToPlay as a state-code (if it is set, the account is actually F2P).

On the other hand: FreeToPlay could also be removed completely because it is kind of redundant information and after that removal, a F2P account would have an empty access array (if any of GuildWars2 , HeartOfThorns, PathOfFire or Expansion3 would be set, it would not be a F2P account).

Link to comment
Share on other sites

  • 2 weeks later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...