Skip to content

A program for determining luck/morality in Heroes 3!

User Avatar
#655
Auto-translated
LM Oracle 3.92

I decided to bring back the automatic notation (battle recording): Options -> Combat Manager.

1. The program records the moves of both sides in the following format:
N - number of creatures in the unit;
Type - type of creatures in the unit.

The x-axis is directed vertically down, the y-axis is directed horizontally to the right.

a) N Type [x0, y0] .. [x, y], if the unit moves from hex (x0, y0) to hex (x, y);
b) N Type [x0, y0] .. [x1, y1] @ [x, y], if the unit moves from hex (x0, y0) to hex (x1, y1) and attacks hex (x, y);
c) N Type [x0, y0] @ [x, y], if the unit fires a shot from hex (x0, y0) at hex (x, y).

For example,
a) 3 Devils [3, 15] .. [4, 5];
b) 20 Champions [11, 1] .. [4, 6] @ [4, 5];
c) 87 Archers [5, 1] @ [10, 13].

2. The program records spell casts:
Hero casts "Spell_Name" {[x, y] {@ [x2, y2]}}

For example,
Hero casts "Teleport" [1, 1] @ [10, 10]

3. Limitations:
a) The program does not record "wait" and "defend" commands;
b) The program may not record a computer player's unit move after morale triggers;
c) The program may not record the move of a computer player's unit that starts the battle if there is no delay before the battle begins (e.g., music is disabled).

The text in the Combat Manager window is editable. Clear the log via right-click -> Clear (F8).
Although the program does not keep a full log, it can help with describing long battles.

LM Oracle 3.92

2VDV_forever:
Is it possible to make the program also show how many levels are currently built by the AI? This is also a very important point!
Yes, it is possible. It will be done.

Added after 15 hours 28 minutes
2VDV_forever: I will release version 3.93 today or tomorrow. By double-clicking a city name in the list, the program shows what is built in the selected city. Now it will be easier to restart in an attempt to force the AI to build the desired building.

Added after 20 hours 43 minutes
LM Oracle 3.93

1. [HoMM I] Added the ability to view the buildings of any city on the map by double-clicking its name in the list (information updates automatically on double-click; no need to rebuild the list). It's cool to watch the AI's development;

2. [HoMM III] Fixed a bug in the combat logger (previously, a move immediately after a cast by an AI-controlled hero might not be recorded). However, at high animation speeds, errors still occasionally occur (full synchronization is impossible without feedback);

3. [HoMM III] The size of the combat logger window can now be changed, and the ability to save the log to a text file has been added.

4. Minor UI changes.

Here is an example log (taking a maximum crypt without magic and morale using a level 1 Tower by Dirty_Player):

1 Stone Gargoyle [4, 6] .. [1, 3]
1 Stone Gargoyle [6, 5] .. [1, 1]
1 Stone Gargoyle [6, 8] .. [11, 9]
1 Stone Gargoyle [8, 6] .. [2, 2]
10 Vampires [1, 2] .. [1, 2] @ [1, 1]
10 Wights [11, 2] .. [6, 5]
20 Skeletons [1, 15] .. [5, 13]
20 Walking Dead [11, 15] .. [11, 12]
85 Master Gremlins [4, 10] @ [5, 13]
1 Stone Gargoyle [6, 11] .. [11, 6]
1 Stone Gargoyle [8, 10] .. [11, 7]
1 Stone Gargoyle [1, 3] .. [2, 1]
1 Stone Gargoyle [11, 9] .. [4, 13]
1 Stone Gargoyle [2, 2] .. [9, 1]
10 Vampires [1, 2] .. [1, 1] @ [2, 1]
85 Master Gremlins [4, 10] @ [6, 5]
5 Wights [6, 5] .. [5, 9] @ [4, 10]
20 Walking Dead [11, 12] .. [8, 12]
1 Stone Gargoyle [4, 13] .. [11, 9]
1 Stone Gargoyle [9, 1] .. [7, 1]
10 Vampires [1, 1] .. [6, 2] @ [7, 1]
81 Master Gremlins [4, 10] .. [1, 13]
2 Wights [5, 9] .. [2, 13] @ [1, 13]
20 Walking Dead [8, 12] .. [10, 10] @ [11, 9]
1 Stone Gargoyle [11, 6] .. [11, 1]
1 Stone Gargoyle [11, 7] .. [11, 14]
1 Stone Gargoyle [11, 1] .. [9, 1]
10 Vampires [6, 2] .. [8, 2] @ [9, 1]
20 Walking Dead [10, 10] .. [10, 13]
79 Master Gremlins [1, 13] @ [8, 2]
1 Stone Gargoyle [11, 14] .. [11, 8]
9 Vampires [8, 2] .. [10, 7]
20 Walking Dead [10, 13] .. [10, 10]
79 Master Gremlins [1, 13] @ [10, 7]
1 Stone Gargoyle [11, 8] .. [4, 6]
7 Vampires [10, 7] .. [5, 6] @ [4, 6]
20 Walking Dead [10, 10] .. [7, 11]
79 Master Gremlins [1, 13] @ [5, 6]
3 Vampires [5, 6] .. [2, 11]
79 Master Gremlins [1, 13] @ [2, 11]
20 Walking Dead [7, 11] .. [4, 13]
79 Master Gremlins [1, 13] .. [1, 7]
20 Walking Dead [4, 13] .. [4, 10]

Following that is the baiting of the zombies. It's clear that wherever the turn order is broken — 1) wait, 2) defend.
Thus, it's possible to create a library for taking crypts, gnome cities, swamps, etc. All you need to do is fight the battle, save the log (right click -> Save As...) and send the text file (waits and defense can be written in by hand, though it's optional). I think this is a useful endeavor. Those familiar with chess know the role a library of openings plays, for example.

v3.93