Skip to content

Add Hidden Grotto Encounter method, Location Areas, and Encounters.#1507

Merged
Naramsim merged 4 commits intoPokeAPI:masterfrom
coreyJim:hidden_grottos
May 4, 2026
Merged

Add Hidden Grotto Encounter method, Location Areas, and Encounters.#1507
Naramsim merged 4 commits intoPokeAPI:masterfrom
coreyJim:hidden_grottos

Conversation

@coreyJim
Copy link
Copy Markdown
Contributor

Change description

Addresses #1455
Adds the Black 2 / White 2 Hidden Grotto mechanic, adding to:

  • Location_Areas
  • Location_Area_Prose
  • Encounter_Slots
  • Encounters
  • Encounter_Method
  • Location_Area_Encounter_Method_Rate

Data was originally sourced from : https://wiki.pokemonwiki.com/wiki/%E3%81%8B%E3%81%8F%E3%81%97%E3%81%82%E3%81%AA
but adjusted to match https://bulbapedia.bulbagarden.net/wiki/Hidden_Grotto
With some exceptions:

  • Route 22's Mienfoo level range appears to be a incorrect; adjusted to match other Route 22 Pokemon.
  • Rate for each hidden grotto only adds up to 20%, which is the chance of a hidden grotto spawining a Pokemon. Since this chance is already reflected in Location_Area_Encounter_Method_Rate, I scaled up the Encounter_Slots rate to compensate
  • Even after scaling, some rates were not whole percentages. These have been rounded.

Funfest Mission Hidden Grotto encounters have not been added here; I'm not sure how to reflect them. They have an additional condition of a relevant funfest mission being active, some required a Japanese-only distribution, and they can show up in any hidden grotto.

AI coding assistance disclosure

Copilot was used to assist in the creation of a side program that would scrape the wiki and read copies of the relevant .csv files to generate new rows.
That program was then tested and adjusted until it matched expectations, and then used to generate preliminary row additions for the .csv files.
I then manually verified all additions, adjusting the rows when I would find discrepancies. By my understanding, this usage is in-line with the principles of the AI Assisted Contribution guidelines.

Contributor check list

  • [ x] I have written a description of the contribution and explained its motivation.
  • [ x] I have written tests for my code changes (if applicable).
  • [ x] I have read and understood the AI Assisted Contribution guidelines.
  • [x ] I will own this change in production, and I am prepared to fix any bugs caused by my code change.

Corey Jimenez added 4 commits April 25, 2026 11:03
Rate has been scaled up so all pokemon in a single location-area add
up to ~100. The 20% chance for a pokemon to spawn in a hidden grotto
is instead acounted for in the rate field of
location_area_encounter_rates.csv

The following pokemon had decimals after scaling, so they have been
rounded:
Zangoose, Seviper (Route 7, Route 23): 37.5 -> 38
Kingler, Corsola (Route 18): 37.5 -> 38
Pinsir, Heracross (Lostlorn Forest) : 3.75 -> 4 / 1.25 -> 1
Breloom (Pinwheel Forest - Inner): 18.75 -> 19
Amoonguss (Pinwheel Forest - Inner): 56.25 -> 56

Data sourced from https://wiki.pokemonwiki.com/ but adjusted to match
Bulbapedia, with one exception:
Mienfoo levels are listed as 50-54 in bulbapedia. This seems to be a
mistaken entry as all other Pokemon share the same level range within
a hidden grotto. Adjusted to match other Route 22 grotto levels.
Copy link
Copy Markdown
Member

@jemarq04 jemarq04 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great - thanks for the contributions!

As far as the Funfest Missions go, I think we can leave that for another PR later down the line. The only encounters that weren't restricted to certain events in 2012 are Stunky and Glameow, and neither Bulbapedia nor Serebii can give much information on the rates of these Pokemon during these missions.

@Naramsim Naramsim merged commit 9432d4a into PokeAPI:master May 4, 2026
2 checks passed
@pokeapi-machine-user
Copy link
Copy Markdown

A PokeAPI/api-data refresh has started. In ~45 minutes the staging branch of PokeAPI/api-data will be pushed with the new generated data.

The staging branch will be deployed in our staging environment and the entire API will be ready to review.

A Pull Request (master<-staging) will be also created at PokeAPI/api-data and assigned to the PokeAPI Core team to be reviewed. If approved and merged new data will soon be available worldwide at pokeapi.co.

@pokeapi-machine-user
Copy link
Copy Markdown

The updater script has finished its job and has now opened a Pull Request towards PokeAPI/api-data with the updated data.

The Pull Request can be seen deployed in our staging environment when CircleCI deploy will be finished (check the start time of the last build).

Naramsim pushed a commit to PokeAPI/api-data that referenced this pull request May 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants