I have added variables for the network host and port and assigned these to my live enviroment.
<network host="#{_host}" port="#{_Port}" />
This means they have been left blank for my staging enviroment and not assigned and this is stopping the forms from running and its being added to the enviroment config-
<network host="" port="" />
Do I need to include a bit of powershell to delete this line for the staging enviroment and then add it back in for the live enviroment? im not really sure about this?
Removing a line from a config is best handled by using a Configuration Transform, which will apply modifications to your files based on different environments in the deployment process.
For your specific example: Once Configuration Transforms is enabled and configured in your deployment step, you could use a transform along these lines to remove the line from the Web.config when the project is deployed to Staging: