I don't think I really have a specific question, but I can give you details on where I'm stuck and what I tried.
Let's say that the ball is traversing a straight path from the player to the opponent and does not hit a wall at all. The opponent is supposed to calculate the ball's Z position when its X position matches that of the opponent's paddle; simply put, in the region where the opponent's paddle moves up or down. Somehow, that case is not executed as the debug output I'm getting says the Z position is 0.0 and do not react. (What I'm using is a Boolean flag to have the opponent move its paddle into position, and a float denoting the position where to move the paddle to.)
The other case is where the ball has to bounce once before it can reach the opponent's paddle zone. That case is not executed either.
What I tried using is Physics.Raycast; in the first case, to simply see whether or not the collider I hit is the opponent's goal zone, and if yes, find the position the paddle moves to based on the ball's position and the paddle's position. Basically, I am calculating some sort of scalar multiple to multiply the ball's speed vector by to get the ball's predicted Z position at the paddle zone. It's similar to the second case, except I use two Raycast because the first one has to hit either the north or south wall before I check whether the next raycast hits the goal zone (which is simply a Box Collider with a trigger).
There are two formulas I use for my scalar:
1 - scalar = (Mathf.Abs(transform.position.x) - Mathf.Abs(pongBall.getPosition().x)) / Mathf.Abs(pongBall.getSpeedVector().x);
2 - scalar = (Mathf.Abs(transform.position.x) - Mathf.Abs(collisionObject.normal.x)) / Mathf.Abs(Vector3.Reflect(pongBall.getSpeedVector(), collisionObject.normal).x);
I am using the X components of three Vector3 objects to get the scalar needed to multiply the speed vector of my Pong ball by to get the change in Z position.
I don't really have on-screen video footage to show you what's going on. Just the code, game data, and some photos to show what's happening.
Am I really making sense here? I don't know if I'm having a very hard time explaining this.