Skip to content

Add BW2 in-game trades#1524

Open
matthewchoy88 wants to merge 1 commit into
PokeAPI:masterfrom
matthewchoy88:add-bw2-trades
Open

Add BW2 in-game trades#1524
matthewchoy88 wants to merge 1 commit into
PokeAPI:masterfrom
matthewchoy88:add-bw2-trades

Conversation

@matthewchoy88
Copy link
Copy Markdown

@matthewchoy88 matthewchoy88 commented May 18, 2026

Summary

Adds the seven specific NPC in-game trades from Pokémon Black 2 and White 2, sourced from Serebii.

Location You Give You Receive Level Versions
Route 4 Cottonee Petilil 20 Black 2 only
Route 4 Petilil Cottonee 20 White 2 only
Route 7 Emolga Gigalith 35 Both
Humilau City Mantine Tangrowth 45 Both
Route 15 Ditto Rotom 60 Both
Accumula Town Excadrill Ambipom 40 Both
Accumula Town Hippowdon Alakazam 40 Both

Changes

Modeled on the existing GSC (#1473) and RSE (#1478) trade PRs:

  • encounter_slots.csv: new slot 1482 for the BW2 npc-trade method (vg 14, method 36).
  • location_areas.csv / location_area_prose.csv: new location area 1363 for Accumula Town — no entry existed.
  • encounter_condition_values.csv / encounter_condition_value_prose.csv: seven new trade-<species> condition values (trade-cottonee, trade-petilil, trade-emolga, trade-mantine, trade-ditto, trade-excadrill, trade-hippowdon) with English prose.
  • encounters.csv: 12 new encounter rows (6 per version) with min_level = received level and max_level = 100, following the convention from prior trade PRs.
  • encounter_condition_value_map.csv: 12 new rows linking each encounter to its "give" condition.

Out of scope

The Yancy/Curtis Funfest Mission trades in Nimbasa City are not included. They accept any Pokémon and branch on player gender, which would need new encounter-condition infrastructure (no trade-any or gender condition exists today). Happy to do these in a follow-up if there's interest.

AI Declaration

Change was made with the help of an AI coding agent.

Contributor check list

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

Adds the seven specific NPC trades from Pokémon Black 2 and White 2
(sourced from Serebii):

- Route 4: Cottonee ↔ Petilil (version-exclusive)
- Route 7: Emolga → Gigalith
- Humilau City: Mantine → Tangrowth
- Route 15: Ditto → Rotom
- Accumula Town: Excadrill → Ambipom
- Accumula Town: Hippowdon → Alakazam

To support these:
- Add encounter slot for the BW2 npc-trade method (vg 14, method 36)
- Add Accumula Town location area (no entry existed)
- Add seven new "Give X in a Trade" encounter condition values
- Add encounters and encounter condition value mappings for B2 and W2

The Yancy/Curtis Funfest Mission trades in Nimbasa City are not
included; they accept any Pokémon and depend on player gender, which
needs additional encounter-condition infrastructure not present today.
@matthewchoy88 matthewchoy88 marked this pull request as ready for review May 18, 2026 07:03
Comment on lines +67753 to +67764
73615,21,627,1482,548,20,100
73616,21,632,1482,526,35,100
73617,21,659,1482,465,45,100
73618,21,650,1482,479,60,100
73619,21,1363,1482,424,40,100
73620,21,1363,1482,65,40,100
73621,22,627,1482,546,20,100
73622,22,632,1482,526,35,100
73623,22,659,1482,465,45,100
73624,22,650,1482,479,60,100
73625,22,1363,1482,424,40,100
73626,22,1363,1482,65,40,100
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
73615,21,627,1482,548,20,100
73616,21,632,1482,526,35,100
73617,21,659,1482,465,45,100
73618,21,650,1482,479,60,100
73619,21,1363,1482,424,40,100
73620,21,1363,1482,65,40,100
73621,22,627,1482,546,20,100
73622,22,632,1482,526,35,100
73623,22,659,1482,465,45,100
73624,22,650,1482,479,60,100
73625,22,1363,1482,424,40,100
73626,22,1363,1482,65,40,100
73615,21,627,1482,548,20,20
73616,21,632,1482,526,35,35
73617,21,659,1482,465,45,45
73618,21,650,1482,479,60,60
73619,21,1363,1482,424,40,40
73620,21,1363,1482,65,40,40
73621,22,627,1482,546,20,20
73622,22,632,1482,526,35,35
73623,22,659,1482,465,45,45
73624,22,650,1482,479,60,60
73625,22,1363,1482,424,40,40
73626,22,1363,1482,65,40,40

I believe the levels of the Pokemon you get via trades in this game are fixed, so the max_level field should be set to the same as min_level.

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.

2 participants