Объявления

Друзья, если не получается зарегистрироваться, напишите на почту vdv_forever@bk.ru.
Я оторву свою задницу от всех дел и обязательно Вас активирую! :smile10:
Добро пожаловать на геройский форум! :smile25:

Как создать плагин для HD мода

Герои Меча и Магии III: Возрождение Эрафии, Герои Меча и Магии III Дыхание Смерти, Герои Меча и Магии III Клинок Армагеддона, Герои Меча и Магии III Хроники Героев
offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 05 апр 2021, 14:57

Да, действительно. Только что тестил и за это же хотел написать. И почему-то выбирает 2 стека Архов вместо одного стека Лазурных с одинаковым кол-вом. Но моя версия кода, вроде, норм работала. Подобных проблем не было.
Последний раз редактировалось Rolex 05 апр 2021, 15:20, всего редактировалось 2 раз(а).
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 05 апр 2021, 14:58

См. мой пост выше. Я понял, в чём дело :smile1:

* * *
Исправил. Теперь задевает 2 х 5 Архов вместо 10 и не трогает тележку.
Последний раз редактировалось AlexSpl 05 апр 2021, 15:02, всего редактировалось 1 раз.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 05 апр 2021, 15:02

Плюс надо как-то отдавать приоритет тем, у кого осталось меньше здоровья, либо тогда, когда мы сможем направленным заклом забрать на +1 больше. Например, есть 5 Титанов с остатком здоровья в 200 ед. и с другой стороны такой же отряд, но с остатком здоровья в 100 ед. Направленный закл может нанести 150 ед. И в итоге выбирать не первый попавшийся, а тот отряд, где мы может забрать на +1 существо больше при прочих равных. Ибо в данном случае оно расценивает как по полмонстра (150/300) в обеих случаях и выбирает первый попавшийся.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 05 апр 2021, 17:42

Я бы особо не усердствовал над алгоритмом отражения, иначе отражать станет так, как сам игрок не догадается направить :smile2:

Мы ещё про эффективное отражение Берсерка говорили, кстати. Это единственное площадное, которое рассыпается у нас на масскаст.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 05 апр 2021, 18:08

AlexSpl писал(а):

Я бы особо не усердствовал над алгоритмом отражения, иначе отражать станет так, как сам игрок не догадается направить :smile2:

Он уже это делает. Но со здоровьем я все же бы, наверное, сделал и на этом бы остановился. Все таки сопоставить остатки здоровья с уроном от закла может каждый игрок. В случае с большим кол-вом отрядов это сложнее сравнивать. Ну если на простом примере сравнивать два варинта по отряду в каждом, то идеи такие:
- когда урон в существах с остатком, проверяем достаточно ли этого остатка, чтобы убить 1 доп существо с неполным здоровьем и если да, то отбрасываем остаток и добавляем +1. Хотя с другой стороны у этого варинта будет завышеное Fight Value рассчитаное по такому кол-ву, которое заклинание фактически не наносит.
- тогда когда можем убить 1 доп сущесвто просто к результирующему Fight Value добавляем 1. То есть в таком случае Fight Value будет завышенно на самый мизер, но эта 1 поможет выбрать более выгодный варинт.
- найболее правильный. Вести параллельно еще булевый массив, где отмечать те отряды, где остатка будет достаточно для гибели 1 доп существа с неполным здоровьем. После подсчитывать кол-во и в случае равенства суммарного Fight Value сравнивать по количеству true и непосредственно их Fight Value в булевом массиве. Как-то так.

AlexSpl писал(а):

Мы ещё про эффективное отражение Берсерка говорили, кстати. Это единственное площадное, которое рассыпается у нас на масскаст.

Вот его я, кстати, еще не особо и тестировал. Но он должен работать так, как и другие не площадные заклы (приоритет наложения по Fight Value с учетом иммунитета существ). С ним что-то не так?
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 05 апр 2021, 18:16

Цитата:
Вот его я кстати не особо еще и тестировал. Но он должен работать так, как и другие не площадные заклы (приоритет наложения с учетом иммунитета существ). С ним что-то не так?

Вроде, всё OK, но Вы что-то говорили про это заклинание ранее.

Цитата:
Но со здоровьем я все же бы, наверное, сделал и на этом бы остановился.

Как тогда насчёт максимизировать разницу (N * full_hp - lost_hp) * fight_value / full_hp, или (N - lost_hp / full_hp) * fight_value, где N - это количество существ, остающихся в отряде после каста? lost_hp - разумеется, тоже после каста.

Ой. Наверно, минимизировать первое и максимизировать второе?

Т.е. fight_value / full_hp - это стоимость 1 HP в ед. Fight Value, а N * full_hp - lost_hp - остаток здоровья отряда. Конечно, мы хотим, чтобы эта величина была как можно меньше. И, с другой стороны, хотим, чтобы такая же величина для союзных отрядов была максимальной после каста.
Последний раз редактировалось AlexSpl 05 апр 2021, 18:26, всего редактировалось 1 раз.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 05 апр 2021, 18:26

AlexSpl писал(а):

Ой. Наверно, минимизировать первое и максимизировать второе?

Если он будет выбирать цели так, как и раньше, а при равных Fight Value отдавать приоритет отряду с более низким остатком здоровья, то без проблем.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 05 апр 2021, 18:34

Всё равно всё сводится к максимизации отношения Fight Value / урон. Минимальные величины ещё как-то сравнивать нужно. Допустим, уничтожили все вражеские отряды единичек Копейщиков в области. Вот тебе и минимум - 0.

Т.е. нам интересно уничтожить как можно большее количество ценных HP (чем ценнее, тем лучше). Вроде, сейчас так и есть :smile1:

А почему бы в качестве damageFightValue просто не находить сумму min(spellDamage, this->count_current * this->full_hp - this->lost_hp) * this->creature.fight_value в области?
Последний раз редактировалось AlexSpl 05 апр 2021, 18:55, всего редактировалось 1 раз.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 05 апр 2021, 18:53

Такс, нашел баг в Берсерке. Хорошо, что Вы за него напомнили. В общем есть 2 отряда под Зеркалом, но у второго постоянном вместо анимации Зеркала проигрывается анимация резиста, хотя на другой стороне три отряда из которых один имунный, то есть два в любом случае может принять его. На том отряде на котором проигрывается резист, должна проигрываться анимация Зеркала, так как фактически на два отряда оно и отражает. Просто анимация Зеркала, только одном из отрядов проигрывается.
Последний раз редактировалось Rolex 05 апр 2021, 19:03, всего редактировалось 2 раз(а).
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 05 апр 2021, 18:57

Можете скриншот поля боя показать (перед кастом), чтобы я повторил? Я сегодня как раз слиянием Magic Mirror и резиста занимался.

И кажется, я уже догадываюсь, где баг...
Вернуться к началу

Пред.След.

Вернуться в Общий раздел

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

cron