My advanced human civilisation often has high-acceleration ships travelling at near lightspeed. I know that time dilation would have a significant effect on the time experienced by the crews, but I've no idea how to calculate how much when they're under constant thrust - my usual calculation of averaging speeds won't work here as time dilation isn't linear. How can I calculate the time difference and eventual speed for 1 million G acceleration for 30min real time, or how long it would take to reach 50% lightspeed at 1 million G (for example)?
Velocity = acceleration x time, so time = velocity/acceleration. As pointed out in comments, at 1 million Gs, it would take 15.29 seconds to reach half of light speed. It would thus take 30.58 seconds (from the point of view of an outside observer) to reach light speed. Which, of course, you could never actually reach. Obviously, then accelerating for 30 minutes at that acceleration is an absurd premise.
Given the very brief period of time in which they're accelerating to start and decelerating to end the journey to get to and back from that 0.5c cruising velocity, calculating the change in time dilation for that 15 seconds at the start and end is sort of pointless. You simply have to take calculation for the time dilation at your cruising velocity (it's 86.6% by the way; if your trip takes exactly 100 minutes, the crew will experience 86.6 minutes).