Помощь - Поиск - Пользователи - Календарь
Полная версия: [0.56b] Pvx Система
UoKit.com Форумы > Ultima Online : Dev > Sphere Server > Архив готовых скриптов
Breaker
Что это за система, смысл прост, её использование должно быть как на монстрах так и на игроках. то есть это 2 системы PvP, PvM в одной. С работающими бонусами у предметов

Если вы надумаете использовать что либо, есть небольшая просьба, не забывайте подписывать автора (то есть меня), или хотя бы скажите спасибо за мой труд... =)

Список бонусов, что есть и что не доделал, но начало есть
Код

<--------------------------------------------------------------------------------------->
* - работает      ! - предстоит сделать      ? - Вроде как работает но через таймер
<- Combat Effects ---------------------------------------------------------------------->
* ResistPhysical           = %  - Сопративляемость к физическому урону
* DefenseChance         = %  - Шанс увернуться/отразить от удара
* DamageIncrease       = %  - увеличение урона
* DamageSpeed          = %  - увеличение скорости ударов
<- Magic Effects ----------------------------------------------------------------------->
* QuickCast                = %  - Увеличение скорости магии
* LowerManaCost        = %  - Уменьшение потери маны при касте магии.
* ResistFire                 = %  - Сопративляемость к огненному урону
* ResistEnergy            = %  - Сопративляемость к энергетическому урону
* ResistCold                = %  - Сопративляемость к замаражевающему урону
* ResistPoison             = %  - Сопративляемость к отравляющему урону
<- Regeneration ------------------------------------------------------------------------>
? RegenHits                 = N  - Регенирация жизни за 3 сек.
? RegenMana               = N  - Регенирация маны за 3 сек.
? RegenStam               = N  - Регенирация выносливости за 3 сек.
<- Character --------------------------------------------------------------------------->
* IncreaseStr               = N  - Увеличение силы/жизни игрока
* IncreaseInt               = N  - Увеличение интелекта игрока
* IncreaseDex             = N  - Увеличение ловкости игрока
<--------------------------------------------------------------------------------------->
! Luck                         = N  - Шанс удачи найти в луте что нить кульное.
! IncreaseGold            = %  - Увеличивает кол-во денег в луте монстра.
! SelfRepair                = %  - Шанс автопочинки предмета при его поломке.
<--------------------------------------------------------------------------------------->


Код

//<------------------------------------------------------------------------------------->
//<- Ultima Online: The Odyssey                                                        ->
//<- Sphere Version: 56x (56b-Nightly)                                                 ->
//<- Script Author: Breaker (Cache)                                                    ->
//<-                                                                                   ->
//<- Last edit date: 13.12.2006                                                        ->
//<------------------------------------------------------------------------------------->

//<------------------------------------------------------------------------------------->
//<[MOD] --------------------- Функция спеллов изменения статов ------------------------>
//<------------------------------------------------------------------------------------->
[FUNCTION SpellStatsEffect]
//<[FIX] ------------------------ Применение спеллов на статы -------------------------->
IF (<ARGN>==1)||(<ARGN>==3)||(<ARGN>==8)||(<ARGN>==9)||(<ARGN>==10)||(<ARGN>==16)||(<ARGN>==17)||(<ARGN>==27)||(<ARGN>==46)
   // 1 - Clumsy      - STR= 0  DEX=-10 INT= 0
   // 3 - Feeblemind  - STR= 0  DEX= 0  INT=-10
   // 8 - Weaken      - STR=-10 DEX= 0  INT= 0
   // -----------------------------------------
   // 9 - Agility     - STR= 0  DEX=+10 INT= 0
   //10 - Cunning     - STR= 0  DEX= 0  INT=+10
   //16 - Strength    - STR=+10 DEX= 0  INT= 0
   // -----------------------------------------
   //17 - Bless       - STR=+5  DEX=+5  INT=+5
   //27 - Curse       - STR=-5  DEX=-5  INT=-5
   //48 - Mass Curse  - STR=-5  DEX=-5  INT=-5
   SOUND <SERV.SPELL.<ARGN>.SOUND>
   EFFECT 3,<SERV.SPELL.<ARGN>.EFFECT_ID>,15,15

   TRY FINDID.i_memory_spell_stats.REMOVE

   LOCAL.SpellDiff = "<QVAL (<SRC.INT> < 100) ?-<EVAL (100-<SRC.INT>)>:<EVAL (<SRC.INT>-100)*5> >"
   LOCAL.SpellEffect   = <DEF.Spell_<ARGN>_Effect>
   LOCAL.SpellEffect += <EVAL (<dLOCAL.SpellEffect>*<dLOCAL.SpellDiff>)/100>
   SERV.SPELL.<ARGN>.EFFECT   = "<QVAL (<dLOCAL.SpellEffect>)?<dLOCAL.SpellEffect>:0>"

   SERV.NEWITEM=i_memory_spell_stats
   NEW.DispID=<SERV.SPELL.<ARGN>.RUNE_ITEM>
   NEW.NAME=<SERV.SPELL.<ARGN>.NAME>
   NEW.LINK=<SRC.UID>
  
   IF (0)
//<--------------------------------- Increased spells ---------------------------------->
   ELIF (<ARGN>== 1) // Clumsy      - STR= 0  DEX=-10 INT= 0
      NEW.MOREM=0       // Mode: 0=- 1=+
      NEW.MOREY=(<DEX>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // DEX
   ELIF (<ARGN>== 3)
      NEW.MOREM=0       // Mode: 0=- 1=+
      NEW.MOREZ=(<INT>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // INT
   ELIF (<ARGN>== 8)
      NEW.MOREM=0       // Mode: 0=- 1=+
      NEW.MOREX=(<STR>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // STR
//<--------------------------------- Decreased spells ---------------------------------->
   ELIF (<ARGN>== 9)
      NEW.MOREM=1       // Mode: 0=- 1=+
      NEW.MOREY=(<DEX>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // DEX
   ELIF (<ARGN>==10)
      NEW.MOREM=1       // Mode: 0=- 1=+
      NEW.MOREZ=(<INT>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // INT
   ELIF (<ARGN>==16)
      NEW.MOREM=1       // Mode: 0=- 1=+
      NEW.MOREX=(<STR>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // STR
//<------------------------------- Increased mass spell -------------------------------->
   ELIF (<ARGN>==17)
      NEW.MOREM=1       // Mode: 0=- 1=+
      NEW.MOREX=(<STR>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // STR
      NEW.MOREY=(<DEX>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // DEX
      NEW.MOREZ=(<INT>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // INT
//<------------------------------- Decreased mass spell -------------------------------->
   ELIF (<ARGN>==27)
      NEW.MOREM=0       // Mode: 0=- 1=+
      NEW.MOREX=(<STR>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // STR
      NEW.MOREY=(<DEX>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // DEX
      NEW.MOREZ=(<INT>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // INT
//<------------------------------- Decreased mass spell -------------------------------->
   ELIF (<ARGN>==46)
      NEW.MOREM=0       // Mode: 0=- 1=+
      NEW.MOREX=(<STR>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // STR
      NEW.MOREY=(<DEX>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // DEX
      NEW.MOREZ=(<INT>*<SERV.SPELL.<ARGN>.EFFECT>)/100  // INT
   ENDIF  
   EQUIP=<NEW.UID>
   NEW.MORE1=<ARGN>
   NEW.TIMER=<SERV.SPELL.<ARGN>.DURATION>
   AddSpellBuff <ARGN> <SERV.SPELL.<ARGN>.DURATION> <SERV.SPELL.<ARGN>.EFFECT> <SERV.SPELL.<ARGN>.EFFECT> <SERV.SPELL.<ARGN>.EFFECT>
   RETURN 1
ENDIF
RETURN 0


//& #60;============================================================================
=========>
//<------------------------------------------------------------------------------------->
//<[MOD] --------------------- Главная ПвП+ПвМ система сервер -------------------------->
//<------------------------------------------------------------------------------------->
//& #60;============================================================================
=========>
[EVENTS e_PvX]
ON=@Click
//<[MOD] -------------------------- Живность для стаффа -------------------------------->
IF StrMatch("- Stuff Ride -","<NAME>")
   RETURN 1
ENDIF


ON=@NPCLookAtChar
//<[MOD] -------------------------- Живность для стаффа -------------------------------->
IF StrMatch("- Stuff Ride -","<NAME>")
   HITS=0
ENDIF


ON=@Death
//<[MOD] -------------------------- Живность для стаффа -------------------------------->
IF StrMatch("- Stuff Ride -","<NAME>")
   REMOVE
   RETURN 1
ENDIF
//<[FIX] -------------- Исправление смерти моба для триггера @Kill --------------------->
IF (<NPC>)
   FORCHARMEMORYTYPE MEMORY_FIGHT
     COLOR |= 00010
   ENDFOR
ENDIF


//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<[MOD] -------------- Создания лута в трупе моба при его смерти ---------------------->
//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
ON=@DeathCorpse
IF (<NPC>!=brain_monster) && (<NPC>!=brain_dragon) && (<NPC>!=brain_undead)
   RETURN 0
ELSE
   GenerateCorpseLoot
ENDIF


//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<- Magic Combat ---------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->


//<------------------------------------------------------------------------------------->
//< TRIGGER: SpellCast                                                                  >
//<------------------------------------------------------------------------------------->
ON=@SpellCast
IF (<SRC.IsGM>) //(<SRC.ACCOUNT.PLEVEL> > 1)
   ARGN3=0.1
ELSE

//<[MOD] ------------------------ Взятие параметров спелла ----------------------------->
   ARGN3 = <DEF.Spell_<ARGN>_CastTime>

//<[MOD] ------------- Вычисление модификации скорости магии со скроллов --------------->
   IF StrMatch("t_scroll","<ARGO.TYPE>")
      ARGN3 = <ARGN3> - <FVAL (<ARGN>*45)/100>
      SRC.TAG.IsScroll="1"
   ENDIF

//<[MOD] ---------------- Увеличение скорости магии бонусом QuickCast ------------------>
   ARGN3 -= <EVAL (<ARGN3>*<SRC.GetCombatEffect QuickCast>)/100>

ENDIF
//IF (<SRC.IsGM>)
//   SRC.SYSMESSAGE @73, Cast speed: <FVAL <ARGN3>> sec.
//ENDIF
IF (<SRC.NPC>)
   SRC.SAY <GetRunesWord <ARGN>>
ENDIF

//<[MOD] ---------------- Если ты в паралузе то скорость каста уменьшается на 1сек ---->
//IF (<flags>&statf_freeze)
//   ARGN3 += 10
//   SYSMESSAGE @73, Cast Speed + 1 sec
//ENDIF

//<------------------------------------------------------------------------------------->
//< TRIGGER: SpellEffect                                                                >
//<------------------------------------------------------------------------------------->
ON=@SpellEffect
IF (<FLAGS>&statf_invul)
   EFFECT 3,037b9,10,20
   RETURN 1

//<[MOD] --------------------- Применение силы магии бутылок --------------------------->
ELIF StrMatch("t_potion","<ARGO.TYPE>")

   LOCAL.SpellEffect   = <DEF.Spell_<ARGN>_Effect>
   LOCAL.SpellManaUse  = <DEF.Spell_<ARGN>_ManaUse>
   LOCAL.SpellDuration = <DEF.Spell_<ARGN>_Duration>

   LOCAL.SpellEffect = <EVAL (<dLOCAL.SpellEffect>*<ARGO.MORE2>) / 100>

//<[MOD] --------------------- Применение вычислений силы магии ------------------------>
   SERV.SPELL.<ARGN>.EFFECT   = "<QVAL (<dLOCAL.SpellEffect>)?<dLOCAL.SpellEffect>:0>"
   SERV.SPELL.<ARGN>.MANAUSE  = "<QVAL (<dLOCAL.SpellManaUse>)?<dLOCAL.SpellManaUse>:0>"
   SERV.SPELL.<ARGN>.DURATION = "<QVAL (<dLOCAL.SpellDuration>)?<dLOCAL.SpellDuration>:0>"

//<[MOD] ------------------------------------------------------------------------------->
   IF (<SRC.IsGM>)
      SRC.SYSMESSAGE @33, Used potion: <ARGO.NAME>
      SRC.SYSMESSAGE @73, Default Strength: <dDEF.Spell_<ARGN>_Effect> pt.
      SRC.SYSMESSAGE @73, Strength: <dARGO.MORE2>%
      SRC.SYSMESSAGE @73, Effect: <SERV.SPELL.<ARGN>.EFFECT> pt.
   ENDIF

//<[FIX] ------------------------ Применение спеллов на статы -------------------------->
   IF (<SpellStatsEffect <ARGN>>)
      RETURN 1
   ENDIF

//<[FIX] --------- Не применять формулы на спеллы которых нет в Spellbook-е ------------>
ELIF (<ARGN> >= 65)
   SERV.LOG @WARNING: <NAME> [<ACCOUNT>] using not aviable spell <ARGN>

//<[FIX] --------------------------- Применение Cure спелла ---------------------------->
ELIF (<ARGN>==11)
   TRY FINDID.i_memory_poison.REMOVE
   EFFECT 3,i_fx_heal_effect,15,25
   RETURN 1

//<[FIX] -------------------------- Применение Dispel спелла --------------------------->
ELIF (<ARGN>==41) || (<ARGN>==54)
   TRY FINDID.i_memory_poison.REMOVE
   TRY FINDID.i_memory_incognito.REMOVE
   TRY FINDID.i_memory_spell_stats.REMOVE

//<[MOD] ------------ Система отражения магии от спелла (Magic Reflection) ------------->
ELIF (<FINDID.i_rune_magic_reflection.UID>) && (<SERV.SPELL.<ARGN>.FLAGS>&spellflag_harm)
   EFFECT=3,i_fx_bless_EFFECT,15,15
   FINDID.i_rune_magic_reflection.REMOVE
   FLAGS=<FLAGS>&~statf_reflection

   IF (<UID>!=<SRC.UID>)
      SRC.SPELLEFFECT <ARGN>, <MAGERY>
      IF (0)
      ELIF (<ARGN>==5)    // s_magic_arrow
         SRC.EFFECT 0,036e4,4,16,6
      ELIF (<ARGN>==18)   // s_fireball
         SRC.EFFECT 0,036d4,4,16,6
      ELIF (<ARGN>==30)   // s_lightning
         EFFECT 1,i_fx_curse,4,16,6
      ELIF (<ARGN>==49)   // s_chain_lightning
         EFFECT 1,i_fx_curse,4,16,6
      ELIF (<ARGN>==51)   // s_flamestrike
         SRC.EFFECT 3,03709,4,16,6
      ENDIF
   ENDIF
   RETURN 1

//<[MOD] ---- Применение потери силы замораживающей магии от бонуса ResistCold --------->
ELIF (<SRC.FLAGS>&statf_freeze) && ((<ARGN>==38) || (<ARGN>==47))
   RETURN 1

ELSE
//<[MOD] ------------------------ Взятие параметров спелла ----------------------------->
   LOCAL.SpellEffect   = <DEF.Spell_<ARGN>_Effect>
   LOCAL.SpellManaUse  = <DEF.Spell_<ARGN>_ManaUse>
   LOCAL.SpellDuration = <DEF.Spell_<ARGN>_Duration>

//<[MOD] -------------------- Вычисление модификации сил магии ------------------------->
   LOCAL.SpellDiff = "<QVAL (<SRC.INT> < 100) ?-<EVAL (100-<SRC.INT>)>:<EVAL (<SRC.INT>-100)*5> >"

//<------------------------------------------------------------------------------------->
//<[MOD] -------------------- Увеличение/уменьшение сил магии -------------------------->

   IF (<LOCAL.SpellEffect>) // Если у спелла есть значение урона
      LOCAL.SpellEffect += <EVAL (<dLOCAL.SpellEffect>*<dLOCAL.SpellDiff>)/100>

      IF !(<SERV.SPELL.<ARGN>.FLAGS>&spellflag_harm)
         // Если спел не является harm
      ELIF (<ARGN>==1)||(<ARGN>==3)||(<ARGN>==8)||(<ARGN>==9)||(<ARGN>==10)||(<ARGN>==16)||(<ARGN>==17)||(<ARGN>==27)||(<ARGN>==46)
         // Если спел будет применён на статы
      ELSE
//<[MOD] --------- Вычисление модификации силы магии от скилла  EvaluatingIntel -------->
         LOCAL.SpellEffect += <EVAL (<dLOCAL.SpellEffect>*<EVAL <EvaluatingIntel>/15>)/100>
      ENDIF
   ENDIF

   IF (<dLOCAL.SpellManaUse>) // Если есть значение затрат маны
   //<[MOD] ------------ Уменьшение затрат маны бонусом LowerManaCost --------------------->
      LOCAL.SpellManaUse -= <EVAL (<dLOCAL.SpellManaUse>*<SRC.GetCombatEffect LowerManaCost>)/100>
   ENDIF

   IF (<dLOCAL.SpellDuration>) // Если у спелла есть значение продолжительности
      LOCAL.SpellDuration += <EVAL (<LOCAL.SpellDuration>*<LOCAL.SpellDiff>)/100>
  
   //<[MOD] ---- Применение потери силы замораживающей магии от бонуса ResistCold --------->
      IF (<ARGN>==38) || (<ARGN>==47)
         LOCAL.SpellDuration -= <EVAL (<LOCAL.SpellDuration>*<GetCombatEffect ResistCold>)/100>
      ENDIF
   ENDIF

//<[MOD] --------------------- Применение вычислений силы магии ------------------------>
   SERV.SPELL.<ARGN>.EFFECT   = "<QVAL (<dLOCAL.SpellEffect>)?<dLOCAL.SpellEffect>:0>"
   SERV.SPELL.<ARGN>.MANAUSE  = "<QVAL (<dLOCAL.SpellManaUse>)?<dLOCAL.SpellManaUse>:0>"
   SERV.SPELL.<ARGN>.DURATION = "<QVAL (<dLOCAL.SpellDuration>)?<dLOCAL.SpellDuration>:0>"

//<[MOD] ------------------------------------------------------------------------------->
   IF (<SRC.IsGM>)
      SRC.SYSMESSAGE @33, Used Spell: <SERV.SPELL.<ARGN>.NAME>
      SRC.SYSMESSAGE @73, Spell Diff: <dLOCAL.SpellDiff>%
      SRC.SYSMESSAGE @73, Effect: <SERV.SPELL.<ARGN>.EFFECT> pt.
      SRC.SYSMESSAGE @73, Mana Use: <SERV.SPELL.<ARGN>.MANAUSE> pt.
      SRC.SYSMESSAGE @73, Duration: <SERV.SPELL.<ARGN>.DURATION> secs.
   ENDIF

//<[FIX] ------------------------ Применение спеллов на статы -------------------------->
   IF (<SpellStatsEffect <ARGN>>)
      RETURN 1
   ENDIF

//<[MOD] ------------------------------------------------------------------------------->
   IF !(<SERV.SPELL.<ARGN>.DURATION>) && !(<SERV.SPELL.<ARGN>.EFFECT>) && (<SERV.SPELL.<ARGN>.FLAGS>&spellflag_harm)
      EFFECT 3,<SERV.SPELL.<ARGN>.EFFECT_ID>,15,15
      RETURN 1
   ENDIF
ENDIF


//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<- Melee Combat ---------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->


//<------------------------------------------------------------------------------------->
//< TRIGGER: HitTry
//<------------------------------------------------------------------------------------->
ON=@HitTry
//<----------------------------- Если аттакуемый Game Master --------------------------->
IF (<SRC.IsGM>)
   SYSMESSAGE You can`t attack a Game Master.
//<------------------------ Если на каком нить игроке есть invul ----------------------->
ELIF (<FLAGS>&statf_invul) || (<SRC.FLAGS>&statf_invul)
   SYSMESSAGE You can't attack <SRC.NAME> in your state.
//<---------------------------- Если аттакуемый в No PVP зоне -------------------------->
ELIF (<REGION.FLAGS>®ion_flag_safe) || (<REGION.FLAGS>®ion_flag_no_pvp)
   SYSMESSAGE You can't attack <SRC.NAME> here.
//<----------------------------- Если аттакуещий в Safe зоне --------------------------->
ELIF (<SRC.REGION.FLAGS>®ion_flag_safe) || (<SRC.REGION.FLAGS>®ion_flag_no_pvp)
   SYSMESSAGE You can't attack <SRC.NAME> here.
ELIF (<STAM> < 1)
   STAM=0
ELSE
   ARGN = 20 // Скорость рукопашного удара (По умолчанию)
   IF StrMatch("t_weapon_*","<ARGO.TYPE>")
      IF (<EVAL 0<DEF.<UID.<ARGO.UID>.DispID>_speed>>)     // Скорость оружий по его дополнительному типу
         ARGN = <FVAL <DEF.<UID.<ARGO.UID>.DispID>_speed>>
      ELIF (<EVAL 0<DEF.<UID.<ARGO.UID>.BaseID>_speed>>)   // Скорость оружий по его главному типу
         ARGN = <FVAL <DEF.<UID.<ARGO.UID>.BaseID>_speed>>
      ELSE  // Если предмет не прописан в базе оружий то сообщяем игроку
         SYSMESSAGEUA 32 0 0 0` If you have seen this message, speed of your
         SYSMESSAGEUA 32 0 0 0` weapon is not registered, call Game Master!
         SERV.LOG [<NAME>] use weapon <ARGO.NAME>[<ARGO.UID>], is not registered.
         RETURN 1
      ENDIF
   ENDIF

//<[MOD] ---------- Каждые 10 ловкости увеличиывают/уменьшают скорость на 0.1 ---------->
   ARGN = <ARGN> + <EVAL (100-<DEX>)/10>
//<[MOD] --------------- Применение эффекта боя на скорость с предметов ---------------->
   ARGN = <ARGN> - <FVAL (<ARGN>*<GetCombatEffect DamageSpeed>)/100>
//<[MOD] ----------------- Потеря стамины в зависимости от типа оружия ----------------->
   STAM = <STAM> - <ARGO.LAYER>

   IF (<FVAL <ARGN>> < 0.1)
      ARGN=0.1
   ENDIF

   IF (<SRC.IsGM>)
      SYSMESSAGE @0c2, Weapon speed: <FVAL <ARGN>>
   ENDIF
   RETURN 0
ENDIF
RETURN 1


//<------------------------------------------------------------------------------------->
//< TRIGGER: HitMiss
//<------------------------------------------------------------------------------------->
ON=@HitMiss
// Blank, used default missed message.

//<------------------------------------------------------------------------------------->
//< TRIGGER: Hit  
//<------------------------------------------------------------------------------------->
ON=@Hit
//<[MOD]----------------------------- Нету промахов ------------------------------------>
ACTDIFF=0

//<[MOD]--------------------------- PvM система для NPC -------------------------------->
IF (<NPC>)
   ARGN = <QVAL StrMatch("t_weapon_*","<ARGO.TYPE>")?RAND({<ARGO.DAM>}):RAND({<DAM>})>

//<[MOD] --------------- Критический удар оружием от оружия ближнего боя --------------->
   IF (<ARGN> > 0) && (RAND(50)==0)
      TAG.Critical=<EVAL (<ARGN>*135)/100>
   ENDIF
   RETURN 0
ENDIF

//<[MOD]------------------- Получение базового урона персонажа ------------------------->
IF StrMatch("t_weapon_*","<ARGO.TYPE>") || StrMatch("t_wand","<ARGO.TYPE>")
   ARGN = RAND({<ARGO.DAM>})
   //<[MOD] ----------------- Уменьшение урона от потери прочности --------------------->
   ARGN = (<ARGN>*<ARGO.MORE1L>)/<ARGO.MORE1H>
ELSE
   ARGN = <EVAL ((<STR>*10)/100) + RAND(2)>
ENDIF

//<[MOD] ------------------ Увеличение урона от силы персонажа ------------------------->
//ARGN += <EVAL (<STR>-100)/5>
ARGN += <EVAL (<STR>+10)/10> // Default of Client Formula

//<[MOD] --------------- Увеличение урона от бонуса увеличения урона ------------------->
ARGN += <EVAL (<ARGN>*<GetCombatEffect DamageIncrease>)/100>

//<[MOD] ------------------- Потеря урона луков от дистанции --------------------------->
IF StrMatch("t_weapon_bow","<ARGO.TYPE>") || StrMatch("t_weapon_xbow","<ARGO.TYPE>")
   IF (<ARGO.ID>==013b1) // Если это bow (лук)
      ARGN = <ARGN> - <EVAL (<DISTANCE>*135)/100>
   ELIF (<ARGO.ID>==0f4f) // Если это crossbow (арбалет)
      ARGN = <ARGN> - <EVAL (<DISTANCE>*120)/100>
   ELIF (<ARGO.ID>==013fc) // Если это heavy crossbow (тяжолый арбалет)
      ARGN = <ARGN> - <EVAL (<DISTANCE>*105)/100>
   ENDIF
ELSE
//<[MOD] -------- Дополнительный удар со спины (backstab) от оружия ближнего боя ------->
   IF (<ARGN> > 0) && (<SRC.DIR>==<DIR>) && (RAND(3)==0)
      TAG.Backstab=<EVAL (<ARGN>*75)/100>
   ENDIF
//<[MOD] --------------- Критический удар оружием от оружия ближнего боя --------------->
   IF (<ARGN> > 0) && (RAND(50)==0)
      TAG.Critical=<EVAL (<ARGN>*135)/100>
   ENDIF
ENDIF
//<[FIX] ----------------- Поломка одетых предметов оружия при ударе ------------------->
IF !(<R75>)
   DamageEquipedWeapon
ENDIF


//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//< TRIGGER: GetHit                                                                     >
//<------------------------------------------------------------------------------------->
ON=@GetHit
//<[MOD] ------------------- Получаемый урон является магическим ----------------------->
IF (<ARGN2>&dam_magic) || (<ARGN2>&dam_fire)
//<[MOD] ----------------- Применение потери силы магии от резиста --------------------->
   IF (<ARGN2>&dam_magic)
      ARGN -= <EVAL (<ARGN>*<EVAL <ResistSpells>/25>) / 100>
   ENDIF
//<[MOD] ------- Применение потери силы огненной магии от бонуса ResistFire ------------>
   IF (<ARGN2>&dam_fire)
      ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistFire>)/100>
   ENDIF
//<[MOD] ---- Применение потери силы энергетической магии от бонуса ResistEnergy ------->
   IF (<ARGN2>&dam_lightning)
      ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistEnergy>)/100>
   ENDIF
//<[MOD] ----- Применение потери силы отравляющей магии от бонуса ResistPoison --------->
   IF (<ARGN2>&dam_poison)
      ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistPoison>)/100>
   ENDIF

//<[MOD] ------------------- Получаемый урон является физическим ----------------------->
ELSE
//<[MOD] -------- Дополнительный удар со спины (backstab) от оружия ближнего боя ------->
   IF (<SRC.TAG0.Backstab>)
      SRC.SAY @33, Backstab Damage!
      Effect=3,i_fx_glow_spike,6,15,1
      ARGN += <EVAL <SRC.TAG.Backstab>>
      SRC.TAG.Backstab =
   ENDIF
//<[MOD] --------------- Критический удар оружием от оружия ближнего боя --------------->
   IF (<SRC.TAG0.Critical>)
      SRC.SAY @33, Critical Damage!
      Effect=3,i_fx_glow_spike,6,15,1
      ARGN += <EVAL <SRC.TAG.Critical>>
      SRC.TAG.Critical =
//<[MOD] --------------------------- Генерирование крови ------------------------------->
      SERV.NEWITEM={0122a 1 0122b 1 0122c 1 0122d 1 0122e 1 0122f 1}
      NEW.P=<P>
      NEW.ATTR=012
      NEW.TIMER=3
   ENDIF

//<[MOD] -------------------- Уменьшение урона от количества брони --------------------->
   ARGN -= <EVAL (<AC>*45)/100>

//<[MOD] -------------------- Сопративляемость к физическому урону --------------------->
   ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistPhysical>)/100>

//<[MOD] ---------------- ворот от удара бонусом "увернуться от удара" ----------------->
   IF (<ARGN> > 0) && (RAND(100) < <EVAL <GetCombatEffect DefenseChance>>)

//<[FIX] ----------- Выводим игрока из парализа, если он в нём ------------------->
      TRY FINDID.i_rune_paralyze.REMOVE
      TRY FINDID.i_rune_paralyze_field.REMOVE
      SYSMESSAGE @73, You perform a masterful defense!
      SRC.SYSMESSAGE @33, <NAME> perform a masterful defense.
      ARGN=0
      RETURN 1
   ENDIF

//<[MOD] --------------------------- Генерирование крови ------------------------------->
   IF !(<R4>)
      SERV.NEWITEM={0122a 1 0122b 1 0122c 1 0122d 1 0122e 1 0122f 1}
      NEW.P=<P>
      NEW.ATTR=012
      NEW.TIMER=3
   ENDIF

//<[FIX] ------------- Поломка одетых предметов брони при получении урона -------------->
   IF !(<R25>)
      DamageEquipedArmor
   ENDIF
ENDIF

//<[MOD] ---------------------- Выполнение результатов урона --------------------------->
IF (<ARGN> > 0)
//<[MOD] --------------- Прерывание каста с книшки, при получении удара ---------------->
   IF (<SRC.UID>!=<UID>) && !(<TAG0.IsScroll>) && (<ACTION>==Skill_Magery)
      ACTION=-1
   ENDIF

//<[FIX] ---------------- Выводим игрока из парализа, если он в нём -------------------->
   TRY FINDID.i_rune_paralyze.REMOVE
   TRY FINDID.i_rune_paralyze_field.REMOVE

//<[MOD] ------------------- Вывод информации о получении урона ------------------------>
   SAY @<QVAL (<ARGN2>&dam_magic)?0c2:021>, -<EVAL <ARGN>>
ENDIF

//<[MOD] ---------- Установка GOD типа урона, так как сделали все вычисления ----------->
ARGN2=01 // Чтоб урон прошёл на столько, чему равно ARGN

[EOF]



Вывод информации о бонусах у предметов при наведении на предмет курсора, только для клиентов 5.0.x+

Код

[EVENTS e_weapons]
//<[MOD] ------------------------ Вывод Tooltip-ов предметов --------------------------->
ON=@ItemClientToolTip
IF (<ARGO.TAG0.Luck>)
   ADDCLILOC 1060436,+<dARGO.TAG0.Luck>
ENDIF
IF (<ARGO.TAG0.IncreaseGold>)
   ADDCLILOC 1060414,<dARGO.TAG0.IncreaseGold>
ENDIF
IF (<ARGO.TAG0.SelfRepair>)
   ADDCLILOC 1060450,<dARGO.TAG0.SelfRepair>%
ENDIF

IF (<ARGO.TAG0.ResistPhysical>)
   ADDCLILOC 1060448,<dARGO.TAG0.ResistPhysical>
ENDIF
IF (<ARGO.TAG0.DefenseChance>)
   ADDCLILOC 1060408,<dARGO.TAG0.DefenseChance>
ENDIF
IF (<ARGO.TAG0.DamageIncrease>)
   ADDCLILOC 1060402,<dARGO.TAG0.DamageIncrease>
ENDIF
IF (<ARGO.TAG0.DamageSpeed>)
   ADDCLILOC 1060486,<dARGO.TAG0.DamageSpeed>
ENDIF
IF (<ARGO.TAG0.QuickCast>)
   ADDCLILOC 1060413,<dARGO.TAG0.QuickCast>
ENDIF
IF (<ARGO.TAG0.LowerManaCost>)
   ADDCLILOC 1060433,<dARGO.TAG0.LowerManaCost>
ENDIF
IF (<ARGO.TAG0.ResistCold>)
   ADDCLILOC 1060445,<dARGO.TAG0.ResistCold>
ENDIF
IF (<ARGO.TAG0.ResistEnergy>)
   ADDCLILOC 1060446,<dARGO.TAG0.ResistEnergy>
ENDIF
IF (<ARGO.TAG0.ResistFire>)
   ADDCLILOC 1060447,<dARGO.TAG0.ResistFire>
ENDIF
IF (<ARGO.TAG0.ResistPoison>)
   ADDCLILOC 1060449,<dARGO.TAG0.ResistPoison>
ENDIF

IF (<ARGO.TAG0.IncreaseStr>)
   ADDCLILOC 1060659,Strength,+<dARGO.TAG0.IncreaseStr>
ENDIF
IF (<ARGO.TAG0.IncreaseDex>)
   ADDCLILOC 1060660,Dexterity,+<dARGO.TAG0.IncreaseDex>
ENDIF
IF (<ARGO.TAG0.IncreaseInt>)
   ADDCLILOC 1060661,Intelligence,+<dARGO.TAG0.IncreaseInt>
ENDIF

IF (<ARGO.TAG0.RegenHits>)
// ADDCLILOC 1060659,Life Regeneration,+<dARGO.TAG0.RegenHits>
   ADDCLILOC 1060444,+<dARGO.TAG0.RegenHits>
ENDIF
IF (<ARGO.TAG0.RegenStam>)
// ADDCLILOC 1060660,Stamina Regeneration,+<dARGO.TAG0.RegenStam>
   ADDCLILOC 1060443,+<dARGO.TAG0.RegenStam>
ENDIF
IF (<ARGO.TAG0.RegenMana>)
// ADDCLILOC 1060661,Mana Regeneration,+<dARGO.TAG0.RegenMana>
   ADDCLILOC 1060440,+<dARGO.TAG0.RegenMana>
ENDIF

IF (<ARGO.TAG0.CraftedBy>)
   ADDCLILOC 1050043,<dARGO.TAG0.CraftedBy>
ENDIF


//<[MOD] ---------------------- Применение резистов от предметов ------------------------>
ON=@ItemEquip
IF (<ACT.TAG0.Luck>)
   SRC.LUCK += <ACT.TAG0.Luck>
ENDIF
IF (<ACT.TAG0.ResistPhysical>)
   SRC.MODAC += <EVAL (<ACT.GetRealArmor>*<ACT.TAG0.ResistPhysical>)/100>
ENDIF
IF (<ACT.TAG0.ResistCold>)
   SRC.RESCOLD += <ACT.TAG0.ResistCold>
ENDIF
IF (<ACT.TAG0.ResistEnergy>)
   SRC.RESENERGY += <ACT.TAG0.ResistEnergy>
ENDIF
IF (<ACT.TAG0.ResistFire>)
   SRC.RESFIRE += <ACT.TAG0.ResistFire>
ENDIF
IF (<ACT.TAG0.ResistPoison>)
   SRC.RESPOISON += <ACT.TAG0.ResistFire>
ENDIF

IF (<ACT.TAG0.IncreaseStr>)
   SRC.MODSTR += <ACT.TAG0.IncreaseStr>
ENDIF
IF (<ACT.TAG0.IncreaseDex>)
   SRC.MODDEX += <ACT.TAG0.IncreaseDex>
ENDIF
IF (<ACT.TAG0.IncreaseInt>)
   SRC.MODINT += <ACT.TAG0.IncreaseInt>
ENDIF


//<[MOD] ------------------------ Снятие резистов от предметов -------------------------->
ON=@ItemUnequip
IF (<ACT.TAG0.Luck>)
   SRC.LUCK -= <ACT.TAG0.Luck>
ENDIF
IF (<ACT.TAG0.ResistPhysical>)
   SRC.MODAC -= <EVAL (<ACT.GetRealArmor>*<ACT.TAG0.ResistPhysical>)/100>
ENDIF
IF (<ACT.TAG0.ResistCold>)
   SRC.RESCOLD -= <ACT.TAG0.ResistCold>
ENDIF
IF (<ACT.TAG0.ResistEnergy>)
   SRC.RESENERGY -= <ACT.TAG0.ResistEnergy>
ENDIF
IF (<ACT.TAG0.ResistFire>)
   SRC.RESFIRE -= <ACT.TAG0.ResistFire>
ENDIF
IF (<ACT.TAG0.ResistPoison>)
   SRC.RESPOISON -= <ACT.TAG0.ResistFire>
ENDIF

IF (<ACT.TAG0.IncreaseStr>)
   SRC.MODSTR -= <ACT.TAG0.IncreaseStr>
ENDIF
IF (<ACT.TAG0.IncreaseDex>)
   SRC.MODDEX -= <ACT.TAG0.IncreaseDex>
ENDIF
IF (<ACT.TAG0.IncreaseInt>)
   SRC.MODINT -= <ACT.TAG0.IncreaseInt>
ENDIF

[EOF]


Таймеры для ПВП системы и других систем, каждый таймер я писал для глюков/багов на сервере и клиенте. Возможно некоторые могут вам сильно пригодиться.

[code]
//& #60;============================================================================
=========>
//<------------------------------------------------------------------------------------->
//<- Ultima Online: The Odyssey ->
//<- Sphere Version: 56x (56b-Nightly) ->
//<- Script Author: Breaker (Cache) ->
//<- ->
//<- Last edit date: 20.12.2006 ->
//<------------------------------------------------------------------------------------->
//& #60;============================================================================
=========>

//<[MOD] ----------------------- Мемори на Incognito спелл ----------------------------->
[ITEMDEF i_memory_incognito]
DEFNAME=i_memory_incognito
NAME=Memory incognito
ID=020a2
TYPE=t_eq_script

ON=@Create
ATTR=attr_move_never|attr_newbie|attr_invis|attr_magic

ON=@Equip
NAME=<LINK.NAME>
IF !(<LINK.FLAGS>&statf_incognito)
LINK.FLAGS=<LINK.FLAGS>|statf_incognito
ENDIF
LINK.NAME=<QVAL (<LINK.OBODY>==c_man)?#NAMES_HUMANMALE:#NAMES_HUMANFEMALE>
TIMER=<EVAL <SERV.SPELL.35.DURATION>/10>

ON=@Unequip
IF (<LINK.FLAGS>&statf_incognito)
LINK.FLAGS=<LINK.FLAGS>&~statf_incognito
ENDIF
LINK.NAME=<NAME>

ON=@Timer
REMOVE
RETURN 1


//<[MOD] ----------------- Мемори на использование землятресения ------------------------>
[ITEMDEF i_spell_earthquake]
DEFNAME=i_spell_earthquake
NAME=Earthquake
ID=020b8
TYPE=t_eq_script

ON=@Create
ATTR=attr_move_never|attr_newbie|attr_invis|attr_magic
//MORE = Damage argn
//LINK = Attacker UID
//MOREM = Time Tick

ON=@Timer
IF (<MOREM>)
OBJ=<UID>
FORCHARS 15
IF (<FLAGS>&statf_dead) || (<FLAGS>&statf_invul)
ELIF (<REGION.FLAGS>®ion_flag_safe)
ELIF (<REGION.FLAGS>®ion_flag_no_pvp)
ELIF (<EVAL 0<ACCOUNT.PLEVEL>> > 1)
ELSE
UID.<OBJ.LINK>.SYSMESSAGE <NAME> damaged on <EVAL <OBJ.MORE>>
DAMAGE <EVAL <OBJ.MORE>> 0004 <OBJ.LINK>
ENDIF
ENDFOR
MOREM=<MOREM> - 1
TIMER=2
ELSE
REMOVE
ENDIF
RETURN 1


//<[MOD] -------------------------- Мемори на использование яда ------------------------>
[ITEMDEF i_memory_poison]
ID=02093
TYPE=t_eq_script
NAME=Memory poison

ON=@Create
ATTR=attr_move_never|attr_newbie|attr_invis|attr_magic
//MORE1 = Poison damage
//MORE2 = Attacker UID

ON=@Equip
LINK.SYSMESSAGE You have been poisoned!
IF !(<LINK.FLAGS>&statf_poisoned)
LINK.FLAGS=<LINK.FLAGS>|statf_poisoned
ENDIF
LINK.UPDATE
TIMER=3

ON=@Unequip
IF (<LINK.FLAGS>&statf_poisoned)
LINK.FLAGS=<LINK.FLAGS>&~statf_poisoned
ENDIF
LINK.UPDATE

ON=@Timer
IF (<LINK.FLAGS>&statf_dead) || !(<MOREM>)
REMOVE
ELIF !(<LINK.FLAGS>&statf_invul)
LINK.DAMAGE <EVAL <MORE>> 0000c <MORE2>
DOSWITCH <EVAL <MORE>/10>
LINK.SYSMESSAGE You feel sickly
LINK.SYSMESSAGE You feel sickly
LINK.SYSMESSAGE You feel very ill
LINK.SYSMESSAGE You feel extremely sick
LINK.SYSMESSAGE You feel deadly sick
LINK.SYSMESSAGE You feel lethaly sick
ENDDO
MOREM=<MOREM> - 1
TIMER=3
ENDIF
RETURN 1


//<[MOD] ------------------------ Мемори на изменение статов --------------------------->
[ITEMDEF i_memory_spell_stats]
DEFNAME=i_memory_spell_stats
NAME=memory spell stats
ID=02093
LAYER=32
TYPE=t_eq_script

ON=@Create
ATTR=attr_decay|attr_newbie|attr_invis

ON=@Equip
IF (<MOREM>)
CONT.MODSTR += <MOREX>
CONT.MODDEX += <MOREY>
CONT.MODINT += <MOREZ>
ELSE
CONT.MODSTR -= <MOREX>
CONT.MODDEX -= <MOREY>
CONT.MODINT -= <MOREZ>
ENDIF

ON=@Unequip
CONT.RemoveSpellBuff <dMORE1>
IF (<MOREM>)
CONT.MODSTR -= <MOREX>
CONT.MODDEX -= <MOREY>
CONT.MODINT -= <MOREZ>
ELSE
CONT.MODSTR += <MOREX>
CONT.MODDEX += <MOREY>
CONT.MODINT += <MOREZ>
ENDIF

ON=@Timer
REMOVE
RETURN 1


//<[MOD] -------------------------- Мемори на лечение с бинтов ------------------------->
[ITEMDEF i_memory_healing]
DEFNAME=i_memory_healing
ID=i_memory
NAME=Memory Healing
TYPE=t_eq_script
CATEGORY=Memory Objects
SUBSECTION=Bandage
DESCRIPTION=Healing

ON=@Create
ATTR=attr_move_never|attr_newbie|attr_invis

ON=@Equip
CONT.EVENTS +e_healing

ON=@Unequip
IF (<CONT.IsEVENT.e_healing>)
CONT.SYSMESSAGE You apply the bandeges, but they barely help.
CONT.EVENTS -e_healing
ENDIF

ON=@Timer
IF !(<EVAL <SERV.UID.<LINK>.UID>>)
CONT.SYSMESSAGE You apply the bandeges, but they barely help.
ELIF (<LINK.FLAGS>&statf_dead)
CONT.SYSMESSAGE You apply the bandeges, but they barely help.
ELIF (<LINK.FLAGS>&statf_freeze)
LINK.SYSMESSAGE You apply the bandeges, but they barely help.
ELIF (RAND(<EVAL <CONT.Healing>/10>) < 5)
IF (<CONT.UID>==<LINK.UID>)
CONT.SYSMESSAGE You apply the bandeges, but they barely help.
ELSE
LINK.SYSMESSAGE <CONT.NAME> fail to heal you.
CONT.SYSMESSAGE You fail to heal <LINK.NAME>.
ENDIF
ELSE

//<---------------- Если игрок лечит игрока, то юзаем формулу хелинга ------------------>
IF !(<MOREM>)
MORE1=<EVAL (<CONT.Healing>/25) + (<CONT.Anatomy>/25) + (<CONT.FOOD>/10)>
MORE2=<EVAL RAND(<CONT.Healing>/25) + (<CONT.Anatomy>/25) + (<CONT.FOOD>/10)>
ELSE
//<-------------- Если игрок лечит существо, то юзаем формулу ветеринарии -------------->
MORE1=<EVAL (<CONT.Veterinary>/25) + (<CONT.Anatomy>/25) + (<CONT.FOOD>/10)>
MORE2=<EVAL RAND(<CONT.Veterinary>/25) + (<CONT.Anatomy>/25) + (<CONT.FOOD>/10)>
ENDIF

//<------------------------------- Хелим результатом игрока ---------------------------->
LINK.HITS=<LINK.HITS> + <MORE2>
IF (<LINK.HITS> > <LINK.STR>)
LINK.HITS=<LINK.STR>
ENDIF

//<------------------------------ Создаём оидн грязный бинт ---------------------------->
// CONT.SYSMESSAGE @93 Maximum Heal: <EVAL <MORE1>>
IF (<CONT.UID>==<LINK.UID>)
CONT.SYSMESSAGE @93 You healed on <EVAL <MORE2>> hits.
ELSE
CONT.SYSMESSAGE @93 You healed <LINK.NAME> on <EVAL <MORE2>> hits.
LINK.SYSMESSAGE @93 <CONT.NAME> healed you on <EVAL <MORE2>> hits.
ENDIF
IF !(<MOREZ>) // Bandage Type? 0-Clean / 1-Bloody
CONT.SYSMESSAGE You put the bloody bandage in your pack.
SERV.NEWITEM=i_bandage_bloody
NEW.CONT=<CONT.FINDLAYER.21.UID>
ENDIF
CONT.EVENTS -e_healing
ENDIF
REMOVE
RETURN 1


//<[MOD] -------------------------- Мемори на навык медитации -------------------------->
[ITEMDEF i_memory_meditation]
DEFNAME=i_memory_meditation
NAME=memory meditation
ID=i_memory
TYPE=t_eq_script

ON=@Create
ATTR=attr_decay|attr_newbie|attr_invis

ON=@Timer
CONT.SYSMESSAGE @73, You restore <EVAL (<CONT.Meditation>/75)+1> mana points.
CONT.MANA=<CONT.MANA> + (<CONT.Meditation>/75)+1
IF (<CONT.MANA> > <CONT.INT>)
CONT.MANA=<CONT.INT>
ENDIF
//<----------------------------- Формула SkillGain медитации --------------------------->
IF (<CONT.Meditation> < 1000) && (<EVAL RAND(<CONT.Meditation>)> < 50) && !(<CONT.REGION.FLAGS>®ion_flag_safe) && !(<CONT.REGION.FLAGS>®ion_flag_no_pvp)
CONT.Meditation=<CONT.Meditation> + 1
ENDI
KonstantiN
Сфера пишет
can't reslove ResisFire в чем проблема
DihlofozzZ
ResisFire

буква t пропущена smile.gif в какой строчке ошибку пишет?
KonstantiN
13:32:ERROR:(PvX fight system.scp,503)Can't resolve <GetCombatEffect ResistFire>
13:32:ERROR:(PvX fight system.scp,503)Undefined symbol ''

Ето ошибка появилось когда я версию сферы на более новую поменял. Ради интереса старую поставил и на ней такой же глюк уж не знаю как бороться с этим

Код
PvP fight system.scp,409)Can't resolve <GetCombatEffect DamageSpeed>
13:37:ERROR:(PvP fight system.scp,409)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,463)Can't resolve <GetCombatEffect DamageIncrease>
13:37:ERROR:(PvP fight system.scp,463)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,540)Can't resolve <GetCombatEffect ResistPhysical>
13:37:ERROR:(PvP fight system.scp,540)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,543)Can't resolve <GetCombatEffect DefenseChance>
13:37:ERROR:(PvP fight system.scp,409)Can't resolve <GetCombatEffect DamageSpeed>
13:37:ERROR:(PvP fight system.scp,409)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,463)Can't resolve <GetCombatEffect DamageIncrease>
13:37:ERROR:(PvP fight system.scp,463)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,540)Can't resolve <GetCombatEffect ResistPhysical>
13:37:ERROR:(PvP fight system.scp,540)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,543)Can't resolve <GetCombatEffect DefenseChance>
13:37:ERROR:(PvP fight system.scp,409)Can't resolve <GetCombatEffect DamageSpeed>
13:37:ERROR:(PvP fight system.scp,409)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,463)Can't resolve <GetCombatEffect DamageIncrease>
13:37:ERROR:(PvP fight system.scp,463)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,540)Can't resolve <GetCombatEffect ResistPhysical>
13:37:ERROR:(PvP fight system.scp,540)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,543)Can't resolve <GetCombatEffect DefenseChance>
13:37:ERROR:(PvP fight system.scp,409)Can't resolve <GetCombatEffect DamageSpeed>
13:37:ERROR:(PvP fight system.scp,409)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,463)Can't resolve <GetCombatEffect DamageIncrease>
13:37:ERROR:(PvP fight system.scp,463)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,540)Can't resolve <GetCombatEffect ResistPhysical>
13:37:ERROR:(PvP fight system.scp,540)Undefined symbol ''
13:37:ERROR:(PvP fight system.scp,543)Can't resolve <GetCombatEffect DefenseChance>


а после маленького теста вот что твориться
KonstantiN
мужики это не дело как ето исправить
Breaker
Дык ты проверь у тя вообще эта функция "GetCombatEffect" в сфере есть или нет, и обрабатывается ли она сферой =)
Anders
Если не сложно, как это проверить и как, если что, ее добавить?
KonstantiN
Вызови ее из сферы. А добавить в любой из загружаемых сферой файлов до [eof]
loutweak
есть под этот скрипт i_rune_paralyze.
а как правильно установить каст паралла
$yst3m_3rr0r
Цитата(loutweak @ 24.11.2013, 16:18) *

есть под этот скрипт i_rune_paralyze.
а как правильно установить каст паралла

Ты сам то понял ? Что спросил?
loutweak
Цитата($yst3m_3rr0r @ 24.11.2013, 21:06) *

Ты сам то понял ? Что спросил?

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

З.Ы. Залить весь сцп ради такого вопроса? Мда...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.