-____- Composition Gui! prob,

10/14/2010 21:21 -Shunsui-#1
soo, when i click "Compose" it says iam to far away, Idk what could be the prob i sent my client X,Y Cords same for the NPC's and its fine, any1 have any idea ?
this is the general data iam sending, this is for Impulse's Source, Ftw
Code:
 case 1:
                                {
                                    INpc npc = null;
                                    if (client.Map.Npcs.TryGetValue(client.ActiveNpc, out npc))
                                    {
                                        GeneralData data = new GeneralData(true);
                                        data.ID = 0x7e;
                                        data.UID = client.Entity.UID;
                                        data.TimeStamp = Time32.Now;
                                        data.dwParam = 1;
                                        data.wParam3 = npc.X;
                                        data.wParam4 = npc.Y;
                                        client.Send(data);
                                    }
                                    break;
                                }
10/14/2010 23:10 Arcо#2
[Only registered and activated users can see links. Click Here To Register...]
10/15/2010 00:23 -Shunsui-#3
tried everything, and lol. did not know i had that thread
10/15/2010 00:58 biohazardous#4
i have same problem but mine is 5165
10/15/2010 11:37 .Kob#5
Have you tried to add:

data.wParam1 = Client.X;
data.wParam2 = Client.Y;
10/15/2010 16:04 -Shunsui-#6
Quote:
Originally Posted by .Kob View Post
Have you tried to add:

data.wParam1 = Client.X;
data.wParam2 = Client.Y;
yes.. i tried every single thing before i posted here..
10/15/2010 17:06 teroareboss1#7
Quote:
Originally Posted by -Shunsui- View Post
soo, when i click "Compose" it says iam to far away, Idk what could be the prob i sent my client X,Y Cords same for the NPC's and its fine, any1 have any idea ?
this is the general data iam sending, this is for Impulse's Source, Ftw
Code:
 case 1:
                                {
                                    INpc npc = null;
                                    if (client.Map.Npcs.TryGetValue(client.ActiveNpc, out npc))
                                    {
                                        GeneralData data = new GeneralData(true);
                                        data.ID = 0x7e;
                                        data.UID = client.Entity.UID;
                                        data.TimeStamp = Time32.Now;
                                        data.dwParam = 1;
                                        data.wParam3 = npc.X;
                                        data.wParam4 = npc.Y;
                                        client.Send(data);
                                    }
                                    break;
                                }

try this

Code:
                                        byte[]   PacketData = new byte[8 + 28];
                                        PacketData[0] = (byte)(PacketData.Length - 8 & 0xff);
                                        PacketData[1] = (byte)((PacketData.Length - 8 >> 8) & 0xff);
                                        
                                        PacketData[2] = (byte)(10010 & 0xff);
                                        PacketData[3] = (byte)((10010 >> 8) & 0xff);

                                        PacketData[4] = (byte)(client.Entity.UID & 0xff);
                                        PacketData[5] = (byte)((client.Entity.UID >> 8) & 0xff);
                                        PacketData[6] = (byte)((client.Entity.UID >> 16) & 0xff);
                                        PacketData[7] = (byte)((client.Entity.UID >> 24) & 0xff);

                                        PacketData[8] = (byte)(1 & 0xff);
                                        PacketData[9] = (byte)((1 >> 8) & 0xff);
                                        PacketData[10] = (byte)((1 >> 16) & 0xff);
                                        PacketData[11] = (byte)((1 >> 24) & 0xff);

                                        PacketData[12] = (byte)(System.Time32.Now.GetHashCode() & 0xff);
                                        PacketData[13] = (byte)((System.Time32.Now.GetHashCode() >> 8) & 0xff);
                                        PacketData[14] = (byte)((System.Time32.Now.GetHashCode() >> 16) & 0xff);
                                        PacketData[15] = (byte)((System.Time32.Now.GetHashCode() >> 24) & 0xff);

                                        PacketData[16] = (byte)(0x7e & 0xff);
                                        PacketData[17] = (byte)((0x7e >> 8) & 0xff);

                                        PacketData[20] = (byte)(client.Entity.X & 0xff);
                                        PacketData[21] = (byte)((client.Entity.X >> 8) & 0xff);

                                        PacketData[22] = (byte)(client.Entity.Y & 0xff);
                                        PacketData[23] = (byte)((client.Entity.Y >> 8) & 0xff);

                                        string s = "TQServer";
                                        ASCIIEncoding encoding = new ASCIIEncoding();
                                        encoding.GetBytes(s).CopyTo(PacketData, (int)(PacketData.Length - 8));
                                        
                                       client.Send(PacketData);
10/16/2010 07:03 -Shunsui-#8
Nope nothing, i dont think is anything wrong with the Offsets.
10/28/2010 21:58 12tails#9
isn't it a client problem....

cuz i tryied using it as general data and dialog show.... and the both got same error..

"Failed to compose. You are standing too far away."

this is defined at strRes at client...
10/29/2010 10:22 Korvacs#10
Quote:
Originally Posted by 12tails View Post
isn't it a client problem....

cuz i tryied using it as general data and dialog show.... and the both got same error..

"Failed to compose. You are standing too far away."

this is defined at strRes at client...
strRes is just a list of strings the client uses, they can be triggered by both the client and server.

Seems pretty obvious to me that its a packet issue, the client doesnt decide if your too far away (if it did you wouldnt be having this problem).
10/29/2010 12:49 _DreadNought_#11
if Kernel.GetDistence(x, y, npc.x, npc.y < 25)
{
wParam = ?
}
dtc..
11/27/2010 17:23 teroareboss1#12
i don't know problem, but

with npc id: 35016
is working
11/27/2010 22:16 InfamousNoone#13
Try using a skill at the place you're standing in market before you try to composing (and let us know if your client says it's too far to cat the spell). I think something like spiritual heal would work in market, if not mounting to a steed works for sure.

Code:
'#include ...\define_data.vb
' By: Hybrid
' Npc: 35016
' Name: WuxingOven

Imports System
Imports ConquerScriptLinker

Partial Public Class NpcEngine
    Public Shared Sub WuxingOven()
        Dim dlg As String() = Nothing

        Select Case OptionID
            Case 0
                ReDim dlg(2)
                dlg(0) = "TEXT Your equipment can be very important in combat."
                dlg(1) = "OPTION1 Upgrade Enchant"
                dlg(2) = "OPTION2 Upgrade Purity"
            Case 1
                Player.SendData(DataID.Switch, DataSwitchArg.EnchantWindow, 0, 0)
            Case 2
                Player.SendData(DataID.GUIDialog, DataGUIDialog.Composition, 0, 0)
        End Select

        If Not dlg Is Nothing Then
            Dialog(dlg)
        End If
    End Sub
End Class
Code:
Public Const GUIDialog As UInt16 = 126
Code:
Public Const Composition As UInt32 = 1
11/28/2010 14:46 |NeoX#14
Quote:
Originally Posted by InfamousNoone View Post
.
I love how you post solutions :)

You post them in VB even if you got it done in C# just so ppl have to put a bit more effort :)

:handsdown:
11/28/2010 15:22 12tails#15
i'm using this code but not working yet... and i tested the vip remote compose and it worked normal....

something is wrong while sending the packet : /

Code:
                                    UInt16 GUIDialog = 126;
                                    UInt32 Composition = 1;
                                    GeneralData g = new GeneralData(true);
                                    g.UID = client.Entity.UID;
                                    g.ID = GUIDialog;
                                    g.dwParam = Composition;
                                    client.Send(g);
thanks in advance