Skip to content

Update from upstream repo kwsch/PKHeX - #1

Open
backstroke-bot wants to merge 8284 commits into
Delphox:masterfrom
kwsch:master
Open

Update from upstream repo kwsch/PKHeX#1
backstroke-bot wants to merge 8284 commits into
Delphox:masterfrom
kwsch:master

Conversation

@backstroke-bot

Copy link
Copy Markdown

Hello!
The remote kwsch/PKHeX has some new changes that aren't in this fork.

So, here they are, ready to be merged! 🎉

If this pull request can be merged without conflict, you can publish your software
with these new changes. Otherwise, if you have merge conflicts, this
is the place to fix them.

Have fun! 👋

From,
🏊 Your Neighborly Backstroke Bot

PS. Hey, there's a new version of Backstroke available. If you'd like to configure repo-to-repo syncing or sync to all forks, check it out here.

@kwsch
kwsch force-pushed the master branch 2 times, most recently from e13acf3 to 6bed33f Compare July 16, 2021 03:40
@kwsch
kwsch force-pushed the master branch 3 times, most recently from 0c4f92a to 9ef9355 Compare August 21, 2021 03:50
@kwsch
kwsch force-pushed the master branch 2 times, most recently from a730ac5 to 6e9f230 Compare August 23, 2021 01:52
@kwsch
kwsch force-pushed the master branch 2 times, most recently from bfccdae to fbb9e0b Compare December 26, 2021 02:44
@kwsch
kwsch force-pushed the master branch 2 times, most recently from c460f5b to ecee948 Compare April 25, 2022 03:29
@kwsch
kwsch force-pushed the master branch 2 times, most recently from fcadbda to 2bbd767 Compare September 11, 2022 05:54
@kwsch
kwsch force-pushed the master branch 3 times, most recently from 81c04d8 to 5d5d913 Compare November 26, 2022 04:54
kwsch and others added 30 commits July 15, 2026 22:23
Needed because RK4 reserves 10char for the handler.
Closes #4837

refer pkl generation code that appends the scraped restriction info to the end of the concatenated bin:
kwsch/PKHeX.TemplateRegen@1ae1742

other adjustments:
- remove Nature set on pgf->pk5 ctor, already set later in SetPINGA
- ensure sane language/version on ctor, distrust OT if language incompatible (not perfect but better)
Fix outbreak met location suggestion for bit0 set and none in second set
Narrow some api methods, rename some parameters for better clarity
forgot to check unit tests after the recent PGF language/version restrict was added lol
increase sav editor button height so 2 rows of text can render if needed
No functional change
Introduces the MRNG algorithm and MRNGReversal to model My Pokemon Ranch IV generation, then wires it into Gen4 Ranch gift creation and IV legality checks with a new PIDType.Ranch classification.
Updates the seed-reversal logic in the LCRNG-based recovery methods with more performant lattice-bound implementations and early returns.
Adds more unit tests for Ranch & Channel reversals and expected recovered seed counts/hit-ability.

Refer to the linked LCG_Recovery.py for more details.
https://github.com/StarfBerry/PokeRNG/blob/main/Recovery/LCG_Recovery.py
(big thanks to StarfBerry for the math & documentation; this is merely a port of their work).

From Admiral-Fish's testing for PokeFinder, "shows 17-25% faster. Channel is 12k times faster"
Admiral-Fish/PokeFinder@d4512de

Co-Authored-By: StarfBerry <65578604+starfberry@users.noreply.github.com>
turns out pk4 egg => hatch routine recreates the mon, copying only properties they figured were worth copying. guess it's a good way to sanitize out eggs.
since version doesn't update on hatch, we need to be flexible based on detecting which game it actually hatched on (thus, the game it truly was last "created" on.
#4842
Pt Eggs: use correct learnset table (eevee has swapped moves in dp)
Extract force-hatch routine so that Gen4 eggs can generate as eggs
Game has a Ratatta table for the Safari zone that it replaces with the Safari slots.
HG/SS (separately) have Caterpie and Weedle for the National Park fake area when a BCC is active.
Updated pkl includes "correct" safari zone wild encounter rate rather than an encoded "which safari sub-zone" index.
kwsch/PKHeX.EncounterSlotDumper@e789757
maxLength is the maximum length in terms of characters, not bytes
#4844
not yet implemented: xoroshiro algorithmic improvements

overflow counterexample for channel IV reversal regarding s32 vs s64 noted in the github issue

Co-Authored-By: StarfBerry <65578604+StarfBerry@users.noreply.github.com>
I accidentally reverted my intermediate value sum for the channel solver after I discovered the counterexample -- now with the refinements as detailed in the issue, we can proceed with many `long` => `uint`

The xoroshiro128+ solvers aren't really set up to take advantage of the eager returns; the iterator struct (not class) would have to be made heavier to store the intermediate values for a given `assume`. Probably would have to inline the methods and break out their inner Update steps. Probably not worth the hassle :)

Closes #4844

Co-Authored-By: StarfBerry <65578604+StarfBerry@users.noreply.github.com>
Ensure all have dashes at front
for multiple strings, separate out the GB/VC to a separate tag.

No longer does the program show `SAV3FRLGUGBA` instead of `SAV3FRLG-U [GBA]`, which is a little more transparent to the end user.
Windows.Forms quirk where it don't hide the dropdown when it tries to Suggest via the separate Suggest pop-down.
Since all comboboxes that do the databind+suggest are impacted by this, just add the event when initializing binding. There don't appear to be any reapply-binding cases where it is set to suggest (only case is Battle Revolution save select, which isn't textual entry).

Closes #4846
It's stored as a 3-variable value. Decompose & recompose in the GUI.

Closes #4841 -- Raffle is values 1-10, which explains the observed behavior in the issue.
The old GUI would set [-1, 7], if modified to any selected Shop type, results in all being Raffle (incorrect behavior).

By unpacking to separate variables, the 1-321 combinations are user adjustable rather than just showing the raw value for edits. Sure the Version could be localized, and Shop Rank could be [1,10] instead of [0,9]...

ref: https://bulbapedia.bulbagarden.net/wiki/Join_Avenue#Shop_rank
saves 0.4KB lol
no functional change

update terminology; might not be explicitly "footprint" type, more "footprint man's evaluated type"
https://bulbapedia.bulbagarden.net/wiki/Footprint#Footprint_Ribbon
Better there and now public for anyone to use (why would they want to check that lol)

make the Battle Frontier hashset a ReadOnlySpan;
- since the list is sorted, use BinarySearch to reduce worst case from 43 ops to 6.
- no static ctor in RibbonRules (yay no nanosecond hiccup)

that was the last static HashSet in the repo 👀
Added functionality to exclude the opposite-gender rival (self) from PokeGear callers.

* Remove Bike Shop from Pokegear callers list: It's not legally obtainable you only get called once you've used the Bike enough you never get to save it.

* Exclude bike shop in caller list logic

Updated logic to exclude both the rival and bike shop from the caller list.
* Update flags_dp_es-419.txt

* Update flags_dp_es.txt

* Update flags_pt_es-419.txt

* Update flags_pt_es.txt

* Update flags_pt_en.txt

* Update flags_dp_en.txt

* Update flags_dp_fr.txt

* Update flags_pt_fr.txt

* Update flags_pt_ja.txt

* Update flags_dp_ja.txt

* Update flags_dp_ko.txt

* Update flags_pt_ko.txt

* Update flags_pt_zh-Hans.txt

* Update flags_dp_zh-Hans.txt

* Update flags_pt_zh-Hant.txt

* Update flags_dp_zh-Hant.txt

* Update lang_fr.txt

* Update lang_it.txt

* Update lang_es-419.txt

* Update lang_es.txt

* Update flags_pt_zh-Hant.txt

* Update lang_es-419.txt

* Update lang_es.txt

* Update lang_fr.txt

* Update lang_es.txt

* Update lang_es-419.txt

* Update flags_rs_en.txt

* Update flags_rs_es-419.txt

* Update flags_rs_es.txt

* Update flags_rs_fr.txt

* Update flags_rs_ja.txt

* Update flags_rs_zh-Hans.txt

* Update flags_rs_zh-Hant.txt

* Update flags_e_en.txt

* Update flags_e_es-419.txt

* Update flags_e_es.txt

* Update flags_e_fr.txt

* Update flags_e_ja.txt

* Update flags_rs_zh-Hans.txt

* Update flags_e_zh-Hans.txt

* Update flags_e_zh-Hant.txt

* Update text_rsefrlg_00000_zh-Hant.txt

* Update text_xy_00000_zh-Hant.txt

* Update flags_rs_zh-Hant.txt

* Update flags_e_zh-Hant.txt

* Update text_xy_00000_zh-Hant.txt

* Update flags_oras_zh-Hant.txt

* Update flags_e_zh-Hans.txt

* Update flags_rs_zh-Hans.txt

* Update text_xy_00000_zh-Hant.txt

* Update flags_oras_zh-Hant.txt

* Update lang_es-419.txt

* Update lang_es.txt

* Update lang_es-419.txt

* Update lang_es.txt

* Update flags_dp_es.txt

* Update flags_dp_es-419.txt

* Update flags_pt_es.txt

* Update flags_pt_es-419.txt

* Update lang_fr.txt

* Update lang_fr.txt

* Update lang_it.txt

* Update lang_fr.txt

* Update lang_fr.txt
* Recursive egg chain solver

Supercedes #4444
- Handles Volbeat/NidoranM specific inheritance cases
- Handles Smoochum(female-only) male father search cases
- Allocation free, result struct

Closes #4426

Removed unreachable eggmoves from gs:
no Charm for Bulbasaur
no Charm for Oddish
no Charm for Snorlax
no AuroraBeam for Staryu
no Barrier for Staryu
no Supersonic for Staryu
no LovelyKiss for Smoochum

pass a ref struct storing the result, which updates with transactions to log the verification state during the recursion.

* Print traced chain in verbose report
no functional change
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.