PokeAPI / PokeAPI/pokeapi

ability_changelog_prose.csv inconsist compared to handling of other past_x variables.

Open
#1,423 4 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
5.4k
Forks
1.2k
Avg merge
2d 5h
Merged PRs (30d)
21

Description

For most things, like past learnsets, past_stats, or past_abilities, the api lists what those things were, and then what generation they changed.

Example would be Clefable, whose Special Attack went from 85 to 95 in Gen 6.

In the API, it looks like this:

  • pokemon_id, generation_id, stat_id, base_stat, effort
  • 36,5,4,85,0,

This means if I want to pull Clefables stats from Gen 5 or earlier, I have them.

Rather than doing that for abilities, the ability_changelog_prose.csv is presenting something closer to patch notes but backwards.

For example, sturdy changed in Gen 5 to be its current effect:

  • When this Pokémon is at full HP, any hit that would knock it out will instead leave it with 1 HP. Regardless of its current HP, it is also immune to the one-hit KO moves: fissure, guillotine, horn drill, and sheer cold. If this Pokémon is holding a focus sash, this ability takes precedence and the item will not be consumed.

I would expect this, if I pulled gen 4 data, to say:

  • The Pokemon is immune to the one-hit KO moves: fissure, guillotine, horn drill, and sheer cold.

What the changelog actually says is:

  • Does not prevent regular KOs from full HP.

Would we be open to the idea that the changelog_prose contains what the ability actually does in its past gens to be consistent with data is organized?

I would be willing to do the work for English.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating ability_changelog_prose.csv and the corresponding past ability data used by the API; compare the Sturdy records across generations with the issue's Gen 4 example. Update the English historical descriptions so each generation states the ability's behavior, then verify the CSV remains consistent with the API's past_* organization and covers the cited case.

Written by the indexing model from the issue text.

Assessment

Domain
api, data
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.