Originally appeared on The Astral Wizard. Reprinted with permission.

Fnord:
Having worked on the previous Heroes games, what's your overall feeling about Heroes IV? Has the opportunity to create a completely new game, with a brand new engine and top-quality art opened up any new features that weren't technically possible to do in the previous games of the series?

Gus:
I think the choices you will make as a player will be harder. We've made a real effort to make all creatures, spells, and skills individually different and uniquely valuable. You'll be hard pressed to decide which ones you want.

To answer the second part, yes, definitely. There are a lot of technical improvements in the new engine.

In combat, we can now handle multiple animations gracefully, which means that a wide variety of spells and creature abilities are now possible that would have been difficult before.

On the adventure map, we can now make the wandering monsters move instead of remaining fixed in place.

We're also getting a lot of mileage out of alpha-blending. We're using it for anti-aliasing and for transparency effects, such as partially submerged icebergs on the adventure map, and translucent illusionary creatures in combat.

Of course, those are just a few examples of the many improvements in the game engine.

Fnord:
One of the most important aspects of the single player version of any strategy game is the quality of the AI programming. Can you tell us a little bit about how the AI in Heroes IV works and how it differs from, and improves upon, the Heroes III AI?

Gus:
When you're writing an AI, you're always learning from previous games. While the Heroes III AI is certainly a major improvement over the Heroes II AI, it still has some noticeable loopholes. For example, it's overly fond of attacking weak stacks, and it's prone to summon creatures even when it's overwhelmingly ahead, and a damage spell would be a better choice. These are things which I intend to correct in Heroes IV.

In broad outline, the basic approach remains the same. The AI evaluates each potential action, assigns it a value including a small random factor, and chooses the action with the highest value. In detail, there are many changes, but describing them is difficult without becoming highly technical.

For example, we're changing the basic "unit" used to value actions in combat from "creature value" to "damage potential." We're also adjusting the value of beneficial spells by a factor that includes relative army strength, and using a more complex method to consider spell point costs when selecting a spell.

Fnord:
Another feature, closely related to the AI programming, is the way that allied computer players are handled in the game. The changes from Heroes II to Heroes III were good, but the AI allies were still only mildly helpful for the most part. Will allied computer players be noticeably improved in Heroes IV?

Gus:
The difficult part of this problem is communicating your needs and desires to the AI. Without some easy way of doing this, the AI must always follow its own agenda, which may not match your strategy.

We certainly do intend to make them more helpful.

Fnord:
We've heard mention of a scripting language that will be part of the Heroes IV game. This is exciting news because it could really make maps come alive and be even more of an interactive experience than ever before. Could you provide a brief explanation of how the scripting language will work, the kinds of things that can be done with the language, and how easy it will be for mapmakers to learn to use?

Gus:
Scripts can be used anywhere where you would have used placed events or timed events in Heroes III. You can also attach scripts to individual heroes which are triggered when the hero enters combat or is killed or captured. Seer's huts, of course, can be scripted, as can victory conditions.

To create a script, you'll use a series of dialogs. A script is a series of actions, drawn from a list of about 30 choices. For example, you can give or remove creatures, artifacts, skills, spells, experience, and materials. When you add an action to a script, you get a dialog showing the various properties of the action, such as the target, and how much or what to change.

The most important new actions are the conditional and question actions. If the condition is true, or the player answers "yes", the game executes one set of actions. If not, it executes a different set. This means that the storyline can follow the player's actions much more closely than was possible before.

There are roughly 20-30 things you can test in a conditional, such as whether a specific hero, skill, creature, or artifact is present. You can also test variables that you set in actions, so you can record whether the player has accomplished a task, or visited a location.

In general, anything you could do in a Pandora's Box, placed event, town event, or timed event can be done with a script.

Fnord:
The map editors included with Heroes keep getting better and better with each new game and every expansion pack released. Features such as a terrain height editor have been mentioned, as well as customizable object palettes. Could you elaborate on these new features and explain how they might be used, along with any other new features that the Heroes IV map editor will incorporate?

Gus:
The terrain height editor lets you raise and lower land on the adventure map. You select the tool, and how large an area you would like to affect, and you drag the terrain up or down. There are restrictions on the changes you can make, so that you can't create a slope so steep that you cannot see the squares on the far slope.

The result is more natural looking terrain. The 3D effects may not be strongly apparent unless you're looking at a shoreline, but you'll always notice the variations in shading of the terrain.

Object palettes allow you to organize the adventure objects into folders in any way you desire. You can even customize an adventure object, and then drag it into the palette. From then on, when you drag that object onto the map, it will be customized that way. You can have multiple copies of an adventure object customized in different ways in a folder, or in different folders.

I primarily see this as a way to change the editor to suit your preferences. If you find that you'd rather organize objects by terrain type, instead of by function, you can do that. Or you can organize it by alignment, or any other method that meets your needs. It's also something of a scratch pad, that you can use to store customized objects or sets of objects you need to make a map.

Rock terrain, for underground maps, has been improved in a big way. You now have two choices for wall appearance, either stone wall or cave wall, and the placement is a lot more flexible. You can now draw any wall shape, including single tile wide rock walls, which wasn't possible before because of restrictions in the terrain tile set.

Fnord:
Mapmakers love to customize everything about their map, and with each Heroes release, more and more objects have been customizable. Will this trend of increased customization be continued in Heroes IV?

Gus:
The most powerful new tool for customization is the scripting language. By adding scripts to objects, you can do almost anything.

For example, you can add a script to a town that opens up a passage through the forest when the player conquers the town.

Fnord:
Also regarding customization, will it be possible to import graphics, sounds or music into player-created Heroes maps?

Gus:
Not this time around, but it's something we might do for an expansion.

Fnord:
Some people found the campaign editor in Heroes III a bit difficult to work with, and it didn't seem quite as polished as the standalone map editor. In what ways will the campaign editor in Heroes IV be improved, and will it be incorporated as part of the standard map editor or left as a separate program?

Gus:
The campaign editor is now an integrated part of the map editor, rather than a separate tool. It should be much easier to use simply because of that.

Fnord:
One of the most asked for wishes for Heroes IV dealt with some kind of expanded event system, where one event could be linked to another. Have you found a good way to do this, or are linked and "smart" events now part of the new scripting language?

Gus:
The scripting language completely replaces the event system in Heroes III. By setting variables with a script, you can pass information to another script.

Fnord:
In the previous games, diplomacy was limited to preset alliances between players, set at the start of the game. Will there be any sort of expanded or dynamic diplomacy model in Heroes IV?

Gus:
While we did consider this, it's not something we plan on doing for Heroes IV. It's quite possible that this might appear in an expansion.

Fnord:
Could you tell us your favorite new feature of Heroes IV, or the part that you most enjoyed programming?

Gus:
In broad terms, the changes to the heroes. I like the new skill system, I like the new spell system, and I like the changes we were able to make because heroes now appear in combat. I think my current favorite new thing is the Animate Dead spell, which allows you to temporarily raise dead creatures as undead, even if they didn't originally belong to you.

Fnord:
Thank you for taking the time to answer some of my questions. Is there anything else you would like to add about the much-anticipated Heroes IV?

Gus:
I think the significant differences in the spell schools, and the number of special abilities, are going to mean that there are many different ways to play the game. A creature-summoning Druid is going to play very differently from a lightning-throwing Sorcerer or a Priest casting protective spells.


Please login to view comments.