Go Back   EQEmulator Home > EQEmulator Forums > Quests > Quests::Q&A

Quests::Q&A This is the quest support section

Reply
 
Thread Tools Display Modes
  #1  
Old 04-15-2010, 07:24 PM
kameko
Sarnak
 
Join Date: Apr 2010
Posts: 30
Default Question about quest::saylink()

Hey,

I have been playing around with using saylink() in my NPC conversations
and noticed that there would be about 4 or so zeros before the text in my
saylink.

If I do #reloadqst in game most times it will fix this.

Has anyone else had a similar problem?

Here is a sample of what I am talking about:
Code:
my $others = quest::saylink("others", 0, "others");

quest::say("I'm glad you managed to escape the slave warrens in one piece.
 There are many $others who were not as lucky. Here, take this burlap 
armor. It's not much, but it should keep you safe");
Produces this in game...
Code:
I'm glad you managed to escape the slave warrens in one piece. There are
 many 0000others who were not as lucky. Here,
 take this burlap armor. It's not much, but it should keep you safe
Any ideas? I think I am declaring my variable correct. and like I said,
when I reload the quests it shows the link without the 0000 in front.

Thanks,

Michael
Reply With Quote
  #2  
Old 04-15-2010, 11:16 PM
ChaosSlayerZ's Avatar
ChaosSlayerZ
Demi-God
 
Join Date: Mar 2009
Location: Umm
Posts: 1,492
Default

this look very similar to extra chars/digits produced when a T client user is looking at item link posted by a SoF client user in game.
But I never seen this happening with quest links.
Reply With Quote
  #3  
Old 04-16-2010, 12:19 AM
realityincarnate
Developer
 
Join Date: Dec 2007
Posts: 122
Default

It most likely has to do with where you are creating the saylink. Titanium and SoF/SoD use slightly different formats for passing links. If you create the link inside an event that is initiated by a specific client, such as EVENT_SAY, it will generate the link for that client version and it will appear correctly.

If you create the link outside of an event, however, there is no way of knowing what client will trigger it. It currently assumes the SoF style of link, so those extra characters appear when viewing it with a Titanium client. You can work around this by creating links only inside events that pass a client variable.
Reply With Quote
  #4  
Old 04-16-2010, 03:10 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Yeah, I have it set to use the SoF format by default if it wasn't initiated by a client. This is because Titanium saylinks mess up MUCH more for SoF clients than SoF saylinks do for Titanium clients. So, where you see 00000, then the saylink, if it was the other way around, a SoF client might see any number of possible stuff that messes it all up.

Hopefully at some point, we will be able to parse the messages on their way out to correct item links and say links on a per client basis so they show up right on any client.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #5  
Old 04-16-2010, 02:22 PM
kameko
Sarnak
 
Join Date: Apr 2010
Posts: 30
Default

Ok, so if I moved my variable declaration from the global scope to the EVENT_SAY scope it should work? I'll give it a try.

I'll have to work this into my program I've been working on.

Thanks for the info guys,

Michael
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 01:24 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3