見たところ SpawnActorFromClass
に関しては特に怪しいところがありません
エラー内容と処理の全体像がわからないのでいつのタイミングの処理かわかりませんが、Spawnそのものではなくその前の GetAllActorsOfClass
から0番目を取っているところの処理が原因ではないですか?
もし指定のClassがない場合、配列は空になるので0番目を取ろうとするとエラーになります
もしこの処理がBeginPlayあたりで行われている場合、PlayInEditorとRuntimeでの動作の違いを認識する必要があります
PIEではLevel上に置かれているActorが既にロードされた状態から始まるため、どのActorのBeginPlayでも互いを認識することが可能ですが、Runtimeではロード完了したActorから順次BeginPlayが実行されるため、ロード順が前後すると目的のActorを参照できない場合があります