RE: Upgrade live server - RanXerox - 08-17-2014 04:14 AM
Look closer at those old and new definitions... especially the DEFNAME:
In your post, the old one was defname=i_multi_small_wood_house and the new one seems is DEFNAME=i_multi_house_stone_wood_small
...For simplicity, I suggest you keep the old name.
If that doesn't work, you may need to show us an example house from the worldsave file.
RE: Upgrade live server - Eledrianek - 08-17-2014 07:20 AM
(08-16-2014 01:02 PM)Extreme Wrote: Are you using .debug ?
Sadly... no. But I figure out that for some reason all houses changed its dispID to i_gold after first start of new revision. So now I can easily repair that. Thanks )
Next questions will follow...
RE: Upgrade live server - Eledrianek - 08-18-2014 06:16 AM
And what about this? This error hits very often...
Code:
22:10:ERROR:Item (0319e) has no definition in scripts.
22:10:DEBUG:__ thread (5656) __ | # | _____ function _____________ | ticks passed from previous function start ______
22:10:DEBUG:>> 5656 | 0 | CWorld::OnTick | +0
22:10:DEBUG:>> 5656 | 1 | CSector::OnTick | +0
22:10:DEBUG:>> 5656 | 2 | CChar::OnTick | +0
22:10:DEBUG:>> 5656 | 3 | CChar::NPC_OnTickAction | +0
22:10:DEBUG:>> 5656 | 4 | CChar::NPC_Act_GoHome | +0
22:10:DEBUG:>> 5656 | 5 | CChar::NPC_WalkToPoint | +0
22:10:DEBUG:>> 5656 | 6 | CChar::NPC_Pathfinding | +0
22:10:DEBUG:>> 5656 | 7 | CPathFinder::CPathFinder | +0
22:10:DEBUG:>> 5656 | 8 | CPathFinder::FillMap | +0
22:10:DEBUG:>> 5656 | 9 | CChar::CanMoveWalkTo | +0 <-- exception catch point (below is guessed and could be incorrect!)
22:10:DEBUG:>> 5656 | 10 | CChar::CheckValidMove | +0
22:10:DEBUG:>> 5656 | 11 | CWorld::GetHeightPoint_New | +0
22:10:DEBUG:>> 5656 | 12 | CItemBase::FindItemBase | +0
22:10:CRITICAL:"Access Violation" (0x13740f), in CChar::CanMoveWalkTo() #1 "Check Valid Move"
22:10:ERROR:Item (02fe2) has no definition in scripts.
22:10:DEBUG:__ thread (5656) __ | # | _____ function _____________ | ticks passed from previous function start ______
22:10:DEBUG:>> 5656 | 0 | CWorld::OnTick | +0
22:10:DEBUG:>> 5656 | 1 | CSector::OnTick | +0
22:10:DEBUG:>> 5656 | 2 | CChar::OnTick | +0
22:10:DEBUG:>> 5656 | 3 | CChar::NPC_OnTickAction | +0
22:10:DEBUG:>> 5656 | 4 | CChar::NPC_Act_GoHome | +0
22:10:DEBUG:>> 5656 | 5 | CChar::NPC_WalkToPoint | +0
22:10:DEBUG:>> 5656 | 6 | CChar::NPC_Pathfinding | +0
22:10:DEBUG:>> 5656 | 7 | CPathFinder::CPathFinder | +0
22:10:DEBUG:>> 5656 | 8 | CPathFinder::FillMap | +0
22:10:DEBUG:>> 5656 | 9 | CChar::CanMoveWalkTo | +32 <-- exception catch point (below is guessed and could be incorrect!)
22:10:DEBUG:>> 5656 | 10 | CChar::CheckValidMove | +0
22:10:DEBUG:>> 5656 | 11 | CWorld::GetHeightPoint_New | +0
22:10:DEBUG:>> 5656 | 12 | CItemBase::FindItemBase | +0
22:10:ERROR:Item (02b7b) has no definition in scripts.
22:10:DEBUG:__ thread (5656) __ | # | _____ function _____________ | ticks passed from previous function start ______
22:10:DEBUG:>> 5656 | 0 | CWorld::OnTick | +0
22:10:DEBUG:>> 5656 | 1 | CSector::OnTick | +0
22:10:DEBUG:>> 5656 | 2 | CChar::OnTick | +0
22:10:DEBUG:>> 5656 | 3 | CChar::NPC_OnTickAction | +0
22:10:DEBUG:>> 5656 | 4 | CChar::NPC_Act_GoHome | +0
22:10:DEBUG:>> 5656 | 5 | CChar::NPC_WalkToPoint | +0
22:10:DEBUG:>> 5656 | 6 | CChar::NPC_Pathfinding | +0
22:10:DEBUG:>> 5656 | 7 | CPathFinder::CPathFinder | +0
22:10:DEBUG:>> 5656 | 8 | CPathFinder::FillMap | +0
22:10:DEBUG:>> 5656 | 9 | CChar::CanMoveWalkTo | +0 <-- exception catch point (below is guessed and could be incorrect!)
22:10:DEBUG:>> 5656 | 10 | CChar::CheckValidMove | +0
22:10:DEBUG:>> 5656 | 11 | CWorld::GetHeightPoint_New | +0
22:10:DEBUG:>> 5656 | 12 | CItemBase::FindItemBase | +0
22:10:CRITICAL:"Access Violation" (0x13740f), in CChar::CanMoveWalkTo() #1 "Check Valid Move"
RE: Upgrade live server - Eledrianek - 08-20-2014 05:36 AM
Hi,
I find another problem - my scripts which contains something about TDATA3 (store for ammo type) doent working properly anymore.
I think that it has something to do with this:
1. Some internal values are still stored as 32bit (e.g. MORE1, ...). If they are negative their value
is now given as 64bit hex number so calculations,comparisions etc.. work on these values now.
How I can get raw text output from tdata3? Sphere still translate this to HEXA..
And second questions - my harm spells do no damage at all - even a trigget GetHit doesnt fire. Only Spelleffect, effect in the game and nothing more.
Can anyone help?
Thanks
RE: Upgrade live server - Eledrianek - 08-20-2014 08:18 AM
And another one )
ERROR:(sphere_spells.scp,1343)Undefined symbol 'SPELLFLAG_AREA'
I try to fix my area spells which doesnt work at all...
What is wrong with this settings:
[Spell 54]
DEFNAME=s_mass_dispel
NAME=Mass Dispel
SOUND=snd_SPELL_MASS_DISPEL
RUNES=VAO
CAST_TIME=3.0
RESOURCES=i_reag_black_pearl,i_reag_garlic,i_reag_mandrake_root,i_reag_sulfur_ash
RUNE_ITEM=i_rune_MASS_DISPEL
SCROLL_ITEM=i_scroll_MASS_DISPEL
FLAGS=SPELLFLAG_SCRIPTED|SPELLFLAG_TARG_OBJ|SPELLFLAG_TARG_XYZ|SPELLFLAG_AREA
EFFECT_ID=0
EFFECT=0
DURATION=0.0
MANAUSE=40
SKILLREQ=MAGERY 70.0
INTERRUPT=1.0,1.0
RE: Upgrade live server - XuN - 08-20-2014 03:55 PM
For TDATA3 I don't understand what you mean.
But for spells... open sphere_defs.scp and make sure you have the correct defs for spells:
Code:
[DEFNAME spell_flags]
spellflag_dir_anim 00000001 // evoke type cast or directed. (animation)
spellflag_targ_item 00000002 // need to target an object
spellflag_targ_char 00000004 // needs to target a living thing
spellflag_targ_obj 00000006 // can target item or char
spellflag_targ_xyz 00000008 // can just target a location.
spellflag_harm 00000010 // the spell is in some way harmfull.
spellflag_fx_bolt 00000020 // effect is a bolt to the target.
spellflag_fx_targ 00000040 // effect is at the target.
spellflag_field 00000080 // create a field of stuff. (fire,poison,wall)
spellflag_summon 00000100 // summon a creature or item.
spellflag_good 00000200 // the spell is a good spell. You intend to help to receiver.
spellflag_resist 00000400 // allowed to resist this.
spellflag_targ_noself 00000800 // cannot target spell to self
spellflag_disabled 00008000 // spell is disabled
spellflag_scripted 00010000 // spell is scripted
spellflag_playeronly 00020000 // spell is not casted by npc ai
spellflag_nounparalyze 00040000 // do not unparalyze the victim
spellflag_no_castanim 00080000 // don't play (default) cast anim
spellflag_targ_no_player 00100000 // if a char may be targeted, it may not be a player
spellflag_targ_no_npc 00200000 // if a char may be targeted, it may not be an NPC
spellflag_noprecast 00400000 // disables effects of MAGICF_PRECAST with a spell (only valid if MAGICF_PRECAST actived in Sphere.ini)
spellflag_nofreezeoncast 00800000 // disables effects of MAGICF_FREEZEONCAST with a spell (only valid if MAGICF_FREEZEONCAST actived in Sphere.ini)
spellflag_area 01000000 // area effect (uses local.arearadius)
spellflag_poly 02000000 // polymorph yourself
spellflag_targ_dead 04000000 // target is dead (for resurrection-like spells)
spellflag_damage 08000000 // kinda harm but deals damage to the targ, damage type is LOCAL.DamageType.
spellflag_bless 010000000 //Benefitial spells like Bless,Agility,etc.
spellflag_curse 020000000 //Curses just like Weaken,Purge Magic,Curse,etc.
RE: Upgrade live server - Eledrianek - 08-20-2014 09:43 PM
Thanks. I forgot about add new spellflags...
The TDATA3 has the same problem like systems which use MORE etc - old internal variables. It seems something changed in the way how sphere read this variables.
For example if I set TDATA3 for crossbow like ussual: t_weapon_bolt sphere translate it into hex and show 0fffffffffde00008bb which makes this uncompareble in some of my system. In MORE, the situation is the same but it is more serious because we upgraded our server from 51a to 55i to 56b etc. So we use LOTS of MORE in our scripts... Is there a easy way how to read this changed behaviour of internal variables?
I guees it has to do something with this:
Code:
1. Some internal values are still stored as 32bit (e.g. MORE1, ...). If they are negative their value
is now given as 64bit hex number so calculations,comparisions etc.. work on these values now.
Any suggestions?
Thanks
RE: Upgrade live server - Extreme - 08-21-2014 12:41 AM
Well, if your stored data is turned in HEX, you can compare turning your comparison data into HEX too.
Like... <HVAL <BLABLA>> == <TDATA3>
RE: Upgrade live server - XuN - 08-21-2014 07:06 AM
local.tdata=<tdata3>
local.tdata &=~0ffffffffde000000
This can serve as temporal fix.
RE: Upgrade live server - Eledrianek - 08-21-2014 07:50 AM
(08-21-2014 07:06 AM)XuN Wrote: local.tdata=<tdata3>
local.tdata &=~0ffffffffde000000
This can serve as temporal fix.
Yes this is a way how we solve it, but ...
So is it considered as bug and will be fixed? same problem with compatibility for MORE1... but we decide to move all our systems to TAGs...
What should be the reason that spells doesnt do (anim) effect - no flying shot.
Definitions are like this:
Code:
[Spell 5]
DEFNAME=s_magic_arrow
NAME=Magic Arrow
SOUND=snd_SPELL_MAGIC_ARROW
CAST_TIME=1.0
RUNES=IPY
RESOURCES=i_reag_black_pearl,i_reag_sulfur_ash
RUNE_ITEM=i_rune_MAGIC_ARROW
SCROLL_ITEM=i_scroll_MAGIC_ARROW
//FLAGS=SPELLFLAG_TARG_CHAR | SPELLFLAG_DIR_ANIM | SPELLFLAG_HARM| SPELLFLAG_RESIST
FLAGS=SPELLFLAG_TARG_OBJ| SPELLFLAG_DIR_ANIM | SPELLFLAG_HARM| SPELLFLAG_RESIST | SPELLFLAG_DAMAGE
EFFECT_ID=i_fx_fireball_small
EFFECT=5,15
DURATION=0.0
MANAUSE=4
SKILLREQ=MAGERY 10.0
INTERRUPT=1.0,1.0
And second question - what is wrong with this line for new release? Its function for custom graphics effects
Code:
SENDPACKET 0c0 <argv[0]> d0 d0 w<argv[1]> w<argv[8]> w<argv[9]> <argv[10]> w<argv[11]> w<argv[12]> <argv[13]> <argv[2]> <argv[3]> w0 <argv[6]> <argv[4]> d<argv[5]> d<argv[7]>
|