I think the best way to load life based upon a quest would be to do it all via special load scripts where they check to see if a condition has been met, and if it has not, then nothing loads. I suck at scripting, so I wouldn't know. :/
There are several ways to set up a scenario like that. One condition is usually that there is only one way to enter the zone, so that you can put a script on that entrance room and make the rest of the rooms !teleport_in. After a player solves the mystery, a wizinvis mob will be loaded, who will load the rest of the mobs in the appropriate rooms. The first script would also add a zone_reset script on the entrance room, that would perform the same thing each time someone enters the zone, (provided the mobs aren't already loaded). This is a way to make the zone populated for every player that enters, after the initial puzzle has been solved by someone.
Depending on what you want, you could also make it so that the sea only gets populated when a player who actually solved the quest himself enters it. A script on the first room would check if the player has the right flag and, dependent on that flag, start the mob script that loads the rest of the population. (In that case the mobs would all need a script to purge themselves each time the zone resets, or they'd stay until someone kills them). If someone without the right flag enters the zone, it just stays empty.
However, if it were me, and if I really wanted the change to be permanent, and the first player to get the eternal glory on a plaque after solving the mystery and saving the ocean, I'd probably just exchange the zone file. I'd have a zone file with full resets ready, but use an empty duplicate until the initial quest was solved. Scripts are fun, but they sometimes screw up. So why risk complications and add to the memory load, unless it's necessary?
On a different note, you'll have to learn to write your own scripts, Toch. This may sound a bit harsh, but the truth is, that you cannot depend on others to do your scripting. It takes some effort and some testing and experimenting, but the only way to really get better at scripting is to start out simple and then learn from your own errors, like the rest of us have. I'm certainly willing myself to give suggestions, to answer questions, when I can, and also to provide examples, if I have any, but I am not going to write your scripts for you. And I am pretty sure the same goes for the rest of the staff. We all have our own projects that take priority.
Perhaps you can persuade someone else to do some scripting for you. There are several players who don't really want to build themselves, but are good at dabbling with scripts. But this is always a gamble. If your helper tires in the middle of the job, you'll be stuck with a number of half finished scripts, which you have zero chance of fixing yourself, because you don't understand how they are supposed to work. And there is a definite risk of that happening. It's happened to me, so I know how frustrating that situation can become. In the end there aren't really any shortcuts - if you want to be sure that a job is finished, you need to do it yourself.