下载了Minecraft 1.5.2, 但是Vijos Minecraft还是1.5.1的服务器(水桶没出1.5.2 stable)。
xqq告诉我有个东西叫做MCP(Mod Coder Package), 用来开发Minecraft的Mod。
然后需要对应版本的 MinecraftForge 源代码。
据说
“但是反编译之后的代码是混淆过的,所有的类名、方法名都被换成了123,abc之类的……于是出了mcp这样的一个组织,硬是对着天书一样的源代码做阅读理解把他们翻译出了常人可以读懂的东西”
嗯, 不过只要翻译了一个版本, 后续都好办了。
然后我修改了几处源代码, 使得我的客户端可以连接任意版本的Minecraft服务器(就是去掉了判断版本号, 协议内容不一样的话我就没办法啦~)。
ServerData.java的
27 public int field_82821_f = 61;
实际上是协议号的意思。
然后还看了一下, ServerAddress.java的
31 public static ServerAddress func_78860_a(String par0Str)
实际上是解析ip地址(Minecraft似乎支持ipv6, 因为看到解析了”[“和”]”)。
发表评论