找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2515

积分

0

好友

357

主题
发表于 3 天前 | 查看: 10| 回复: 0

程序员的创意似乎永无止境,总能给看似平凡的事物带来意想不到的趣味。

当我们早已习惯电脑开机那几秒短暂的“黑屏-厂商Logo-转圈-进系统”流程时,一位开发者却重新定义了“开机”这件事。最近,GitHub 上一位名为 mycroftsnm(也称 Armas)的开发者,花了大约10个月时间,使用 C 语言编写了五款运行在 UEFI 启动阶段的小游戏。他将“启动电脑”变成了一场必须通关才能继续的挑战。

规则简单而硬核:赢了,系统正常启动;输了,电脑有时会“嘲讽”你一句,然后当场关机。

为了让技术爱好者们探究其背后的创意与技术逻辑,Armas 已将这套名为「UEFI 游戏合集」的项目在 GitHub 上开源(https://github.com/mycroftsnm/UEFIGame),迅速吸引了大量技术爱好者的围观与讨论。

UEFiGame GitHub 仓库页面截图,显示项目文件列表和 star 数

UEFI 是什么?游戏如何运行?

要理解这些游戏,得先从 UEFI 说起。很多人至今仍习惯将主板里的那套“预备程序”统称为 BIOS,但现在的新电脑基本都已采用 UEFI——它是 BIOS 的现代化继任者,相当于电脑开机后的“第一管家”,负责在操作系统启动前,检查硬件、分配资源,让电脑做好运行系统的准备。

与老旧的 BIOS 相比,UEFI 更模块化、更安全、也更灵活。它支持图形界面、鼠标操作,甚至能直接运行简单的程序。正是利用了这些特性,Armas 才得以在“操作系统尚未出现之前”,将屏幕、键盘和逻辑判断能力组合成一套完整的游戏体验。

五款“输了就关机”的 UEFI 小游戏

据外媒报道,Armas 历时近10个月,陆续制作了五款风格迥异的 UEFI 小游戏,涵盖了智力、反应、记忆和文化储备等多个维度。它们唯一的共同点是:你必须赢,否则无法开机。

1. User Evaluation for Ineptness(用户无能评估测试)

开机后,屏幕上会直接出现一道数学题,要求你计算两个 0 到 99 之间随机数的和,例如 “23 + 76 = ?”。

数学题游戏截图,显示问题“98+86=?”和答案“96”,下方有红色嘲讽文字

听起来毫无难度?没错,难点不在数学,而在“尊严”。你需要在键盘上输入答案。一旦输错,系统不会给你重来的机会,反而会弹出一句诸如“电子对你的表现感到失望”的嘲讽,然后直接关机。

2. Insult Sword Fighting(侮辱剑斗)

这款游戏带着浓浓的情怀滤镜,灵感直接来自经典冒险游戏《Monkey Island》,玩法是“回怼对决”。

侮辱剑斗游戏对话截图,显示白色和黄色的挑衅与回怼台词

开机时,系统会先向你抛出一句挑衅台词,你必须从提供的选项中选出正确的回怼语句,才能顺利启动电脑。例如,系统可能会说:“你的战斗方式就像个奶牛农民!”,随后屏幕上会随机给出几个回怼选项供你选择。如果选错,电脑就启动失败。

据 Armas 在 GitHub 上的介绍,这些台词并非固定不变——你可以直接编辑 insults.txt 文件,为自己的电脑增添更多“个性化”的开机对话。

GitHub代码库中insults.txt文件内容截图,显示多条游戏内使用的侮辱性语句

正如一位 Reddit 用户调侃的那样:“这可能是史上唯一一个,让我在开机前就被电脑骂一顿的系统。”

3. Fall To Boot(坠落开机)

这是五款游戏里最“刺激”的一款,也是 Reddit 上讨论度最高的。游戏启动后,屏幕会出现一个程序化生成的纵向隧道,你的操控对象是一个星形光标,需要在快速下坠的过程中,避开隧道墙壁,成功抵达底部才能开机。

“坠落开机”游戏画面,显示白色字符组成的隧道和中央的红色星形光标,底部有“BOOT!”字样

想象一下:早上急着赶报告,开机后却要操控光标在随机生成的隧道里“极限逃生”,稍微反应慢一点,光标撞上墙壁,屏幕直接变黑关机。这款游戏没有重来机会,一旦撞墙,就是“启动失败”,只能重新开机再试。这不是比拼电脑配置,而是纯粹考验用户的反应速度。

4. Age Verification(年龄验证)

这款游戏的灵感来源于《Leisure Suit Larry》,核心玩法是 80 年代流行文化问答。答对,证明你“已经成年”,允许启动系统;答错,系统会礼貌地判定你“年龄不足”,拒绝你使用这台电脑。

年龄验证问题截图,黑色背景上显示白色文字,询问一个角色因何出名并给出四个选项

5. UEFI Says

这是唯一一款拥有图形界面的游戏,玩法类似经典的“西蒙说”(Simon Says),考验的是短期记忆力。游戏启动后,屏幕上会出现几个不同颜色的方块,系统会按照随机顺序点亮它们,你需要记住这个顺序,然后按同样的顺序按下对应的方向键。

UEFI Says游戏主界面,显示红、黄、绿、蓝四个彩色方块

比如系统先亮红色方块,再亮蓝色、绿色,你就需要依次按下对应的按键。答对了就进入下一轮,顺序会越来越长;答错了,直接关机。

“这不是考验电脑的性能,而是考验用户的记忆力。”Armas 在项目介绍中写道。殊不知,很多网友体验后直言:“能不能开机全看运气。”

技术原理:为什么真能“说关机就关机”?

可能有人会好奇:这些游戏为什么能在操作系统启动前运行,还能直接关机?核心就在于 UEFI 的“特殊权限”。

简单来说,UEFI 是电脑开机后第一个运行的程序,相当于“硬件和操作系统之间的桥梁”。在操作系统(如 Windows、Linux)启动前,UEFI 会先检查硬件是否正常,然后把控制权交给操作系统。而 UEFI 应用(包括这些游戏),就是能在这个“交接过程”中运行的程序,它们拥有比操作系统更高的权限。

Armas 正是利用了 UEFI 的这些特性:

  1. 图形/文本界面支持:UEFI 支持图形和文本输出,因此游戏能呈现出题目、隧道、彩色方块等画面。
  2. 输入捕获:UEFI 能捕获键盘输入,因此玩家可以答题、操控光标。
  3. 电源管理权限:UEFI 能直接调用底层的电源管理功能,因此游戏在判定失败后能直接关机,无需经过操作系统。

不过这里有个关键问题:很多现代电脑都开启了“安全启动”(Secure Boot)功能。这个功能的作用是只允许运行经过官方数字签名的 UEFI 程序,以防止恶意软件在开机时入侵。而 Armas 的这些游戏是“个人开发的未签名程序”,所以要想运行,通常需要满足以下条件之一:关闭安全启动、手动注册自定义密钥,或在支持开发者模式的电脑上运行。

这也带来了一个安全上的权衡:关闭安全启动会降低电脑的安全性,可能让恶意软件有机可乘。因此,从实用角度看,这套 UEFI 游戏更像是一次对C语言底层编程和系统启动流程可能性的趣味展示,而非推荐所有人都安装的日常工具。它为我们提供了一个窥探系统启动早期阶段的独特视角,这种在开源实战中探索系统边界的精神值得欣赏。

网友争论:这是创意还是“瞎折腾”?

这个奇特的开机游戏项目在 GitHub 和 Reddit 上引发了热议,网友们分成了“支持派”和“吐槽派”,还有不少人开出了脑洞。

支持派认为这是“安全+趣味双赢”:

  • “比密码更灵活,比指纹更炫酷,别人就算拿到你的电脑,过不了游戏也用不了,相当于多了一层安全防护。”
  • “程序员的脑洞太绝了,把枯燥的开机变成了乐趣,这才是技术的魅力。”

Reddit网友评论截图,用户表示“那真酷”

吐槽派则觉得“纯属折腾”:

  • “上班紧急开会了,开机卡在数学题上,心态直接崩了。”
  • “领导问我为啥半天不开电脑,我说在闯关,领导以为我在摸鱼。”
  • “关闭安全启动太危险了,万一电脑被恶意软件入侵,得不偿失。”

更有意思的是网友们的“脑洞建议”:

  • “请分阶段发布,并强制更新——让大家都能获得最大的乐趣。”
  • “应该加个地狱难度,失败了格式化硬盘”
  • “极限模式:如果输了,你的内核将被删除。”
  • “开发多人模式,和同事比拼开机速度”

Reddit网友建议“极限模式:如果输了,你的内核将被删除”

也有网友提出了非常实际的担忧:“如果我通关不了游戏,我是不是就永远无法启动电脑了?”

对此,项目作者 Armas 在 Reddit 上给出了明确的回应:

“是的!(不过游戏其实没那么难)。但你总可以按 F11(或其他对应你主板的按键)直接启动你的引导程序(Grub、systemd-boot 或其他)。这个游戏本质上只是一个 EFI 可执行文件,它通过被设置在启动顺序的首位来运行,但你随时可以进入 UEFI/BIOS 设置撤销这个顺序。”

Reddit对话截图,作者解释可以按F11跳过游戏直接启动引导程序

从现实角度来看,这类 UEFI 游戏或许永远不会成为主流的启动验证方式,但它确实提醒了我们一个有趣的事实:在充满创意的程序员眼里,即便像“开机”这样习以为常的流程,也蕴藏着无数种玩法和探索空间。这种“不为了什么,只是觉得好玩”的极客精神,本身就已经足够有价值。这类趣闻和技术探索,也正是在开发者广场这类社区中引发共鸣和讨论的绝佳话题。

参考链接:


本文由技术社区云栈社区整理发布,聚焦分享有趣的开发者项目与技术见解。




上一篇:深度剖析HideHelper:2000年代的窗口隐身工具与现代替代方案
下一篇:飞牛EVO2 NAS开箱体验:双盘位小钢炮,值不值得入手?
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-24 01:41 , Processed in 0.404944 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表