Ugh it's still not working correctly.
Spoiler: code (click to see content)
[State 0, PosAdd]
type = PosAdd
trigger1 = !Time
x = P2Dist X +250;Cond(Facing = -1,(enemy, Pos X)-150,(enemy, Pos X)+150)
[State 0, ScreenBound]
type = ScreenBound
trigger1 = !Time
value = 0
[State 0, Width]
type = Width
trigger1 = !Time
edge = 1,0
player = 150,0
[State 0, Turn]
type = Turn
trigger1 = AnimElem = 2
The issue isn't really the camera. P1 always appears at slightly different locations behind P2 depending on their location on the screen and the edge.
Examples
Do the move right after round 1 neither chars move from starting point. P1 appears right behind P2 because of the camera edge of screen.
P1 walks to left edge of screen back to the wall. P2 right in front of P1. Move appears far behind P2.
I think I need to resolve this before I can resolve the out of screen issue