The reason they stuck with Hero Engine was because it afforded the rest of the team a functioning toolset that we could use right out the gate to get work done like greybox zones and start adding real assets and shaping the worlds. Sometimes companies have to pretend to build their worlds in 3ds Max for years until the client is ready to support them, which is a horrible nightmare because you can never see what it will really look like. It'd be like playing with legos with a blindfold on. Hero Engine also had the advantage of a live environment so instead of working locally and waiting for a build every day to see all your changes, you worked in the game itself and it allowed simultaneous development of the same areas, which meant more than one person could work on a piece at the same time. For these things it was hugely successful.
On the other hand, if the server or client wasn't working you suddenly had 400 very expensive internet surfers on your hands. If there were severe recurring issues with the latest build you had several days of unproductive developers. In a worst case scenario you irretrievably lose days of client work that everyone thought was getting saved. I swear to god there was a straight four-month period one time where I accomplished nothing at all.
By the end of the project any programmer would tell you that it wasn't Hero Engine any more. They pretty much did the equivalent of replacing each brick of a house with a different size and shape brick one at a time, or as one guy described it during a company meeting "trying to build the plane while it's in flight".
As for the engine itself, it had its quirks just like any other engine, but it wasn't so bad as a toolset.The main problem for art was that it just didn't support any modern graphical features and the lighting model was archaic.