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
MoveBoatRelative() Crash (POL096-2005-12-08)

 
Post new topic   This topic is locked: you cannot edit posts or make replies.    PenUltima Online Forum Index -> Bug Reports 096
Display posts from previous:   

Author Message
itec



Joined: 10 Feb 2006
Posts: 33
Location: Finland

PostPosted: Sun Mar 12, 2006 6:12 pm    Post subject: MoveBoatRelative() Crash (POL096-2005-12-08) Reply with quote

I have had this crash bug for a long time on my shard. It seems to occure on random basis so I havent informed about it. The boat packet I'm using seems to be distro Version 1.2a according to pkg.cfg. Downloaded from somewhere MuadDibs archives if I remember correctly.

Code:
Client#568: Unexpected message type 98, 21 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 29 e2 36 98  00 07 00 27 07 32 98 00   ....).6. ...'.2..
0010: 07 00 28 87 f5                                     ..(..... ........
Client#568: Unexpected message type 98, 21 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 29 e2 36 98  00 07 00 27 07 32 98 00   ....).6. ...'.2..
0010: 07 00 28 87 f5                                     ..(..... ........
Client#568: Unexpected message type 98, 14 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 27 07 32 98  00 07 00 28 87 f5         ....'.2. ...(....
Client#568: Unexpected message type 98, 14 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 27 07 32 98  00 07 00 28 87 f5         ....'.2. ...(....
Client#568: Unexpected message type 98, 7 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 28 87 f5                               ....(... ........
Client#568: Unexpected message type 98, 14 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 27 07 32 98  00 07 00 28 87 f5         ....'.2. ...(....
Client#568: Unexpected message type 98, 7 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 28 87 f5                               ....(... ........
Client#568: Unexpected message type 98, 7 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 28 87 f5                               ....(... ........
Client#568: Unexpected message type 98, 7 bytes (IP:80.220.91.141, Account:Phoeni)
0000: 98 00 07 00 28 87 f5                               ....(... ........
[03/12 20:00:28] Unhandled Exception! Writing Minidump file.
This file with explanation and last lines from log files should be given to the development team.
Saved dump file to 'POL096-2005-12-08-20060312024506-0.dmp'
Last Script: pkg/systems/boat/boat.ecl PC: 255

If needed, I can also supply the source and listfile.

Author Message
MuadDib
POL Developer


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

PostPosted: Mon Mar 20, 2006 7:44 pm    Post subject: Reply with quote

What realm if possible, was they in? It is something involving the map handling OR, bad x/y coords even (aka, to close to an object that blocks the boat's turning).

Any input on this would help if the player can remember.

Author Message
MuadDib
POL Developer


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

PostPosted: Mon Mar 20, 2006 7:51 pm    Post subject: Reply with quote

Abd yes, please post the LST file for the script too (around 240 through 270).

Author Message
itec



Joined: 10 Feb 2006
Posts: 33
Location: Finland

PostPosted: Thu Mar 23, 2006 10:02 am    Post subject: Reply with quote

We are using only britannia, so no other realms. Sorry, I don't have more specific info. Either the players were afraid they did something wrong and didn't dare to report or they missed my inquiry.

And here's the listing. Hope it helps.
Code:

239: if false goto 247
PlayBoatSounds();
240: makelocal
241: jmp userfunc @1054
242: #
nextsound := ReadGameClock()+5;
243: Func(3,8): ReadGameClock
244: 5L
245: +
246: local2 :=
x := boat.x;
247: global #3
248: get member id 'x' (0)
249: local4 :=
y := boat.y;
250: global #3
251: get member id 'y' (1)
252: local5 :=
MoveBoatRelative(boat, relative_direction);
253: global #3
254: global #1
255: Func(5,0): MoveBoatRelative
256: #
if(boat.x == 6 or boat.x == 5097 or boat.y == 6 or boat.y == 4089)   
257: global #3
258: get member id 'x' (0)
259: 6L
260: ==
261: global #3
262: get member id 'x' (0)
263: 5097L
264: ==
265: ||
266: global #3
267: get member id 'y' (1)
268: 6L
269: ==
270: ||
271: global #3
272: get member id 'y' (1)
273: 4089L
274: ==
275: ||
276: if false goto 280
WorldWrap();
277: makelocal
278: jmp userfunc @1262
279: #
if((x == boat.x) &&(y == boat.y))


Just incase if you need it, here is part of the source that the listfile points. Just to note that the crashes had begun before I had made any editions to the source:
Code:

      STATE_MOVING:   if(ReadGameClock() > nextsound)
                        PlayBoatSounds();
                        nextsound := ReadGameClock()+5;
                      endif
                      x := boat.x;
                      y := boat.y;
                      MoveBoatRelative(boat, relative_direction);
                      if(boat.x == 6 or boat.x == 5097 or boat.y == 6 or boat.y == 4089)   
                        WorldWrap();
                      endif
                      if((x == boat.x) &&(y == boat.y))
                        ms_delay_between_moves := 1000;
                        state := STATE_DRIFTING;
                        SetObjProperty(tillerman, "state", state);
                        PrintTextAbove(tillerman, "Aaargh!  Ajauduimme karille!");
                        //SmackEveryone();
                      endif

Author Message
itec



Joined: 10 Feb 2006
Posts: 33
Location: Finland

PostPosted: Sun Apr 16, 2006 9:47 pm    Post subject: Reply with quote

I found out the reason for this. It was due to boat crossing the world borders with the MoveBoatRelative() function. It happened when there was an obstacle and MoveBoatXY() couldn't move the boat to the other edge of the world, thus causing the crash.

Hope this info helps. Of course it's not so important to me anymore when I can workaround this.

Author Message
MuadDib
POL Developer


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

PostPosted: Mon Sep 18, 2006 3:28 pm    Post subject: Reply with quote

Itec, if you can reproduce this again with your setup, please download POL 096.3, and see if this is fixed.

Author Message
Gnafu



Joined: 02 Feb 2006
Posts: 87
Location: Livorno, Italy

PostPosted: Sun Nov 12, 2006 10:40 am    Post subject: Reply with quote

My boats can pass trough objects on the sea!!

0.0

It happens only on realms different from the _default_realm

What is the script of the MoveBoatRelative() ?

Author Message
itec



Joined: 10 Feb 2006
Posts: 33
Location: Finland

PostPosted: Tue Mar 20, 2007 2:44 pm    Post subject: Reply with quote

Tried it, and the the fix really seems to work. Nice Wink


We are using only britannia realm and boats are travelling trough dynamic items. It doesn't really matter though, the items can be putted in static file and then they wont be passable anymore.

Post new topic   This topic is locked: you cannot edit posts or make replies.    PenUltima Online Forum Index -> Bug Reports 096 All times are GMT - 4 Hours
Page 1 of 1

 




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