diff --git a/Dalamud/Configuration/Internal/DalamudConfiguration.cs b/Dalamud/Configuration/Internal/DalamudConfiguration.cs
index 9404b5b10..d546dc517 100644
--- a/Dalamud/Configuration/Internal/DalamudConfiguration.cs
+++ b/Dalamud/Configuration/Internal/DalamudConfiguration.cs
@@ -487,6 +487,14 @@ internal sealed class DalamudConfiguration : IInternalDisposableService
///
public Vector2 NotificationAnchorPosition { get; set; } = new(1f, 1f);
+#pragma warning disable SA1600
+#pragma warning disable SA1516
+ // XLCore/XoM compatibility until they move it out
+ public string? DalamudBetaKey { get; set; } = null;
+ public string? DalamudBetaKind { get; set; }
+#pragma warning restore SA1516
+#pragma warning restore SA1600
+
///
/// Load a configuration from the provided path.
///
diff --git a/Dalamud/Dalamud.csproj b/Dalamud/Dalamud.csproj
index b9b453f89..090301c10 100644
--- a/Dalamud/Dalamud.csproj
+++ b/Dalamud/Dalamud.csproj
@@ -6,7 +6,7 @@
XIV Launcher addon framework
- 13.0.0.11
+ 13.0.0.12
$(DalamudVersion)
$(DalamudVersion)
$(DalamudVersion)
diff --git a/Dalamud/Game/Player/PlayerState.cs b/Dalamud/Game/Player/PlayerState.cs
index 917c946db..bd19b5bfb 100644
--- a/Dalamud/Game/Player/PlayerState.cs
+++ b/Dalamud/Game/Player/PlayerState.cs
@@ -77,7 +77,7 @@ internal unsafe class PlayerState : IServiceType, IPlayerState
public RowRef ClassJob => this.IsLoaded ? LuminaUtils.CreateRef(CSPlayerState.Instance()->CurrentClassJobId) : default;
///
- public short Level => this.IsLoaded ? CSPlayerState.Instance()->CurrentLevel : default;
+ public short Level => this.IsLoaded && this.ClassJob.IsValid ? this.GetClassJobLevel(this.ClassJob.Value) : this.EffectiveLevel;
///
public bool IsLevelSynced => this.IsLoaded && CSPlayerState.Instance()->IsLevelSynced;
diff --git a/Dalamud/Plugin/Services/IPlayerState.cs b/Dalamud/Plugin/Services/IPlayerState.cs
index 1416dfb77..21d88010b 100644
--- a/Dalamud/Plugin/Services/IPlayerState.cs
+++ b/Dalamud/Plugin/Services/IPlayerState.cs
@@ -79,7 +79,7 @@ public interface IPlayerState : IDalamudService
bool IsLevelSynced { get; }
///
- /// Gets the effective level of the local character.
+ /// Gets the effective level of the local character, taking level sync into account.
///
short EffectiveLevel { get; }