diff --git a/src/game/chars/CChar.cpp b/src/game/chars/CChar.cpp index c712e956e..e9d4cbffd 100644 --- a/src/game/chars/CChar.cpp +++ b/src/game/chars/CChar.cpp @@ -3867,8 +3867,8 @@ bool CChar::r_LoadVal( CScript & s ) _uiStatFlag = s.GetArgLLVal() & ~ (uint64)STATF_SAVEPARITY; break; } - // Don't modify STATF_SAVEPARITY, STATF_PET, STATF_SPAWNED here - static constexpr auto uiFlagsNoChange = (STATF_SAVEPARITY | STATF_PET | STATF_SPAWNED); + // Don't modify STATF_SAVEPARITY, STATF_SPAWNED here. Allow STATF_PET though. + static constexpr auto uiFlagsNoChange = (STATF_SAVEPARITY | STATF_SPAWNED); static constexpr auto uiFlagsRequireFullUpdate = (STATF_STONE | STATF_HIDDEN | STATF_DEAD); const auto uiCurFlags = _uiStatFlag; const auto uiNewFlags = s.GetArgULLVal(); diff --git a/src/game/chars/CCharSpell.cpp b/src/game/chars/CCharSpell.cpp index 62910f1f3..7caf3ca8b 100644 --- a/src/game/chars/CCharSpell.cpp +++ b/src/game/chars/CCharSpell.cpp @@ -350,7 +350,10 @@ CChar * CChar::Spell_Summon_Place( CChar * pChar, CPointMap ptTarg, int64 iDurat } pChar->StatFlag_Set(STATF_CONJURED); // conjured creates have no loot pChar->NPC_LoadScript(false); - ASSERT(FollowersUpdate(pChar, pChar->GetFollowerSlots(), true)); + if (IsSetOF(OF_PetSlots)) + { + ASSERT(FollowersUpdate(pChar, pChar->GetFollowerSlots(), true)); + } pChar->NPC_PetSetOwner(this); pChar->MoveToChar(ptTarg); pChar->m_ptHome = ptTarg;