광산 기술 서버에 연결하여 패킷을 수신하고 패킷을 보내는 스크립트가 있습니다.Python Parse Minecraft 패킷
그래서 '로그인'패킷을 보내고 '로그인'패킷을받습니다. 안타깝게도 수신 된 로그인 패킷은 인코딩됩니다 (여기에 인코딩에 대한 정보 : http://wiki.vg/Protocol#0x01).
수신 된 로그인 패킷은 received_login_packet
이라는 변수에 저장됩니다. 패킷 유형, 크기 등과 같은 데이터의 개별 비트를 얻을 수 있도록 디코드해야합니다.
저는 약간 둘러 봤지만 어떻게해야 할 지 전혀 모릅니다. 이 일을하려고하는 것. 도움이된다면
여기에 일부 코드입니다 :
#encoding the packet to send
encuserlen = str(len(enc_user)) # enc_user is just my username
packfmt = '>bih%sshiibBB' % encuserlen
packetbytes = struct.pack(packfmt, 1, 28, len(data['user']), enc_user, 0, 0, 0, 0, 0, 0)
s.send(packetbytes)
time.sleep(2)
#login packet sent, waited for response
response = s.recv(1024) #this is the raw login response.
#it's encoded as detailed above. i want to decode it
어떤 도움을 주시면 감사하겠습니다 그것은 충분히 명확 아니라면 말을 주저하지 말아 주시기 바랍니다.
충분히 명확하지 않습니다. 코드 샘플을 포함하십시오. – Will
더 좋습니까? 정말 필요한 것은 아니지만 몇 가지 코드를 추가했습니다. 필요한 정보는 대부분 wiki 페이지에 있습니다. – Jack