首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby和Minecraft包

Ruby和Minecraft包
EN

Stack Overflow用户
提问于 2013-01-13 10:26:06
回答 1查看 204关注 0票数 2

我需要创建一个数据包,并将其发送到Minecraft服务器。数据包需要以特定的方式打包。我用python实现了这一点,但是ruby似乎把我给弄丢了。

下面是打包它的Python代码:

代码语言:javascript
复制
def short(data):
    return pack('>h',data)
def shortchar(data):
    return pack('>H',ord(data))
def string16(data):
    chars = ''.join([shortchar(i) for i in data])
    return short(len(data))+chars

packetbytes = '\x02\x33' + string16(name) + string16(host) + '\x00\x00\x63\xdd'

这是Ruby,我该怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-13 13:01:27

试试这个:

代码语言:javascript
复制
def string_16(data)
  [data.size].pack('s>') + data.split('').map(&:ord).pack('S>*')
end

packet_bytes = "\x02\x33" + string_16(name) + string_16(host) + "\x00\x00\x63\xdd"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14300079

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档