作为一个真正的程序员,首先应该尊重编程,热爱你所写下的程序,他是你的伙伴,而不是工具
暑假在家敲代码,却被妈妈说成是在打游戏怎么办?
小码哥:谢邀!说出来你可能不信,我妈天天强迫我打游戏。
逆向思维很重要。如果妈妈觉得你的学习是“玩电脑”,那就基本等同于“一天到晚就知道玩”;但如果你在打游戏时学习,那就完全不一样了,妈妈只会觉得“这孩子太好学了吧!”,就可以坐等果盘、零食投喂了。
什么?你说“为什么我玩游戏被训得更狠了?”
那是因为你找错游戏了,快来看看这些“程序员心选、编程小白挚爱、计算机学生向往”的电子游戏吧!
打游戏、练技术,就要“硬核”学编程!
小码哥可以肯定,这些会是你玩过最有意思的益智类游戏了。
1.《程序员升职记》
这是一款非常经典、在程序员群体中小有名气的编程游戏,原名叫《人力资源机器》,很适合初学者用来趣味入门,也适合想要重温计算机基础的同学们。
听名字(尤其是原名)就知道啦,它能让你在学习知识的同时,让你从悠闲的暑假“秒穿”到职场,体验打工人的充(ku)实(bi)生活。
进入游戏后的初始状态,你会站在一座大厦下,通过不断的完成老板派发的任务层层通关,最终站上事业巅峰。
虽然你要做的只是拖动图标,这可不是普通的搬砖任务哦~通过输入输出,实现条件判断、循环、赋值等一系列编程过程,引导你写出简单的机器人操控算法。
打到通关,你不只是完玩了一款游戏,在不知不觉中其实已经写了一次程序。你学的编程知识包括但不限于了存储器、加法、减法、goto语句、jump函数、自加、自减、指针……
对于进阶级选手来说,这个游戏也是有可玩性的。里面充满了代码优化的趣味挑战,你要不断尝试,才能完成“强迫症”提出的所有条件,拿到满分。
而对于从业已久程序员来说,一定会在游戏中收获满满“真实感”。从开场白、和老板的对话,到休息楼层、结尾剧情等,到处都充满了程序员式的自嘲。
除此之外,看着这部游戏,就像是在看二十年前的程序员前辈,满是“情怀”。在这里,你可以体会到早期计算机存储单元之少和早期处理器运行频率之低,完成一个简单的任务,不得不做出大量繁琐的指令。
那时候的计算机科学家不断地减少指令,优化复杂度,为了更便利的编程和使拥完成了巨量的工作。
一位玩家在通关之后恳切地说:“感谢if函数,感谢for循环,感谢while函数。游戏里的jump函数是真的难用,把思维逆向、逆向再逆向,让我明白高级汇编语言是多么亲近人类。”
游戏通关后,“老板”会跟你说“你可以去做‘人’该做的事了。”
编程发展70年,我们每个人都是受益者。
2. Halite
图源:https://halite.io/
Halite是一项AI的资源管理类游戏。玩家可以自己选择编程语言来编写算法,让自己的机器人在多人竞争中取得胜利。
你需要建造一支小型舰队,用算法控制他们收集屏幕上的岩盐,你的算法决定了舰队以怎样的路径收集岩盐。算光不只包括舰队的运动,何时建造新船、创建船坞,还包括开采再生岩盐。比赛结束时,获得岩盐最多的队伍获胜,
从2016年至今,全球共有超过15000人参与了这项挑战。每一年度的比赛,赛制和赛场也都有所升级,第四季中,游戏的场景换到了更小的棋盘场地上,迎来了更激烈的竞争。新的设定还包括再生岩盐、造船厂、有限的船舶移动成本,和玩家间相互窃取岩盐的规则。
在kaggle上,Halite有专门的讨论区。你可以看到往年比赛的排行榜,玩家们的实现策略和代码,还有往届比赛的直播回放。(https://www.kaggle.com/c/halite/code)
3. SQL谋*之谜
如果你喜欢玩侦探类游戏的话,SQL谋*之谜就很适合你。
SQL城发生了一起谋*案,而侦探需要你的帮助。侦探把犯罪现场的报告交给你,但你却不小心丢了它。怎么办?你依稀记得,这个案件发生在2018年1月15日的某个时刻,凶手的所有信息都在警察局的数据库里,快想办法在数据库中找到报告,帮侦探破案!
怎么找?这就需要一些SQL知识了。需要注意的是,你得具备一些SQL基础概念和命令的相关知识,才能顺滑“查案”,对于新手不是那么友好。
只有掌握SQL的侦探才能找到凶手,快来试试看吧~
4.Baba is you
这个游戏是一款评分很高的益智游戏,被称为是“程序员的必玩游戏”,看似只是普通的推箱子游戏,但很考验智商和非常规思维。它的200多个关卡有很多都或者了独立奖项,一些游戏评论家称赞它是近年来最好的益智游戏、“艺术品版的游戏作品”。
这款游戏中包含了赋值语句以及背后的千变万化。玩家控制一个名为Baba的角色,闯过各种障碍物。除了障碍物,图中还有许多代表规则的“箱子”,通过推动“箱子”来改变规则,从而通过。
其实很简单:X is you;Y is win。当X和Y重叠时,游戏胜利。但看似简单的规则简直能把人“脑子烧没了”。
一些玩家在尝试之后直呼“只想给作者磕头”,敲下了“SB is me”的评论。
程序员的“游戏情怀”
如果你正巧是个酷爱游戏的计科人,别怀疑自己,你对游戏的热爱不是没有道理的。程序员和电子游戏之间似乎一直有着剪不断的联系。
虽然用户看不到,但让游戏中所有元素协同工作的,是代码。你的“老公”李泽言是代码,你的“英雄”妲己、百里守约是代码,你的SSR、装备外观都是代码。代码搭建了整个游戏世界,建立里游戏的逻辑,而编写、操纵代码的人,是程序员。
掌握编程技术,自己写一个小游戏对你来说并不算难。
很多玩家会认为,游戏好不好玩、是否有趣,是由设计游戏剧情的策划决定的。但其实,游戏开发编程技术,也起到了相当大的助力。
就比如游戏史的“双料天才”约翰·卡马克,它发明的FPS设计理念和引起架构,《Doom》系列是FPS领域的奠基之作,为整个游戏市场开辟出一条全新道路,几乎所有的第一人称射击游戏都收到了它的影响。
如果没有游戏开发程序员贡献智慧,00后现在可能还是只能玩《超级玛丽》、《荒野大镖客》、《魂斗罗》,不知吃鸡、王者荣耀为何物。
程序员的浪漫:游戏里的小彩蛋
屈居幕后的程序员,有时也会用自己的方式“出现”在游戏里。
在电影《头号玩家》中,传奇游戏的“绿洲”的创作者就是一个天才程序员,对游戏有一种近乎着魔的爱。他在“绿洲”里埋了不少彩蛋,等待玩家们发现;他还把自己也做进了游戏,成为全知全能的“造物者”。
从雅达利兴盛的时代开始,程序员们就开始在游戏里“夹带私货”了,史上的第一个彩蛋来自程序员对老板的“怨念”。
雅达利的游戏盛极一时,但对游戏程序员的压榨却也“臭名昭著”。当时的游戏开发遵循“程序员就是设计师”的模式,每款游戏的设计开发基本上从头到尾一个人负责。
但新老板卡萨尔上任之后,全公司连制作人带程序员,全部成为“公司资产”,所有卡带上只能打“雅达利”的标,不能带程序员的名字。
游戏开发程序员们大多敢怒不敢言,沃伦也是其中一位。当他在制作第二款游戏《冒险》时,把自己的名字“沃伦·宾耐特制作”藏在了一个“隐藏关卡”里,完成开发后立马辞职了。
这款游戏一共卖出了100多万套,但直到沃伦离职一年之后,才有一个10岁的孩子发现了这个“彩蛋”,雅达利对此也只能自认吃亏了。
沃伦通过代码完成了自己的小小“复仇”,在此之后,在游戏中藏彩蛋,也成为了程序员的“专属浪漫”。
转眼暑假已经余额不足,与其带着焦虑每天浑浑噩噩,不如振奋精神,抓紧时间好好打游戏。
你玩过哪些有趣的编程游戏嘛?有哪些游戏彩蛋让你印象深刻嘛?评论区里聊聊吧~
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved