Сообщений: 450
Тем: 24
Зарегистрирован: Feb 2010
Репутация:
139
flashman Написал:Sorento, вряд ли кто-то возьмётся за написание такого гайда, ибо писать придётся очень долго и много. Единственное решение в данном случае - это изучение уже написаных скилов (находятся в папке skills), в файле skills.xsd описаны все возможные параметры скилов и их атрибуты, их очень много так что тут понятное дело что никто описывать это всё не будет. Могу привести лишь описание одно из множетсва скилов:
PHP код:
<?php
<skill_template skill_id="18892" name="STR_IDCatacombs_Spectre_AreaHealNuff" nameId="590579" stack="IDCATACOMBS_SPECTRE_AREAHEALNUFF" lvl="1" skilltype="MAGICAL" skillsubtype="DEBUFF" tslot="DEBUFF" activation="ACTIVE" cooldown="0" duration="0">
<setproperties>
<firsttarget value="ME"/>
<firsttargetrange value="2"/>
<targetrange value="AREA" distance="40" maxcount="12"/>
<targetrelation value="ENEMY"/>
</setproperties>
<useconditions>
<playermove allow="false"/>
</useconditions>
<effects>
<deboostheal percent="99999" duration="15000" effectid="10184622" e="2" element="WIND"/>
</effects>
</skill_template>
Тут можно увидеть:
skill_id - id скила в клиенте и который описывается на сервере.
name - строка содержащаяся в файле client_strings.xml (находится в клиенте), содержит название скила.
stack - точно незнаю что это означает, но в поле атрибута содержиться часть от строки содержащейся в client_strings.xml , весьма вероятно что это описание скила для панели быстрого доступа(возможно).
skilltype - тип скила , магический (MAGICAL) или физический (PHYSICAL).
skillsubtype - дополнительный тип скила (дебафы, бафы, атака ...).
tslot - слот куда добавляется скил , если скилл является бафом или дебафом.
activation - указывает на то , является ли скил Активным или Пассивным.
cooldown - это время перезарядки скила (секунда приравнивается к 10)
duration - это время подготовки скила перед его применением (секунда приравнивается к 1000).
По мимо этих атрибутов в тег
<skill_template> могут входить и другие.
<setproperties> - в этом теге перечисляются свойства скила.
firsttarget value="ME" - цель скила.
firsttargetrange value="2" - расстояние до первой цели.
targetrange value="AREA" distance="40" maxcount="12" - определяет дистанцию (distance) до цели ,облать воздействия (value="AREA") и количество целей (maxcount="12").
useconditions - определяет условия применения скила.
playermove allow="false" - в данном случае объект использующий скил должен оставаться неподвижным.
effects - определяет эффекты которые произведёт скил на цель.
deboostheal - в данном случае применён эффект который ухудшает (или вообще делает не эффективным) лечение.
percent - по идее процент срабатывания скила.
duration - продолжительность действия скила. (секунда = 1000)
effectid - id применяемого эффекта(анимация скорее всего).
element - поскольку это магический скил, то есть возможность использовать один из 4-х элементов.
Что такое
е точно не помню, где-то в ядре видел его применение, но не помню что это.
Собственно только по аналогии с уже существущими скиламы ты сможешь сделать свой скил, но для этого придётся вносить изменения и в клиент.
Редактировать скилы также возможно только по аналогии или хорошем знании дела
, так что как видно этот вопрос весьмя не прост.
ну вот почти))
stack - стек скилла, используется для баффов и дебаффов, если ты юзнул скилл из этого стека(А), а потом юзаешь другой скилл из этого же стека(Б), то эффект скилла А заменяется эффектом скилла Б