If I use a script to shutdown my ESXi server in the event of a power outage, do I need to shutdown each VM or will ESXi shutdown all of the VMs for me? When I mean shutdown I mean a graceful shutdown not a hard power off.
ESXi will do this for you IF you have configured it to do so. Check the configuration tab and the virtual machine startup/shutdown setting. Ensure it is enabled and that you have defined your individual VM startup/shutdown requirements.