Monsters Returning Home

From Levistras
Jump to navigation Jump to search

Original Link (now dead) - http://acdm.turbinegames.com/featuredarticles/?action=view&article_id=176

Archive Turbine Games 2001 banner-mainpiece.jpg

Monsters Returning Home


By Alicia Brown

Going Home. Finally, after months (and in some cases, years) of being in foreign territory, the creatures of Dereth are returning home. Tired of roaming alien lands or enduring harsh conditions, the call to return to their native climates has inspired them to migrate back to familiar and welcome terrain. As players traverse the Dereth frontiers, they no longer encounter Mattekars panting in the desert. Nor Sclavus or Mosswarts. Lugians are no longer found in the northern regions. (The truth is, they never really did like it there.) All creatures, with the exception of those that carry with them special treasure chests, have made their way back to the home climate. Additionally, all creatures are set to a more level-centric style of hunting ground.

This was and will continue to be a large and complicated process. Nearly everyone participated. During the planning stages, the entire team discussed and decided on the level categorizations (Newbie = 1-20, High = 60+, etc.) and where these level breaks would appear on the countryside (e.g., Dires are High and Extreme, NW Osteth is High). This high-level broad implementation has been incorporated in this month's event. While a lot of time has been and continues to be spent on strategy for the rebalancing of monsters, the nitty-gritty details involved in rebalancing all monsters will be worked in over time.

Orion built the generators (for more information on generators, see the article about generators in the Quest Implementation series). Percentage tables are used to raise and lower the probability for creatures to be brought into the world by a generator. Orion assigned percentages and later, tweaked them to add flavor in specific areas. Zontar dealt with placing the spawn generators in the world. Srand provided level-based input and was (and continues to be) involved in strategy discussions on monster balancing implementations. Speed did integration and the Wumpus did the testing and verification. As usual, there were many meetings on all the different aspects of this process.

To begin with, all existing generators were removed from the landscape. This means hundreds of lines of now useless data have been removed. In this aspect, Speed's time and dedication was invaluable. Once the old generators were removed, Orion could create new generators across the world. He also had to catalogue all the creatures in the game, verify their levels and do some prep work on them for future balancing. Equally important, he catalogued important non-player character (NPC) portals that are necessary parts to old quests, to be sure that they were not missing when this process was completed. Then he drew out hard copies of the spawns.

At which point Zontar stepped in. His responsibility was to place the spawn generators by drawing out the spawns in the game map. All the remaining tasks hinged on this. Without it, the project would have come to a screeching halt. How was this accomplished? Essentially, the spawn generators are painted onto the landscape and associated to a region within Dereth.

Now for the technically gritty details.

Two grayscale graphic files were used. The first is the "Block Encounter" map, which has large blocks of color (shades of gray) that designate different regions (e.g., Newbie Playgrounds) or areas (e.g., Tusker Island). The second is the "AC Encounter" map which covers Dereth and has pixel-size dots of varying degrees of gray (very black to fairly white) on it. Each dot represents a generator in the world. Now, the different colors (shades of gray) in both files are assigned a numerical value; these values are then assigned a generator type. Zontar modified these values in a "config" file to add the new generators.

First Zontar had to paint the new regions on the block encounter map. Orion had mapped this, by hand, on a large Mylar map. Then Zontar painted the generators onto the "AC Encounter" map. He used the placement of the original generators, since if he'd painted them in a new random density, he would've been tweaking them for months to come. So he used the original locations and painted the appropriate colors for all the different monster mixes in each geographical location. He used a separate file for each region, about 14 in all. Had he used layers (think sheets of acetate which you can paint on each one separately) in Photoshop, the file sizes would have become unwieldy. Then for each region he utilized layering for each pf the different generator mixes, such as "Shoreline" and "Forests." The basic process was relatively simple but Zontar did end up having to utilize a wide range of Photoshop methods for selecting items, masking off areas, etc.

Par for the course with a project of this magnitude, a bug was discovered by the Wumpus during testing. Those adorable and furry little critters we are used to seeing just outside of town: Bunnies. They'd left out the bunnies. In their place, the generators were spawning all manners of monsters that were not content with simply nibbling on carrots - some of these creatures were aggressive enough to follow and attack players in town. Not good.

What happened? Well, the arrangement in the old config file had distributed bunnies in an entirely different manner. With the new encounter and generator setups, it was not clear the bunnies were missing until testing. Zontar placed the bunny generators in an open slot he located within the new config file, looked up where the old bunny generators had been on the Encounter map and painted them in. All on the day of Code Freeze!

So a huge round of both "thanks" with the occasional "whew!" to both Orion and Zontar for their extraordinary efforts this month! And on to new horizons, the next phase, as they and the rest of the team move on to fine-tuning the balancing of these monsters within their native environments.