藏在机房大屁股显示器里的青春回忆
我对pascal游戏的第一印象,永远停留在2010年学校机房的那台CRT大屁股显示器上,那时候我读初二,报名参加了学校的信息学奥赛兴趣班,每周六下午要泡在机房四个小时,那时候智能手机还没普及,学校不让带随身听,我们写完老师布置的编程练习题,剩下的时间全靠pascal游戏打发时间。整个兴趣班最火的大神是隔壁班的阿凯,他那时候就能自己写完整的pascal小游戏,我记得他花了一周,写出了一个字符版的《打飞机》:用大写的A当自己的飞机,用X当敌机,空格发射子弹,整个界面全是ASCII字符,连图形都不是,但是我们整个班二十多个人,下课了全挤在他的显示器旁边喊“往左躲!快开枪!”,夏天机房的空调坏了一半,我们挤得满头大汗,谁破了之前的最高分,周围全是欢呼,那种热闹劲儿,我后来玩再多千人同屏的网游都没再感受到过。

那时候我自己有一个256M的U盘,整个U盘里没别的东西,全是我们收集来的pascal游戏源码:一百多行的贪吃蛇,两百多行的推箱子,三百多行的俄罗斯方块,全是阿凯和上一届兴趣班的学长留下的,我那时候刚学会pascal语法,最开心的事就是改源码:把贪吃蛇的蛇身从#号改成@,把食物从*改成¥,把推箱子的墙从■改成#,改完之后运行出来,就像自己做了一个新游戏,到处拿去给同学炫耀,那种成就感,比我后来工作了上线一个百万用户的功能还要强烈。
后来高中毕业,学校拆了老机房,那些大屁股显示器全当废品卖了,我那个256M的U盘早就用不了了,但我一直把它放在我抽屉的旧盒子里,去年同学聚会,阿凯现在已经是互联网公司的产品经理,每天对着需求文档改改改,酒过三巡他掏出手机,给我们看他存在云盘里的当年那个打飞机的源码,他说:“我现在做过的产品用户快过亿了,但我最骄傲的还是这个一百五十多行的pascal程序,那时候写代码纯粹就是为了好玩,哪像现在,写个接口都要考虑KPI。”那天在座的几个当年兴趣班的人,都沉默了,大家都想起了那个挤在机房里玩pascal游戏的夏天。
2024年了,居然还有人在做pascal游戏
我本来以为pascal游戏早就随着Turbo Pascal一起进历史垃圾堆了,直到今年年初我刷GitHub,意外刷到了一个热榜项目:《Free Pascal Games Collection》,这个项目是一个42岁的俄罗斯程序员维护的,他整理了从1980年到2024年,全世界pascal爱好者写的开源小游戏,一共1200多个,从最简单的贪吃蛇到完整的解谜RPG,什么都有,截止到我写这篇文章的时候,这个项目的星标已经超过3600个,每周还有人往里面提交自己新写的pascal游戏源码。无独有偶,今年3月份B站上一个做编程考古的up主“老阿泽编程”发了一条视频:《用1985年的Turbo Pascal,写一个火遍全网的羊了个羊》,视频里他用纯pascal写了一个字符版的羊了个羊,逻辑和原版一模一样,还有通关提示,整个源码才320行,打开就能运行,不需要任何依赖,不需要装引擎,整个安装包加起来不到100k,这条视频发出去不到一周,播放量就破了120万,评论区十万多条留言,一半都是当年学pascal入门的老程序员在怀旧:“我99年用Turbo Pascal拿了省一等奖保送清华,现在孩子都上高中了,看到这个眼泪一下子就下来了”“我旧硬盘里还存着我当年写的pascal俄罗斯方块,回去找出来跑跑”,还有不少年轻的新手程序员说,第一次觉得写游戏原来这么简单,原来编程这么好玩。

更让我意外的是,今年2月份,还有一款完全用Free Pascal开发的独立解谜游戏《Pascal's Puzzle》正式上架了Steam,售价9.9美元,开发者是瑞典的一个独立开发者Jonas Mayer,他说自己就是pascal的死忠粉,做这个游戏就是为了证明,老语言照样能做出好玩的游戏,截止到5月份,这款游戏的销量已经破了1.2万份,好评率超过90%,大部分好评都来自老程序员:“十年没碰pascal了,为了这个游戏重新装了Free Pascal,跑起来的那一刻,感觉回到了大学机房”“没有广告没有内购,纯粹的解谜,这才是游戏该有的样子”。
说白了,pascal早就被工业界淘汰了,现在不管是开发网站还是做APP,没人会用pascal,信息学奥赛也早就把pascal换成C++了,可就是这样一个淘汰了的语言,居然在2024年还有这么多人做游戏、玩游戏,这件事本身就很有意思。
淘汰的语言,为什么还有不淘汰的快乐
很多人看到这肯定会问:都什么年代了,放着好好的Unity、UE不用,放着Python、JavaScript不用,为什么非要用pascal做游戏?这不是吃饱了撑的吗?我琢磨了很久,我觉得这件事背后,其实藏着现在很多人缺失的东西,我总结下来大概有三点。第一当然是情怀,但是情怀不是简单的念旧,pascal是全世界几代程序员的启蒙语言,从七八十年代的大学计算机系,到九十年代、零零年的信息学奥赛,几乎所有最早接触编程的人,第一门语言都是pascal,对我们这些人来说,pascal不只是一门编程语言,它是我们的青春,是我们第一次感受到“我居然能用代码创造出一个东西”的快乐,这种刻在骨子里的记忆,不管过多少年都忘不了,就像那个GitHub项目的维护者说的,他现在是谷歌的后端工程师,每天下班了不想改BUG,不想跟产品经理开会,就写两个小时pascal游戏,写出来自己玩,比刷短视频舒服多了,这就是情怀的力量,它不是没用,它是你的精神出口。

第二是pascal做小游戏的门槛真的太低了,Turbo Pascal整个安装包才不到1M,你下下来打开就能写代码,不需要装十几G的开发环境,不需要配各种环境变量,不需要解决各种依赖冲突,你写一个贪吃蛇,一百多行代码就能跑,写一个推箱子,两百多行就够了,对新手太友好了,现在很多人学编程,上来就学框架,学大数据,学人工智能,学了三个月,连一个能自己玩的东西都做不出来,慢慢就放弃了,但是pascal不一样,你花一下午就能看懂一个小游戏的源码,改改字符改改关卡,就是你自己的游戏了,这种即时的成就感,是任何复杂的开发都给不了的。
第三,我觉得pascal游戏其实是一种对当下内卷的反抗,你看现在做游戏,不管是大厂还是独立开发者,都在卷:卷画质,卷3A,卷剧情,卷宣发,做出来的游戏还要卷流水,卷留存,卷日活,最后受苦的还是玩家,你玩个手游,永远有做不完的任务,永远有抽不完的卡,永远有活动逼着你上线,你玩一天游戏比上班还累,你本质上是被游戏玩,但是pascal游戏不一样,所有做pascal游戏的人,都不是为了赚钱,就是为了自己开心,分享出来就是给大家乐呵,没有KPI,没有营收压力,没有算法给你推广告,你想玩就玩,想停就停,不想玩了还能改源码,改成你自己想要的样子,你是游戏的主人,不是游戏的用户,这种完全掌控的感觉,在现在这个被算法推着走的时代,真的太珍贵了。
pascal游戏给当代人的惊喜礼物
我见过很多人说,玩pascal游戏就是浪费时间,pascal都淘汰了,研究这个有什么用?我特别不认可这种说法,我们现在的生活,太被“有用主义”绑架了,做什么都要问有没有用,能不能赚钱,能不能帮你升职加薪,能不能提升自己,但是很多真正的快乐,本来就是“没用”的,你去公园散步有用吗?你和老朋友坐下来聊天有用吗?你收藏旧邮票旧唱片有用吗?没用,但是没用的东西,才是生活里的光啊。pascal游戏对现在的我们来说,其实是一份被遗忘的礼物,对想要入门编程的年轻人来说,它帮你找回了编程最开始的快乐:编程不是找工作的工具,不是内卷的筹码,它就是你用代码创造快乐的过程,你不需要花几万块报培训班,不需要装十几个G的开发环境,只要你愿意,花一下午就能做出属于自己的小游戏,这种成就感,会让你一直喜欢上编程。
对每天被工作压得喘不过气的打工人来说,pascal游戏是一块属于你的精神自留地,你每天对着老板的需求,对着客户的要求,对着算法的推送,你很久没有做过一件完全只为了自己开心的事了,你不妨打开那个在线的Turbo Pascal模拟器,找一个一百多行的贪吃蛇源码,运行起来玩十分钟,你会发现,快乐原来这么简单,不需要3A的4K画质,不需要几千块抽卡,就一堆字符,就能让你找回那种纯粹的快乐。
更重要的是,pascal游戏保存了程序员最早的分享精神:最早的pascal游戏都是爱好者写了源码,互相拷,互相改,免费分享,没有版权,没有收费,你改得好就是你的,大家一起开心,这种精神,本来就是开源文化的核心,但是现在很多开源项目都变味了,要么是用来刷简历找工作,要么是为了商业化割韭菜,但是在pascal游戏这个小圈子里,这种纯粹的分享精神还保留着,你可以拿到任何一个游戏的源码,你可以随便改,随便分享,没有人管你要钱,没有人逼着你点赞关注,这种纯粹,真的太难得。
我前阵子没事干,也找了一个在线的Turbo Pascal模拟器,运行了那个经典的贪吃蛇,看着黑色背景上,@号堆出来的蛇一点点爬,我玩了二十多分钟,得了两千多分,那种开心,是我玩了三个小时王者荣耀都没有的,很多人说pascal已经死了,pascal游戏早就过时了,可是好玩的东西,永远不会死,它不需要赶潮流,不需要赚大钱,只要还有一个人觉得它好玩,它就一直活着,如果你哪天累了,不妨也去试试,玩玩那个几十年前的pascal小游戏,你会发现,原来快乐,真的可以这么简单。
