WFCD / warframe-items

📘 Get all Warframe items directly from Warframe's API. No more messy wikia scraping.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

:rocket: Inconsistencies in category schema

mdpung opened this issue · comments

**Please note this is just my observation and feedback based on my experience with using this data set, and meant for food for thought.**

Is your enhancement request related to a problem? Please describe.
I noticed inconsistencies in the way weapons are classified in their respective custom categories.
Let's compare three weapons for example:
A weapon like Soma has

{
    "category": "Primary",
    "productCategory": "LongGuns"
}

A weapon like Deconstructor has

{
    "category": "Primary",
    "productCategory": "SentinelWeapons"
}

A weapon like Corvas has

{
    "category": "Primary",
    "productCategory": "Arch-Gun"
}

Yet the three belong to the respective categories:

Soma - Primary
Deconstructor - SentinelWeapons
Corvas - Arch-Gun

When I realized that the Deconstructor was not in the Primary.json it took me a while to realize this discrepancy.

Another discrepancy I noticed is that Archwing and Tenno have their separate categories for their types of weapons. Ex:

Tenno: Primary.json and Melee.json
Archwing: Arch-Gun and Arch-Melee
Sentinel: SentinelWeapons

Describe the upgrade you'd like
I can understand the more specific sub categories for the robotics and the archwings, so I would like to suggest a few options.

  1. Don't change anything and just document in the README.md these differences.
    OR
  2. Change the name of Primary.json to something not so broad so it doesn't umbrella the SentinelWeapon and Arch-Gun exceptions, such as TennoPrimary. In addition, you could have Primaries.json encompass all the weapons that actually have the category as Primary.

As for the second discrepancy, may I suggest:

  1. Break SentinelWeapons into SentinelPrimary and SentinelMelee

Describe alternatives you've considered
N/A

Additional context
N/A

commented

Primaries aren't melee. Why would Deconstructor be in primaries?

commented

SentinelWeapons is driven off the DE-provided field of ProductCategory to make them easy to find. I'm not gonna break them up further because of your preferences

Primaries aren't melee. Why would Deconstructor be in primaries?

That's what your data model currently classifies it as. The Deconstructor currently has the category of "Primary" in the dataset, so that should be a question for the devs.

SentinelWeapons is driven off the DE-provided field of ProductCategory to make them easy to find. I'm not gonna break them up further because of your preferences

I understand that and I'm not asking you to change the product categories. I'm pointing out that the way weapons, categories, and classifications are structured in the dataset are inconsistent and unintuitive making it difficult to use. I, as a developer, am just providing feedback on my experience trying to use it. I assume the whole purpose of this api/library is to make it accessible for other developers, so I figured there would be openness to improve it.

commented

I'm literally "the devs" of this project. if you feel like waiting on DE, feel free to go find them.

I'm literally "the devs" of this project. if you feel like waiting on DE, feel free to go find them.

Yet you ask

Why would Deconstructor be in primaries?

You are the one who set Deconstructor to be in primaries. That was not a proposed state for the data. That is the current state.