PenUltima Online Forum Index Official Core: 096.7
Official Core: 097 2008-02-26
Donate towards the POL web hosting bill!
 POL Home   FAQ   Search    Memberlist   Usergroups    Register    Profile   Log in to check your private messages   Log in
Problem with RC and resurrecting.
Goto page 1, 2  Next
 
Post new topic   Reply to topic    PenUltima Online Forum Index -> Bug Reports 097
Display posts from previous:   

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Mon Dec 11, 2006 4:12 pm    Post subject: Problem with RC and resurrecting. Reply with quote

I haven't changed anything related to the deathrobe item, yet when I do a resurrect on a character, I get the following error.

Assertion Failed: equippable( item ) (It is impossible to equip Item with ObjType 0x1f03), .\charactr.cpp, line 1035
Aborting due to assertion failure.

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

There is no crash dump, just that error. Also, the following is my tiles.cfg entry for that item..

tile 0x1f03
{
Desc robe
UoFlags 0x00404002
Layer 23
Height 1
Weight 3
Movable 1
Equippable 1
DescPrependA 1
}

Which says it is equippable, so I don't understand why that error is popping up. If this is a known bug then sorry for reporting it again. For reproducability, it happens every time I try to resurrect a player with the resurrect(who) function.

If there is a workaround, thanks in advance for pointing it out to me.

Oh, this is win32, latest RC.

Author Message
MuadDib
POL Developer


Joined: 13 Feb 2006
Posts: 830
Location: Indiana, USA

PostPosted: Mon Dec 11, 2006 5:18 pm    Post subject: Reply with quote

Check for an entry in all your itemdesc.cfg for that number also, and see if there is a problem there. Tiles.cfg is just the tiles from the UO Client, not your items you have defined in itemdesc.cfg. So check that first

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Mon Dec 11, 2006 6:08 pm    Post subject: This is my itemdesc entry for it. Reply with quote

I don't really see anything per say that raises any red flags. If I create the item and equip it via the paperdoll it equips just fine.

Armor 0x1F03
{
Name deathrobe
AR 2
Coverage Body
Coverage Legs
Coverage Arms
newbie 1
maxhp 1
dyeable 1
equipscript :combat:equip
unequipscript :combat:unequip
controlscript :combat:itemControl
destroyscript :combat:destroy
}

Furthermore, in an attempt to take the various other scripts out of the mix, I deleted equipscript, unequipscript, controlscript, and destroyscript from the itemdesc.cfg file, then started the shard, logged in, .killed myself, and resurrected, and same exact error.

Is anyone else able to confirm this as happening with them or not happening with them?

Author Message
Austin
POL Developer


Joined: 30 Jan 2006
Posts: 354
Location: San Diego, California

PostPosted: Mon Dec 11, 2006 9:38 pm    Post subject: Reply with quote

When you suspect a core bug, especially one that you assume would affect all shards - the best place to go first is to the POL Distro shard.

http://forums.polserver.com/viewtopic.php?t=820

Try .kill on yourself and .resurrect and see if anything happens.

Author Message
MuadDib
POL Developer


Joined: 13 Feb 2006
Posts: 830
Location: Indiana, USA

PostPosted: Mon Dec 11, 2006 10:59 pm    Post subject: Reply with quote

I'll have to wait till I get home to check into the line of the error it reported, but, can't help but think it's something more unique to your shard/scripts than it is a core bug

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Tue Dec 12, 2006 12:05 am    Post subject: Reply with quote

Tried it at the distro shard and it didn't crash.

I'm still at a loss though. I'm using the .res of old 094, which was a simple script that worked through 094, 095, 096. I guess something is not working with the item, yet I can equip the item if I just .create 0x1f03 and drag it onto the paperdoll.

I guess I'll just have to put off going to 097 for a while. If this is happening only to me, and it appears it is, and yet I have no more info to give(no crash dump), then I don't see how to resolve it. I'll try to re-read all the core-changes notes to see if there is possibly something I am missing. If anyone has any suggestions I'm looking for help.

Author Message
MuadDib
POL Developer


Joined: 13 Feb 2006
Posts: 830
Location: Indiana, USA

PostPosted: Tue Dec 12, 2006 12:51 am    Post subject: Reply with quote

ok.........................

Do you equip this item during death/res, via script??????????

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Tue Dec 12, 2006 1:07 am    Post subject: Reply with quote

I'm not entirely sure of the context of your question so I'll answer the two ways I can see.

1) Can I equip this item (0x1f03) via script?

Yes. I .create 0x1f03 and it puts a deathrobe at my feet. I type .equip target the robe, target myself, and it equips it to me. I can also equip it via dragging it onto the paperdoll.

2) Do I equip it via some sort of resurrect script?

No. I have a much more complicated resurrect script than what I am using to generate this error, both the more complicated and the simpler one crash the shard. Below is the simple script that is crashing the shard. So far as I know this item is created by core whenever you use the Resurrect(who) function.

use uo;

program resonly(who, text)

Resurrect(who);

endprogram

If there is some other context you mean, I'm sorry for missing it.

Thanks for any help.

Author Message
Austin
POL Developer


Joined: 30 Jan 2006
Posts: 354
Location: San Diego, California

PostPosted: Tue Dec 12, 2006 1:20 am    Post subject: Reply with quote

A quick test.. in your scripts/misc/equiptest.src file, after the program line, put a 'return 1' to temporarily make anything equippable there and comment out the script lines for equipping, destroying, etc, in the itemdesc.cfg entry

See if that fixes the problem.
Then slowly reenable the scripts it uses and test.

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Tue Dec 12, 2006 1:30 am    Post subject: Reply with quote

I will try that tomorrow, for tonight I need to put this away. But I did a search and don't have an equiptest.src in my scripts/misc folder or anywhere at all for that matter.

Is that file required? My 096 test core shard seems to run fine without it, and the first mention of equiptest in core-changes.txt is by Racalac on 1-30 of what I guess is 2004.

I will create the file and pull the various scripts out of itemdesc.cfg tomorrow though and report back. Thanks for the suggestion.

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Tue Dec 12, 2006 5:15 am    Post subject: Reply with quote

I went ahead and tried it anyway, no dice. Sad

use uo;

program equiptest(who, item, startup)

return 1;

endprogram

That is my equiptest.ecl program located in scripts/misc.

Same error when I do the .resonly script.

Author Message
Pierce



Joined: 02 Feb 2006
Posts: 256

PostPosted: Tue Dec 12, 2006 7:43 am    Post subject: Reply with quote

Quote:

tile 0x1f03
{
Desc robe
UoFlags 0x00404002
Layer 23
....
}


You have to edit your tiledata.mul and run uoconvert again after making the changes.
Layer 23 is for Legs (outer) (skirt/kilt) equipment. This has to be Layer 22 instead for the death robe.

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Tue Dec 12, 2006 2:23 pm    Post subject: Reply with quote

Serious? About the layer needing to be 22 I mean? Can a dev confirm this? Because I specifically switched around the layers on my shard because I didn't like the way OSI did them and have been using a custom setup forever now that has worked fine with 096. I don't see why the core would suddenly start demanding we follow OSI's layer scheme when it didn't before. I would actually prefer just an option to not have the shard create a deathrobe at all on resurrection to this whole mess, especially since that is something that is entirely scriptable. My scripts in fact the first thing they do on resurrection normally is delete the death robe.

Before I go around messing up my whole layering scheme though, can someone verify that this is a check that is suddenly added to 097? That death robes must be on layer 22? If so, is there any chance we could get a servspecopt.cfg option to turn off creation/equipping of death robes on resurrection altogether? I have never known POL to get more restrictive about things like this as versions roll along, only less, so this is quite a shock if true.

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Tue Dec 12, 2006 3:13 pm    Post subject: Reply with quote

Gosh, that was it. I didn't go so far on hopes that the tiledata.mul file didn't have to synch with the tiles.cfg file to do the test.

But for some reason I haven't figured out yet, POL is now making checks against layers? When did this happen and why? I would really prefer those checks be taken out, since I detest OSI's layering scheme and have changed all my shard's layers and even used some of those that are not official.

Not to mention, there is a new client that plans to allow any layer to be used(up to 128 of them). What purpose would POL possibly have to restrict layers at all? I would really like to ask that these restrictions be yanked out, as I think they are contrary to the whole concept of flexibility that POL has always seemed to support.

So two suggestions come out of this I guess that I hope the devs will seriously consider.

1) Remove any layer restrictions at all from the server, there is no reason I can see for even checking this, what possible need has the server for restricting what layer an item is assigned to?

2) Make a servspecopt.cfg option to allow disabling creation and equipping of a death robe on use of the Resurrect(who) function in uo.em. Or just remove the death robe creation/equipping and make scripts handle that as they should.

In the mean time I have the workaround that I just changed my tiles.cfg for the death robe to layer 22 instead of layer 23 like I was using before. But I really hope POL isn't going in the direction of specifying what layers are used for what like this, and worry that it does so in other places too.

For the Devs to test this, they can probably just go into the distro shard, make the change to the death robe item to go to layer 22 and then restart the shard, .kill themselves, and .res and it should crash like clockwork. Though I am assuming this check is somewhere in the server and easily found without seeing it actually happen.

Thanks!


Last edited by neizarr on Tue Dec 12, 2006 3:36 pm; edited 1 time in total

Author Message
neizarr



Joined: 08 Dec 2006
Posts: 30

PostPosted: Tue Dec 12, 2006 3:34 pm    Post subject: Reply with quote

Oh, just to be clear, though I probably sounded shocked and perhaps even a bit demanding in that last post, it was more shock than demand, trust me. I do feel strongly about what I was saying, but understand that these issues may not be of utmost importance to the devs or that there may be some reasons I don't see for why they had to change from 096 to 097 this way. I would appreciate if someone would take the time to explain to me what those reasons were, or if it was some oversight of some sort explaining they will be removed in the future(not even having to be 097 since I guess it is locked, but 098 test cores would be nice to have these layer restrictions pulled out of, particularly the ones that crash the shard).

I just wanted to make sure nobody thought I was yelling at them or being too pushy. There is a fine line between feeling strongly about something and being too vocal and too demanding and hopefully I didn't cross it.

Post new topic   Reply to topic    PenUltima Online Forum Index -> Bug Reports 097 All times are GMT - 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 




Powered by phpBB © 2001, 2005 phpBB Group :: Theme & Graphics by GHS & Scott E. Royalty