From ba6ef7e2dfb772a3581ff1700d657d577c655de9 Mon Sep 17 00:00:00 2001 From: Xurkon <36556990+Xurkon@users.noreply.github.com> Date: Tue, 24 Feb 2026 16:40:05 -0600 Subject: [PATCH] Fix: Add nil checks to QuestiePlayer:Initialize to prevent arithmetic errors on custom servers --- Modules/QuestiePlayer.lua | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/Modules/QuestiePlayer.lua b/Modules/QuestiePlayer.lua index cd23d24..a0587ca 100644 --- a/Modules/QuestiePlayer.lua +++ b/Modules/QuestiePlayer.lua @@ -36,16 +36,20 @@ QuestiePlayer.numberOfGroupMembers = 0 QuestiePlayer.pendingCompleteQuestIds = {} function QuestiePlayer:Initialize() - _QuestiePlayer.playerLevel = UnitLevel("player") + _QuestiePlayer.playerLevel = UnitLevel("player") or 1 playerRaceId = select(3, UnitRace("player")) - playerRaceFlag = 2 ^ (playerRaceId - 1) - playerRaceFlagX2 = 2 * playerRaceFlag + if playerRaceId then + playerRaceFlag = 2 ^ (playerRaceId - 1) + playerRaceFlagX2 = 2 * playerRaceFlag + end - playerClassName = select(1, UnitClass("player")) + playerClassName = select(1, UnitClass("player")) or "UNKNOWN" local classId = select(3, UnitClass("player")) - playerClassFlag = 2 ^ (classId - 1) - playerClassFlagX2 = 2 * playerClassFlag + if classId then + playerClassFlag = 2 ^ (classId - 1) + playerClassFlagX2 = 2 * playerClassFlag + end end --Always compare to the UnitLevel parameter, returning the highest.