XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Барахолка
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Если вы хотели бы использовать в своей карте нестандартное, оригинальное заклинание, но у вас не хватает знаний для его реализации, то эта тема специально для вас. В данной теме вы можете оставить заявку на создание необходимого вам заклинания.
Если вам нужно заклинание одного из персонажей DotA, то ищите его здесь
» Шаблон оформления заявки
Название: название заклинания
Способ исполнения: GUI / JASS / всё равно
Цель: вражеский юнит / свой юнит / сам герой / итд.
Для героя: да/нет
MUI: можно ли одновременно использовать заклинание больше одного раза
Описание: здесь описание нужного спелла
По уровням:
  1. здесь параметры на первом уровне
  2. здесь на втором
  3. итд.
Шаблон можно просто скопировать здесь, вставить в свое сообщение и заполнить:
**Название:** 
**Способ исполнения:**
**Цель:**
**Для героя:**
**MUI:**
**Описание:**
**По уровням:**
1. 
2. 
...

» Шаблон оформления ответа
Заклинание: здесь может быть название спелла или номер поста
Заказчик: здесь имя пользователя, который заказал заклинание
Способ исполнения: Jass или GUI
MUI: можно ли одновременно использовать заклинание больше одного раза
Нужен ли JNGP: Да или Нет
Используются глобальные переменные: Да или Нет
Шаблон можно просто скопировать здесь, вставить в свое сообщение и заполнить:
**Заклинание:**
**Заказчик:**
**Способ исполнения:**
**MUI:**
**Нужен ли JNGP:**
**Используются глобальные переменные:**
MUI - Multiplayer
Разрешается просто процитировать сообщение заказа и дописать информацию о получившемся заклинании.

Правила темы:

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

Закрытая тема
 
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Заклинания на заказ
Если вы хотели бы использовать в своей карте нестандартное, оригинальное заклинание, но у вас не хватает знаний для его реализации, то эта тема специально для вас. В данной теме вы можете оставить заявку на создание необходимого вам заклинания.

Если вы считаете, что у вас есть возможность выполнить какую-либо из имеющихся заявок, то вы должны оставить сообщение, в котором указать какую из заявок обязуетесь исполнить.

Правила темы

  • Требуется указание желаемого метода исполнения (GUI/JASS).
    Если вы не уверены в исполняемости заявки, не начинайте своё сообщение с вопроса об этом.
  • Запрещается дублирование заявок.
  • Любая заявка, написанная непонятным языком (обилие орфографических ошибок, орфоарт, отсутствие знаков препинания, использование рядов восклицательных и вопросительных знаков) будет удалена.
  • Обсуждение технических нюансов исполнения спелла или багов просьба вести через систему Личных Сообщений.

Cхема составления заявок

  1. Название;
  2. Описание (смысловое, а не художественное);
  3. (опционально) Количество уровней;
  4. (опционально) Технические характеристики (кол-во маны, параметры урона, перезарядки, время действия и т.п.) для каждого из уровней.

Правила оформления сообщения о принятии заявки

  • В сообщении нужно указать название выбранного вами заклинания и никнейм заказчика;
  • Также желательно указание примерных сроков исполнения заявки (конечно, их соблюдение не критично, но желательно);
  • В случае, если заявка не исполнима полностью, рекомендуется описать, что именно вам удалось сделать.

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

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

В этой теме действуют жесткие нормы модерации (любой оффтоп подлежит удалению, а за открытый флуд выдаются плюсы)

Отредактировано Кет, 21.07.2008 в 12:04.
Старый 17.04.2007, 20:51
DeT

offline
Опыт: 5,715
Активность:
» Нужны:

Код:
DS_Trigger - триггер(массив)
DS_Time - целочисленная(массив)
DS_Count  - целочисленная


Код:
function Ab takes nothing returns integer
    return 'A000'
endfunction

function VampChance takes integer i returns nothing
    local integer d = R2I(GetEventDamage())  
    local integer c = GetRandomInt(0,100)
    if c<=i then
        call SetUnitState(GetEventDamageSource(),UNIT_STATE_LIFE,GetUnitState(GetEventDamageS    ource(),UNIT_STATE_LIFE)+200 + d)
    else
    endif
endfunction

function DS_UAttacked takes nothing returns nothing
    local integer l = GetUnitAbilityLevel(GetEventDamageSource(),Ab())
    call VampChance(15 + 5*(l-1))
endfunction

function DS_AddUnit takes nothing returns nothing
    set udg_DS_Trigger[udg_DS_Count] = CreateTrigger()
    call TriggerRegisterUnitEvent(udg_DS_Trigger[udg_DS_Count],GetTriggerUnit(),EVENT_UNIT_DAMAGED)
    call TriggerAddAction(udg_DS_Trigger[udg_DS_Count],function DS_UAttacked)
    set udg_DS_Time[udg_DS_Count] = 2
    set udg_DS_Count = udg_DS_Count + 1
endfunction

function DS_TL takes nothing returns nothing
    local integer i = 0
    loop
    exitwhen i > udg_DS_Count - 1
        set udg_DS_Time = udg_DS_Time[i] - 1
        if udg_DS_Time[i]<=0 then
            call DestroyTrigger(udg_DS_Trigger[i])
            set udg_DS_Trigger[i] = udg_DS_Trigger[udg_DS_Count - 1]
            set udg_DS_Trigger[udg_DS_Count - 1] = null
            set udg_DS_Time[i] = udg_DS_Time[udg_DS_Count - 1]
            set udg_DS_Time[udg_DS_Count - 1] = 0
            set udg_DS_Count =  udg_DS_Count - 1
        else
        endif
    set i = i + 1
    endloop
endfunction


» Ридми:


Создаешь триггер в РТ "TimeLesser"
Событие: Время - Periodic event - 1.0 sec.
Переведи в текст и вставь вверху всего(НЕ удаляя то что было
» код
function DS_TL takes nothing returns nothing
local integer i = 0
loop
exitwhen i > udg_DS_Count - 1
set udg_DS_Time[i] = udg_DS_Time[i] - 1
if udg_DS_Time[i]<=0 then
call DestroyTrigger(udg_DS_Trigger[i])
set udg_DS_Trigger[i] = udg_DS_Trigger[udg_DS_Count - 1]
set udg_DS_Trigger[udg_DS_Count - 1] = null
set udg_DS_Time[i] = udg_DS_Time[udg_DS_Count - 1]
set udg_DS_Time[udg_DS_Count - 1] = 0
set udg_DS_Count = udg_DS_Count - 1
else
endif
set i = i + 1
endloop
endfunction
)

там где у тебя будет ф-ия с Action'ами триггера вставь просто
Код:
call DS_TL()


Далее шаг второй:

создай еще 1 триггер(Назови как хочешь)

Событие: Юнитв атакован

Опять же конверт в текст и вставляй остальной код

внутри Action'ов вставь просто
Код:
call DS_AddUnit()




вот и все

[i]DeT добавил:

2Mr_KLOP :)

DeT добавил:
И еще:

в
Код:
function Ab takes nothing returns nothing
    return 'A000'
endfunction


вместо A000 вставь код своей абилы!

Отредактировано Dead_knight, 12.09.2007 в 09:10.
Старый 18.04.2007, 17:00
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Вообще-то предпологалось, то карта будет делаться и выкладываться сюда в виде файла...

Mr_KLOP
В коде DeT'а маленькая опечатка:
» jass-code

Код:
function Ab takes nothing returns integer
    return 'A000'
endfunction
Старый 18.04.2007, 17:16
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Nerzul
Твой спелл. Урон окружающим юнитам.
Прикрепленные файлы
Тип файла: w3x DamageNearCaster.w3x (10.6 Кбайт, 800 просмотров )
Старый 18.04.2007, 17:22
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
ghost_WC3
Делай в РО.


1max_iron
Заказ выполнен: Мазохизм.
Прикрепленные файлы
Тип файла: w3x spell_Masochism.w3x (15.4 Кбайт, 660 просмотров )
Старый 23.04.2007, 19:19
Kiwi
Offline
offline
Опыт: 11,502
Активность:
Pila, вот... Урон, если надо, сам сделаешь...
Прикрепленные файлы
Тип файла: w3x FireShield.w3x (43.6 Кбайт, 1735 просмотров )
Старый 02.05.2007, 02:18
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
1max_iron
Держи. Там несколько переменных + кэш. Неуниверсально.
Принцип думаю поймёшь. Подстроишь под себя.
Прикрепленные файлы
Тип файла: w3x SpellCopy.w3x (12.4 Кбайт, 562 просмотров )
Старый 11.05.2007, 21:48
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Nyuu
Лови. Юзай на здоровье.
Сделан на джаззе.
Прикрепленные файлы
Тип файла: w3x Spell_AttackAnother.w3x (12.1 Кбайт, 483 просмотров )
Старый 19.05.2007, 23:56
S

offline
Опыт: 43,833
Активность:
Сори, против кастера настрой переменную Face - Face angle of Caster (эту переменную тоже сам :)))) извини время поджимает)
Идея - юнита мовает, перед ним создаюца иллюзии, каждые 0.03 секунды дамаг == расстояние между стартовой позицией и его текущим местоположением \ 5. Если юнит таки выживает (дамага около 1500) то иллюзии заставляют его подпрыгивать и он благополучно приземляеца :)
Спелл назвал "Бег Иллюзий"
Оптимизация не проводилась
Прикрепленные файлы
Тип файла: w3x Flying.w3x (13.1 Кбайт, 427 просмотров )
Старый 04.06.2007, 21:32
theFT
Kicked by Dron
offline
Опыт: 4,441
Активность:
Цитата:
Ракетный Буран

Удалите эту закляшку с 1го поста. Она делается в редакторе объектов. Переделываем громовую поступь, чтобы она прицеливалась на рельев. Ставим нужную деформацию рельефа, и - заместо волн бурана, используем эффект закляшки тинкера "Ракетный удар"
Цитата:
Мазохизм
Активка
Время действия:пока не выключишь-работает
Описание:изучив эту способость герой получает дополнительный бонус к атаке(уровень героя*5),а также за любую атаку теряет здоровье:
1 уровень- -2% нр/удар
2 уровень- -4% нр/удар
3 уровень- -6% нр/удар
4 уровень- -7% нр/удар
5 уровень- -7% нр/удар(но по формуле:___...левел гера*5.4)

А процент здоровья от атаки или от вего здоровья героя?
Цитата:
Кровавая мощь
активка
время действия:пока не отключешь работает
Описание:активировав данную способность герой наносит дополнительный урон за опыт(при этом если герой дошёл до отметки понижения левела-левел не понижается!Пример:до 2 левела 10 опыта,а у нас 11,используем кровавую мощь(-2 опыта),но отнимается лишь 1(тоесть с помощью данной способности нельзя понизить уровень!)):
1 уровень_ -20 опыта +(левел гера*3+10)урона за удар
2 уровень_ -30 опыта +(левел гера*3.1+10)
3 уровень_ -35 опыта +(Левел гера*3.5+10)

Делаешь переменную (например VAR), если закляшка включена VAR=1, если отключена - VAR=0. В качестве закляшки используешь спосбность жар преисподней (снимаешь с неё эффекты, заклинания, обнуляешь данные, вписываешь свои характеристики). Создаешь способность которая добавляет атаки (рассчитвыая её на каждый очок атаки вплоть от 0 до 50 (если уровней у героя макс 10)). Далее делаешь 2 трига, примерно таких:
Цитата:
Событие:
воин атакует
Условие:
VAR=1
Triggering unit = ЭТОТ ВОИН
Действия:
Если, тогда, ещё
Если
Уровень способности Кровавая мощь у ЭТОТ ГЕРОЙ = 1
То
Герой - Add ЭТОТ ГЕРОЙ -20 опыта
Если, тогда, ещё
Если
Уровень способности Кровавая мощь у ЭТОТ ГЕРОЙ = 1
То
Герой - Add ЭТОТ ГЕРОЙ -30 опыта
Если, тогда, ещё
Если
Уровень способности Кровавая мощь у ЭТОТ ГЕРОЙ = 1
То
Герой - Add ЭТОТ ГЕРОЙ -35 опыта

Цитата:
Событие:
Воин применяет способность
Условие:
VAR=0
Тип способности равно кровавая мощь
Triggering unit = ЭТОТ ГЕРОЙ
Действия:
Сделать VAR=1
Воин - Add ability АТАКА у ЭТОТ ГЕРОЙ уровня = ATTACK

Цитата:
Событие:
Воин заканчивает применение способности
Условие:
VAR=1
Тип способности равно кровавая мощь
Triggering unit = ЭТОТ ГЕРОЙ
Действия:
Сделать VAR=0
Воин - Remove ability АТАКА у ЭТОТ ГЕРОЙ

Переменную ATTACK Высчитывай. Это - твоя атака. Она будет равна лвл способности. Но максимум сто. Если надо что подкоректировать говори.

Отредактировано theFT, 14.06.2007 в 10:17.
Старый 14.06.2007, 09:53
theFT
Kicked by Dron
offline
Опыт: 4,441
Активность:
Цепь вампиризма.
Цитата:
Молния ударяет по противникам, отнимая у них здоровье. Это здоровье переходит к своим крипам и к тебе равномерно, которых тоже цепляет молния. Молния не должна атаковать союзников, она должна их лечить.
1 уровень - 30 урона
+20 за каждый левел

до 10 уровня.
И ещё:
Рука помощи
Цитата:
Герой воскрешается при помощи другого героя. Время воскрешение равно уровню героя (которого воскрешают), умноженному на:
1 лвл - лвл*3
2 лвл - лвл*2
3 лвл - лвл*1
4 лвл - лвл*1/2
5 лвл - лвл*1/3
Во время воскрешения мертвого героя, живой должен над ним кастовать.

Отредактировано Кет, 14.06.2007 в 23:24.
Старый 14.06.2007, 20:43
theFT
Kicked by Dron
offline
Опыт: 4,441
Активность:
Суд божий
Это очень просто. В качестве самой способности используй любую прицеливающуюся способность. Все данные ставишь по 0, кроме перезарядки и маны (их меняешь по своему усмотрению). Создаем целочисленную переменную VAR, которая будет отвечать за рандомизацию, и ляпаем триггер:
Цитата:
События:
Боевая единица - A unit Приводит способность в действие
Условия:
(Ability being cast) равно Суд Божий
Действия:
Set VAR = (Random integer number between 1 and 2)
If (VAR равно 1) then do (Боевая единица - Set life of (Casting unit) to ((Здоровье of (Casting unit)) + 200.00)) else do (Do nothing)
If (VAR равно 2) then do (Боевая единица - Set life of (Casting unit) to ((Здоровье of (Casting unit)) - 200.00)) else do (Do nothing)
Старый 15.06.2007, 14:27
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Атака сзади.
Там в условии поставишь проверку дамми-спелла "двойного урона".
Прикрепленные файлы
Тип файла: w3x AttackBehind.w3x (11.6 Кбайт, 654 просмотров )
Старый 20.06.2007, 13:12
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
franck007
» Оборотень

trg_BlockAbility:
Код:
Events:
Игра - The in-game time of day becomes равно 24.00
Conditions:
  // as you want
Actions:
Player - Disable <Оборотень> for Player 1 (Red)


trg_EnableAbility:
Код:
Events:
Игра - The in-game time of day becomes равно 5.00
Conditions:
  // as you want
Actions:
Player - Enable <Оборотень> for Player 1 (Red)



rOOse
Смотри первый пост. Прыжок уже сделан.

lazers
Посмотри этот спелл (аттач). Подстроишь под себя.
Прикрепленные файлы
Тип файла: w3x spell_EnergeticBolt.w3x (18.0 Кбайт, 673 просмотров )

Отредактировано DFlyer, 25.06.2007 в 14:31.
Старый 25.06.2007, 14:24
rOOse
Kicked by Q
offline
Опыт: 1,205
Активность:
Смертельный прыжок
Короче сделал сам, может и криво, но для первого раза сойдет- главное работает.
Прикрепленные файлы
Тип файла: w3x DeathJump.w3x (15.0 Кбайт, 478 просмотров )
Старый 27.06.2007, 11:36
Mr_White
Kiss my ass,I from DS
offline
Опыт: 830
Активность:
Утром голова не хочет работпть доделай Плиз
Прикрепленные файлы
Тип файла: w3x Spell Bombarland.w3x (21.8 Кбайт, 251 просмотров )
[+] 1 пункт от ScorpioT1000: 10.4 Создание ресурса, название которого не отражает суть вопроса.
Старый 02.07.2007, 11:53
ghost_WC3

offline
Опыт: 3,681
Активность:
Ладно, так уж и быть...
Описания сам поменяешь... и чтобы работало, не забудь своему герою (из твоей мапы) в улучшениях добавить это...
Прикрепленные файлы
Тип файла: w3x Спелл.w3x (13.8 Кбайт, 470 просмотров )
Старый 12.07.2007, 12:12
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Scriptomano
Вообще-то у мну тоже есть свои дела. И сложились кое-какие обстоятельства, из-за которых я не сделал спелл раньше.
Держи, спелл "название". Пассивка.
Прикрепленные файлы
Тип файла: w3x SpellBehind_(uvorot).w3x (12.9 Кбайт, 543 просмотров )

Отредактировано DFlyer, 21.07.2007 в 14:07.
Старый 16.07.2007, 10:42
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Я думал, прыгать за спину, если он атакован. Чтобы было когда атакует он сам, то нада изменить событие и условия.
» Уворот

Код:
Events:
Generic Unit Event
Юнит получил приказ с целю - объект
Conditions:
String Comparison
(Issued order) Equal to Right-Click
+ проверка на левел спелла
Actions:
...

Ещё ведзе надо поменять местами Attacking Unit и Attacked Unit
Старый 16.07.2007, 19:58
DFlyer
<3 MJ
offline
Опыт: 44,079
Активность:
Смотрите правила!

Vanguard
Скачай героя SealMaster с сайта.

hhjkl888
Тут уже есть стрелы.

Чтоб откатывался:
» spell: Kick

Код:
// trg_KickLaunch:
Events:
Юнит применяет заклинание
Conditions:
Ability beeing cast = <YourSpell>
Actions:
set kick_caster = Triggering Unit
set kick_facing = Facing Of kick_caster
set kick_target = Target Unit Of Ability Beeing Cast
set kick_int = 0
Turn on trg_KickMove

// trg_KickMove:
Events:
Every 0.01 seconds
Conditions:
Actions:
If\Then\Else:
If:
  kick_int < 100
Then:
    // тут юзай полярки: Point With Polar Offset
  Move kick_target to (Location Of (kick_target) with offset 10) towards kick_facing degrees
  set kick_int = kick_int+1
Else:
  Turn Of (This Trigger)


kick_caster, kick_target - переменная типа юнит (unit)
kick_facing - реальная переменная (real)
kick_int - целочисленная переменная (integer)

И чтоб оглушался, на основе спелла юзай "Громовой Молот" с маленькой дистанцией, типа удар.
Старый 22.07.2007, 13:19
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 17:15.