Skip to content

Posts from Help for the Heroes 4 Map Editor.

No ratings yet — be the first to rate!
19 years ago
Auto-translated
Please help me find a Russian manual or other information on how to use the map editor for Heroes IV.
Sooloo@tut.by
19 years ago
Auto-translated
Zooom;39987
Please help me find a Russian manual or other information on how to use the map editor in Heroes IV.
Sooloo@tut.by

The Igromania magazine website has a fairly good description of everything, even with pictures.
In reply to nprf
User Avatar
18 years ago
Auto-translated
nprf;40061
The website of the Igromania magazine describes everything quite well, even with pictures.




Could you provide a link or tell me where exactly to look?
User Avatar
18 years ago
Auto-translated
Well, let's try to break down the editor; maybe someone will find it useful.
1) Development Environment.
We have a window in which we will work. So, the top panel contains menus and some options.
Terrain Brush - allows you to paint the landscape type.
Erase - removes objects (except for the landscape).
Select Object - you must switch to this option to manage objects.
Road Brush - allows you to erase or draw roads.
Rock Brush - draws or removes dungeon/cave walls, creating a black impassable space.
Draw Objects - an auto-fill brush.
*Desert Brush, scattered - draws a sparse desert landscape.
*Flowers Decorative - draws sparse flowers.
*Glass Mountains - draws densely placed green mountains.
*Mixed (green, tropical) trees - green and tropical trees.
*Nice Autumn Forest (85%) - autumn trees + rocks + grass; densely packed objects, slightly thinned out by 85%.
*Northern Forest - firs + windfall + rocks + brown trees, placed relatively densely.
*Northern Forest, scattered - the same, but in a very sparse version.
*Northern Pine-Decid Mix - firs + bare trees + windfall + rocks; dense landscape.
*Northern Pine-Decid Mix, scattered - all the same, but in a sparse version.
*Pine-Forest - almost the same as above, but with less overall black in the image. Accordingly, Pine-Forest, scattered - sparse version.
*Placed Event Fill - draws events within the brush area and assigns them the name "Brushed Event". Useful for quickly filling events so that the player definitely does not miss them.
*Placed Event Outline - events outside the brush area. Example - an event activates when approaching a castle, while the castle is open, and it is important that the hero activates the event regardless of which side they arrive from.
*Simple Autumn Forest - yellow trees + rocks, the brush is completely filled with objects.
*Thick Pine Forest - firs + bare trees. Approximately 50% brush fill.
*Tree stumps - places tree stumps.
*Wall - draws walls (NE-SW) - from northeast to southwest, (NW-SE) - from northwest to southeast.
*Winter Forest - firs in snow + snowdrifts.
*Winter Forest, scattered - accordingly, the sparse version.
Terrain Level - changes the convexity of the terrain. Adjust the sliders to get the desired result.

Now let's look at the right side.
Landscape Object - all kinds of decorative objects and path-blocking objects, including: mountains, trees, grass, flowers, farms, cliffs, structures, water objects. Just drag and drop them onto the map with the mouse.
Adventure Object - all objects that a hero can visit or interact with. These include towns, mines, sanctuaries, treasures, etc.
Artifacts - various types of artifacts, potions, and staffs.
Characters - heroes and monsters.
It is worth noting that new objects, artifacts, and monsters are located in the corresponding tabs for Whirlwind of War and Coming of the Storm.

Okay, we will continue later. ;)

Added after 13 hours 0 minutes
2) "Campaign" Menu
Now let's figure out this option.
When developing a campaign, the first six menus will be useful, but everything there is intuitively clear. You can also create/delete an underground level here. We are interested in Map Properties and Campaign Properties.
Map Properties.
*Set everything possible for the map, such as: description, victory and defeat conditions, epilogue and prologue, and selecting human and computer players. In this case, standard victory conditions mean that victory is achieved after capturing all towns and waiting three days (in case enemy heroes and/or monsters are not dead). However, if you start a map where there are no other castles, this option will not work. If you are going to make a quest map, it is better to disable this option. Map difficulty determines the number of neutrals that may appear with the arrival of the monster week.
*In the artifacts tab, you can ban artifacts that you don't need in this scenario; they will not drop as random loot and will not appear as rewards when looting certain dwellings.
*The Heroes, Spells, and Skills tabs also allow you to ban the listed items, so heroes will not appear in taverns, spells will not appear in sanctuaries, and skills will not be granted upon leveling up.
*The Teams tab allows you to group players into alliances based on color.
*The AI Properties tab allows you to make the computer player more interested in artifacts and force them to hunt for them.
*The Oracles tab allows the player to determine the reward for visiting a particular oracle. Any artifacts and/or resources can be set as a reward. You can also determine when a treasure opens. For example, you can scatter many oracles but assign the treasure only after visiting one specific oracle.
And here is the most interesting part: the "Event" tab.
3) "Events" Tab.
Events allow you to set all sorts of scripts. They consist of:
*Calendar events. Here you can assign a single event in time or a repeating event. Useful if you want to, for example, provide reinforcements for your army.
*Trigger events. The player sets any event, which can then be included in almost any script. For example, for performing a certain action, the player receives 1000 gold and a handful of resources; to avoid sorting through everything, you can create trigger events and include them in a local event.
*Repeating event. Don't overthink it, we can do without it. ;)
*Local events. These types of events are placed by the player on the map. First, create a local event, give it a NAME, edit the actions, and then place an EVENT object from Adventure Objects onto the map. Double-click it and select the NAME of the event you created.
So, we have briefly familiarized ourselves with the basic actions. Now we expect to move on to scripts.
User Avatar
18 years ago
Auto-translated
Event Scripts
Build Building: Builds a building in the specified town.
Change Owner: The specified object passes to the control of another player.
Clear Defeat Conditions: Removes the text specified in the Defeat Conditions window of the Scenario Information menu.
Clear Defeat Message: Removes the text that informs the player of their defeat.
Clear Victory Conditions: Removes the text specified in the Victory Conditions window of the Scenario Information menu.
Clear Victory Message: Removes the text that informs the player of their victory.
Battle: Creates an army that enters into battle with the forces of the specified player.
Conditional Actions: Creates a condition script, for example: "If the player owns the specified town, they receive 10,000 gold".
Decrease Current Magic Points: Decreases the current pool of magic points of the specified hero by a given number of units.
Decrease Attack: Decreases the attack value of the specified hero by a given number of units.
Decrease Luck: Decreases the luck of the specified army by a given number of units.
Decrease Defense: Decreases the defense of the specified hero by a given number of units.
Decrease Maximum Magic Points: Decreases the maximum amount of magic points of the specified hero by a given number of units.
Decrease morale: Decreases the morale of the specified army by a given number of units.
Decrease Dwelling Population: Decreases the current population of the specified dwelling by a given number of creatures.
Decrease Speed: Decreases the speed of the specified hero by a given number of units.
Remove Object: Removes the specified object from the map. The 'Bomb' pointer object marks which objects will be removed during the game.
Disable Standard Victory Conditions: Disables standard victory conditions for the specified player.
Show Message: Displays a text message on the screen.
Enable Standard Victory Conditions: Allows the specified player to win by fulfilling the standard victory conditions.
Give Artifacts: Gives the selected artifact(s) to the specified army.
Give Warriors: Gives the selected number of creatures to the specified army.
Give Resources: Gives the selected amount of resources to the specified player.
Give Skill: Teaches the specified hero a given skill.
Give Spell: Teaches the specified hero a given spell.
Increase Mobility: Increases the movement point pool of the specified army.
Increase Magic Point Pool: Increases the current pool of magic points of the specified hero.
Increase Attack: Increases the attack value of the specified hero.
Increase Experience: Increases the experience of the specified hero by a given number of points.
Increase Experience Level: Raises the level of the specified hero.
Increase Luck: Increases the luck of the selected army.
Increase Health: Increases the health points of the selected hero.
Increase Maximum Magic Points: Increases the maximum amount of magic points of the selected hero.
Increase morale: Increases the morale of the selected army.
Increase Creature Growth: Increases the creature growth in a given dwelling.
Increase Skill: The specified hero increases their proficiency level in a given skill.
Increase Speed: Increases the speed value of the specified hero.
Do Nothing: Nothing happens.
Defeat: Leads to the defeat of the specified player.
Ask Question: Allows asking a question that can be answered "yes" or "no", attaching scripts to both answer options.
Remove Script: Removes the specified event script. This should be done at the end of local events so they do not repeat.
Remove Object: Allows removing the selected object from the map.
Sequence: Allows creating a chain of linked scripts that will be executed one after another. Used in most cases.
Set Variable: Allows setting a true/false variable. For example, we set it so that if a player steps on this square, the variable becomes true, and if they step on another square, a script triggers that wasn't there before.
Set Defeat Description: Allows setting text containing the description of defeat conditions.
Set Defeat Message: Allows setting the text that the player will see in case of defeat.
Set Numeric Variable: Allows creating a variable that can track events or count them (for example, armies passing through a certain point). If an army passes through the point 4 times, for instance, the player loses.
Set Victory Description: Allows setting text containing the description of victory conditions.
Set Victory Message: Allows setting the text that the player will see in case of victory.
Take Artifacts: Takes specific artifact(s) from a given army.
Take Warriors: Takes a certain number of warriors from the specified army.
Take Resources: Takes a given amount of resources from the treasury of the specified hero.
Event Trigger: Allows activating a previously defined event.
We will talk about them later.
Victory: Leads to the victory of a specific player.
Boolean (Conditional) Expressions
And: Allows setting multiple conditions for the same event. For example, this particular player AND this particular hero.
Belongs to Faction: Checks if this army belongs to certain factions.
Has Hero: Checks if the required hero is in the ranks of the army.
Can Give Skill: Checks if a hero can learn a specific skill (if there is a free slot for learning).
Equal: Checks if an equals sign can be placed between two expressions. For example, amount of wood equals 30.
False: Checks if this condition is false.
Greater Than: Checks if the first expression is greater than the second.
Greater Than or Equal: Checks if the first expression is greater than or equal to the second. Usually used in quests like "bring 8000 gold". A condition of greater than or equal to 8000 must be set.
Possesses Artifact: Checks if this army possesses the required artifact.
Specific Hero Dead: Checks if a specific hero is dead.
Specific Hero Imprisoned: Checks if a specific hero is in prison.
Less Than: Checks if the first expression is less than the second.
Less Than or Equal: Checks if the first expression is less than or equal to the second.
Not: Allows negating a certain variable, so all conditions except the special one are checked. A player does something, the variable becomes true; if the variable is not true, something else happens.
Or: Allows setting a choice condition where it is sufficient to fulfill either of the two parts.
Player Belongs to Certain Factions: Checks if this player belongs to certain factions.
Player of Specific Color: Determines if this player belongs to the required color.
Computer Player: Checks if this player is a computer player.
Player Destroyed: Checks if all forces of this player have been completely destroyed.
Human Player: Checks if this player is a human player.
Player Possesses Hero: Checks if this player possesses a specific hero.
Player Owns Specific Town: Checks if this player owns a specific town.
True: Checks if this condition is true.
Variable: Allows specifying the name of a variable.
Numeric Expressions
Number of Warriors in Army: Specifies the number of warriors of a certain type in this army.
Current Day: Shows the current date, with the start of the game as the reference point.
Day of Week: Shows the current day of the week; there are seven days in a week, with the start of the game as the reference point.
Divide By: Allows dividing the first expression by the second.
Experience Level: Displays the experience level of this hero.
Proficiency Level: Reflects the hero's proficiency level in a particular skill.
Number: Specifies a specific number.
Amount of Resources: Specifies the number of units of resources of each type.
Minus: Allows subtracting one expression from another.
Month: Shows the current game month, with the starting month of the game as the first.
Negation: Allows creating a negative expression.
Player: Identifies a specific player.
Plus: Allows adding two expressions.
Random Number: Generates a random number. You can set its maximum and minimum possible values.
Remainder: Indicates that there was a remainder when dividing two expressions.
Multiplication: Allows multiplying one expression by another.
Total Number of Warriors in Army: Displays the total number of creatures in this army regardless of their type.
Total Number of Heroes in Army: Displays only the total number of heroes in this army.
Variable: Allows specifying the name of a variable.
Week: Shows the current week, with the start of the game as the reference point.
Week of Month: Specifies the current week of the month; there are four weeks in each month.
Not that short, but it seems everything is clear)
User Avatar
18 years ago
Auto-translated
Now, let's examine different approaches to creating quests. First, we'll create some template options.
1) Assassination Contract.
The essence of this quest is simple: the player receives a task to kill a hero or monster, and upon completion, the player receives a reward. To do this, in the quest editor, select the CONDITION item, then the option SPECIFIC HERO IS DEAD, and choose the hero's name. Keep in mind that the target hero needs to be assigned a new name or have their standard name retyped. To do this, double-click on the hero, in the GENERAL section, check the CHANGE box. Now, let's assume the player has completed the task and returned for the reward. Open the SCRIPT ON COMPLETION and choose the desired action, for example, increase experience or grant resources.
Now, let's deal with defeating a monster. Suppose, as part of the quest, a monster is blocking the road, and we are sent to destroy it. There is no "victory over a monster" field in the QUEST CONDITION, but this can be easily done. Use the SET BOOLEAN VARIABLE (TRUE/FALSE) option, which, as the name suggests, has only two values: true and false. Double-click on the monster that needs to be killed and, in the standard events, select DEFEAT. Henceforth, in quests, "defeat" implies the defeat of the monster(s) in battle, not the player. Select SET BOOLEAN VARIABLE (TRUE/FALSE), in the lower field, write the name of the variable, which should consist ONLY of English letters and numbers, and assign the value TRUE (note that, by default, all variables of this type initially have the value FALSE). Now, let's make the quest believe us. To do this, in the QUEST CONDITION field, select the AND option: in the upper field, select the variable we specified, and in the lower field, select TRUE. And then, write in the SCRIPT ON COMPLETION everything you want.
P.S. Don't forget to add messages with prompts, text for the search process, and upon completion. A question allows the player to agree or refuse the reward.
2) Searching for an artifact, resources, or monsters.
To return the artifact for a reward, select the HAS ARTIFACT option in the QUEST CONDITION, and in the lower part, select the artifact(s) that should be brought. Keep in mind that you can choose: THIS ARMY or THIS PLAYER. If you choose the first, you will need to bring all the artifacts to the hut; if you choose the second, you simply need to own them, even if they are with different heroes. You should also not forget to remove the artifacts (if, of course, this corresponds to your intention). In this case, select THIS ARMY, go to the SCRIPT ON COMPLETION, TAKE ARTIFACTS, and list everything that needs to be taken. And don't forget about the reward, and it wouldn't hurt to ask a question, in case the player changes their mind.
Now, let's deal with the task in which we are asked to bring resources. Obviously, the player must collect a certain amount, so we select the GREATER THAN OR EQUAL TO option: in the upper window, we take the RESOURCE AMOUNT and select the resource, and in the lower window, we set its quantity. Since the goal is to find a resource, the script on completion should TAKE RESOURCES.
We perform the same operation for searching for monsters, only in the upper field, we select the NUMBER OF CREATURES IN THE ARMY.
P.S. Try to choose a SEQUENCE in the scripts so that you can quickly fix any error or add something new to the script.
In reply to SandroXXL
User Avatar
15 years ago
Auto-translated
SandroXXL

Now, let's deal with defeating a monster. Let's say a quest requires us to eliminate a monster that's blocking the road. The quest conditions don't explicitly mention defeating the monster, but it's easily achievable. We'll use the SET BOOLEAN VARIABLE (TRUE/FALSE) option, which, as the name suggests, has only two values: true and false. Double-click the monster that needs to be killed and, in the standard events, select DEFEAT. From now on, in quests, "defeat" will refer to the monster(s) being defeated in battle, not the player. Choose SET BOOLEAN VARIABLE, enter the variable name in the lower field (it should consist ONLY of English letters and numbers), and assign the value TRUE (note that all variables of this type initially have the value FALSE). Now, we need to make the quest believe us. To do this, in the QUEST CONDITIONS field, select the AND option: in the upper field, select the variable we defined, and in the lower field, select the value TRUE. Finally, write in the ON COMPLETION SCRIPT everything you want to happen.
P.S. Don't forget to add messages with prompts, text for the search process, and when the quest is completed. The question allows you to agree or refuse the reward.
I didn't quite understand the part about killing creatures. I tried to do it as you described, but I couldn't find what I needed
User Avatar
11 years ago
Auto-translated
Hello everyone. Is it possible to remove an army without a hero from the map using a script?
In reply to Vaishan
User Avatar
11 years ago
Auto-translated
Vaishan
Hello everyone. Is it possible to remove an army without a hero from the map using a script?
Go to the army properties - events - trigger events. Create an event: if the army does not belong to a player, then set a battle with an invincible army; if it belongs to a player, then choose to change the owner to "no player" and then set the same battle. Then, go to the properties of the calendar/local event that should trigger the army removal, then "trigger event" and choose the trigger event that you previously created in the army settings.
In reply to Vaishan
User Avatar
11 years ago
Auto-translated
Vaishan
Hello everyone. Is it possible to remove an army without a hero from the map using a script?

I recently encountered a problem: I wanted to get rid of units without heroes without engaging in combat, which a hero might send out for scouting, for example. This is to prevent errors with the plot (for example, before powerful artifacts, an ambush is set up, which is discovered by some lone recruit, but it should have been the main hero). It is possible, of course, to remove all creatures with a script and then finish off the remaining one with some kind of "angry spirit" (according to the plot), but in my case, I would have to calculate the script for a large number of creatures. Of course, I could simply destroy them with an ambush and write that "only the main hero can pass," but in my case, I need the unit to simply disappear (for example, undead are destroyed on holy ground). How can this be implemented?
User Avatar
11 years ago
Auto-translated
Siloz Zanj,
You can only perform such manipulations with units that are already placed on the map. In this case, you need to change the unit's owner to "No player" in the unit's properties within the trigger events, and only then initiate the battle. If a unit is, for example, recruited in a town, you won't be able to change its owner. I would simply place gates in the appropriate locations and allow only those who are supposed to pass through them according to the storyline to do so.
11 years ago
Auto-translated
Hello everyone. Could you please tell me how to make it so that a player of a specific color (red, for example; and this can be either a human or a computer player) receives 3,000 gold and one Dragon Golem with a specific message every 25 days (1, 25, 50...)? Thank you in advance.
11 years ago
Auto-translated
1) Regarding adding money to a specific player.

Company Menu -> Map Properties -> Events Tab -> Select the Calendar Event category -> New button -> Specify the color of the desired player, set the "first appearance" parameter to 1 day, and set the "next appearance" parameter to every 25 days. -> Next, go to the Actions tab and specify the amount of gold as 3000. If necessary, also specify a message -> OK -> OK

2) Adding a Dragon Golem

Units can only be added to a specific garrison or to the army of a specific hero.

For example, for a town. Go to the town properties -> Events Tab -> Select the Calendar Event category -> New button -> Specify the color of the desired player, set the "first appearance" parameter to 1 day, and set the "next appearance" parameter to every 25 days. -> Script Tab -> Action "Give Units" -> Select the type and quantity of the desired units.
11 years ago
Auto-translated
Thank you very much for the prompt response! Everything worked out perfectly.
In reply to Vaishan
10 years ago
Auto-translated
Vaishan
Hello everyone. Is it possible to remove an army without a hero from the map using a script?
And how do you do the opposite? How do you place an army without a hero on the map using a script? In the sense that a monster is present, a player kills it, and after a certain time, a script places another monster in that location. I hope I explained it clearly? Please provide a very detailed explanation, as I am a beginner.

Statistics

Welcome our newest member: recijeb