diff --git a/PKHeX.Core/Game/GameUtil.cs b/PKHeX.Core/Game/GameUtil.cs
index d3d07f42c..8138a9e7b 100644
--- a/PKHeX.Core/Game/GameUtil.cs
+++ b/PKHeX.Core/Game/GameUtil.cs
@@ -84,6 +84,10 @@ public static GameVersion GetMetLocationVersionGroup(GameVersion Version)
case GP: case GE:
return GG;
+ // Gen8
+ case SW: case SH:
+ return SWSH;
+
default:
return Invalid;
}
@@ -230,6 +234,10 @@ public static bool Contains(this GameVersion g1, GameVersion g2)
case Gen7:
return SM.Contains(g2) || USUM.Contains(g2) || GG.Contains(g2);
+ case Gen8:
+ case SWSH:
+ return g2 == SW || g2 == SH;
+
default: return false;
}
}
diff --git a/PKHeX.Core/Game/GameVersion.cs b/PKHeX.Core/Game/GameVersion.cs
index 350a1fb1c..e3118a455 100644
--- a/PKHeX.Core/Game/GameVersion.cs
+++ b/PKHeX.Core/Game/GameVersion.cs
@@ -192,6 +192,16 @@ public enum GameVersion
/// Pokémon Let's Go Eevee (NX)
///
GE = 43,
+
+ ///
+ /// Pokémon Sword (NX)
+ ///
+ SW = 44,
+
+ ///
+ /// Pokémon Shield (NX)
+ ///
+ SH = 45,
#endregion
// The following values are not actually stored values in pkm data,
@@ -332,9 +342,9 @@ public enum GameVersion
///
/// Pokémon Omega Ruby & Alpha Sapphire version group.
///
+ /// Used to lump data from the associated games as data assets are shared.
///
///
- /// Used to lump data from the associated games as data assets are shared.
ORAS,
///
@@ -361,6 +371,14 @@ public enum GameVersion
///
GG,
+ ///
+ /// Pokémon Sword & Shield
+ ///
+ /// Used to lump data from the associated games as data assets are shared.
+ ///
+ ///
+ SWSH,
+
///
/// Generation 1 Games
///
@@ -406,8 +424,15 @@ public enum GameVersion
///
///
///
+ ///
Gen7,
+ ///
+ /// Generation 8 Games
+ ///
+ ///
+ Gen8,
+
///
/// Generation 1/2 Game Boy Cartridge Era Only
///