quest gump freezes the character

Report core bugs regarding the Ultima Online Emulator Core release (version 097). You can attach your Core Dump. One bug per post.
Locked
Lagoon
Grandmaster Poster
Posts: 118
Joined: Sun Mar 05, 2006 7:25 am

quest gump freezes the character

Post by Lagoon »

I have an hook which is fired at quest gump pression, does something and returns 1
When I hit the quest gump, the hook is run correctly, but the character then is like "freezed". I can't move it, if I try to move it the animation remains still with a walk (or run) frame and there's no way to move the character any more. Tha client continues to work in part (I can move gumps, write texts and so on), but any communication with the server seems to be impossible. It's like if the client is blocked waiting for some reply from the server which never arrives...
Nothing changes if I replace return 1 with return 0 in the button hook
If I remove the hook, everything works fine and the console writes

Code: Select all

Undefined message type d7
Unexpected message type d7, 10 bytes (IP:127.0.0.1, Account:admin)
0000: d7 00 0a 00 00 00 01 00  28 0a                     ........ (.......
The character has "ML" set as UOExpansion and servspecopt.cfg has UOFeatureEnable=0x1a0
No idea if this is a true bug or if it's me who should add some SendPackect() in the hook to reply to the quest button click
MuadDib
Former Developer
Posts: 1091
Joined: Sun Feb 12, 2006 9:50 pm

Post by MuadDib »

And is fine on the last beta core?
Lagoon
Grandmaster Poster
Posts: 118
Joined: Sun Mar 05, 2006 7:25 am

Post by Lagoon »

All the description above is about latest beta (I already updated the core and recompile all scripts), but if I remember right I had the same problem with previous beta, I can't say which is the first core with this problem sorry
MuadDib
Former Developer
Posts: 1091
Joined: Sun Feb 12, 2006 9:50 pm

Post by MuadDib »

Odd.

Unsure if this is a hook issue, or core, or what.

Shouldn't freeze the client, unless it's expecting something back i would think.

Can you post the hook package, and the script, or email it to me, so i can reproduce it?
Lagoon
Grandmaster Poster
Posts: 118
Joined: Sun Mar 05, 2006 7:25 am

Post by Lagoon »

Here is the package with the script, it's really simple
http://kabal.rpg-x.com/kabalbutton.rar
I did further testing and I have to say the client isn't completely freezed. It still receives the sysmessages coming from other running script, and in general the behaviour is very strange. After I hit the quests button, the other open gumps stop to send the result back to the server. If I have an open gump and hit a button, the gump closes and the server receives no result. And if I try to issue a command, I can write it, but when I hit "enter", nothing happens. And the character can't move. This lasts about 10-15 seconds. After this time has passed, the character is still blocked, but the other things work again: gumps return their values and I can issue commands. If I issue a .tele command, I can target a location and teleport there and now I can move my character again. Hope this helps

edit: in short the behaviour seems to be the following: client to server communication is blocked for 10-15 seconds, but server to client communication isn't affected
Shinigami
Former Developer
Posts: 308
Joined: Mon Jan 30, 2006 9:28 am

Post by Shinigami »

just use a correct uopacket.cfg... your log shows us a packet with length of 10 bytes, but your packet.cfg just wants a packet with 5 bytes... why? in this case it's normal that something gets blocked... server doesn't wait for additional 5 bytes, but client sends it.

Code: Select all

Packet 0xd7
{
  Length 5
  ReceiveFunction kabalButton:KabalButtonPressed
}
check your PacketGuide... and use this definition:

Code: Select all

Packet 0xD7
{
  Length variable
  SubCommandOffset 7
  SubCommandLength 2
}

SubPacket 0xD7
{
	SubCommandID 0x28
	ReceiveFunction kabalButton:KabalButtonPressed
}
anyway... your log shows the guild button, so i've choosen here the code for guild button. just add 0x32 for quest button by yourself.

Shinigami
MuadDib
Former Developer
Posts: 1091
Joined: Sun Feb 12, 2006 9:50 pm

Post by MuadDib »

Shini just loves packet hook issues ;)
Lagoon
Grandmaster Poster
Posts: 118
Joined: Sun Mar 05, 2006 7:25 am

Post by Lagoon »

Thank you for the help and sorry for pointing a bug in my mind instead of pol core :P
Locked