Beiträge von Fisticuff

    Danke!
    Habe das nun so gemacht, sieht das richtig aus?
    [cs]
    'Packet: (7021) 01875C0F00F300B502
    '87 - xRegion
    '5C - yRegion
    '0F00 - xPos
    'F300 - zPos
    'B502 - yPos


    Dim xRegion As Integer = &H87
    Dim yRegion As Integer = &H5C
    Dim xPos As Integer = &H0F00
    Dim yPos As Integer = &HB502
    Dim x As Integer = (xRegion - 135) * 192 + xPos / 10
    Dim y As Integer = (yRegion - 92) * 192 + yPos / 10


    MsgBox(String.Format("X:{0} Y:{1}", x, y))
    [/cs]
    Kann leider nicht prüfen ob die richtigen Koordinaten ausgegeben werden, da man keine Chance hat reinzukommen -.-

    Hi,
    kurze Frage: kennt vllt jemand die Formel um die Position des Chars zu ermitteln? Die x/y-Section und x/y habe ich bereits aus dem Paket rausbekommen, nur fehlt mir halt die Berechnung der x/y-Koordinaten.

    Wenn ich alles ändern muss, dann muss ich ja einen neuen Ordner erstellen und die SRO_Client.exe neu patchen oder? Das muss doch auch anders gehen, der iBot macht es ja z.B. auch irgendwie ohne irgendwelche externen Anwendungen.

    Hm..bei mir passiert das nur, wenn ich einen Client mit dem SRO-DB Bot und den anderen mit dem lolkop Loader benutze..wenn ich beide Clients nur mit dem Loader starte, dann bekomm ich kein DC.

    Hallo,
    ich bastle gerade einen kleinen ZSZC-Loader mit dem ich auch simple Aktionen durch Pakete ausführen will und benutze dazu den phConnector. Nun ist mein Problem aber, dass ich zwar den SRO_Client mehrmals starten kann, jedoch aber beim 1. Client dann einen DC bekomme..wenn ich eine Kopie vom phConnector in einem neuen Ordner erstelle und den Bot-Port ändere, kommt die Meldung "Failed to bind on port". Gibt es irgendeine Möglichkeit diesen Fehler zu umgehen um somit den Loader zweimal zu starten und eben an zwei verschiede Clients Pakete zu senden?

    Hi nochmal, also ich wollte kein neues Thema erstellen, da es eigentlich auch hier rein passt. Also ich hab eine neue Frage: Sagen wir mal ich starte SRO und sende alle 5sec das Packet in der die ID & PW steht (also um mich halt einzuloggen). Jedoch ist der Server voll, da müsste ja dann ein S->C-Packet kommen, in dem steht, dass der Server voll ist. Meine Frage ist nun, wie prüfe ich die Packets die vom Server kommen am besten? Ich habe noch eine Source von einem Analyzer und da werden in einem Timer alle Packets die gesendet/ankommen in eine ListBox eingefügt. Es gibt dort auch die Funktionen Ignore und Listen...jedoch wäre das ja denke ich mal ein bisschen blöd, wenn ich nach dem Senden des Packets zum Login jedesmal alle Einträge der ListBox durchgehen muss..außerdem würde es doch später Probleme geben, da dieses Packet ja dann immer noch eingetragen ist, auch wenn ich dann eingeloggt bin...also was wäre die beste Möglichkeit sofort die Antwort vom Server zu prüfen? Hoffe ich habe mich verständlich ausgedrückt^^

    Hm..nagut, dann probier ich mal einen längeren Sleep-Befehl. Dachte macht keinen Unterschied wenn ich alle 2 Sekunden Enter drücken lasse, oder das Packet sende..

    OK, also das Senden des Packets zum Einloggen klappt zwar, aber nach knapp 5min kommt die Meldung "Server is full. Please try again later." nicht mehr, und im Analyzer wird auch nicht mehr angezeigt, dass das Packet gesendet wird. Auch wenn ich dann selber versuche auf den Connect-Button zu drücken passiert nichts mehr, erst wenn ich ZSZC wieder neustarte..das Senden mache ich in einer While-Schleife mit einem 2sec Sleep, solange bis der Char eingeloggt ist..An was könnte das denn liegen? Was noch komisch ist, als keine Rückmeldung mehr vom Server kam, bekam ich die ganze Zeit bei Mozilla "Website kann nicht angezeigt werden" und das so lange, bis ZSZC geschloßen wurde..

    Also ich habe gestern mit kuhkuh geschrieben und er sagte dass vom Server ein Packet gesendet wird in der ID & PW enthalten sind und dieses soll ich an den Server senden. Das Packet, wenn ich auf Connect drücke sieht so aus:

    Code
    1. (6102) 04 0700 + Acc-ID + 0600 + Acc-PW + 0100


    Also 04 dann 0700 = ID-Länge (7 Zeichen) + AccID + 0600 = PW-Länge (6 Zeichen) + Acc-PW + 0100 = ServerID


    Also wenn ich es sende, dann kommt die Meldung mit "..server is full. please try again later..usw" aber warum kommt die Meldung davor mit "Requesting user confirmation" nicht?


    BTW: Wo habt ihr eigentlich alle den Packetaufbau her? Wäre natürlich super, wenn man sowas hätte..^^

    Char auswählen:


    Code
    1. C->S (0x7001)
    2. [Word]NameLength
    3. [String]Name


    Vielen vielen Dank!! Hab gerade mit einem Converter verschiedene Längen von Namen durchprobiert und genau das wird auch im Analyzer später angezeigt. Also wenn mein Char "Blubb16" heißt, dann sind es ja 7 Zeichen. Und im Analyzer wird dann 0700+Charname angezeigt. Hat es also nichts mit der Position des Chars zu tun?

    Hi,
    hab mal eine Frage, also ich versuche gerade Packets an ZSZC zu senden, ersteinmal die leichten Sachen (Party erstellen, hinsetzen/aufstehen, laufen usw, also bin noch ziemlich am Anfang^^) und das klappt auch, jedoch habe ich bei 2 Sachen Probleme.
    1. Wie kann ich das Packet rausfinden, das gesendet wird, wenn man seine ID & PW eingegeben hat und dann auf Connect drückt? Ich benutze phConnector + Analyzer aber da wird kein C->S Packet angezeigt..
    2. Ich wollte nun auch mal versuchen, einen Char automatisch nach dem Einloggen auszuwählen, jedoch enthält das Packet mittendrin entweder 0500, 0600 oder 0700 (das ist immer verschieden, kommt drauf an ob der Char an der 1., 2. oder 3. Stelle ist). Wenn ich selber ein Char auswähle, dann wird mir das im Alanyzer angezeigt, aber ich weiß nicht genau wie ich das nun prüfen soll, damit ich die Funktion in VB.NET einsetzen kann..vom iBot (ist zwar normales SRO aber ist ja auch egal^^) weiß ich, dass er einen Char erst auswählen kann, wenn man sich davor eingeloggt hat und diesen Char benutzt, also der prüft ja irgendwie obs nun z.B. 0500 oder 0600 ist..ich hab bis jetzt nur Packets gesendet, aber keine geprüft die vom Server kommen.


    Wäre sehr dankbar wenn mir jemand helfen könnte!