Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

"order" of Pokémon forms is shared between unrelated species

Đang mở
#1,569 4 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
35/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Ít trao đổi
Lĩnh vực
databases

Hướng nghiên cứu

Bắt đầu bằng cách xem xét pokemon_forms.csv, Pokémon Forms documentation và pull request #1532 được liên kết để hiểu hành vi hiện tại của order và các giá trị trùng lặp hiện có. Công việc chỉ hoàn tất khi phương án thay thế cho order hoặc id đã được thống nhất, ảnh hưởng của nó đối với mô hình dữ liệu đã được xác định và các bản ghi form bị ảnh hưởng đã được cập nhật nhất quán.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

At present, the order column of the pokemon_forms.csv is mostly just an incrementing list that groups all forms of the same species together. This makes it very inconvenient to insert new forms for pre-existing Pokémon, as every subsequent entry needs to have its order incremented.

However, while the list at first appears to be an incrementing list (with a unique value per form), this is not actually the case (as I discovered in https://github.com/PokeAPI/pokeapi/pull/1532). The documentation does note

Multiple forms may have equal order, in which case they should fall back on sorting by name.

The first major group of non-unique entries is Alcremie. The Alcremie forms have distinct order values for each Cream, but each Cream shares the same order value across Sweets. So alcremie-vanilla-cream-berry-sweet is 1256 and alcremie-ruby-cream-berry-sweet is 1257, but alcremie-vanilla-cream-love-sweet is also 1256.

However, after Alcremie, there are a bunch of DLC Sword & Shield Pokémon, Hisui Pokémon, and Paldean Pokémon that share order values with Gigantamax Pokémon and forms introduced in Hisui and Paldea. Some examples:

order Entry 1 Entry 2
1292 eternatus-eternamax venusaur-gmax
1293 kubfu charizard-gmax
1294 urshifu-single-strike blastoise-gmax
1313 fuecoco flapple-gmax
1314 crocalor appletun-gmax
1327 rabsca growlithe-hisui
1328 greavard arcanine-hisui
1373 naclstack miraidon-aquatic-mode
1374 garganacl miraidon-glide-mode

Proposal

My proposal is that the order column do something similar to what Pokémon Champions does internally: Concatenate a National Pokédex number and a form ID to produce a unique identifier for a specific form of a Pokémon. For example, Venusaur (Pokédex #0003) would be form ID 00003000, while Mega Venusaur would be form ID 00003001, and Charmander (Pokédex #0004) would be form ID 0004000. (Since these are integers, the leading 0's would be stripped, but I've included them here to illustrate how the numeric identifiers are based on Pokédex numbers.)

This could even replace the existing id column of the pokemon_forms.csv table, and the order column could just be deprecated.

Ngôn ngữ chính
Python
Star
5.4k
Fork
1.2k
Merge trung bình
2 ngày 4 giờ
Pull request đã merge (30 ngày)
18

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của PokeAPI/pokeapi

Tất cả issue của PokeAPI/pokeapi

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.