Skip to content

Commit

Permalink
Update 23.10.11
Browse files Browse the repository at this point in the history
Add sizes for 2.0.2
Add crossover Unown-C location for PLA - Closes #4031
  • Loading branch information
kwsch committed Oct 12, 2023
1 parent 0491ab2 commit 4877c63
Show file tree
Hide file tree
Showing 7 changed files with 41 additions and 28 deletions.
2 changes: 1 addition & 1 deletion Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project>
<PropertyGroup>
<Version>23.09.25</Version>
<Version>23.10.11</Version>
<LangVersion>11</LangVersion>
<Nullable>enable</Nullable>
<NeutralLanguage>en</NeutralLanguage>
Expand Down
1 change: 1 addition & 0 deletions PKHeX.Core/Legality/Encounters/Data/Gen8/Encounters8a.cs
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ internal static class Encounters8a
new(201,027,25,U) { Location = 006, Method = Fixed }, // Unown ?

// Future updates will handle crossovers better.
new(201,002,25,U) { Location = 010, Method = Fixed }, // Unown C (Coronet Highlands)
new(201,017,25,U) { Location = 009, Method = Fixed }, // Unown R (Cobalt Coastlands)
new(201,026,25,U) { Location = 099, Method = Fixed }, // Unown ! (Arena’s Approach)
new(201,026,25,U) { Location = 141, Method = Fixed }, // Unown ! (Icepeak Arena)
Expand Down
Binary file modified PKHeX.Core/Resources/legality/wild/encounter_go_home.pkl
Binary file not shown.
Binary file modified PKHeX.Core/Resources/legality/wild/encounter_go_lgpe.pkl
Binary file not shown.
1 change: 0 additions & 1 deletion PKHeX.Core/Saves/Access/SaveBlockAccessor9SV.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System.Collections.Generic;
using System.Runtime.CompilerServices;
// ReSharper disable UnusedMember.Local
#pragma warning disable IDE0051 // Remove unused private members
#pragma warning disable RCS1213 // Remove unused member declaration.
Expand Down
52 changes: 27 additions & 25 deletions PKHeX.Core/Saves/Util/SaveUtil.cs
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,8 @@ public static class SaveUtil
};
#endif

private const int SIZE_G9_202 = 0xC8E; // Add 2 blocks (1 obj 0xC80, 1 bool) = 4{key}1{obj}4{len} + 4{key}1{boolT/boolF}

private static readonly HashSet<long> SizesSV = new()
{
SIZE_G9_0, SIZE_G9_0a,
Expand All @@ -155,31 +157,31 @@ public static class SaveUtil
SIZE_G9_3G0, SIZE_G9_3G1,
SIZE_G9_3P0, SIZE_G9_3P1,

SIZE_G9_DLC1_0,
SIZE_G9_DLC1_1,
SIZE_G9_DLC1_2,
SIZE_G9_DLC1_3,
SIZE_G9_DLC1_4,
SIZE_G9_DLC1_5,
SIZE_G9_DLC1_6,
SIZE_G9_DLC1_7,
SIZE_G9_DLC1_8,
SIZE_G9_DLC1_9,
SIZE_G9_DLC1_A,
SIZE_G9_DLC1_B,
SIZE_G9_DLC1_C,
SIZE_G9_DLC1_D,
SIZE_G9_DLC1_E,
SIZE_G9_DLC1_F,
SIZE_G9_DLC1_G,
SIZE_G9_DLC1_H,
SIZE_G9_DLC1_I,
SIZE_G9_DLC1_Q,
SIZE_G9_DLC1_W,
SIZE_G9_DLC1_R,
SIZE_G9_DLC1_T,
SIZE_G9_DLC1_Y,
SIZE_G9_DLC1_U,
SIZE_G9_DLC1_0, SIZE_G9_DLC1_0 + SIZE_G9_202,
SIZE_G9_DLC1_1, SIZE_G9_DLC1_1 + SIZE_G9_202,
SIZE_G9_DLC1_2, SIZE_G9_DLC1_2 + SIZE_G9_202,
SIZE_G9_DLC1_3, SIZE_G9_DLC1_3 + SIZE_G9_202,
SIZE_G9_DLC1_4, SIZE_G9_DLC1_4 + SIZE_G9_202,
SIZE_G9_DLC1_5, SIZE_G9_DLC1_5 + SIZE_G9_202,
SIZE_G9_DLC1_6, SIZE_G9_DLC1_6 + SIZE_G9_202,
SIZE_G9_DLC1_7, SIZE_G9_DLC1_7 + SIZE_G9_202,
SIZE_G9_DLC1_8, SIZE_G9_DLC1_8 + SIZE_G9_202,
SIZE_G9_DLC1_9, SIZE_G9_DLC1_9 + SIZE_G9_202,
SIZE_G9_DLC1_A, SIZE_G9_DLC1_A + SIZE_G9_202,
SIZE_G9_DLC1_B, SIZE_G9_DLC1_B + SIZE_G9_202,
SIZE_G9_DLC1_C, SIZE_G9_DLC1_C + SIZE_G9_202,
SIZE_G9_DLC1_D, SIZE_G9_DLC1_D + SIZE_G9_202,
SIZE_G9_DLC1_E, SIZE_G9_DLC1_E + SIZE_G9_202,
SIZE_G9_DLC1_F, SIZE_G9_DLC1_F + SIZE_G9_202,
SIZE_G9_DLC1_G, SIZE_G9_DLC1_G + SIZE_G9_202,
SIZE_G9_DLC1_H, SIZE_G9_DLC1_H + SIZE_G9_202,
SIZE_G9_DLC1_I, SIZE_G9_DLC1_I + SIZE_G9_202,
SIZE_G9_DLC1_Q, SIZE_G9_DLC1_Q + SIZE_G9_202,
SIZE_G9_DLC1_W, SIZE_G9_DLC1_W + SIZE_G9_202,
SIZE_G9_DLC1_R, SIZE_G9_DLC1_R + SIZE_G9_202,
SIZE_G9_DLC1_T, SIZE_G9_DLC1_T + SIZE_G9_202,
SIZE_G9_DLC1_Y, SIZE_G9_DLC1_Y + SIZE_G9_202,
SIZE_G9_DLC1_U, SIZE_G9_DLC1_U + SIZE_G9_202,
};

private static readonly HashSet<long> SizesSWSH = new()
Expand Down
13 changes: 12 additions & 1 deletion PKHeX.WinForms/Resources/text/changelog.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,18 @@
PKHeX - By Kaphotics
http://projectpokemon.org/pkhex/

23/09/25 - New Update:
23/10/11 - New Update:
- Added support for Scarlet & Violet 2.0.2 save file sizes.
- Legality:
- - Badwords list has been updated to be more strict per latest Nintendo Switch 16.0.0 firmware. Thanks @Bl4ckSh4rk!
- - Gen9 Distribution Outbreaks now recognized. Thanks @Lusamine & @sora10pls!
- - Gen9 Crossover met location logic tweaked for better location identification in Kitakami.
- - Gen4 Pokéwalker IV spreads are now validated. Thanks @Lincoln-LM & @HappyLappy1!
- Added: Gen8 SW/SH adventure start date can now be changed in the Trainer Editor. Thansk @foohyfooh!
- Added: Gen4 Pokeathlon Points can now be edited via the Block Editor.
- Fixed: Initial program startup now notifies all plugins when a save is loaded on startup.

23/09/25 - New Update: (100007) [7579695]
- Added support for more Scarlet & Violet 2.0.1 save file sizes.
- Legality: Added more Kitakami encounters (sub-zones) and basic weather mark recognition.
- Fixed: Encounter template recognition regressions resolved (Gen4 Pokewalker, Gen9 static encounter scale).
Expand Down

0 comments on commit 4877c63

Please sign in to comment.