PKHeX/PKHeX.Core
Cynthia Coan f2a6abbb6c
validate nickname characters within gen4 (#4382)
pkmnclassic has recently had some pokemon traded that cause game
crashes when viewing the pokemon's information, or when trying to
remove the pokemon for these boxes. most of these pokemon were reported
legal by pkhex however. this fixes the biggest use of these we've seen
actively traded (some of the other checks require more validation, as
they seemed to be buggy, we intend to validate those & send more PRs if
needed).

this check effectively covers "NULL Bytes" within the trainers name,
or the pokemon's nickname. We have attached an example pk4 that was
traded through our service that exhibits this issue, a couple notes:

- Generation 5+ seem to not be affected and replace character names with
  '?'
- Not all screens crash inside of Generation 4, the big ones our users
  noticed were viewing the pokemons information, and removal from the
  boxes.
- I also got a crash in pokemon ranch, but my testing setup was pretty
  hacky, and I'm not confident it wasn't something else, but we know
  it's potentially possible.

- We check for the terminator character '\uffff' which the pkhex string
  converter inserts implicitly when encountering an invalid character,
  but the actual underlying character when performing a hex dump is
  `\0`.
2024-11-11 22:28:01 -06:00
..
Editing EncounterCriteria: sbyte IVs 2024-10-01 00:00:19 -05:00
Game Standardize language codes and improve locale handling (#4353) 2024-09-04 18:51:35 -05:00
Items Misc tweaks 2024-01-02 15:45:35 -08:00
Legality validate nickname characters within gen4 (#4382) 2024-11-11 22:28:01 -06:00
Moves Revise SWSH dummied moves bitflag array 2024-06-24 12:19:23 -04:00
MysteryGifts Add manual handling for Mainland China gifts 2024-11-11 10:05:17 -06:00
PersonalInfo Add computed BaseEXP to SV personal info 2024-09-16 09:12:21 -05:00
PKM Revise enc1/2 -> pk1/2 nickname set 2024-11-10 09:32:33 -06:00
Resources Labels for Gen 5 Trainer Records (plus renamed flag) (#4362) 2024-11-09 09:08:57 -06:00
Ribbons Extract some AffixedRibbon logic 2024-08-19 21:11:08 -05:00
Saves Fix HGSS box saving (empty->not) 2024-11-11 22:25:34 -06:00
Util Standardize language codes and improve locale handling (#4353) 2024-09-04 18:51:35 -05:00
PKHeX.Core.csproj Update .NET Runtime to .NET 8.0 (#4082) 2023-12-03 20:13:20 -08:00