diff --git a/apps/openmw/mwmp/Cell.cpp b/apps/openmw/mwmp/Cell.cpp
index b8cdbb73c..679379d59 100644
--- a/apps/openmw/mwmp/Cell.cpp
+++ b/apps/openmw/mwmp/Cell.cpp
@@ -257,6 +257,7 @@ void Cell::readCellChange(ActorList& actorList)
             if (cellController->isActiveWorldCell(dedicatedActor->cell) && !cellController->hasLocalAuthority(dedicatedActor->cell))
             {
                 LOG_APPEND(Log::LOG_INFO, "- Moving DedicatedActor %s to our active cell %s", mapIndex.c_str(), dedicatedActor->cell.getDescription().c_str());
+                cellController->initializeCell(dedicatedActor->cell);
                 Cell *newCell = cellController->getCell(dedicatedActor->cell);
                 newCell->dedicatedActors[mapIndex] = dedicatedActor;
                 cellController->setDedicatedActorRecord(mapIndex, newCell->getDescription());
diff --git a/apps/openmw/mwmp/DedicatedActor.cpp b/apps/openmw/mwmp/DedicatedActor.cpp
index e646f8120..b23abaf26 100644
--- a/apps/openmw/mwmp/DedicatedActor.cpp
+++ b/apps/openmw/mwmp/DedicatedActor.cpp
@@ -80,7 +80,6 @@ void DedicatedActor::move(float dt)
     else
     {
         setPosition();
-        setMovementSettings();
         hasChangedCell = false;
     }