Commit Graph

11067 Commits

Author SHA1 Message Date
Kurt
fe32739494 Update 26.01.22 2026-01-22 19:07:33 -06:00
Kurt
106d09c74f SIZE_G9ZA_201 2026-01-21 20:07:39 -06:00
间辞
d9c7980fd3
Update CHS translations (#4694) 2026-01-14 09:44:06 -06:00
abcboy101
74ef6d7378
Validate Odd Egg OT when still an Egg (#4693) 2026-01-13 23:13:39 -06:00
Kurt
c7b5777068 Allow settings tab text to be translated
Remove unnecessary selection on launch (winforms bug?)
Increase first column width so OT Version doesn't wrap to 2 lines.

Remove some unused usings in other files (a result of color repointing to WinFormsUtil)

ty @randomguy155 for the OnShown workaround

Co-Authored-By: RandomGuy <69272011+RandomGuy155@users.noreply.github.com>
2026-01-13 01:45:38 -06:00
Kurt
aa2d83cda0 Update .editorconfig 2026-01-12 22:21:54 -06:00
Kurt
19655ec2ec Misc tweaks
no functional change
HaX popup now uses Task Dialog api for cleaner impl
2026-01-12 21:48:28 -06:00
Kurt
3489555f74 Add edge case handling for forgotten initial moves
bdsp/sv/swsh eggs in PLA: original egg relearn are unable to be referenced, so we need to permit all
similar for BDSP Underground special moves (egg move sharing via daycare though). Also for any oddballs in SWSH that had relearn moves for special moves.
2026-01-12 21:48:02 -06:00
Kurt
18c4f2be26 Relocate trade name fetch to EncounterUtil
Simplifies ResourceUtil to no longer have specialized methods specific to Pokémon

duplicates the gen7 zh trade files; not an issue in duplication (will compress out) and simplifies the array fetching operation to be a single method rather than many.
2026-01-12 21:07:20 -06:00
Kurt
2560b7c677 Check all languages for correct lengths
pesky eol
2026-01-12 21:05:25 -06:00
间辞
e63d514367
Update CHS Translation (#4691) 2026-01-11 01:14:24 -06:00
Kurt
6e482946e2 Add Gen4 HG/SS ball check
GUI would display the selected ball, but internally it was forced back to Poke.
Currently, the setter sanitizes both values, but if manually modified via external code, technically it could be in an invalid state.

- Add check if ball is disassociated from what is expected (modified outside of the GUI)
- GUI updates to the final (sanity checked) value regardless of what was selected.

https://projectpokemon.org/home/forums/topic/57375-pkhex-new-update-legality-errors-contribution-page/page/35/#findComment-298902
2026-01-11 00:55:05 -06:00
Kurt
3a8bc5889b Enhance H/W/S invalid messages, flag !255 alphas
https://projectpokemon.org/home/forums/topic/57375-pkhex-new-update-legality-errors-contribution-page/page/35/#findComment-298916

ty ATRociousFuBear
2026-01-11 00:37:48 -06:00
Kurt
4ea08b3403 Update MoveApplicator.cs 2026-01-10 23:27:28 -06:00
Kurt
733c829570 Minor tweak
Small reduction in allocation for a method that is ever so rarely used, but yay me
2026-01-10 23:17:47 -06:00
Kurt
06d95efc64 Moveset: add implicit ReadOnlySpan conversion
Clean up some usages where we duplicated methods. The one that remains for Relearn sequence equality is OK.
JIT compiler can lower the AsSpan to new Span(4, ptr) and give near-similar performance to InlineArray. I prefer it this way because InlineArray wouldn't work with new(1), as all 4 moves would need declaration.
2026-01-10 23:16:33 -06:00
Kurt
0fe0b704d1 Minor tweaks
Allow localizing the Legality Report and File Overwrite dialogs added in .NET 10 update

Simplify evo restriction check
2026-01-10 19:27:45 -06:00
Ka-n00b
99cb6769bd
Update GSC Event Flags and ZA Block Data (#4689)
* Update const_c_es-419.txt
* Update const_c_es.txt
* Update const_gs_es-419.txt
* Update const_gs_es.txt
* Update flags_c_es-419.txt
* Update flags_c_es.txt
* Update flags_gs_es-419.txt
* Update flags_gs_es.txt

* Update SaveBlockAccessor9ZA.cs (Rogue Mega Simulator)
2026-01-09 15:17:45 -06:00
Kurt
18f95269c0 Misc edge case tests
Gen9a Antishiny edge case
Evolve-move traversal tweaks; eager checks and more
2026-01-08 23:41:02 -06:00
André Bastos Dias
812f8e847e
Add Dragon Pulse as a Species Evolution Move for Naganadel (#4687) 2026-01-08 21:07:52 -06:00
Kurt
e9cb358c50 Improve Battle Revolution checksum calc
4.5 ms => 2.4 ms on my cpu (nearly 2x as fast), even better for lesser CPUs. Probably isn't worth parallelizing.
2026-01-08 19:50:46 -06:00
Kurt
e2c09730b5 Update 26.01.07
Sceptilite released
Revise XD eevee encounter generating for shiny requests (disregard insufficient TID/SID)
Skip "overwrite" popup if savefile was loaded from a backup (bak)
2026-01-08 00:48:28 -06:00
Kurt
3d74e763ba Misc dark mode color tweaks
Centralize remaining vibrant colors to WinFormsUtil
2026-01-08 00:26:09 -06:00
Kurt
e3fa760f52 Gift2: fix template->pk2 japanese enc
as observed in discussion #4684

now matches Gift1 implementation details

I really wish we had separate classes for PK1/PK2 for each language since the string buffers are different length, oh well this footgun exists.
2026-01-05 00:42:20 -06:00
Kurt
85abb48da3 Misc tweaks for Hoopa-1 plus flags
Merge handling with Rotom's handling
Add logic for "Require" & "Set All" operations -- if the form isn't 0.

https://projectpokemon.org/home/forums/topic/57375-pkhex-new-update-legality-errors-contribution-page/page/35/#findComment-298854
2026-01-04 23:44:57 -06:00
André Bastos Dias
7621087e7e
Fix EncounterCriteria#IsSpecifiedIVs xmldoc description (#4683) 2026-01-03 18:38:37 -06:00
Jonathan Herbert
2ea7a60f3b
Donut Timestamp Fixes + Improvements (#4681)
* Place Time After Date In Donut Editor Format

* Fix Donut Millisecond Offset Being 1970 Not 1900
2026-01-03 12:01:13 -06:00
Jonathan Herbert
fecd2a3ddb
Fix Importing Donut (#4680)
Also fix donutEditor not following the variable naming convention
2026-01-02 21:07:57 -06:00
Kurt
8c5eb6fa9f Extract some logic from QR7
Update notes, update method names.
10 years since this (apparently custom?) format was whipped up. Probably good to have more accurate documentation for this early-injection format?
2026-01-02 13:25:12 -06:00
Kurt
fb52a5ef18 Update EffortValueVerifier.cs
Closes #4679
ty @andrebastosdias !

Revise untrained EV check to flag Pokespot encounters (the only varied level range encounter in gen3/4) where min level might be less than the actual level it was obtained at. If/when pokespot correlation is better refined, can switch to evotree level min for a gen3->4 transfer, so that something at a not-minimum exact level can be flagged if it has non-Vitamin EVs.
2026-01-02 13:10:17 -06:00
Kurt
5f65b333ba Update dependencies
Minor simplification in QRCode gen
2025-12-31 02:12:20 -06:00
Kurt
fc167caea3 Update readmes per net10/c#14 2025-12-31 01:50:51 -06:00
Kurt
2c541ad422
Update to .NET 10 (#4676)
* Update to .NET 10
* Property fields
* API signature updates
* Extension method blocks

* Completed dark mode support
  Outside of my control:
- vertical tab control (pkm editor)
- datetimepicker controls
- lgpe event flags (no idea)
- some control types having white-borders when they should really be gray

Box background is 50% transparency to effectively darken the image.

* Custom legality report popup
* Event diff dialog, version select dialog
* Add quick overwrite popup for export sav
* Extension methods
* Dark Mode: glow currently editing sprite
* Add invalid encounter hint for trade evolutions
* Extension properties
* Append legality hint on hover card
* Slot image loading: clear the screen-reader description if a slot is empty/invalid, rather than retain the previous description. Changing boxes would easily confuse users on this.
2025-12-31 01:42:05 -06:00
Parnassius
4ee9e4ad31
Misc fixes for FormInfo (#4678) 2025-12-31 01:21:44 -06:00
Parnassius
af98a5b5e9
Fix FormInfo.IsBattleOnlyForm for Zygarde-Complete (#4677) 2025-12-30 12:10:40 -06:00
Parnassius
972aaba5fa
Add Zygarde to FormInfo.BattleMegas (#4667)
`IsBattleMegaForm` already checks for Mega Zygarde, but since it's only
called if the species is in `BattleMegas`, both `IsBattleOnlyForm` and
`IsMegaForm` currently return false for Mega Zygarde
2025-12-29 15:24:40 -06:00
RandomGuy
3ca4acd7d2
Add Donut Flavor Profile Display to Donut Editor (#4673)
* Add Donut Flavor Profile Display to Donut Editor

* Update profile on berry change
2025-12-29 15:20:54 -06:00
RandomGuy
870c10ea5e
Refactor SAV_Misc3 Battle Frontier editor to use object-oriented block (#4670)
* Refactor SAV_Misc3 Battle Frontier editor to use object-oriented block class

Replaces direct byte array manipulation with BattleFrontier3 struct:
- Encapsulates all offset calculations and data access
- Uses type-safe enums for facilities, modes, and stats
2025-12-29 14:56:10 -06:00
902PM
305a2733c6
Update Japanese Flags Translations (#4671)
* Update const_c_ja.txt
* Update flags_c_ja.txt
* Update flags_gs_ja.txt
* Update flags_dp_ja.txt
* Update flags_pt_ja.txt
* Update const_bw_ja.txt
* Update const_b2w2_ja.txt
* Update flags_c_ja.txt
2025-12-29 14:13:14 -06:00
Kurt
e1f6847ed9 Extend duplicate mega stone checker -> unique
Now covers primal orbs too.
Update translations, enhanced to show the item ID that they're duplicate (less to check when inspecting an output)
2025-12-29 14:11:35 -06:00
Kurt
d6cb992d11 Fix typo
happy now, cleo-caretaker?
2025-12-21 14:26:10 -06:00
Kurt
61a13fda08 Update EncounterStatic9a.cs 2025-12-21 14:20:27 -06:00
Kurt
31edf20c87 Update 25.12.21
Moves one of the Evolution deferral checks to the encounter template where it triggers; no other encounter case will trip that check so it's OK to move it there. One less thing for every other encounter to check.

Revises the "met date present but no met location" to only flag if the encounter was matched to something. It'll already yell at mismatched encounters, no need to pile on more. The check only exists for eggs (no location).
2025-12-21 12:59:55 -06:00
Kurt
7d1bcfa354 Z-A: Add Street Name side-mission string 2025-12-20 14:49:22 -06:00
Kurt
6609dd210b Misc legality fixes for Z-A alterations
- Evolving knowing move: relearnable additions in the evolved stage was bypassing the requirement (Sylveon can relearn Charm at any level, but Eevee cannot). Prune tree to only check if pre-evolutions could have learned move.
- FormArgument requiring a minimum level to actually use the move (Primeape). Probably isn't a "complete" check, since it's implemented differently compared to Qwilfish's logic. Might be worth revising in the future to be consistent (using the same as Primeape logic? if in game, and can learn, can increase from 0).
- Flag Hangry Morpeko if cannot learn Aura Wheel yet
- Flag mega evo mismatches for Tatsugiri/Magearna/Meowstic
- Permit mega meowstic gender in party

- Remap DLC TMs (I forgot this remapping was needed; pkNX dumped it but I didn't update the table until now...)
2025-12-20 14:44:08 -06:00
RandomGuy
1edfbfab0e
Add Flavor Image Display to Donut Editor (#4666) 2025-12-20 12:45:10 -06:00
hexbyt3
cdbc2b5599
Z-A: Remove outdated comment in BallUseLegality.cs (#4664)
Removed comment for Dream/Beast Ball legality in ZA. Ball is available with the introduction of the Mega Dimension DLC.
2025-12-18 16:16:52 -06:00
间辞
bc0f255ae3
Z-A: Add CHS translation for trainer editor Collect TMs button (#4663) 2025-12-18 16:14:55 -06:00
sora10pls
2bba2b2c8d Unban Baxcalibrite 2025-12-18 07:52:40 -05:00
RandomGuy
bb41fb70e6
Add Star Display to Donut Editor (#4662) 2025-12-17 23:36:49 -06:00