类下托泣匹 发表于 2026-2-23 19:43:16

折腾MC服务器Motd的一天

今天想试试用usocket获取MC Java版服务器的Motd,结果被教育了一下午。

代码长这样:
(ql:quickload "usocket")
(add-package-local-nickname :u :usocket)

(defparameter socket (u:socket-connect "mc.hypixel.net" 25565
                                     :element-type '(unsigned-byte 8)))

(defparameter str (u:socket-stream socket))

(write-sequence #(16 0 212 2 13
                   109 99 46 104 121 112 105 120 101 108 46 110 101 116
                   99 221 1)
                str)

(force-output str)

(write-sequence #(1 0) str)
(force-output str)

(read-byte str)



看着挺像回事的吧?中间报错调了好几轮,总算能跑通了。

结果服务器那边啥反应都没有,read-byte直接卡住。

去找了个现成的项目BlackBEDevelopment/MCBE-Server-Motd,对着源码看了好几遍,实在看不出哪儿有问题。抱着试试看的心态跑了一下人家的代码--沃德天,人家的代码跑得溜溜的!

同样的逻辑,同样的流程,区别就是我的不行。😭😭😭
就这样吧,记录一下今天的折腾成果。
页: [1]
查看完整版本: 折腾MC服务器Motd的一天