Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ Sphere Server 0.56 - Sphere X _ Резист

Автор: tytyrion 19.12.2018, 10:47

Ребята, здравствуйте, подскажите, пожалуйста, возможно ли на 56б сфере повесить резист на вещей на подобии РанУО (фаер резист, пойзон, енерджи...)?
Спасибо.

Автор: Nickname 19.12.2018, 21:00

Revisions Changelog

Цитата
30-08-2006, Nazghul
- MODIFIED: RESCOLD, RESENERGY, RESFIRE, RESPOISON now can also be set on NPC
Remember that RES*=100 will give you a 100 percent immunity against the damage inflicted
by TAG.*DAMAGE.
- Added: COMBAT_SPECIALDAMAGE to INI CombatFlags (08). If set, TAG.*DAMAGE (below) will be
used.
- Added: COMBAT_USE_RESISTANCE to INI CombatFlags (010). If set, RES* on characters will
also be weighted against normal damage if the old fashioned damage flags are set.
- Added: TAG.COLDDAMAGE, TAG.ENERGYDAMAGE, TAG.FIREDAMAGE, TAG.POISONDAMAGE for characters
and items. The server will only evaluate the tags on characters, and if ComBatFlag
COMBAT_SPECIALDAMAGE is set. Then any damage done to others (if it's damage type contains
at least one of the physical types OR magic) will be increased by the value of the
appropriate tag, lowered by the RES* percentage of the victim.
Tags on items will not be evaluated by the server - their values can be used to for
example increase the TAGs or the RES* properties on characters on equip of the item.
This way you can use TAG.*DAMAGE on a weapon to increase the wearer's appropriate
damage tag, or on a piece of armor to increase his RES*, or to whatever you want.

Автор: tytyrion 20.12.2018, 1:29

Цитата
// Extra combat flags to control the fight (default:0, 0.55i compatible)
// COMBAT_NODIRCHANGE 00001 // not rotate player when fighting (like was in 0.51a)
// COMBAT_FACECOMBAT 00002 // allow faced combat only (recommended)
// COMBAT_SPECIALDAMAGE 08
CombatFlags=08


Цитата
[ITEMDEF i_QWERTY_PLATEMAIL_GORGET]
DEFNAME=i_QWERTY_PLATEMAIL_GORGET
NAME=QWERTY Platemail Gorget
ID=i_platemail_gorget
ARMOR=165
Type=T_armor
REQSTR=100
WEIGHT=8

TAG.RESCOLD=15
TAG.RESFIRE=15
TAG.RESENERGY=15
TAG.RESPOISON=15

CATEGORY=Provisions - Armor - Colored
SUBSECTION=QWERTY
DESCRIPTION=Platemail Gorget
RESOURCES=20 i_ingot_QWERTY
SKILLMAKE=BLACKSMITHING 105.0

ON=@Create
COLOR=color_o_QWERTY
HITPOINTS={100 120}

ON=@Equip
src.Tactics=(<src.Tactics>+1.0)
src.str=<src.str>+2

ON=@Unequip
src.Tactics=(<src.Tactics>-1.0)
src.str=<src.str>+(-2)


Как-то так?

Автор: Doberman 20.12.2018, 8:38

Да, но еще на плеера повесить:

Код

ON=@ItemEquip
IF (<ACT.TAG0.RESCOLD>)
   SRC.RESCOLD += <ACT.TAG0.RESCOLD>
ENDIF
IF (<ACT.TAG0.RESENERGY>)
   SRC.RESENERGY += <ACT.TAG0.RESENERGY>
ENDIF
IF (<ACT.TAG0.RESFIRE>)
   SRC.RESFIRE += <ACT.TAG0.RESFIRE>
ENDIF
IF (<ACT.TAG0.RESPOISON>)
   SRC.RESPOISON += <ACT.TAG0.RESFIRE>
ENDIF

ON=@ItemUnequip
IF (<ACT.TAG0.RESCOLD>)
   SRC.RESCOLD -= <ACT.TAG0.RESCOLD>
ENDIF
IF (<ACT.TAG0.RESENERGY>)
   SRC.RESENERGY -= <ACT.TAG0.RESENERGY>
ENDIF
IF (<ACT.TAG0.RESFIRE>)
   SRC.RESFIRE -= <ACT.TAG0.RESFIRE>
ENDIF
IF (<ACT.TAG0.RESPOISON>)
   SRC.RESPOISON -= <ACT.TAG0.RESFIRE>
ENDIF

Автор: tytyrion 20.12.2018, 10:32

Спасибо большое!

Автор: tytyrion 24.12.2018, 19:42

В чем-то ошибка. Помогите, пожалуйста, разобраться.

Цитата
18:35:ERROR:(Armor_Color.scp,2836)Can't resolve <ACT.TAG0.RESCOLD>
18:35:ERROR:(Armor_Color.scp,2836)Undefined symbol ''
18:35:ERROR:(Armor_Color.scp,2839)Can't resolve <ACT.TAG0.RESENERGY>
18:35:ERROR:(Armor_Color.scp,2839)Undefined symbol ''
18:35:ERROR:(Armor_Color.scp,2842)Can't resolve <ACT.TAG0.RESFIRE>
18:35:ERROR:(Armor_Color.scp,2842)Undefined symbol ''
18:35:ERROR:(Armor_Color.scp,2845)Can't resolve <ACT.TAG0.RESPOISON>
18:35:ERROR:(Armor_Color.scp,2845)Undefined symbol ''


Цитата
[ITEMDEF i_qwe_PLATEMAIL_GAUNTLETS]
DEFNAME=i_qwe_PLATEMAIL_GAUNTLETS
NAME=qwe Platemail Gauntlets
ID=i_platemail_gloves
Type=T_armor
ARMOR=100
WEIGHT=10
REQSTR=100

TAG.RESCOLD=7
TAG.RESFIRE=7
TAG.RESENERGY=7
TAG.RESPOISON=7

CATEGORY=Provisions - Armor - Colored
SUBSECTION=qwe
DESCRIPTION=Platemail Gauntlets
RESOURCES=22 i_ingot_qwe
SKILLMAKE=BLACKSMITHING 101.0

ON=@Create
COLOR=color_o_qwe
HITPOINTS={95 110}

ON=@Equip
src.Swordsmanship=(<src.Swordsmanship>+1.5)
src.str=<src.str>+1
src.int=<src.int>+1
src.stam=<src.stam>+1


IF (<ACT.TAG0.RESCOLD>)
SRC.RESCOLD += <ACT.TAG0.RESCOLD>
ENDIF
IF (<ACT.TAG0.RESENERGY>)
SRC.RESENERGY += <ACT.TAG0.RESENERGY>
ENDIF
IF (<ACT.TAG0.RESFIRE>)
SRC.RESFIRE += <ACT.TAG0.RESFIRE>
ENDIF
IF (<ACT.TAG0.RESPOISON>)
SRC.RESPOISON += <ACT.TAG0.RESFIRE>
ENDIF

ON=@Unequip
src.Swordsmanship=(<src.Swordsmanship>-1.5)
src.str=<src.str>+(-1)
src.int=<src.int>+(-1)
src.stam=<src.stam>+(-1)

IF (<ACT.TAG0.RESCOLD>)
SRC.RESCOLD -= <ACT.TAG0.RESCOLD>
ENDIF
IF (<ACT.TAG0.RESENERGY>)
SRC.RESENERGY -= <ACT.TAG0.RESENERGY>
ENDIF
IF (<ACT.TAG0.RESFIRE>)
SRC.RESFIRE -= <ACT.TAG0.RESFIRE>
ENDIF
IF (<ACT.TAG0.RESPOISON>)
SRC.RESPOISON -= <ACT.TAG0.RESFIRE>
ENDIF

Автор: Doberman 24.12.2018, 22:57

Вот это не надо вешать на предмет.

Код

IF (<ACT.TAG0.RESCOLD>)
SRC.RESCOLD += <ACT.TAG0.RESCOLD>
ENDIF

Я же написал как делать.
На предмет только:
TAG.RESCOLD=7
TAG.RESFIRE=7
TAG.RESENERGY=7
TAG.RESPOISON=7

Если все равно полезут ошибки, посмотри в файле sphere_defs.scp в секции "dam_flags" как у тебя эти функции называются, и переделай.

Автор: ImProV1zator 13.10.2019, 16:44

https://forum.uokit.com/index.php?showtopic=26981&hl=resis

Автор: Aimed 13.10.2019, 17:32

Цитата(ImProV1zator @ 13.10.2019, 14:44) *

https://forum.uokit.com/index.php?showtopic=26981&hl=resis


Причём тут это?

Автор: ImProV1zator 13.10.2019, 18:38

Цитата(Aimed @ 13.10.2019, 17:32) *

Причём тут это?

Система резиста своя, очень удобная.

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)