15

» WarCraft 3 / Как работают незаполненные данные в хэш-таблицах?

konvan5, а как мне тогда использовать unit type как ключ?
Есть ли способ через гуи легко конвертировать unit type в integer?
Спасибо большое за ответ!
15

» WarCraft 3 / Как работают незаполненные данные в хэш-таблицах?

IzobretatelBoom, а может быть у меня неверно указан ключ?
До этого я пробовал использовать ключ unit type напрямую, но всегда возвращалось false. Тогда я заместо ключа стал использовать integer, который получаю из строки, которую получаю от unit type.
Я это тестанул и это работало. Но в другом триггере это уже не работает.
Непонятно все. Непредсказуемо с этим варкрафтом ничего.
15

» WarCraft 3 / Как работают незаполненные данные в хэш-таблицах?

IzobretatelBoom, непонятно вообще.
Допустим герой доступен (его ещё не купили). Получается:
Hero unavailable = false
И вот как выглядит триггер:
If Hero unavailable = false
Then приказать алтарю покупать героя
Else do nothing
Тоесть следуя этой логике, мой герой доступен. А раз он доступен то алтарь должен его нанять. Но происходит ничего.
Функция покупки героя работает, проверено. Проблема в проверке условия. Оно выдает противоположный результат.
15

» WarCraft 3 / Как работают незаполненные данные в хэш-таблицах?

IzobretatelBoom, почему-то у меня данные выдаются как true. Хотя я не записывал их так.
Видимо где-то в моих триггерах есть баги.
15

» WarCraft 3 / Помогите найти ошибку в системе выбора героя у ИИ

Принятый ответ
С помощью дебагов обнаружил, что функция Hashtable - Load Integer of X of get handle ( units of type ) не работает.
Методом многочисленных проб и ошибок я смог найти как обойти баг с Units of Type в Хэштаблицах. Нужно сделать следующее:
Key ( Convert String to Integer ( Convert Unit type to String)
Т.е. нам нужно представить ключ в хэш таблице как число. Конвертировать строку в число. Конвертировать тип юнита в строку. Чтобы в конечном счёте получить зашифрованное число типа юнита. Т.к. хэш таблицы понимают только числа.
Если кто знает способ лучше - сообщите.
15

» WarCraft 3 / Заставить ИИ кастовать заклинания из спеллбука

Мне кажется, проще для ИИ накидывать способности из спеллбука отдельно, без самого спеллбука. Спеллбук больше обёрточка для игрока.
15

» Melee Campaign Heroes / Melee Campaign Heroes 0.9.7 Warships

Посоветуйте, как лучше вести проект. При выходе каждой новой версии создавать новый ресурс, или обновлять этот ресурс чтобы не распыляться?
15

» WarCraft 3 / как поменять размер кода

Только если установить какой-нибудь Better Triggers. Это самый безопасный варик.
Ещё можно использовать SharpCraft. Но тогда откатиться на стандартный редактор уже не получится. Ты навечно застрянешь со своей картой в этом редакторе. Вернуться можно будет только если полностью переписать триггеры.
15

» WarCraft 3 / как заставить юнит(танк) вращать свою башню при атаке через триггеры?

Пришла идея, сделать башню отдельным юнитом, который просто телепортировать каждые 0,01 секунды на позицию танка.
15

» Melee Campaign Heroes / Melee Campaign Heroes 0.9.7 Warships

Saen Taar, мне кажется это реально. У меня в голове крутятся мысли это реализовать. Либо в следующем патче, либо в через один попробую это добавить.
Интересно, смогут ли боты строить в произвольных местах верфи, или они будут пытаться строить из на базе. От этого зависит вообще буду ли я это делать.
15

» WarCraft 3 / Самый простой способ заставить ИИ пикать кастом героя, при условии что герой доступен

Makeba, я пробовал делать через стандартный train unit в гуях. Не получалось. Это у тебя видимо какая-то другая функция, джассовская?
15

» WarCraft 3 / Самый простой способ заставить ИИ пикать кастом героя, при условии что герой доступен

quq_CCCP, не получается, т.к. ограниченное количество выбираемых героев. Он будет пытаться выбрать героя которого нет и фризить.
Может есть код который проверит Available героя. Или количество доступных для summon героев?
15

» WarCraft 3 / Делаю рандом на пик героев но почемуто герои повторяюся.

EnergyFrost, а если рандом будет каждый раз выпадать на 1, а этот номер будет уже занят? Возможны ведь тогда фризы и вылет, теоретически.
15

» WarCraft 3 / Проверка победил ли кто-нибудь из игроков

konvan5, ок, спасибо. Вот так сделал. Норм?
Выцепляем номер команды среди не проигравших;
Проверяем на соответствие к команде;
Если какой-то из игроков не соответствует, то пропускаем оставшиеся условия.
Загруженные файлы
15

» WarCraft 3 / Проверка победил ли кто-нибудь из игроков

konvan5, а как это сделать? Взять случайного игрока, и сравнить его тиму с тимами оставшихся? Ну можно и так. Но проблема всё равно оказалось в другом - что я рукожоп. Как обычно. Заменил игрока для убитого юнита, а потом удивлялся почему ничего не работает.
15

» WarCraft 3 / Проверка победил ли кто-нибудь из игроков

konvan5, если остались 3 команды в игре, значит ещё никто не победил. Триггер будет срабатывать только если осталась одна команда.
15

» WarCraft 3 / Проверка победил ли кто-нибудь из игроков

Нашёл в чём косяк. На скрине видны триггеры которые отключены. Я их отключил для наглядности, чтобы вы понимали где формула. Короче там все юниты игрока меняют игрока на пассивного. И соответственно дальше в моей формуле считается уже пассивный игрок. Поэтому ничего не работало. А так всё работает.
15

» WarCraft 3 / Проверка победил ли кто-нибудь из игроков

konvan5, с назначением побед проблем нет. У меня стандартный модификатор Melee, который сам проверяет проигравших и победивших. Но мне понадобилось отследить, если кто-то победил. Но как триггерно это сделать - хз. Вроде бы сделал, но почему-то не запускается.
15

» WarCraft 3 / Слияние двух war3map.j в один

quq_CCCP, мне эти объекты на карте не нужны, они никак не связаны с триггерами. Ни юниты, ни декорации, ни предметы. Всё отслеживается триггерами через переборы и различные события.
ID пересекаться ничей не должен, в теории. Мне надо перенести триггеры в стандартную чистую карту-сражение, не открывая при этом редактор. Потому что карт много, они слишком долго открываются и сохраняются.
Понятно, что перед переносом придётся файл .j немного почистить от лишней инфы. Это допустимо.
Задача очень специфичная. Для этого наверно надо свой софт изобретать...
15

» WarCraft 3 / Слияние двух war3map.j в один

Попробовал через WinMrege. Проблема в том, что он не так распознаёт строки кода. В общем, гиблое дело.
15

» Melee Campaign Heroes / Melee Campaign Heroes 0.9.7 Warships

Последние новости!
Разработка MCH продолжается. В новом патче вернутся герои, которые были временно скрыты, с улучшенными способностями. Например Гул-дан и Праудмур. Задачей патча 0.9.2 будет доработать всё то, что было сделано, чтобы выпустить стабильную версию.
Ваши предложения учитываются. Так, мы вернём в игру Капитана альянса, но уже в виде героя. Будет добавлено больше ИИ, играющих за новых героев. Будет исправлен баг, из-за которого хуман ИИ играл только за эльфов. И многое другое.
Некоторые жалуются на баланс. Что ж, у нас нет столько ресурсов, чтобы затестить все возможные ситуации. Карту разрабатывает один человек и тестирует её с братом. Поэтому в балансе есть промахи, и это исправляется. Например мы пофиксим Ведьмаков и собак Архимонда, благодаря вашим отзывам.
Но вот что нужно знать о специфике баланса. Имбовые герои будут. Гул-дан, Иллидан, Кенариус, Архимонд, Король лич Артес и некоторые другие. Все они по лору невероятно сильные. И это нужно отразить в игре. В этом и всё веселье, попытаться например выступить в несколько человек и против врага Кенариуса сделать хоть что-то. Или проверить, кто сильнее: Лич или Иллидан. Это также полезно для игры новичка против опытного игрока, чтобы сравнять шансы.
Однако, мы стремимся к тому, чтобы до 10 уровня включительно, в игре был стандартный баланс, и имбовые герои проявляли себя только на 11 уровне. Чтобы у тех, у кого нет топовых героев, были шансы победить до раскачки противника.
Так что по-тихоньку работаем над картой, наполняем контентом.