I was just thinking... what if Factorio it's the perfect waterfall project?
clear and unchanging requirement (build and launch a rocket), infinite time, infinite resources, perfect technology. The only bugs are those attacking you from time to time.
The only thing left to do is to implement the solution, in whatever manner you please, as long as the requirement is met.
Maybe that's what keeps a programmer so addicted to it; with no stress of changing requirements, or pivoting, or deadlines, one can 100% focus on the technical part.