Заклинания на заказ

» опубликован
Если вы хотели бы использовать в своей карте нестандартное, оригинальное заклинание, но у вас не хватает знаний для его реализации, то эта тема специально для вас. В данной теме вы можете, в определённом правилами формате, оставить заявку на создание необходимого вам заклинания или системы.
Если вы считаете, что у вас есть возможность выполнить какую-либо из имеющихся заявок, то вы можете оставить сообщение в определённом правилами формате, в котором указать какую из заявок собираетесь исполнить.

Правила темы

  • Запрещается дублирование заявок.
  • Любая заявка, написанная непонятным языком (обилие орфографических ошибок, орфоарт, отсутствие знаков препинания, использование рядов восклицательных и вопросительных знаков) будет удалена.
  • Обсуждение технических нюансов исполнения спелла или багов просьба вести через систему личных сообщений.
  • Для составления заявок используйте формы.
Заявки, не удовлетворяющие правилам, будут удалены !

Как составить заявку

Необходимо, используя форму составить сообщение в данной теме, где указать:
  • Желаемое название заклинания
  • Желаемый метод исполнения (GUI/Jass/cJass/vJass)
  • Требуется ли возможность использовать спелл несколькими юнитами одновременно (MUI)
  • Цель применения способности
  • Количество уровней
  • Описание (Смысловое, а не художественное)
  • Технические характеристики (кол-во маны, параметры урона, перезарядки, время действия и т.п.) для каждого из уровней
» Форма для составления заявки
Заказ
=
**Название:** Название способности (или системы)
**Метод:** GUI/Jass/cJass/vJass
**MUI:** Обязательно/Не обязательно
**Цель:** Другой юнит / Сам юнит / Точка/ Область/Нет цели/Прочее (указать что именно)
**Количество уровней:** Целое число
**Описание:** Ваше описание. Можно слить со следующим.
**Технические характеристики:** Ваше описание. Можно слить с предыдущим.

Как принимать заказ

Необходимо, используя форму составить сообщение в данной теме, где указать:
  • Никнейм заказчика
  • Название выбранного вами заклинания
  • Примерные сроки исполнения (конечно, их соблюдение не критично, но желательно)
» Форма для принятия заявки
Заказ принят
=
**Заказчик:** Никнейм заказчика
**Способность:** Название способности
((центр
**Спелл будет завершен к [дата в формате дд.мм.гггг. без скобок]**
))
[ дата принятия заявки в формате дд.мм.гггг / дата, к которой спелл предположительно будет готов в формате дд.мм.гггг ]

Как сообщить о не/выполнении заказа

Необходимо, используя форму составить сообщение в данной теме, где указать:
  • Никнейм заказчика
  • Название выбранного вами заклинания
  • Выполнен ли заказ
  • В случае, если заказ невыполним/не выполнен полностью, рекомендуется описать, что именно вам удалось/не удалось сделать.

  • Предоставить карту
» Форма для не/выполненного заказа
Заклинание готово! [Если заказ выполнен успешно] / Не удалось выполнить заклинание [Если по каким-либо причинам вы не способны его выполнить] (1 из 2)
=
**Заказчик:** Никнейм заказчика
**Способность:** Название способности
**Выполнено:** Да/Нет
-
[Сюда добавить инструкцию по импорту, или описать что у вас не/получилось, если не удалось выполнить заказ]
За качественно выполненный заказ вы получите дополнительно 200 единиц опыта.

Дополнительно: как приобрести спелл, не прибегая к этой теме

A. Для начала загляните в Архив готовых спеллов. Возможно, спелл, аналогичный вашему, уже был сделан.
B. Проверьте, нет-ли нужного спелла в Библиотеке заклинаний. Проверенные спелл-мейкеры изготавливали заклинания специально для общественного использования.
C. Поищите общедоступные для открытия карты - там тоже бывают полезные вещи.
D. Если ничего не помогает, пройдитесь поиском по Академии - вероятно, что такие спеллы уже пытались делать и спрашивали как.
E. Если поиски не помогли, попробуй сделать его сам:
  • Осваиваем триггеры в Базе статей, F.A.Q., если не имеем понятия о них.
  • Существуют специальные статьи по созданию спеллов и баффов: 1, 2, 3, 4, 5
  • Поскольку ваши спеллы будут неоптимизированы, и более того, с кучей утечек - настоятельно рекомендуется читать статьи\темы про JASS. Тяжело читать? Легко делать!
  • Если ну никак не выходит сделать то что требуется, заходим в Академию и используем ее по основному назначению - задаем вопросы.

Разумные поиски и тщательное изучение помогут вам добиться результата.

 

Просмотров: 181 224



» Лучшие комментарии


Proshel_Doty #1651 - 1 неделю назад 0
Если ты имеешь гениальную идея, о которой никто не знает - поделись.
Так я тебе уже рассказал принцип работы выше)
KaneThaumaturge:
а какой аналог, покажи.
Там нет полноценной системы, потому что эту карту я так и не доделал до сих пор)
Это не так уж сложно сделать
Там просто вытекают другие последствия:
Например, если у героя, в которого поразили Спелом и который делает возврат (т.е. дамик), имеет в инвентаре итем что-то вроде Октарина в Д2, который хилит от маг урона, так вот урон наносить будет же дамик, а хилиться должен сам Герой)
Там ещё что-то было, не помню, я это летом в том году делал
KaneThaumaturge #1652 - 1 неделю назад (отредактировано ) 0
8gabriel8, даже на 1.31 библиотека нужна будет, как ты поля найдешь какие менять?
По-моему, самый простой вариант через даммик и технику. Ставим даммика, даём ему способность, которую направили, даём технику, которая заменяет все скиллы на аналогичные, но слабее и кастуем. Можно еще изменить даммик под все параметры героя, если триггерные способности зависят от количества маны или здоровья.
Proshel_Doty, "я могу это сделать, это очень легко, но как, я показывать не буду."
Proshel_Doty #1653 - 1 неделю назад (отредактировано ) 0
как ты поля найдешь какие менять?
Зачем тебе менять поля, если у тебя спелы триггерные
KaneThaumaturge:
я могу это сделать, это очень легко, но как, я показывать не буду
Хорош) Я тоже могу)
KaneThaumaturge #1654 - 1 неделю назад 0
Proshel_Doty:
как ты поля найдешь какие менять?
Зачем тебе менять поля, если у тебя спелы триггерные
Господи, успокойся, попробуй это сделать и все поймешь.
Proshel_Doty:
Хорош) Я тоже)
это была аналогия на тебя...
Proshel_Doty #1655 - 1 неделю назад -4
даём технику, которая заменяет все скиллы на аналогичные
Я чёт помню читал тут, что если дать технику во время игры, то вылетит фатал
KaneThaumaturge:
Господи, успокойся, попробуй это сделать и все поймешь.
Лол, я же сказал, что я это делал прошлым летом)
Или у тебя пригорело от того, что ты никак не въедешь как это работает?)
KaneThaumaturge #1656 - 1 неделю назад 3
Или у тебя пригорело от того, что ты никак не въедешь как это работает?)
О боже, хорошо, я здесь не прав, а ты гуру триггерщик, все хорошо.
Proshel_Doty #1657 - 1 неделю назад -4
это была аналогия на тебя...
аа вот оно что))
Я тебе рассказал принцип, тебе этого мало? ЕСли шаришь в триггерах и сам сделаешь, что тебе ещё надо
KaneThaumaturge:
О боже, хорошо, я здесь не прав, а ты гуру триггерщик, все хорошо.
Ты сам это сказал, заметь)
KaneThaumaturge #1658 - 1 неделю назад 0
Proshel_Doty, Вот твой принцип:
только мы уже берём % из абилок дамика и уменьшаем тот же урон/хил/таймер бафа/снижение защиты и т.д.
Как ты это сделаешь, объясни, гуру-триггерщик.
Без библиотеки, на Гуях, без техники, простым твоим способом.
Proshel_Doty #1659 - 1 неделю назад (отредактировано ) -5
KaneThaumaturge:
Proshel_Doty, Вот твой принцип:
только мы уже берём % из абилок дамика и уменьшаем тот же урон/хил/таймер бафа/снижение защиты и т.д.
Как ты это сделаешь, объясни, гуру-триггерщик.
Без библиотеки, на Гуях, без техники, простым твоим способом.
В каждом скиле, а они, хочу напомнить у тебя триггерные, ты чекаешь что спел кастанул дамик и потом чекаешь на сколько % нужно уменьшить или увеличить тот или иной показатель, ты ведь и так их триггерно меняешь, вот и всё
И не бомби, малой, ты уроки то хоть сделал?)
KaneThaumaturge #1660 - 1 неделю назад 2
В каждом скиле, а они, хочу напомнить у тебя триггерные, ты чекаешь что спел кастанул дамик и потом чекаешь на сколько % нужно уменьшить или увеличить тот или иной показатель, ты ведь и так их триггерно меняешь, вот и всё
Хочу тебе напомнить, что баффы/защита/урон дается через абилки. Тебе нужно будет
А. Учитывать при создании каждой способности этот отраж. И в каждой прописывать доп. условия.
Б. Создавать дополнительные аналоги абилок которые дают параметры, чтобы учитывать твой %.
В. Создавать аналоги стандартных абилок, ты же ими тоже пользуешься? А это уже библиотека, ну или бесконечная куча условий.
Твой способ не универсальный, затратный и громоздк.
И похожий способ я уже описал, если ты внимательно бы почитал то, что пишет тебе "малой". Только я описал более универсальный способ.
Предлагаю завершить спор И кому-то из нас пересмотреть свои взгляды.
Proshel_Doty #1661 - 1 неделю назад -4
Хочу тебе напомнить, что баффы/защита/урон дается через абилки.
Ну и что тебе мешает давать абилку или бафф на 5 сек или на 30% от этого, т.е. на 5*0.3 ?
KaneThaumaturge:
А. Учитывать при создании каждой способности этот отраж. И в каждой прописывать доп. условия.
Б. Создавать дополнительные аналоги абилок которые дают параметры, чтобы учитывать твой %.
В. Создавать аналоги стандартных абилок, ты же ими тоже пользуешься? А это уже библиотека, ну или бесконечная куча условий.
Твой способ не универсальный, затратный и громоздк.
И похожий способ я уже описал, если ты внимательно бы почитал то, что пишет тебе "малой". Только я описал более универсальный способ.
Ты сказочно глуп) Ещё раз прочитай, что я писал про реализацию и проанализируй)
KaneThaumaturge:
Предлагаю завершить спор И кому-то из нас пересмотреть свои взгляды.
Да, предлагаю это сделать пацанёнку, которому 17 лет недавно исполнилось, не знаешь такого?)
8gabriel8 #1662 - 1 неделю назад 0
KaneThaumaturge:
даже на 1.31 библиотека нужна будет, как ты поля найдешь какие менять?
Мне казалось, что они задаются кодом поля, типа A000:adm1, то есть можно поменять, указав вместо A000 нашу способность, а данные о силе всегда в одном поле. Но это лишь предположение, у меня нет 1.31.
KaneThaumaturge #1663 - 1 неделю назад 0
Ну и что тебе мешает давать абилку или бафф на 5 сек или на 30% от этого, т.е. на 5*0.3 ?
Я уже описал, не буду повторяться. Ведь тебе это не поможет, как я понял.
Proshel_Doty:
Да, предлагаю это сделать пацанёнку, которому 17 лет недавно исполнилось, не знаешь такого?)
Забавно, да, пацану 17 лет, а он объясняет дяде базовые вещи.
Дальнейшее обсуждение буду проводить только после того, как ты предоставишь свою уникальную универсальную наработку
Proshel_Doty #1664 - 1 неделю назад -2
Пусть он сделает через Технику этот спел)
Мб к новому году доделает XD
NazarPunk #1665 - 1 неделю назад 0
Что вы тут развели спор непонятно о чём. Если все абилки триггерные то в каждой ручками прописываешь.
если цель имеет пассивку отражения, то вдамажить/дебафнуть/чтоугодно кастера
KaneThaumaturge #1666 - 1 неделю назад 2
Мне казалось, что они задаются кодом поля, типа A000:adm1, то есть можно поменять, указав вместо A000 нашу способность, а данные о силе всегда в одном поле. Но это лишь предположение, у меня нет 1.31.
В принципе да, можно пройтись по всем DataX и DurX, хотя триггерные заклинания все равно будут нуждаться в отдельном внимании.
Proshel_Doty #1667 - 1 неделю назад -2
Что вы тут развели спор непонятно о чём. Если все абилки триггерные то в каждой ручками прописываешь.
Я просто ору с малого)
1 пункт от : 2.2 (троллинг)
KaneThaumaturge #1668 - 1 неделю назад 0
NazarPunk:
если цель имеет пассивку отражения, то вдамажить/дебафнуть/чтоугодно кастера
Ну да, но это же подразумевает уделения внимания всем способностям, а чел предлагает простой универсальный способ. Который я и хотел услышать.
Proshel_Doty #1669 - 1 неделю назад -2
Который я и хотел услышать.
ы предоставишь свою уникальную универсальную наработку
Увидишь в моей мапе, которую выпущу и запротекчу, чтобы ты так никогда и не узнал, как это реализовано XD
KaneThaumaturge #1670 - 1 неделю назад (отредактировано ) 2
А. Учитывать при создании каждой способности этот отраж. И в каждой прописывать доп. условия.
Б. Создавать дополнительные аналоги абилок которые дают параметры, чтобы учитывать твой %.
В. Создавать аналоги стандартных абилок, ты же ими тоже пользуешься? А это уже библиотека, ну или бесконечная куча условий.
Твой способ не универсальный, затратный и громоздк.
Я же описал твой способ, и он далеко не гениальный и универсальный.
И это и называется библиотека, как бы. Просто так ты прописываешь в каждой способности, а так в одной библиотеке.
NazarPunk #1671 - 1 неделю назад 1
Ну да, но это же подразумевает уделения внимания всем способностям
Зато самый красивый ибо разным способностям можно сделать уникальные отражения. Снаряды будут рикошетить, молнии будут бить соседних юнитов и т.д.
KaneThaumaturge #1672 - 1 неделю назад 2
NazarPunk, верно. А теперь вернёмся к истокам и перечитаем то, что хочет заказчик:
Описание: При получении вредоносного ЦЕЛЕНАПРАВЛЕННОГО(использованные конкретно против воина) воин с шансом 50% использует его против того врага, который его использовал, отраженное заклинание наносит 30% урона(если есть), если заклинание наложило эффект, то он возвращается в 50% мощности и 30% длительности от применённого
Zikok247 #1673 - 1 неделю назад (отредактировано ) 0
Название: Сила воли.
Метод любой(но желательно GUI чтобы я смог разобраться как сделана пассивка).
MUI не надо.
Цель = герой который приобрел способность.
У пассивной способности 5 Уровней.
Описание:
Пассивка дает герою регенерацию за каждый потерянный процент здоровья равную (0.01*AbilityLvl*str).
NazarPunk #1674 - 1 неделю назад 0
Пассивка дает герою регенерацию за каждый потерянный процент здоровья равную (0.01*AbilityLvl*str)
Где в этой формуле потерянный процент здоровья?
Proshel_Doty #1675 - 1 неделю назад 0
NazarPunk:
Пассивка дает герою регенерацию за каждый потерянный процент здоровья равную (0.01*AbilityLvl*str)
Где в этой формуле потерянный процент здоровья?
Смисле
NazarPunk #1676 - 1 неделю назад (отредактировано ) 0
Смисле
за каждый потерянный процент здоровья
Zikok247 #1677 - 1 неделю назад (отредактировано ) 0
NazarPunk:
Я немного не знаю как его добавить в формулу
Proshel_Doty #1678 - 1 неделю назад 0
NazarPunk:
За каждый 1% потерянного здоровья надо регенить вот столько 0.01*AbilityLvl*str
Шо не так
PT153 #1679 - 1 неделю назад 2
NazarPunk, а что не понятно. Реген равен (0.01 * AbilityLvl * Strength * (1 - PercentHP / 100))
NazarPunk #1680 - 1 неделю назад 0
1 - PercentHP
Отрицательный реген?
Zikok247:
Я немного не знаю как его добавить в формулу
А зачем тогда заказываете, если даже ТЗ описать не можете?
PT153 #1681 - 1 неделю назад 0
Реген равен (0.01 * AbilityLvl * Strength * (1 - PercentHP / 100))
(0.01 * AbilityLvl * Strength * (100 - PercentHP)).
NazarPunk, он адекватно описал ТЗ, а так как сам не умеет, то и пишет тут.
Zikok247 #1682 - 1 неделю назад (отредактировано ) 0
А зачем тогда заказываете, если даже ТЗ описать не можете?
Думал что и так понятно, но вроде формула готова:
(0.01*AbilityLvL*str*(100-PercentHP)
Под PercentHP я подразумеваю процент хп на данный момент.
NazarPunk #1683 - 1 неделю назад 0
» Даже MUI получилось
//! beginusercode
do
    -- На момент патча 1.31 эта функция всегда возвращает 0. Поэтому создадим её локальный аналог.
    local function AbilityId(id)
        return id:byte(1) * 0x1000000 + id:byte(2) * 0x10000 + id:byte(3) * 0x100 + id:byte(4)
    end

    -- Настройки
    local ABILITY_ID = AbilityId('AEev')

    -- Код
    local trigger = CreateTrigger()
    for i = 0, bj_MAX_PLAYER_SLOTS - 1, 1 do
        TriggerRegisterPlayerUnitEvent(trigger, Player(i), EVENT_PLAYER_HERO_SKILL)
    end
    TriggerAddAction(trigger, function()
        local caster = GetTriggerUnit()
        TimerStart(CreateTimer(), 1, true, function()
            if 
                not UnitAlive(caster)
                or
                BlzGetUnitMaxHP(caster) == GetWidgetLife(caster)
            then return end
            local hp = 0.01 * GetUnitAbilityLevel(caster, ABILITY_ID) * GetHeroStr(caster, true) * (100 - GetWidgetLife(caster)/BlzGetUnitMaxHP(caster)*100)
            SetWidgetLife(caster, GetWidgetLife(caster) + hp)
        end)
    end)
end
//! endusercode
Сделал из Змеиной ловкости.
прикреплены файлы
Zikok247 #1684 - 1 неделю назад 0
NazarPunk:
У меня не открывается в редакторе это. Пишет "Сведения об уровнях отсутствуют или неверны"
NazarPunk #1685 - 1 неделю назад 0
У меня не открывается в редакторе это
Это версия 1.31
Proshel_Doty #1686 - 1 неделю назад (отредактировано ) 0
Zikok247:
NazarPunk:
У меня не открывается в редакторе это. Пишет "Сведения об уровнях отсутствуют или неверны"
Нужна версия 1.31+ и отключить джасс хелпер
PT153:
NazarPunk, а что не понятно. Реген равен (0.01 * AbilityLvl * Strength * (1 - PercentHP / 100))
NazarPunk:
Отрицательный реген?
(0.01 * AbilityLvl * Strength * (100 - PercentHP))
Zikok247 #1687 - 1 неделю назад (отредактировано ) 0
NazarPunk:
Вот блин, я на 1.26. Как мне быть тогда?
Proshel_Doty:
0.01 * AbilityLvl * Strength * (100 - PercentHP)
100 - PercentHP больше или равно нулю ибо проценты или равны 100 или меньше сотни. Так что это положительный реген
NazarPunk #1688 - 1 неделю назад 0
Вот блин, я на 1.26. Как мне быть тогда?
  • Переходить на 1.31
  • Ждать, пока кто-то напишет для 1.26
  • Почитать статьи и реализовать самому
Proshel_Doty #1689 - 1 неделю назад (отредактировано ) 2
NazarPunk:
» Даже MUI получилось
//! beginusercode
do
    -- На момент патча 1.31 эта функция всегда возвращает 0. Поэтому создадим её локальный аналог.
    local function AbilityId(id)
        return id:byte(1) * 0x1000000 + id:byte(2) * 0x10000 + id:byte(3) * 0x100 + id:byte(4)
    end

    -- Настройки
    local ABILITY_ID = AbilityId('AEev')

    -- Код
    local trigger = CreateTrigger()
    for i = 0, bj_MAX_PLAYER_SLOTS - 1, 1 do
        TriggerRegisterPlayerUnitEvent(trigger, Player(i), EVENT_PLAYER_HERO_SKILL)
    end
    TriggerAddAction(trigger, function()
        local caster = GetTriggerUnit()
        TimerStart(CreateTimer(), 1, true, function()
            if 
                not UnitAlive(caster)
                or
                BlzGetUnitMaxHP(caster) == GetWidgetLife(caster)
            then return end
            local hp = 0.01 * GetUnitAbilityLevel(caster, ABILITY_ID) * GetHeroStr(caster, true) * (100 - GetWidgetLife(caster)/BlzGetUnitMaxHP(caster)*100)
            SetWidgetLife(caster, GetWidgetLife(caster) + hp)
        end)
    end)
end
//! endusercode
Сделал из Змеиной ловкости.
Кст, там надо делать проверку на лвл способности при изучении, потому что когда повышаешь лвл способности, событие так же срабатывает, в итоге на 5м уровне идёт уже 5-тикратный реген )
Bergi_Bear #1690 - 1 неделю назад 0
Кст, там надо делать проверку на лвл способности при изучении, потому что когда повышаешь лвл способности, событие так же срабатывает, в итоге на 5м уровне идёт уже 5-тикратный реген
а если потом книгу забвения использовать, ммм =) неоднократно
Proshel_Doty #1691 - 1 неделю назад 0
а если потом книгу забвения использовать, ммм =) неоднократно
Абуз)))
PT153 #1692 - 1 неделю назад 0
Так на 1.26 проще простого сделать, если напомните, то сделаю днём.
NazarPunk #1693 - 1 неделю назад 0
а если потом книгу забвения использовать, ммм =) неоднократно
Не для публикации же готовил, зачем тестить))
PT153:
Так на 1.26 проще простого сделать
Можно вообще в лоб перебирать всех юнитов на карте и регенить по способности)
Bergi_Bear #1694 - 1 неделю назад 0
зачем тестить))
я не тестил, это по коду видно, сам такую ошибку часто совершаю, когда вешаю какое-либо свойство на событие изучения способности
NazarPunk #1695 - 1 неделю назад 0
Bergi_Bear, я пытался наиболее кратко от фонаря написать. Так бы я создал группу и For Group одним таймером ганял.
PT153 #1696 - 6 дней назад (отредактировано ) 3
NazarPunk, Так тут даже MUI не надо.

Заклинание готово!

Заказчик: Zikok247
Способность: Сила воли
Выполнено: Да

Копируем способность, в настройках редактора ставим галку "Создавать неизвестные переменные", копируем триггеры из категории Regen, убеждаемся, что значения созданных переменных совпадают со значениями на скриншоте.
прикреплены файлы
Аристарх #1697 - 5 дней назад (отредактировано ) -2
День добрый, у меня заказ, скорее всего простой, но не уверен.
Я прошу сделать заклинание полёта.
Ты можешь переключать режимы(подобно щиту у пехотинца)
При активном полёте снижается защита на, допустим 15ед, но герой начинает собственно летать и у него значительно повышается скорость.
Название: полёт
Метод любой
MUI не надо.
Цель = герой который приобрел способность.
Кол-во уровней: 1
Описание:
Ты можешь переключать режимы(подобно щиту у пехотинца)
При активном полёте снижается защита на, допустим 15ед, но герой начинает собственно летать и у него значительно повышается скорость.
замечание от : Заявки оформляем по шаблону в шапке темы
KaneThaumaturge #1698 - 5 дней назад 3
Аристарх, чем вам Медив не нравится?
PornoMishka #1699 - 5 дней назад 3
Аристарх, да, тут всего-то два версии героя нужно и стандартное превращение в ворона.