跳到正文
返回作品列表

rubic:智能魔方 F2L 实时训练器rubic: a live F2L trainer for a smart cube

年份
2026
状态
在做
结果
离线全通,八月这版还没上过真魔方

我自己在练魔方,手上有一个带蓝牙的智能魔方,每转一下都实时报给电脑。仓库里是两个网页,都是单文件,本地起个服务就能打开。一个是公式动画页,把 CFOP 四个阶段的公式全做成能一招一招点着看的 3D 动画:白十字 8 例、F2L 41 条(前两层的角块和棱块配对)、OLL 57 条、PLL 21 条。左边按图找到你手上这一种,右边一步步看它还原。另一个是训练器:连上魔方,它跟着我转到哪一步,算出下一对该怎么拼,用大字提示加 3D 演示带着我做。

做训练器是因为,现有的智能魔方软件基本只告诉你「这次多少秒」。可我要改的毛病不在手速上——找不到要用的块、认不出该配哪一对、拿着魔方来回转。我想要的是把前两层的每一对拆成两段时间:盯着想的那几秒,和真正在转的那几秒。停顿占比高的那一对,才是该单独练的。所以训练器最主要的输出是一张表:白十字加四对,每行分开记停顿、执行、步数。

真正难的地方不是解魔方,是三套方向对不上。魔方固件报的字母、3D 引擎用的字母、我按自己拿法看到的方向,三套之间差着一次整体翻转。任何一处搞混,屏幕上就会出现「我转的是顶层,它演示的是底层」。这个改了好几轮,最后让三套都走同一张映射表才稳下来。

另一处返工的是解法。一开始是现场搜索最短路径,步数确实少,可 41 种标准情况里只有 4 种碰巧和我正在背的公式一样,练了也没用。后来改成提前离线生成公式表,用的时候先查表,再把查到的这条在模拟的魔方上跑一遍:真的把目标那一对拼好、又没弄坏十字和已经拼好的槽,才敢显示出来。这一步不是多余的——补充表里大约三分之一的公式会把拼好的槽弄坏。

有个不用连魔方就能跑的自检脚本,查语法、查 18 个方向映射能不能来回换算、查公式表条数、查公式里有没有智能魔方报不出来的动作,跑一遍是通过的。7 月 4 日在真魔方上录过一次完整还原:155 秒、54 步,停顿占 24%。但 8 月这一轮改动很大,蓝牙、陀螺仪、颜色同步这几条只能连上实物才能确认。我自己在笔记里也写着:还得上真机确认。

它现在不只是自用了:我打算把它做成一门课卖。