Серый_Ветер 4 Опубликовано 25 июня, 2012 скрил: Скрытый текст <------><skill id="1557" levels="1" name="Servitor Share">^M <------><------><set name="magicType" val="MAGIC"/>^M <------><------><set name="icon" val="icon.skill1557"/>^M <------><------><set name="effectPoint" val="669"/>^M <------><------><set name="castRange" val="400"/>^M <------><------><set name="hitTime" val="1000"/>^M <------><------><set name="magicLvl" val="83"/>^M <------><------><set name="mpConsume" val="35"/>^M <------><------><set name="operateType" val="OP_ACTIVE"/>^M <------><------><set name="reuseDelay" val="60000"/>^M <------><------><set name="skillType" val="BUFF"/>^M <------><------><set name="target" val="TARGET_PET"/>^M <------><------><set name="cancelable" val="false"/>^M <------><------><set name="isSelfDispellable" val="false"/>^M <------><------><set name="isSaveable" val="false"/>^M <------><------><for>^M <------><------><------><effect count="1" name="Buff" time="1200" val="0" applyOnCaster="true" applyOnSummon="false"/>^M <------><------><------><effect count="1" name="ServitorShare" time="1200" val="0" displayId="-1">^M <------><------><------><------><add order="0x40" stat="pAtk" val="0.5"/>^M <------><------><------><------><add order="0x40" stat="pDef" val="0.5"/>^M <------><------><------><------><add order="0x40" stat="mAtk" val="0.25"/>^M <------><------><------><------><add order="0x40" stat="mDef" val="0.25"/>^M <------><------><------><------><add order="0x40" stat="maxHp" val="0.1"/>^M <------><------><------><------><add order="0x40" stat="maxMp" val="0.1"/>^M <------><------><------><------><add order="0x40" stat="rCrit" val="0.2"/>^M <------><------><------><------><add order="0x40" stat="pAtkSpd" val="0.1"/>^M <------><------><------><------><add order="0x40" stat="mAtkSpd" val="0.03"/>^M <------><------><------></effect>^M <------><------></for>^M <------></skill>^M имеем в итоге: имеем до:скорость атаки у кота без бафа - 297 хп у кота без бафа 6053 маны у кота 2143 по шансу крит атаки у меня без бафа 40 у кота 44 у чара - 244 скорость атаки маны - 2933 хп - 3550 после бафа: у кота 6110 хп и 2208 маны скорость атаки у кота - 297 - без изменений крит атаки 52 у кота что та не то с настройками... где править можно/нужно? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 25 июня, 2012 add на mull измени. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 25 июня, 2012 (изменено) add на mull измени. а потом что сделать? reload чего/кого чтобы целиком серв не перезагружать... сделал reload skills так теперь ничего не дает вообще ничего не даёт о0причём ниодин параметр) Скрытый текст <------><skill id="1557" levels="1" name="Servitor Share">^M <------><------><set name="magicType" val="MAGIC"/>^M <------><------><set name="icon" val="icon.skill1557"/>^M <------><------><set name="effectPoint" val="669"/>^M <------><------><set name="castRange" val="400"/>^M <------><------><set name="hitTime" val="1000"/>^M <------><------><set name="magicLvl" val="83"/>^M <------><------><set name="mpConsume" val="35"/>^M <------><------><set name="operateType" val="OP_ACTIVE"/>^M <------><------><set name="reuseDelay" val="60000"/>^M <------><------><set name="skillType" val="BUFF"/>^M <------><------><set name="target" val="TARGET_PET"/>^M <------><------><set name="cancelable" val="false"/>^M <------><------><set name="isSelfDispellable" val="false"/>^M <------><------><set name="isSaveable" val="false"/>^M <------><------><for>^M <------><------><------><effect count="1" name="Buff" time="1200" val="0" applyOnCaster="true" applyOnSummon="false"/>^M <------><------><------><effect count="1" name="ServitorShare" time="1200" val="0" displayId="-1">^M <------><------><------><------><mull order="0x40" stat="pAtk" val="0.5"/>^M <------><------><------><------><mull order="0x40" stat="pDef" val="0.5"/>^M <------><------><------><------><mull order="0x40" stat="mAtk" val="0.25"/>^M <------><------><------><------><mull order="0x40" stat="mDef" val="0.25"/>^M <------><------><------><------><mull order="0x40" stat="maxHp" val="0.1"/>^M <------><------><------><------><mull order="0x40" stat="maxMp" val="0.1"/>^M <------><------><------><------><mull order="0x40" stat="rCrit" val="0.2"/>^M <------><------><------><------><mull order="0x40" stat="pAtkSpd" val="0.1"/>^M <------><------><------><------><mull order="0x40" stat="mAtkSpd" val="0.03"/>^M <------><------><------></effect>^M <------><------></for>^M <------></skill>^M Изменено 25 июня, 2012 пользователем Серый_Ветер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 25 июня, 2012 а потом что сделать? reload чего/когочтобы целиком серв не перезагружать... сделал reload skills так теперь ничего не дает Скрытый текст <------><skill id="1557" levels="1" name="Servitor Share">^M <------><------><set name="magicType" val="MAGIC"/>^M <------><------><set name="icon" val="icon.skill1557"/>^M <------><------><set name="effectPoint" val="669"/>^M <------><------><set name="castRange" val="400"/>^M <------><------><set name="hitTime" val="1000"/>^M <------><------><set name="magicLvl" val="83"/>^M <------><------><set name="mpConsume" val="35"/>^M <------><------><set name="operateType" val="OP_ACTIVE"/>^M <------><------><set name="reuseDelay" val="60000"/>^M <------><------><set name="skillType" val="BUFF"/>^M <------><------><set name="target" val="TARGET_PET"/>^M <------><------><set name="cancelable" val="false"/>^M <------><------><set name="isSelfDispellable" val="false"/>^M <------><------><set name="isSaveable" val="false"/>^M <------><------><for>^M <------><------><------><effect count="1" name="Buff" time="1200" val="0" applyOnCaster="true" applyOnSummon="false"/>^M <------><------><------><effect count="1" name="ServitorShare" time="1200" val="0" displayId="-1">^M <------><------><------><------><mull order="0x40" stat="pAtk" val="0.5"/>^M <------><------><------><------><mull order="0x40" stat="pDef" val="0.5"/>^M <------><------><------><------><mull order="0x40" stat="mAtk" val="0.25"/>^M <------><------><------><------><mull order="0x40" stat="mDef" val="0.25"/>^M <------><------><------><------><mull order="0x40" stat="maxHp" val="0.1"/>^M <------><------><------><------><mull order="0x40" stat="maxMp" val="0.1"/>^M <------><------><------><------><mull order="0x40" stat="rCrit" val="0.2"/>^M <------><------><------><------><mull order="0x40" stat="pAtkSpd" val="0.1"/>^M <------><------><------><------><mull order="0x40" stat="mAtkSpd" val="0.03"/>^M <------><------><------></effect>^M <------><------></for>^M <------></skill>^M извиняюсь, не mull, а mul . да и это вы должны знать как этот параметр правильно писать. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 25 июня, 2012 (изменено) Скрытый текст <------><------><------><------><mul order="0x40" stat="pAtk" val="0.5"/>^M <------><------><------><------><mul order="0x40" stat="pDef" val="0.5"/>^M <------><------><------><------><mul order="0x40" stat="mAtk" val="0.25"/>^M <------><------><------><------><mul order="0x40" stat="mDef" val="0.25"/>^M <------><------><------><------><mul order="0x40" stat="maxHp" val="0.1"/>^M <------><------><------><------><mul order="0x40" stat="maxMp" val="0.1"/>^M <------><------><------><------><mul order="0x40" stat="rCrit" val="0.2"/>^M <------><------><------><------><mul order="0x40" stat="pAtkSpd" val="0.1"/>^M <------><------><------><------><mul order="0x40" stat="mAtkSpd" val="0.03"/>^M Atk.spdCastingбез изменений вообще.HP но добавляется не 10%MP но добавляется не 10%Crit Rate передаёт ,но начальные, без шмота остальное рабоает.и релоад не помогает, только рестарт серва. Изменено 25 июня, 2012 пользователем Серый_Ветер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 25 июня, 2012 новые "данные" о скиллах, точнее его попытке заставить работать. когда скилл заюзался статы поменялись все на должные. но как только скилл пропал, статы вернулись обратно такое ощущение что продолжительность работы скилла около 2х секунд Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 25 июня, 2012 (изменено) это, я отсюда взял исходник с http://trac.l2jdp.com/browser/trunk/L2J_Da...01500-01599.xml Скрытый текст <skill id="1557" levels="1" name="Servitor Share"> <!-- H5 Skill --> <!-- Totally Unconfirmed --> <set name="aggroPoints" val="669" /> <!-- Guess --> <set name="castRange" val="400" /> <set name="effectRange" val="900" /> <set name="hitTime" val="1000" /> <set name="isMagic" val="true" /> <set name="magicLvl" val="83" /> <set name="mpConsume" val="35" /> <set name="operateType" val="OP_ACTIVE" /> <set name="reuseDelay" val="60000" /> <set name="skillType" val="BUFF" /> <set name="target" val="TARGET_PET" /> <for> <effect name="Buff" abnormalTime="1200" val="0" abnormalLvl="1" abnormalType="multi_buff"> <mul order="0x30" stat="pAtk" val="1.5" /> <mul order="0x30" stat="pDef" val="1.5" /> <mul order="0x30" stat="mAtk" val="1.25" /> <mul order="0x30" stat="mDef" val="1.25" /> <mul order="0x30" stat="maxHp" val="1.1" /> <mul order="0x30" stat="maxMp" val="1.1" /> <basemul order="0x30" stat="rCrit" val="0.2" /> <mul order="0x30" stat="pAtkSpd" val="1.1" /> <mul order="0x30" stat="mAtkSpd" val="1.03" /> </effect> </for> </skill> вот с ним вс статы становтяся но на время 2 секунды. все. разобрался. не те переменые были в исходнике. теперь все как надо работает. ток не закрывайте тему, еще буду баги писать. таки не все баги убрались... rCrit - не меняется. и сам скилл стал отображаться на звере. должен почему то на чаре. а при вводе переменныых applyOnCaster="true" applyOnSummon="false" <effect name="Buff" time="1200" abnormalTime="1200" val="0" abnormalLvl="1" applyOnCaster="true" applyOnSummon="false" abnormalType="multi_buff"> скил отображается на чаре, но статы не меняются. Изменено 25 июня, 2012 пользователем Серый_Ветер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 25 июня, 2012 не могу понять в чем прикол... если вписать applyOnCaster="true" applyOnSummon="false" то скилл отображается на чаре. но статы не меняются если убрать, то все нормально, кроме rCrit, но скилл отображается на животном.... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 25 июня, 2012 (изменено) подскажите как писать эти скиллы.... сделал, работает... НО. он умножает свои параметры, а не параметры чара. часть просто нагло скопипастено с исходников l2j Скрытый текст <skill id="1557" levels="1" name="Servitor Share"> <set name="magicType" val="MAGIC"/> <set name="icon" val="icon.skill1557"/> <set name="effectPoint" val="669"/> <set name="castRange" val="400"/> <set name="hitTime" val="1000"/> <set name="magicLvl" val="83"/> <set name="mpConsume" val="35"/> <set name="operateType" val="OP_ACTIVE"/> <set name="reuseDelay" val="60000"/> <set name="skillType" val="BUFF"/> <set name="target" val="TARGET_PET"/> <set name="cancelable" val="false"/> <set name="isSelfDispellable" val="false"/> <set name="isSaveable" val="false"/> <set name="aggroPoints" val="669" /> <set name="effectRange" val="900" /> <set name="isMagic" val="true" /> <for> <effect count="1" name="ServitorShare" time="1200" val="0" applyOnCaster="true" applyOnSummon="false" <effect count="1" name="Buff" displayId="-1" time="1200" val="0" abnormalLvl="1" abnormalType="multi_ <mul order="0x40" stat="pAtk" val="1.5" /> <mul order="0x40" stat="pDef" val="1.5" /> <mul order="0x40" stat="mAtk" val="1.5" /> <mul order="0x40" stat="mDef" val="1.5" /> <mul order="0x40" stat="maxHp" val="1.5" /> <mul order="0x40" stat="maxMp" val="1.5" /> <mul order="0x40" stat="rCrit" val="1.5" /> <mul order="0x40" stat="pAtkSpd" val="1.5" /> <mul order="0x40" stat="mAtkSpd" val="1.5" /> </effect> </for> </skill> есть у питомца было 1 1 1 1 стало 1,5 1,5 1,5 1,5 он не реагирует на параметры самого игрока.... где не так написал? судя по описанию: Передает слуге умения призывателя. Передает слуге 50% Физ. Атк. / Защ., 25% Маг. Атк. / Маг. Защ. и 10% Макс. НР/МР, 20% Вероятности Крит Удара, 10% Скорости Физ. Атк. и 3% Скорости Маг. Атк. относительно характеристик призывателя. Изменено 25 июня, 2012 пользователем Серый_Ветер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 25 июня, 2012 (изменено) перечитал раз 100 инструкцию: сделано все правильно... Манусал: Редактирование скилов. Подробное описание. Скрытый текст Все теги должны открываться и закрываться. Теги, которые можно уместить в одну строку могут закрываться внутри себя. Пример: <add .....> ..... </add> <add ...../> Формат xml-файлов: <?xml version='1.0' encoding='utf-8'?> <list> <skill id="1312" levels="1" name="Fishing"> <set name="weaponsAllowed" val="8192"/> <set name="mpConsume" val="1"/> <set name="reuseDelay" val="1000"/> <set name="target" val="TARGET_SELF"/> <set name="skillType" val="FISHING"/> <set name="operateType" val="OP_ACTIVE"/> <for> </for> </skill> <skill id="1313" levels="27" name="Pumping"> <table name="#power"> 19 28 38 50 55 60 65 70 86 92 97 103 109 115 136 143 149 156 187 195 202 245 253 262 271 312 321 </table> <set name="weaponsAllowed" val="8192"/> <set name="mpConsume" val="2"/> <set name="power" val="#power"/> <set name="reuseDelay" val="2000"/> <set name="target" val="TARGET_SELF"/> <set name="skillType" val="PUMPING"/> <set name="operateType" val="OP_ACTIVE"/> <for> </for> </skill> </list> 1. <?xml version='1.0' encoding='utf-8'?> Начало файла, заголовок 2. <list> Начало списка скиллов, в конце файла нужно закрыть тегом </list> 3. <skill id="1312" levels="1" name="Fishing"> Начало описания скилла. После всех тегов должно завершаться </skill> skill id - уникальный id для всех скиллов (и для мобов и для чаров) levels - максимальное количество уровней у этого скилла name - его название Описание скиллов: A) <table name="#power"> 19 28 38 50 </table> Таблица. При ссылке на параметр #power, будет браться значение, соответствующее текущему левелу скилла. Таблиц может быть несколько. Значения могут быть целыми и дробными, и должны отделяться пробелами. Значений должно быть столько, сколько левелов у этого скилла. <set name="COMMAND" val="VALUE"/> Обязательные параметры для каждого скилла: mpConsume - сколько маны требует reuseDelay - время перезарядки target - кто может быть целью skillType - тип скилла operateType - активный, пассивный, переключаемый (toggle) Список параметров: COMMAND: canLearn - (value = "" - Этот скилл нельзя будет выучить. default - не прописывать) castRange - Радиус действия каста activateRate - VALUE absorbAbs - VALUE absorbPart - VALUE advancedFlag - true/false advancedMultiplier - VALUE behind - true/false cancelable - true/false cancelTarget - true/false charge_skill_id - skill_id для charge corpse - true/false critical - true/false crush - true/false deathlink - true/false displayId - VALUE element - VALUE expPenalty - пенальти на эксп ("0.9") hitTime - VALUE hpConsume - VALUE isCubic - true/false isDwarven - true/false isMagic - true/false itemConsumeCount - VALUE itemConsumeCountInTime - VALUE itemConsumeDelay - VALUE itemConsumeId - item_id предмета, который будет использован "1458" itemConsumeIdInTime - item_id предмета, который будет использован регулярно "1458" itemConsumePeriods - период за который будет идти регулярный расход предмета lethal - true/false levelModifier - VALUE magicLevel - VALUE minPledgeClass - VALUE mpConsume - VALUE negateDebuffs - true/false negateEffects - "SLEEP" negateEffects - "STUN SLEEP MUTE POISON BLEED BUFF DEBUFF PARALYZE" negatePower - VALUE negateStats - "mAtk mAtkSpd" npcId - VALUE num_charges - VALUE onCrit - true/false operateType - OP_ACTIVE/OP_PASSIVE/OP_TOGGLE overHit - true/false power - VALUE reuseDelay - VALUE save - VALUE seed_any - true/false seed1 - VALUE seed2 - VALUE seedCount - VALUE seedcount1 - VALUE skillInterrupt - true/false skillRadius - VALUE skillTime - VALUE skillType - AGGRESSION/AIEFFECTS/BALANCE/BLEED/BUFF/CANCEL/CHARGE/CHARGEDAM/COMBATPOINTHEAL/ CONFUSION/CONT/CRAFT/DANCE/DEBUFF/DOT/DRAIN/DRAIN_SOUL/ENCHANT_ARMOR/ENCHANT_WEAPON/FATALBLOW/FEED_PET/FISHING/HEAL HEAL_PERCENT/HOT/INTERRUPT_DISARM/LETHAL_SHOT/LUCK/MANADAM/MANAHEAL/MDAM/MDAM_ELEMENTAL/MDOT/MUTE NEGATE_EFFECTS/NEGATE_STATS/NOTDONE/PARALYZE/PASSIVE/PDAM/PDAM/POISON/PUMPING/RECALL/REELING/RESURRECT ROOT/SEED/SIEGEFLAG/SLEEP/SONG/SOULSHOT/SPIRITSHOT/SPOIL/STUN/SUMMON/SUMMON/SUMMON_ITEM/SWEEP/TAKECASTLE TELEPORT_NPC/TURNER/UNLOCK SummonItemId - VALUE SummonMinCount - VALUE target - TARGET_ALLY/TARGET_AREA/TARGET_AREA_AIM_CORPSE/TARGET_AURA/TARGET_CORPSE/ TARGET_CORPSE_PLAYER/TARGET_HOLY/TARGET_ITEM/TARGET_MULTIFACE/TARGET_NONE/TARGET_ONE/TARGET_PARTY/ TARGET_PET/TARGET_SELF/TARGET_UNLOCKABLE unaggroing - true/false undeadOnly - true/false weaponsAllowed - VALUE C) <cond>...</cond> условия для активации скилла. Не используется в пассивках. Если скилл уже активирован, а условие не соответствует, он НЕ отключается. условия проверяются только для активации. Примеры использования: <cond msg="Too much hit points."><player percentHP="25"/></cond> (будет выдаваться сообщение) без сообщения: <cond><player percentHP="25"/></cond> (25% hp) или <cond><player minHP="25"/></cond> (>25 hp) D) <for>...</for> список эффектов, которые применяются при активном скилле или пассивных. Пример: <!-- добавить к параметру MEN значение 2. --> <for> <add order="0x10" stat="MEN" val="2"/> </for> <!-- умножить значение maxHP на значение взятое из таблицы Tab-maxHP и высветить иконку баффа --> <for> <effect count="1" name="Buff" time="1200" val="0" stackOrder="#stack" stackType="hp_up"> <mul order="0x50" stat="maxHp" val="#Tab-maxHp"/> </effect> </for> Эффекты добавляются словами: <add - добавить <mul - умножить <set - установить <sub - отнять <div - разделить order означает порядок вычисления. (order 0x08, 0x10, 0x30, 0x40, 0x50, 0x60) 0x08 используется для базовой установки параметра 0x10 используется для базовой модификации параметра 0x30 используется для добавления базовых бонусов к параметру 0x40 для прибавления статических бонусов к параметру 0x50 для множителей параметров 0x60 для прибавления статических бонусов ПОСЛЕ множителей Список изменяемых параметров: Статы: CON DEX INT MEN STR WIT Параметры: accCombat cAtk cAtkStatic hpEff mAtk mAtkSpd maxCp maxHp maxLoad maxMp mDef mpConsum mpConsumePhysical mpEff mReuse pAtk pAtkRange pAtkSpd pDef pReuse rCrit rCritPercent regCp regHp regMp sDef Остальное: absorbDam breath concentration element ExpSpMultiplier poleAngle rEvas rShld runSpd shldAngle transferDam bighead Рефлекты: reflectDam reflectMagicSkill reflectPhysicSkill Разное: CommonRecipeLimit DwarvenRecipeLimit inventoryLimit storageLimit tradeLimit Рейты: activateRate blowRate mCritRate Резисты: bleedRcpt bluntWpnRcpt bowWpnRcpt cancelRcpt daggerWpnRcpt debuffRcpt earthRcpt fearRcpt fireRcpt paralyzeRcpt poisonRcpt poleWpnRcpt rootRcpt sacredRcpt sleepRcpt stunRcpt swordWpnRcpt unholyRcpt waterRcpt windRcpt E) условия: <COMMAND VARIABLE="VALUE"> могут быть заключены в теги <and> <or> <not> Пример: <sub order="0x10" stat="STR" val="1"> <game night="true"/> </sub> <and> <player riding="strider"/> <target castledoor="true"/> </and> список команд (COMMAND): <player VARIABLE="PARAM"> VARIABLE: race (Undead/MagicCreatures/Beasts/Animals/Plants/Humanoids/Spirits/Angels/Demons/Dragons/Giants/Bugs/Fairies/Humans/Elves/DarkElves/Orcs/Dwarves/Others/NonLivingBeings/SiegeWeapons/DefendingArmy/Mercenaries/UnknownCreature) level resting (true/false) moving (true/false) running (true/false) riding (strider/wyvern/none) hp <target VARIABLE="PARAM"> VARIABLE: aggro (true/false) undead (true/false) pvp (true/false) mob (true/false) race (Undead/MagicCreatures/Beasts/Animals/Plants/Humanoids/Spirits/Angels/Demons/Dragons/Giants/Bugs/Fairies/Humans/Elves/DarkElves/Orcs/Dwarves/Others/NonLivingBeings/SiegeWeapons/DefendingArmy/Mercenaries/UnknownCreature) castledoor (true/false) direction (behind/front/side) <using VARIABLE="PARAM"> VARIABLE: kind (Shield/Sword/Blunt/Dagger/Bow/Pole/Etc/Fist/Dual Sword/Dual Fist/Big Sword/Pet/Rod) armor (None/Light/Heavy/Magic/Pet) skill (skill_id) slotitem <game VARIABLE="PARAM"> VARIABLE: night (true/false) F) Эффекты: <effect count="1" name="Buff" time="1200" val="0" stackOrder="#stack" stackType="hp_up"> count = кол-во тиков, которые длится эффект time = длина тика в секундах для этого эффекта (В примере у нас имеется один тик длинной 1200сек=20мин) name = что это за эффект. У эффектов могут быть аффекты на старт, стоп и на время действия. val = значение для "name" stackOrder = "Сила эффекта", чтобы сравнивать какой более сильный при обновлении stackType = "Тип эффекта", чтобы не накладывались схожие баффы Пример: добавляется скорость атаки на 25%, но при этом отнимается mana каждые 2 тика 35 HP длительность эффекта не ограничена (это у нас toggle) <for> <effect count="0x7fffffff" name="HealOverTime" time="2" val="-35"> <mul order="0x50" stat="pAtkSpd" val="1.25"/> </effect> </for> должно все работать.... почему то не хочет так же заметил: effect count="1" name="ServitorShare" time="1200" val="0" applyOnCaster="true" applyOnSummon="false" <effect count="1" name="Buff" displayId="-1" time="1200" val="0" abnormalLvl="1" abnormalType="multi_ как только местами поменять Buff на ServitorShare он начинает расчитывать нужным образом.. кроме крита, скорости, и неправильного счета п.деф. а когда в вышеприведенном варианте, то статы только свои а не хозяина считает Изменено 26 июня, 2012 пользователем Серый_Ветер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 26 июня, 2012 (изменено) что еще может отвечать за работу скиллов? http://dl.dropbox.com/u/85955293/VDT_HighFive.zip вот сборка..... Изменено 26 июня, 2012 пользователем Серый_Ветер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 26 июня, 2012 пробовал вот так: <------><------> <for> <------><------><------><effect count="1" name="Buff" time="1200" val="0" applyOnCaster="true" applyOnSummon="false" > <set name="%pAtk%" stat="pAtk" val="1.5" /> <set name="%pDef%" stat="pDef" val="1.5" /> <set name="%mAtk%" stat="mAtk" val="1.25" /> <set name="%mDef%" stat="mDef" val="1.25" /> <set name="%maxHp%" stat="maxHp" val="1.1" /> <set name="%maxMp%" stat="maxMp" val="1.1" /> <set name="%rCrit%" stat="rCrit" val="1.2" /> <set name="%pAtkSpd%" stat="pAtkSpd" val="1.1" /> </effect> <------><------><------><effect count="1" name="ServitorShare" time="1200" val="0" applyOnCaster="false" applyOnSummon="true" <------><------><------><------><mul order="0x40" stat="pAtk" val="%pAtk%" /> <------><------><------><------><mul order="0x40" stat="pDef" val="%pDef%" /> <------><------><------><------><mul order="0x40" stat="mAtk" val="%mAtk%" /> <------><------><------><------><mul order="0x40" stat="mDef" val="%mDef%" /> <------><------><------><------><mul order="0x40" stat="maxHp" val="%maxHp%" /> <------><------><------><------><mul order="0x40" stat="maxMp" val="%maxMp%" /> <------><------><------><------><mul order="0x40" stat="rCrit" val="%rCrit%" /> <------><------><------><------><mul order="0x40" stat="pAtkSpd" val="%pAtkSpd%" /> <------><------><------><------><mul order="0x40" stat="mAtkSpd" val="%mAtkSpd%" /> <------><------><------></effect> <------><------></for> но походу нельзя обновлять переменные [01:55:21] ERROR Error loading skill 1557java.lang.NullPointerException <------>at l2p.gameserver.skills.DocumentBase.attachFunc(Unknown Source) <------>at l2p.gameserver.skills.DocumentBase.parseTemplate(Unknown Source) <------>at l2p.gameserver.skills.DocumentBase.attachEffect(Unknown Source) <------>at l2p.gameserver.skills.DocumentBase.parseTemplate(Unknown Source) <------>at l2p.gameserver.skills.DocumentSkill.parseSkill(Unknown Source) <------>at l2p.gameserver.skills.DocumentSkill.parseDocument(Unknown Source) <------>at l2p.gameserver.skills.DocumentBase.parse(Unknown Source) <------>at l2p.gameserver.skills.SkillsEngine.loadSkills(Unknown Source) <------>at l2p.gameserver.skills.SkillsEngine.loadAllSkills(Unknown Source) <------>at l2p.gameserver.tables.SkillTable.load(Unknown Source) <------>at l2p.gameserver.tables.SkillTable.reload(Unknown Source) <------>at l2p.gameserver.handler.admincommands.impl.AdminReload.useAdminCommand(Unknown Source) <------>at l2p.gameserver.handler.admincommands.AdminCommandHandler.useAdminCommandHandler( Unknown Source) <------>at l2p.gameserver.clientpackets.RequestBypassToServer.runImpl(Unknown Source) <------>at l2p.gameserver.clientpackets.L2GameClientPacket.run(Unknown Source) <------>at l2p.commons.net.nio.impl.MMOExecutableQueue.run(Unknown Source) <------>at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) <------>at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) <------>at java.lang.Thread.run(Thread.java:722) [01:55:23] INFO SkillsEngine: Loaded 65979 skill templates from XML files. Max id: 90001, max level: 259 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 26 июня, 2012 пробовал вот так: <------><------> <for> <------><------><------><effect count="1" name="Buff" time="1200" val="0" applyOnCaster="true" applyOnSummon="false" > <set name="%pAtk%" stat="pAtk" val="1.5" /> <set name="%pDef%" stat="pDef" val="1.5" /> <set name="%mAtk%" stat="mAtk" val="1.25" /> <set name="%mDef%" stat="mDef" val="1.25" /> <set name="%maxHp%" stat="maxHp" val="1.1" /> <set name="%maxMp%" stat="maxMp" val="1.1" /> <set name="%rCrit%" stat="rCrit" val="1.2" /> <set name="%pAtkSpd%" stat="pAtkSpd" val="1.1" /> </effect> <------><------><------><effect count="1" name="ServitorShare" time="1200" val="0" applyOnCaster="false" applyOnSummon="true" <------><------><------><------><mul order="0x40" stat="pAtk" val="%pAtk%" /> <------><------><------><------><mul order="0x40" stat="pDef" val="%pDef%" /> <------><------><------><------><mul order="0x40" stat="mAtk" val="%mAtk%" /> <------><------><------><------><mul order="0x40" stat="mDef" val="%mDef%" /> <------><------><------><------><mul order="0x40" stat="maxHp" val="%maxHp%" /> <------><------><------><------><mul order="0x40" stat="maxMp" val="%maxMp%" /> <------><------><------><------><mul order="0x40" stat="rCrit" val="%rCrit%" /> <------><------><------><------><mul order="0x40" stat="pAtkSpd" val="%pAtkSpd%" /> <------><------><------><------><mul order="0x40" stat="mAtkSpd" val="%mAtkSpd%" /> <------><------><------></effect> <------><------></for> но походу нельзя обновлять переменные Ты стате сделал путь к стате. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 26 июня, 2012 (изменено) Ты стате сделал путь к стате. я менял потом <set name="%pAtk1%" stat="pAtk" val="%pAtk1%" тоже самое было. уже так попробовал: <------><skill id="1557" levels="1" name="Servitor Share">^M <------><------><set name="magicType" val="MAGIC"/>^M <------><------><set name="icon" val="icon.skill1557"/>^M <------><------><set name="effectPoint" val="669"/>^M <------><------><set name="castRange" val="400"/>^M <------><------><set name="hitTime" val="1000"/>^M <------><------><set name="magicLvl" val="83"/>^M <------><------><set name="mpConsume" val="35"/>^M <------><------><set name="operateType" val="OP_ACTIVE"/>^M <------><------><set name="reuseDelay" val="600"/>^M <------><------><set name="skillType" val="BUFF"/>^M <------><------><set name="target" val="TARGET_PET"/>^M <------><------><set name="cancelable" val="false"/>^M <------><------><set name="isSelfDispellable" val="false"/>^M <------><------><set name="isSaveable" val="false"/>^M <------><------><set name="SumPATK" val=""/> <------><------> <for> <------><------><------><effect count="1" name="Buff" time="1200" val="0" applyOnCaster="true" applyOnSummon="false" /> <------><------><------><effect count="1" name="SumPATK"> <------><------><------> <add order="0x40" stat="pAtk" val="0.5"/> <------><------><------></effect> <------><------><------><effect count="1" name="ServitorShare" time="1200" val="0" applyOnCaster="False" applyOnSummon="True" <------><------><------> <add order="0x40" stat="pAtk" val="SumPATK" /> <------><------><------></effect> <------><------></for> <------></skill> тоже самое. думал создам пеерменную. так он кстати, вобще не работает.. хз, почему, вроде все соблюдено. на соседнем форуме сказали что все в ядре считается... блин, теперь декомпил предстоит Изменено 26 июня, 2012 пользователем Серый_Ветер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Серый_Ветер 4 Опубликовано 26 июня, 2012 Скрытый текст package l2p.gameserver.skills.effects; import l2p.gameserver.model.*; import l2p.gameserver.stats.Env; import l2p.gameserver.stats.Stats; import l2p.gameserver.stats.funcs.Func; import l2p.gameserver.stats.funcs.FuncTemplate; // Referenced classes of package l2p.gameserver.skills.effects: // EffectTemplate public class EffectServitorShare extends Effect { public class FuncShare extends Func { public void calc(Env env) { env.value += env.character.getPlayer().calcStat(stat, stat.getInit()) * value; } final EffectServitorShare this$0; public FuncShare(Stats stats, int i, Object obj, double d) { this$0 = EffectServitorShare.this; super(stats, i, obj, d); } } public EffectServitorShare(Env env, EffectTemplate effecttemplate) { super(env, effecttemplate); } public Func[] getStatFuncs() { FuncTemplate afunctemplate[] = getTemplate().getAttachedFuncs(); Func afunc[] = new Func[afunctemplate.length]; for(int i = 0; i < afunc.length; i++) afunc[i] = new FuncShare(afunctemplate[i]._stat, afunctemplate[i]._order, this, afunctemplate[i]._value); return afunc; } protected boolean onActionTime() { return false; } } откопал таки коды...получается трабла где то тут:env.value += env.character.getPlayer().calcStat(stat, stat.getInit()) * value; так как первое значение, оно же дамаг, считается нормально, следующее же и за ним дальше уже косячат...с кем можно "поговорить об этом" (с)психолог Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты