Minecraft Paket Senden

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von creac.

    Minecraft Paket Senden

    Huhu,
    wollte mal fragen ob mir jemand helfen kann.
    Mein Problem ist das ich an den Minecraft Server bspweise das Login Paket senden will.
    Habe jedoch keinerlei Erfahrung mit Sockets und aus Tutorials werd ich auch nicht schlau :S

    Also der writePacket part aus der Packet.java aus dem Minecraft Source Code:

    VB.NET-Quellcode

    1. public static void writePacket(Packet packet, DataOutputStream dataoutputstream) throws IOException { dataoutputstream.write(packet.getPacketId()); packet.writePacketData(dataoutputstream); }



    Und dann noch ein Beispiel Paket im Write Teil:

    Quellcode

    1. public void writePacketData(DataOutputStream dataoutputstream)throws IOException{dataoutputstream.writeInt(protocolVersion);writeString(username, dataoutputstream);dataoutputstream.writeLong(mapSeed);if (field_46032_d == null){writeString("", dataoutputstream);}else{ writeString(field_46032_d.name(), dataoutputstream);}dataoutputstream.writeInt(serverMode);dataoutputstream.writeByte(worldType);dataoutputstream.writeByte(difficultySetting);dataoutputstream.writeByte(worldHeight);dataoutputstream.writeByte(maxPlayers);}


    Kann mir da evtl jemand helfen?

    Vielen Dank im vorraus,
    ECB2

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    ECB2 schrieb:

    Habe jedoch keinerlei Erfahrung mit Sockets und aus Tutorials werd ich auch nicht schlau :S
    Dann wirds schwierig, da du dann auch nichts verstehst.

    Aber zur Hilfe guck dir das mal an: mc.kev009.com/Protocol

    Was hast du überhaupt vor?
    kann man überhaupt mit VB.Net auf einen server zugreifen der in java programiert ist und meist auf linux leuft ?
    und wofür wilste solche daten senden wilste MC kostenlos zocken (in dem fall kaufs dir (fals ned vergiss das in den klammern))

    Mfg joscha999
    so in etwa

    VB.NET-Quellcode

    1. Dim tcpClient As New Net.Sockets.TcpClient()
    2. tcpClient.Connect("127.0.0.1", "25565")
    3. If tcpClient.Connected Then
    4. Dim protocolVersion As Int32 = 23 '<- Für 1.1
    5. Dim username As String = "Username"
    6. Dim mapSeed As Long = "0"
    7. Dim field_46032_d As String = ""
    8. Dim serverMode As Int32 = 0
    9. Dim worldType As Byte = 0
    10. Dim difficultySetting As Byte = 0
    11. Dim worldHeight As Byte = 0
    12. Dim maxPlayers As Byte = 0
    13. tcpClient.Client.Send(BitConverter.GetBytes(protocolVersion))
    14. tcpClient.Client.Send(BitConverter.GetBytes(CShort(username.Length)))
    15. Dim enc As System.Text.Encoding = System.Text.Encoding.Default
    16. tcpClient.Client.Send(enc.GetBytes(username))
    17. tcpClient.Client.Send(BitConverter.GetBytes(mapSeed))
    18. tcpClient.Client.Send(BitConverter.GetBytes(CShort(field_46032_d.Length)))
    19. tcpClient.Client.Send(BitConverter.GetBytes(serverMode))
    20. tcpClient.Client.Send({worldType, difficultySetting, worldHeight, maxPlayers})
    21. End If

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Bluespide“ ()

    Bluespide schrieb:

    Dim mapSeed As Long = "0"

    Option Strict lässt grüßen.

    VB.NET-Quellcode

    1. Dim mapSeed As Long = 0