Skip to content

Posts from NHF – new heroes for Heroes V 3.1.

4.9 (16 ratings)
User Avatar
#169
Auto-translated
Heh... Ment was working on such a special ability (though it seems to be only for a Dwarf), but he eventually abandoned it. So, it's currently on hold.
As I said, this feature is very demanding in terms of placement. Everything would be fine, but it's simply impossible to trigger the createDwelling ability near a hero (so that the built dwelling ends up on a cell adjacent to the hero; this is the most convenient and logical option, as it's the only one that will work on maps with limited space). It throws an error. There are workarounds: I was thinking of starting the construction on one day and finishing it a week later, for example. But what if someone stands there after a week? In general, it's all too complicated; it's easier to repurpose it.
 

К А
Стикеры GBF в Telegram
User Avatar
#170
Auto-translated
I think here it’s worth choosing one of two options: either reshuffle the scale or target one specific player. Otherwise, the idea is interesting.
In reply to Haosfortum
User Avatar
#171
Auto-translated
Haosfortum
I have a suggestion for a hero (or rather, for an ability).
Aenain: Mage
Specialty: Time Warper: at the beginning of the battle, he can change the distribution of creatures on the initiative bar and move a creature of his choice on the initiative bar.
I'll explain the ability: At the beginning of the battle, all creatures are randomly distributed on the initiative bar, and Aenain can change this distribution (i.e., redistribute the creatures on the bar again, but again randomly). In addition, he can move his creature (of his choice) forward on the initiative bar or move an enemy creature (of his choice) backward on the initiative bar (0.1 + 0.1 for every three levels of the hero, respectively, forward and backward). If the hero likes the arrangement on the initiative bar, he can simply click on "Wait" and simply get the opportunity to go half a turn earlier.
How the ability is used: at the very beginning of the battle, the hero uses it on any creature on the initiative bar, and if it is an enemy creature, he moves it backward, if it is his creature, he moves it forward, and at the same time, the distribution on the initiative bar is randomized again (i.e., two actions together, it is not possible to use only one of them).
The ability already exists and can simply be added as a mod, but I don't know how to make it dependent on the hero's level.
Sincerely, Haosfortum
The name sounds very elven.
It already exists in Timkhan's game resources (although Timkhan is better, as he is the Lord of Time). The developers didn't want to use it on the maps.
The developers' abilities will be added last... this is very desirable, but not necessary.
Моды для HeroesV:
NHF 0.90 : NHF - группа в VK

Карты для HeroesV:
Путешествие , Условие крови , Рука судьбы.Часть 1: В поход , Рука судьбы.Часть 2: Отчаянье , Рука судьбы.Часть 3: Восхождение , Стойкость
Абсолютная власть , Иду на Вы! , Корона Ургаша , На задворках
Мир надо уничтожить... Чтобы создать свой...
User Avatar
#172
Auto-translated
Yes, all of this can be done. The main thing is to avoid problems like the one with Falmer. Special abilities that trigger events for all heroes are not very good: they can negatively affect others at any moment. I initially didn't want to make Eymund like that.
Can you give a more specific example?
For example, the reward could be calculated based on clearing a treasure vault "one level higher." Of course, in the case of treasure vaults at the maximum level, we would have to introduce some kind of special tier for the hero. Another option is to increase the reward by a percentage (but this would create a problem with artifacts).
In reply to RedHeavenHero
User Avatar
#173
Auto-translated
RedHeavenHero
The catch isn't in that.:smile52:

In my opinion, such a function would work. It returns the index with the smallest value.
Assuming that the index of the argument passed to the function is the name of the city, and the value is the distance. That is, it will return the name of the nearest city (from those that were in the array).
Well, there's nothing complicated about it.

DesiredCity = nil;
MinDistance = 999;
For i, city in array_of_cities do
Distance = (city_xyz - hero_xyz);
If Distance < MinDistance then
MinDistance = Distance
DesiredCity = City
End
End
This is the entire code for selecting the nearest city; all that remains is to translate it from "Olbansky" and add a couple of conditions. You can also add a filter for enemy affiliation (filtering allied players in the team) and immediately find the ID of the player who owns the object.

Added 7 minutes later
Ple-Sen
For example, the reward will be calculated as if the treasure was cleared "at a level higher." Of course, in the case of treasure rooms at the maximum level, some special level will have to be introduced for the hero. Another option is a percentage increase in the reward (but there will be a problem with artifacts).
It will be necessary to store all visits in arrays for each player, for each hero, in each period. It will not be possible to return the reward from the treasure room, so the percentage version is out.
It is necessary to first compile a list of objects to which such an attitude will apply.
It's a hassle, so it's better to leave it for the second 32-bit version. I would like to release the alpha version of the first 32 new ones earlier, and then add up to 64. Therefore, the special feature will not disappear, but its implementation will be postponed to another time.
I remind you that the first date for the implementation of all 64 new heroes is December 21, 2012 - right before the end of the world :)
But, most likely, the date will be postponed slightly.

P.S. I would like to release the 32-bit version at the beginning of October; in principle, for the alpha, the presence of familiar icons is not very important (but they need to be made different so that they don't repeat, for example, temporarily borrowed from companion factions)
Моды для HeroesV:
NHF 0.90 : NHF - группа в VK

Карты для HeroesV:
Путешествие , Условие крови , Рука судьбы.Часть 1: В поход , Рука судьбы.Часть 2: Отчаянье , Рука судьбы.Часть 3: Восхождение , Стойкость
Абсолютная власть , Иду на Вы! , Корона Ургаша , На задворках
Мир надо уничтожить... Чтобы создать свой...
In reply to Dyrman
User Avatar
#174
Auto-translated
Dyrman
Well, it's even simpler than that.
Towns = array of towns;
xyzHero = hero's coordinates;
TargetTown = nil;
MinDistance = 999;
For i, town in towns
Distance = (xyzTown - xyzHero);
If Distance < MinDistance then
MinDistance = Distance
TargetTown = Town
End
End
That's the whole code; all that's left is to translate it from "Olbanian."
This version is better. Otherwise, I'm traveling from Moscow to St. Petersburg via Cape Town.
I probably don't know "Olbanian" very well, but the translation into Lua should be decent.:)
function FindClosestEnemyTown()
local towns = GetObjectNamesByType('TOWN');
if IsHeroAlive('Avran') then
if GetHeroTown('Avran') then
return nil;
end;
else
return nil;
end;
local hx, hy, hz = GetObjectPosition('Avran');
local dist = {};
for i, town in towns do
local tx, ty, tz = GetObjectPosition(town);
if tz == hz then
local s = sqrt((tx - hx) * (tx - hx) + (ty - hy) * (ty - hy));
dist[town] = s;
end;
end;
local targetTown = min(dist);
if GetObjectOwner(targetTown) == GetObjectOwner('Avran') then
return nil;
else
return targetTown;
end;
end;
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
In reply to Dyrman
#175
Auto-translated
Dyrman
The name sounds very elven.
She is present in the game's resources by Timkhan (although Timekhan is better, as he is the lord of time). The developers didn't want to use him on the maps.
The developers' abilities will be added last... this is very desirable, but not necessary.
I know she is in the game, but I suggest a modified version (+level dependency and repelling enemy creatures). And the name was in the Conflux castle in Heroes of Might and Magic III, and IMHO, it doesn't sound elven at all.
Свяжи грифону крылья, и он взлетит, махая лапами.
In reply to Haosfortum
User Avatar
#176
Auto-translated
Haosfortum
I know it exists in the game, but I suggest a modified version (+level-dependent and repelling hostile creatures). The name was in the Conflux castle in Heroes of Might and Magic III, and IMHO, it's not at all elven.
The problem is that the developers have blocked combat scripts in multiplayer (they claim there's desynchronization...), so in battle, nothing can be changed except for the special coefficients (strengthen, weaken, etc.), if they are displayed.
Моды для HeroesV:
NHF 0.90 : NHF - группа в VK

Карты для HeroesV:
Путешествие , Условие крови , Рука судьбы.Часть 1: В поход , Рука судьбы.Часть 2: Отчаянье , Рука судьбы.Часть 3: Восхождение , Стойкость
Абсолютная власть , Иду на Вы! , Корона Ургаша , На задворках
Мир надо уничтожить... Чтобы создать свой...
In reply to Stiletto
#177
Auto-translated
Stiletto
I think here it's worth choosing one: either rebalance the scale or give a single, powerful kick. Otherwise, the idea is interesting.
I think the ability should depend on the hero's level, and a simple kick won't be enough.
P.S. I can be an assistant in coming up with names/descriptions for heroes/abilities.
Свяжи грифону крылья, и он взлетит, махая лапами.
In reply to Haosfortum
User Avatar
#178
Auto-translated
Haosfortum
I think the ability should depend on the hero's level, and a simple "kick" won't be enough.
P.S. I can help with coming up with names/descriptions for heroes/abilities.
Anyone can contribute right here. Whichever option the community likes best will be chosen. Of course, within certain limits.

Added 2 minutes later
RedHeavenHero
This option is better. Otherwise, it's like traveling from Moscow to St. Petersburg via Cape Town.
I probably don't know Albanian very well, but the translation into Lua should be decent. :)
The main thing is that it works, at least on any map in the console. But do we need to store all the distances in an array? For later use? I'm just worried about how we'll come up with a hero who builds cities, and the script will break.
Моды для HeroesV:
NHF 0.90 : NHF - группа в VK

Карты для HeroesV:
Путешествие , Условие крови , Рука судьбы.Часть 1: В поход , Рука судьбы.Часть 2: Отчаянье , Рука судьбы.Часть 3: Восхождение , Стойкость
Абсолютная власть , Иду на Вы! , Корона Ургаша , На задворках
Мир надо уничтожить... Чтобы создать свой...
In reply to Dyrman
User Avatar
#179
Auto-translated
In any case, min has already been tested.
This is a local array. That is, it is cleared after the function finishes, and it is created anew each time.
Dyrman
I'm worried about what will happen when we come up with a hero who builds cities, and the script breaks.

HOW??? There is definitely no function that creates cities.
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
In reply to RedHeavenHero
User Avatar
#180
Auto-translated
RedHeavenHero
This is a local array. That is, it is deleted after the function finishes, and it is created anew each time.
But it works.
RedHeavenHero

HOW??? There definitely isn't a function that creates cities.
Then, at a minimum, it should be moved like Zephyr in the campaigns.
Although, I remember seeing a clever way to build a city on some forum... I should check it out.
Моды для HeroesV:
NHF 0.90 : NHF - группа в VK

Карты для HeroesV:
Путешествие , Условие крови , Рука судьбы.Часть 1: В поход , Рука судьбы.Часть 2: Отчаянье , Рука судьбы.Часть 3: Восхождение , Стойкость
Абсолютная власть , Иду на Вы! , Корона Ургаша , На задворках
Мир надо уничтожить... Чтобы создать свой...
In reply to Dyrman
#181
Auto-translated
Anyone can contribute ideas right here. Whichever option the community likes best will be chosen. Of course, within certain limits.
Can we come up with descriptions and names for the abilities of already existing heroes?
I'm just worried that if we come up with a hero who builds cities, it will break the script.
But what prevents us from giving this hero the "Summon Il-Hijra" ability with a corresponding city?
Свяжи грифону крылья, и он взлетит, махая лапами.
In reply to Dyrman
User Avatar
#182
Auto-translated
Dyrman
But it works.
In what sense does it "work"?
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
In reply to Haosfortum
User Avatar
#183
Auto-translated
Haosfortum
Can we come up with descriptions and names for the abilities of already created heroes?
If you're not too lazy, then no problem. We can change it if it's better. The ability names are already a bit far-fetched.
Haosfortum

What prevents us from giving this hero the "Summon Il-Hijra" ability with a corresponding city?
There is no such lock. It simply summons an empty spell, which is named "Summon Il-Hijra," which triggers a script that moves the city, and even then, the script is not very flexible, meaning it's only for a specific map.

Added 1 minute ago
RedHeavenHero
In what sense does it "work"?
Are you testing your scripts on a map or not? It looks good at first glance. But just in case...
Моды для HeroesV:
NHF 0.90 : NHF - группа в VK

Карты для HeroesV:
Путешествие , Условие крови , Рука судьбы.Часть 1: В поход , Рука судьбы.Часть 2: Отчаянье , Рука судьбы.Часть 3: Восхождение , Стойкость
Абсолютная власть , Иду на Вы! , Корона Ургаша , На задворках
Мир надо уничтожить... Чтобы создать свой...