diff --git a/engine/server/library/serverGame/src/shared/object/BuildingObject.cpp b/engine/server/library/serverGame/src/shared/object/BuildingObject.cpp index c5837782..25cabb41 100755 --- a/engine/server/library/serverGame/src/shared/object/BuildingObject.cpp +++ b/engine/server/library/serverGame/src/shared/object/BuildingObject.cpp @@ -613,6 +613,15 @@ bool BuildingObject::isAllowed(CreatureObject const &who) const if (who.hasCondition(static_cast(ServerTangibleObjectTemplate::C_vendor))) return true; + // allow non-player-controlled creatures in private buildings if the *creature* has no owner + if (!who.isPlayerControlled() + && who.getMasterId() == NetworkId::cms_invalid + && who.getLevel() < 0 + ) + { + return true; + } + return CellPermissions::isOnList(m_allowed.get(), who); } }