Насчет переноса данных между картами. Существуют SaveLoad системы, обычно они работают в пределах одной карты, но если несколько карт обладают одинаковыми игровыми объектами, то можно без проблем переносить данные между ними с помощью таких систем.
Ну про Save/Load в курсе, карта будет одна и та же, просто нужно относительно адекватный способ переброса без применения черной магии со стороны игроков. В принципе игроки могут перебрасывать отдельно выгруженные текстовые файлы друг другу. Просто хотелось бы это как-то через "шлюз" перебрасывать между 2-3 группами игроков в 3-х разных играх.
Костыль уровня 2 игрока как 1. 1 игрок-бот использует крипов и т.д., ну в общем для чего он используется. Второй игрок-бот имеет расшаренный контроль.
Вариант 2, триггеры. Триггерно накручиваешь уровни всем игрокам от грейда. А грейд лежит в здании, которое передается по кругу от игрока к игроку.
Вариант 3, создаешь магаз с предметами пустышками, которые при приобретении триггерят событие на подбор предмета и действиями подгоняешь уровень предмета. Работает также с юнитами-даммиками. Можно через продажу юнитов уровни грейдов устанавливать через заряды(сток) юнита-грейда отображая его уровень. Естетвенно ресток юнита должен быть 0.
Создаешь переменную, через Set Variable. При помощи инициализации карты проверяешь игроков и нужного игрока вносишь в переменную.
Потом делаешь триггер на отлов действий, где игра проверяет условие, что Triggering Player = Ваша игрок в переменной, и потом уже сотворяет нужные действия.
UPD: добавил скрины и убрал лишний текст
Триггер с сетапом можно использовать такой.
Примеры можешь посмотреть на скрине. Карта уже на уровне проверки ников определяет игрока-админа и дает ему кастомный ник.
Если нужно чтобы мог менять во время игры цвет и т.д. Создаешь команду, которая при введении подстроки меняет ник на конструкцию и в действиях даешь concacetrate strings |CFF + (код цвета) + его текущий ник (или ник которая игра будет хранить в переменной), или банально он самостоятельно будет вводить ник с нужными кодами.
Но помни, коды цветов занимают место в нике по буквам, и часть текста в чате будет в конце обрезаться, если нету системы выгружающий введенные тексты в чат, например, в мультиборд или на экраны игроков.
Есть 2 варианта исполнения.
Вариант 1:
Триггер реагирует на подбор руны и запускается таймер. Таймер заканчивает отсчет и спавнит руну.
Вариант 2:
Циклический таймер каждые Н минут тикает. И проверяет переменную, которая меняется от поднятие руны. Если переменная например стоит 1(руна есть), игра не спавнит руну, но если переменная 0(нету руны) то игра её спавнит и ставит переменную на 1. Подбор руны ставит переменную на 0. Да, звучит костыльно, но метод довольно рабочий, в последствии можно потом оптимизировать.
Ну и ранее тоже упоминали цикл проверяющий переменную по существующему предмету в регионе. Но там не хватает триггеров для изначальной задачи переменной и очищению.
В JPNG есть функция массового импорта, но там нужно название пути обязательно написать (удобно для импорта иконок). Руками можно либо через макрос, либо сделав масс импорт написав путь models для моделей, textures для текстур. Если необходимо, менять путь текстур не на пустой в mdlvis, а на textures/ например.
Откатить изменения заменив свои результаты на заранее сделанный бэкап. Надеюсь он у тебя есть. Если нет, то попробуй достать неиспорченные из архива игры.
Если нужно смену цвета ника во время старта, то делай триггер по такой схеме.
Событие:
eplased 0.02 seconds
Действие:
pick every player
if
name of picked player equal (==) [тут ник нужного игрока]
then
change player name |CFF18E7BD[ник игрока]|r
else
do nothing
После этого ник нужного игрока будет бирюзвого цвета
Можно сделать через сообщение в чат, но тут уже нужно крепить дополнительные условия
Событие:
Unit dying
Условие:
Dying unit is hero equal (==) true
Действие:
wait (тут твое время по желанию) seconds
ressurect dying unit in position of dying unit and show ressurect animation
Он лежит на случай если игре необходим данный реф. В РО ты мог иногда видеть необходимое приложение и варианты small, medium и large. Также по возможности спецэффекты и эффекты способностей могут к ней крепиться.
А collission насколько я помню отвечает за выделение или за столкновение летающих юнитов. На всякий случай оставляй, а то мало ли, да и места много не просит.
Вот карта пример как это сделать. Сделано конечно немного "грубовато", но это поможет тебе понять как делать все дальше. Пока условия проверяют наличие лишь в 1-ом слоте, но повозможности потом можно доделать до проверки наличия предмета в принципе. В карте 2 триггера. Первый взят из статьи "База примеров на GUI" глава "Манипуляции с предметами". Второй триггер отвечает за стрельбу. Триггер проверят наличие предмета в инвентаре и отбирает стрелу за выстрел, а если стрел нет, то не дает герою стрелять.
Так вы хотите еще и новые патчи поддерживать? Удачи в этом нелегком начинании, конечно, но ведь там и так 128 мб карты поддерживаются.
Ну патч, не патч. А загрузка порой медленная настолько, что иногда вешайся. Хоть и могу реализовать простую блок схему, но народ даже по такой простой инструкции не удосуживается делать как нужно.
Создаешь триггер, который имеет условие с атакой. Делаешь предмет стрела и даешь ей заряд, при этом у предмета нету активной способности или триггерно возвращаешь заряды если игрок тыкал по стреле(ам). Делаешь триггер на стек стрел в инвентаре. После этого когда герой начинает атаковать, то игра проверяет наличие стрел, а потом отнимает заряд предмета. Если стрел нету, то триггерно спамим отмену при попытке атаковать. Если потерпишь, то карту-пример потом скину.
А чо, в этом чудо-патче еще и миксы работать перестали? Ну это не патч, это точно вирус, офк для тех, кому важен модмейкинг.
По крайне мере миксы для 1.26 не работат на 1.27. Мапхаки работающие на миксах уже обновили. А вот тот тип миксов, которые используют мододелы никто еще не обновил.
» WarCraft 3 / Костыльные технологии
» WarCraft 3 / Общее здание
Отредактирован Ikobot
» WarCraft 3 / Ребята, последний вопрос на сегодня. Как создать переменную Name
Триггер с сетапом можно использовать такой.
» WarCraft 3 / Максимальный уровень способности
» WarCraft 3 / Парни, хотел бы сделать администраторам на боте цветной текст.
» WarCraft 3 / Как сделать респавн руны по истечению временни ?
Вариант 1:
Триггер реагирует на подбор руны и запускается таймер. Таймер заканчивает отсчет и спавнит руну.
Вариант 2:
Циклический таймер каждые Н минут тикает. И проверяет переменную, которая меняется от поднятие руны. Если переменная например стоит 1(руна есть), игра не спавнит руну, но если переменная 0(нету руны) то игра её спавнит и ставит переменную на 1. Подбор руны ставит переменную на 0. Да, звучит костыльно, но метод довольно рабочий, в последствии можно потом оптимизировать.
» WarCraft 3 / Мемхак и патч
» WarCraft 3 / Что содержится в WC III в папке redist?
» WarCraft 3 / World editor.
» WarCraft 3 / Отключить ИИ крипам
» WarCraft 3 / При замены slk файлов в mpq, в редакторе пишет много ошибок
» WarCraft 3 / Аура ускорения производства
» WarCraft 3 / Аура ускорения производства
» WarCraft 3 / Mixtape файл для 1.27b
» WarCraft 3 / Надо сделать трату снарядов оружием
» WarCraft 3 / Помогите как сделать чтоб создатель карты менял цвет ника ?
Событие:
eplased 0.02 seconds
Действие:
pick every player
if
name of picked player equal (==) [тут ник нужного игрока]
then
change player name |CFF18E7BD[ник игрока]|r
else
do nothing
После этого ник нужного игрока будет бирюзвого цвета
» WarCraft 3 / Респавн для геров, вызванных в Таверне.
Unit dying
Условие:
Dying unit is hero equal (==) true
Действие:
wait (тут твое время по желанию) seconds
ressurect dying unit in position of dying unit and show ressurect animation
» WarCraft 3 / Вопрос о Sprite Medium Ref и Collision
» WarCraft 3 / Надо сделать трату снарядов оружием
» WarCraft 3 / Mixtape файл для 1.27b
» WarCraft 3 / Надо сделать трату снарядов оружием
Отредактирован Ikobot
» WarCraft 3 / Mixtape файл для 1.27b