The vector difference is exactly the same as in the screenshot I already posted. The rest is pretty straightforward: Vector Length on the difference vector and Branch to check whether the vector length is > max_distance or not. The only addition I would like to make is to use a DoOnce node before each Start Camera Fade and reset it from the other one, otherwise the fades will keep being called and they won’t work as expected.
Give it a try and post your progresses here. If you don’t manage to make it work I am sure you will receive some more help.
You want to allow them to move a little bit, as he was explaining above, what you want to do is track just how far they have moved outside of the initial location and prevent them from going farther than a distance that you set.
If you literally lock their head in place and only allow rotation it is a pretty terrible experience.
Weird, it wasn’t showing me this second page when I replied to that post on the first one.
To prevent cheating since you are blacking out vision anyway you can actually keep offsetting the position on tick if it is over that max length. The stop won’t be noticed as the screen will be full black by then, and it will keep the player in the defined box no matter how far they walk. Then you can add in re-calibration timers or a button so that they can go sit down or something and re-init into the center of the seat.