Commit Graph

10502 Commits

Author SHA1 Message Date
Manu
cb7cfef5fa Fix CHT OriginalTrainerName setter for crafted WCs (#4438) 2025-02-03 22:18:56 -06:00
Manu
8d5866f118 Handle Arbok Mainland China wondercard (#4436)
* Add Arbok wondercard to Mainland China Gifts

* Always pick CHS OT/nickname for Mainland China gifts
2025-02-03 22:17:58 -06:00
Kurt
f538d2c4be Skip random level check if criteria not in range 2025-02-02 23:18:15 -06:00
Kurt
9dedd33694 Duplicate locations: across lists, not each array
BD/SP has Pokémon HOME as location 30018 and 40086; need to differentiate.
Revise the unit test to share the unique-check set across all location lists of that context

Ignore "empty" location values (dashes, empty). For deduplicating, ignore empty indexes as well.
2025-02-01 19:23:11 -06:00
Kurt
e04ad2c6b2 Misc tweaks
Fixes shiny rayquaza
some lowering int->byte
Fix event3 random restricted seed fetch for gender
Fix gen8a encdb filters excluding static encounters, now will be properly excluded
2025-02-01 10:42:26 -06:00
Professor Dirty
f36963d6e6 CHS: Update gen1-3 translations of some items/flags (#4430) 2025-02-01 09:41:02 -06:00
Manu
c456e8e212 Handle generation and legality for HOME Manaphy and Enamorus (#4432)
* Home Enamorus actually uses Cherish ball

* Handle Enamorus fixed scalars

* Handle Manaphy fixed scalars
2025-01-31 22:30:35 -06:00
Kurt
8e5de20881 Add Form to EncounterCriteria, apply from seed interface (#4433)
When generating from templates with randomly correlated forms, the EncounterCriteria will now seek for a match for that feature if specified. Granted this is just a cosmetic seek for Generation 4 Unown -- Gen3 Unown is locked to a specific form for each encounter slot.

Also adds an interface to templates that expose a shortcut to SetPINGA's randomness, for those who know what seed they want to generate from. This is currently only implemented into encounters from Gen8 (Raids/8b Roamers), Gen9 (Tera Raids), and Gen3 events (Channel, as others can be found via IVs quickly -- Channel's reversal from IVs isn't performant).
2025-01-31 21:08:27 -06:00
Kurt
538374b33f FRLG: fix gift magikarp location check
The Route 4 (Pokémon Center) location (099) is only used for the Town Map tags; the gift yields Route 4 (104) only.

https://projectpokemon.org/home/forums/topic/66281-frlg-magikarp-salesman-oddity/
2025-01-29 23:10:26 -06:00
Kurt
46bb7e3d3b Add trainer ID checks for cxd/rs
Templates: Add more interfaces for trainer ID properties
Closes #4431
2025-01-29 22:34:45 -06:00
sora10pls
f3f89c1f4b Update BDSP Met4 to match SWSH/LA 2025-01-29 20:33:13 -05:00
Kurt
4fa83b905f Better clamp corrupt sav2 mail boxsize reads 2025-01-29 02:02:43 -06:00
sora10pls
4089b8197a Add date ranges for Shiny Manaphy/Enamorus events 2025-01-28 08:39:00 -05:00
Kurt
7d59e3416a Minor tweaks
== null
to
is null
2025-01-27 16:37:37 -06:00
Kurt
2592dfec19 Revise RSBox slot display order
Revises prepended box name to better indicate left/right
Closes #4429
2025-01-27 11:59:36 -06:00
Professor Dirty
f63ad4372e Additional event flags CHS translation (#4427) 2025-01-26 11:28:50 -06:00
abcboy101
6c3eec3314 Support Gen5/3DS/Switch word filters (#4423)
* Support Gen5/3DS/Switch word filters

- Separate 3DS/Switch word filters
- Add/implement Gen5 word filter
- Adjust behavior of DisableWordFilterPastGen

* Implement halfwidth/fullwidth conversion

Only applies to alphanumeric and kana
2025-01-26 10:38:21 -06:00
Professor Dirty
b119302d67 Additional CHS translation (#4421) 2025-01-23 23:43:51 -06:00
9Bitdo
53195d0233 Add Pokémon Lucario & The Mystery of Mew Movie Gift KOR 아론's Lucario Date (#4422)
* Add Pokémon Lucario & The Mystery of Mew Movie Gift KOR 아론's Lucario Date
2025-01-23 23:43:13 -06:00
sora10pls
659e2ad099 Add latest distribution raid data 😡🎤🐧🤖 2025-01-23 19:03:37 -05:00
Kurt
0316404f46 Fix ageto antishiny recognition
Must have been omitted in the refactor

while we're here, revise the other gift3's to be records for the autogen'd ToString
2025-01-21 22:40:45 -06:00
Kurt
82d74e6950 Add TIDseed for emerald frame indicator 2025-01-18 22:40:31 -06:00
Kurt
5fbf867613 Show seed-frame-time for rsefrlg slot/static encs
Easy indication for painting-skips or changed-seeds.
2025-01-18 19:50:02 -06:00
sora10pls
c7881b5c4a GO: Permit Master Ball for Max Battles
When Max Battles first launched, the Master Ball was not available in the Poké Ball tray in the bonus challenge. This did not apply to the tutorial Wooloo or Skwovet/Wooloo from Special Research.

0.333.0, which released on September 27 2024, added a property named `canUseMasterBallPostBattle` for Max Battles. Players noted being able to use a Master Ball on Gigantamax Charizard when it debuted in the game, meaning this is the likely culprit.

Since all past Max Battles have other, less restrictive encounter methods where the Master Ball is permitted, this does not cause any potential invalid legality overlaps. Gigantamax Pokémon also can't be transferred, so they don't need to be accounted for.
2025-01-18 12:59:32 -05:00
santacrab2
74a52d946b Encounter to PA8 generation tweak (#4419)
* use pa8's current level for determining Mastered flag for Move Shop Records to ensure all flags are checked on encounters who learn moves close to their level mins

* use met level instead of current level to reduce unnecessary calculations
2025-01-17 22:08:54 -06:00
Kurt
c1d2babc5c Set all purchased on MoveShop all 2025-01-17 22:08:38 -06:00
Kurt
2976480792 Minor tweaks
File.WriteAllBytes now accepts span on .NET 9 yay
2025-01-16 22:16:40 -06:00
Kurt
b9df2d65c6 Improve performance of adding sprite accents
Can get the native memory span via MemoryMarshal.CreateSpan; this skips allocating a 15KB buffer as well as copying 30KB for each mutation

am paranoid about mutating the original image, so that can stay for now
2025-01-16 21:34:53 -06:00
Kurt
0549cfda4a Rework SCBlock to Memory<byte> 2025-01-16 20:55:07 -06:00
sora10pls
2442165907 Add latest distribution raid/outbreak data 🌴🦩 2025-01-16 19:05:01 -05:00
Kurt
eced651024 Pokewalker: Handle 539 stroll, revise signatures
Was missing the worst case scenario; ran a bruteforce script to find a 539 after adding the final logic. We try to do the least amount of cpu instructions so this is probably the better arrangement anyway.

Revise the method signatures to exclude the scratchspace span reuse (not-obvious behavior). Just stackalloc a new span.

Add seed indication to legality formatting. #4416
2025-01-15 01:26:49 -06:00
Kurt
e9092ca702 Update MetaFilter.cs 2025-01-14 21:50:04 -06:00
Kurt
5230cba9f6 Misc tweak for alpha mark check 2025-01-13 23:47:57 -06:00
Kurt
9f0812cb8b Pokewalker: Don't check slots for stroll seeds
Closes #4416
Majority of the changelog here is additional/revised comments/xmldoc or "unused code". Only `GetFirstSeed`'s behavior has changed on line 154 (new). Since there is no longer the need to refer to Species and Course, remove from the method signatures & usages.

Refer to the discussion in the ^ mentioned issue.

Co-Authored-By: HappyLappy1 <86489014+happylappy1@users.noreply.github.com>
Co-Authored-By: NickPlayeZ <80699972+nickplayez@users.noreply.github.com>
2025-01-13 23:24:18 -06:00
Kurt
ef60ee622d Fix colo espeon pidiv double-check
forgot about the fakeID before IVs
https://projectpokemon.org/home/forums/topic/57375-pkhex-new-update-legality-errors-contribution-page/page/30/#findComment-293040
ty jacksonf !
2025-01-13 22:25:32 -06:00
Kurt
7d2c564744 Improve comment for lang restricted walker courses
Refer to Comment for context: https://github.com/kwsch/PKHeX/issues/4416#issuecomment-2588858294
2025-01-13 22:04:34 -06:00
Kurt
943223fe09 Handle snowy crossover deferrals better 2025-01-12 22:14:43 -06:00
Lusamine
09fce189d3 Filter uncatchable SV fixed encounters by AI action 2025-01-12 19:49:44 -06:00
Kurt
e99105cd78 Update hgss safari slot permutations
https://github.com/kwsch/PKHeX/issues/4416

for permutation code change, see dumper repo:
cdfafa8a31
2025-01-12 17:23:36 -06:00
Kurt
67156dd0df Misc tweaks
Fix gender filtering for gender-locked tera raids
Fix gender filtering for gen3 pcny
Make StringInstruction a record, expose Comparer in ctor
2025-01-12 11:22:30 -06:00
Kurt
b79551411b Fix batchmod compare for $rand 2025-01-11 23:20:14 -06:00
Kurt
26e06f80fb Revise minior handling
Fixed symbol isn't actually form random (previous commit reverted)
2025-01-11 17:51:04 -06:00
Kurt
9f60ff9eb7 Add settings to bypass hotkey requirement
Legality context menu requires holding control when opening the menu -- with this option enabled, don't need to do the hotkey.
2025-01-11 17:36:03 -06:00
Kurt
c17774f57c Revert "Handle fixed tera Minior from su2"
This reverts commit 20245dd512.
2025-01-11 17:35:53 -06:00
Kurt
20245dd512 Handle fixed tera Minior from su2
Thanks XD_Lele for bringing this up -- form-random handling wasn't added for this encounter type
https://projectpokemon.org/home/forums/topic/57375-pkhex-new-update-legality-errors-contribution-page/page/30/#findComment-293014
2025-01-10 22:08:39 -06:00
Kurt
20887a1b2d Gen4: allow battle use items to be held (oops)
Closes #4415
2025-01-10 12:27:37 -06:00
sora10pls
c44f6d286c Add latest distribution outbreak data 🐍 2025-01-09 19:55:13 -05:00
Professor Dirty
866f0269af Append CHS translation (#4413) 2025-01-08 16:51:54 -06:00
Kurt
172ba0d119 Update ITrainerInfo.cs
Closes #4414
2025-01-08 16:48:44 -06:00
Kurt
46c808d118 Enhance fail-retry PID generation for raids
try with criteria -> try with critera-w/o-IVs, try without any criteria
2025-01-08 01:02:00 -06:00