Перейти к содержанию

Сообщения от Скрипты для начинающих

В ответ пользователю Азгалор
Аватар пользователя
Азгалор
Да, уже заметил) Чтош, недоглядел. Кстати, запустил карту, и скрипт работает. Ну... Сильно подвисает секунд 5, а потом запускает комбат с нейтральным Синитаром с 10 драконами в его армии. Такие дела 👀
Работает команда StartCombat, а я то хочу чтоб внутри битвы у меня действия происходили (по задумке касты армагедона по итогу), пока там простенькая какая-то команда в Start вбита для увеличения маны что не отрабатывает и внесённый туда print для отображения в консоли, что попал в боевой скрипт. Ну а подвисание от функции определения расы и потом присвоения по этому определению замка на половине игрока. + там сразу разрушение текущего стартового замка, полагаю от этого всё тупит в начале какое-то время. Как оптимизировать пока хз)

Добавлено через 14 минут

Сейчас надпись белым в консоли настораживает: Warning: scripts are not allowed - возможно это и есть ответ, что не хватает какого-то разрешения на работу этого скрипта. И появляется строка аккурат под начало битвы.

Ещё только учусь =)
Аватар пользователя
Может что карта мультиплеерная? Вообще можно покачать сценариев разных и сравнить. Я больше принципиальных различий со своей рабочей версией не вижу.
РПГ-сценарий для HoMM5: Путь героя
ЧаВо по созданию карт для HoMM5: ЧаВо
В ответ пользователю Jack_of_shadows
Аватар пользователя
Jack_of_shadows
Может что карта мультиплеерная? Вообще можно покачать сценариев разных и сравнить. Я больше принципиальных различий со своей рабочей версией не вижу.
Посещала и такая мысль... Что боевые скрипты не для мультиплеера. Придётся довольствоваться тогда только StartCombat на тригерах при достижении определённых мест.

Добавлено через 12 часов 41 минуту

В общем, полазал в разделе карт из тех, что отмечены как мультиплеер, и что-то в паре десятков скаченных не обнаружил ни одного боевого скрипта... Не нравится мне эта тенденция) Остаётся надежда, что может надо где-то его всё таки прописать в map.xdb и станет работать.

Ещё вопрос по sleep возник, на основе инфы сообщений других до меня искальцев ответов) Подозреваю, что у меня зависания на старте карты, где одновременно много функций выполняются, не дожидаясь друг друга, видимо специфика lua такая. Нашёл пример 

repeat sleep(1) until GetUnitManaPoints(GetAttackerHero())==200 --Спать до тех пор, пока не начислится мана

нашёл вот этот код. А как ожидание прикрутить к MessageBoxForPlayers срабатыванию? Или завершения функции начисления существ в замки игроков. У меня пока в голове костыль с какой-то переменной булевой и проверкой её на true|false  в sleep. 

Ещё только учусь =)
Аватар пользователя
Прошу подсказать с вопросом постройки зданий, в руководстве от Novic нашёл раздел "Работа с городами.", но нет инфы как строить конкретные здания, или наоборот разрушать в замке. У меня игроки могут определить стадию игры, и для особо ранних логично много построек не нужно, все круги магии перебор например) Возможно ли точечно скриптом застраивать город под свои нужды?
Ещё только учусь =)
В ответ пользователю FataLisT
Аватар пользователя
FataLisT
Прошу подсказать с вопросом постройки зданий, в руководстве от Novic нашёл раздел "Работа с городами.", но нет инфы как строить конкретные здания, или наоборот разрушать в замке. У меня игроки могут определить стадию игры, и для особо ранних логично много построек не нужно, все круги магии перебор например) Возможно ли точечно скриптом застраивать город под свои нужды?
UpgradeTownBuilding(TownName,BuildingID)
DestroyTownBuildingToLevel(TownName,BuildingID,Level,CanRebuild = 1) где CanRebuild = 0 назначает новый макс уровень постройки равный Level
Мои карты: Белый Храм, Поменяться местами, Судьба королевства, Стихийные острова.
Аватар пользователя
Долгий, спасибо!
Идентификаторы нашёл в соответствующем доке, там не хватает только по оркам. Полагаю методом подбора и экспериментов уже можно выяснить для них
Пока с телефона, вечером на практике попробую)
Первая команда строит, вторая задаёт лвл этой постройки, используются в связке?
Ещё только учусь =)
В ответ пользователю FataLisT
Аватар пользователя
FataLisT
Долгий, спасибо!
Идентификаторы нашёл в соответствующем доке, там не хватает только по оркам. Полагаю методом подбора и экспериментов уже можно выяснить для них
Пока с телефона, вечером на практике попробую)
Первая команда строит, вторая задаёт лвл этой постройки, используются в связке?

Вторая сносит постройку до определённого уровня. Например гильдию магов 5-го уровня до 3-го(Level = 3) или полностью (Level = 0)
Мои карты: Белый Храм, Поменяться местами, Судьба королевства, Стихийные острова.
В ответ пользователю FataLisT
Аватар пользователя
FataLisT
Идентификаторы нашёл в соответствующем доке, там не хватает только по оркам.

TOWN_BUILDING_STRONGHOLD_HALL_OF_TRIAL                   = TOWN_BUILDING_SPECIAL_1
TOWN_BUILDING_STRONGHOLD_GARBAGE_PILE                   = TOWN_BUILDING_SPECIAL_2
TOWN_BUILDING_STRONGHOLD_TRAVELLERS_SHELTER      = TOWN_BUILDING_SPECIAL_3
TOWN_BUILDING_STRONGHOLD_PILE_OF_OUR_FOES          = TOWN_BUILDING_SPECIAL_4
TOWN_BUILDING_STRONGHOLD_SLAVE_MARKET                  = TOWN_BUILDING_SPECIAL_5

Это из файлика advmap-startup.lua, но если ты захочешь что-то ещё от туда подглядеть, то лучше ищи файл в a2p1-data.pak

Всякое/карты:

Добавление недостающей музыки гномам

В ответ пользователю Азгалор
Аватар пользователя
Азгалор

TOWN_BUILDING_STRONGHOLD_HALL_OF_TRIAL                   = TOWN_BUILDING_SPECIAL_1
TOWN_BUILDING_STRONGHOLD_GARBAGE_PILE                   = TOWN_BUILDING_SPECIAL_2
TOWN_BUILDING_STRONGHOLD_TRAVELLERS_SHELTER      = TOWN_BUILDING_SPECIAL_3
TOWN_BUILDING_STRONGHOLD_PILE_OF_OUR_FOES          = TOWN_BUILDING_SPECIAL_4
TOWN_BUILDING_STRONGHOLD_SLAVE_MARKET                  = TOWN_BUILDING_SPECIAL_5

Это из файлика advmap-startup.lua, но если ты захочешь что-то ещё от туда подглядеть, то лучше ищи файл в a2p1-data.pak

Вау! это клондайк информации) Спасибо!
Ещё только учусь =)
Добрый вечер. Попытался активировать скрипт: StartCombat (hero, Assasin, 3, CREATURE_SCOUT, 7 * 5, CREATURE_ASSASSIN, 7 * 5, CREATURE_WITCH, 5*4 ,nil, nil, nil, not nil) 
Пишет: Value was NIL when getting global with name "Assasin"
Герой создан, Скриптовое имя правильное. Пробовал без героя на карте и с. Включил его в "AdventureMapPropetires/Heroes". Результат тот же. В чём я ошибся?
В ответ пользователю Shiroyasha2910
Аватар пользователя
Shiroyasha2910
Добрый вечер. Попытался активировать скрипт: StartCombat (hero, Assasin, 3, CREATURE_SCOUT, 7 * 5, CREATURE_ASSASSIN, 7 * 5, CREATURE_WITCH, 5*4 ,nil, nil, nil, not nil) 
Пишет: Value was NIL when getting global with name "Assasin"
Герой создан, Скриптовое имя правильное. Пробовал без героя на карте и с. Включил его в "AdventureMapPropetires/Heroes". Результат тот же. В чём я ошибся?

Assasin нужно в ковычки взять. "Assasin"
Мои карты: Белый Храм, Поменяться местами, Судьба королевства, Стихийные острова.
В ответ пользователю Долгий
Долгий
Assasin нужно в ковычки взять. "Assasin"
Тоже делал.Тогда пишет: герой не в резерве. Так ладно, а как его тогда в резерв закинуть?
В ответ пользователю Shiroyasha2910
Аватар пользователя
Shiroyasha2910

Тоже делал.Тогда пишет: герой не в резерве. Так ладно, а как его тогда в резерв закинуть?

Ах да, вражеский герой для StartCombat может быть только с резерва
Мои карты: Белый Храм, Поменяться местами, Судьба королевства, Стихийные острова.
В ответ пользователю Долгий
Долгий

Ах да, вражеский герой для StartCombat может быть только с резерва
И что это значит? Как его туда запихнуть?
В ответ пользователю Долгий
Аватар пользователя
Если нужен герой с карты, используйте MakeHeroInteractWithObject

Добавлено через 3 минуты
Shiroyasha2910
И что это значит? Как его туда запихнуть?

В редакторе нажать английскую M. Высветится окно. Перейти в PlayerProperties. Выбрать игрока ИИ, которому принадлежит герой Assasin. Внизу окна будет пустой список Reserve Heroes List. Нажать Add и создать героя Assasin там. Армия необязательна, ибо она назначается в StartCombat
Мои карты: Белый Храм, Поменяться местами, Судьба королевства, Стихийные острова.

Статистика

Приветствуем новейшего участника: Emil

Сейчас на сайте 8 пользователей 1228 гостей