謎ではありません。当然そうなる、という組み方をしています
まず1のグラフですが、Eキーを押す前にBeginOverlap側に接続されたCastが成功していない場合、変数にセットされるもの(Castノードから取得している参照)がNoneになり、その後のAttachActorToComponentがエラーにより失敗します
2も同様に、Eキーが押される前にEndOverlapに接続されたCastが成功しない場合、Castノードにある参照がNoneであるため、 As BP Orbs
は取得できずエラーになります
ノードはどこからでも接続できるように見えますが、正しく構築するために守るべきルールがあります
別の実行ライン(イベント)のノードの出力を拾うべきではありません
各イベントノード、非Pureの関数ノードは最後に実行されたときの実行結果を保持しますが、実行されていない場合は初期値(オブジェクト参照であればNone)です
逆に、実行されてしまえば値が変わるということでもあります
BeginOverlap、EndOverlapなどは特に、何度も発生する可能性があるイベントであり、保持している値もその度に変更されるため、変数と同列に見るには非常に不安定です
イベントや入力は絶対に順番通りであり、特定の状況しか起こり得ない、と断言できるのであれば、画像のような組み方は許容されますが、そうでないのであれば、変数を使うなどして実行ラインを分離し、実行が前後しても問題ない作りにする必要があります