Unfortunately the variables that are being sent down to the child project are part of the deployment variable manifest. They are not part of the release snapshot. Each time a deployment is run the variables from the release snapshot are copied over to the deployment, during the deployment other variables are injected (such as prompted variables, task id, deployment environment) or created during the deployment run itself (such as output variables).
There are a couple of options to pull those values.
The first option is to save those values to a json file on a shared drive when you call the child project from the parent project. When the child project runs it can see if values are passed to those prompted variables, if they are empty, then you could read from that json file and use those values.
The second option is to have a run a script step at the start of the child project. That script will use the Octopus Deploy Rest API to find the last deployment of the child project, then pull the deployment variable manifest from the rest API.
This will get you all the deployments that were successful for a specific project to an environment.
That will return this:
Using that deployment id you can then query this endpoint
That will return this object:
Using that endpoint you can then pull back the variables used in that deployment. That will return an object like this which you can loop through to find those values
From there you can set output variables (Output variables - Octopus Deploy) to be used by later scripts.