《点灯机器人》(Lightbot)原本是 2008 年由 CoolioNiato 制作的一款编程类 Flash 游戏,另一个名称叫《灯泡编码谜题》,它以通俗易懂的玩法,简单清新的画面以及生动形象的指令表达赢得了不少玩家的喜爱,它不仅具有很强的益智性,而且对于学习编程的初学者来说也有一定的启蒙作用。如今,这款经典游戏被 Danny Yaroslavski 搬到了 iOS 平台,后来也有了安卓版本,相比之下画面圆润了不少,挑战性却依旧不减,有趣而且耐玩。
这个难得一见的编程游戏,有多国语言,内置中文!为机器人的行进路线进行编程,指引它的前进,点亮所有灯泡!简单说,就是安排机器人的行进步骤,设定前进、转弯、跳跃、点亮这些动作。动作设定完成后,点开始机器人就会按照你设定的动作前进。很出色。到后期动作步骤越来越多,将会出现“动作序列”等操作。游戏要求玩家使用编程逻辑来解决难题!指导Lightbot点亮每个级别的所有蓝色图块,从而获得对基本编码概念的实际理解。学习如何排序指令,编写程序,并利用循环在这个自我指导的活动。适合所有年龄和所有技能水平。
一、Lightbot在线电脑版本 https://lightbot.com/flash.html
已被收入全球最大的公益编程教育平台“编程一小时”官方网站 https://code.org/
Lightbot在线中文版几个特色
1.Lightbot是一种编程的益智游戏;它使用的是牢牢扎根于编程概念的游戏机制。
2.这个版本Lightbot已被翻译成28种不同的语言!只要按下对应于游戏中的语言国旗图标!
3.Lightbot让玩家获得像指令序列,程序和循环,基本概念的实际理解只是通过引导机器人点亮瓷砖和解决水平。
4.Lightbot具有多个保存位和多个玩家分开的进度跟踪功能。多个玩家可以在自己的存储空间中按自己的速度前进,也可以在完成的关卡数量,收集的星星数量以及用于完成游戏的总体命令数量上进行竞争。
5.世界各地的教师都选择Lightbot首先介绍自己的学生用来入门编程。
6.Lightbot设有20个关。手机安卓版Lightbot设有40级关卡,可以得到更多的挑战!
首先设置成中文语言
《点灯机器人》的游戏过程类似于写程序的过程,你可以对机器人下达以下几个基础指令:
前进:机器人向前走一格,遇到障碍将被阻挡。
点灯:机器人执行一个点灯动作,脚下的蓝色地砖将被“点亮”成黄色,黄色地砖将被“点暗”成蓝色,灰色地砖无效果。还有一些小机关,也可以用点灯动作触发。
左转:机器人面朝左转。
右转:机器人面朝右转。
跳跃:机器人向上可跳跃一格台阶,向下跳跃台阶数不限,平地跳跃无效果。
第一部分有8关,为基本的顺序结构
第二部分有6关,引入了程序(自定义函数),简化了复杂结构
第三部分也有6关,引入了循环概念,可以解决更多复杂结构的问题
一般的编程语言都有3种控制结构:顺序、选择和循环,在Lightbot中除了这几种控制结构外,玩家还可以在某些关卡中将一些指令涂成特殊颜色,机器人站在相应颜色的地砖上会执行被涂色的指令,相当于编程中的“if…then…”判断。
玩家可以下达的指令是有限的,那如何在有限的步数内控制机器人完成目标呢?这就要用到函数的功能了。有了函数,就可以把一组指令写成一个函数,然后多次重复调用它,这样就可以只占一个槽位就能完成一大堆操作了。而且函数之间也可以互相调用,甚至函数还能调用自身形成递归,让循环一直持续下去。从易到难,循序渐进。
在玩游戏的过程中,不知不觉就被植入“编程思维”了!这就是这款游戏的精髓。也是我力推的缘由啊!
什么是编程思维呢?简而言之,就是用计算机的逻辑来思考问题,然后设计出计算机能够理解的解决问题的方法。你要是和机器人说“点亮所有蓝色砖块”的人类语言,计算机可不会鸟你!必须通过逻辑来下命令:前进、左转、前进、跳跃、点灯、重复上一循环……
一道比较复杂的关卡,你需要编写两段程序并灵活运用循环命令,而且其中还包含了条件与中断,比如站在彩色砖块上点灯把机器人染色,才能执行相应色彩的指令。
要是能把这个游戏玩通关了,那编程的基本概念都在了!游戏通关以后可以申请电子证书,看起来花样繁复,很值得一显摆的样子。可以指定把你的名字印在上面,不过似乎不支持汉字。
二、Lightbot手机安卓版本(识别二维码下载安装)
游戏并没有什么剧情铺垫,在这里玩家需要挑战 40 道关卡。在开始游戏之后会看到非常详尽的玩法提示,宏观来看并不难,只要让机器人把所有的蓝色地板给点亮即可。有趣的是,要让机器人行走,就要用类似程序语言的指令来完成,所以没有程序员那样很好的空间逻辑思维玩起来恐怕会力有不逮。
和 Flash 版一样,这里也采用了灰色背景,不过色调却浅了不少,整体既视感更舒适富有亲和力。游戏的 UI 排布也是大方合理,设置在画面右边的是指令框(MAIN),通过点击或者拖拽屏幕下方的指令符号将其放置在框内,如果发现有错误,可以采用同样的操作方法进行调整,而双击符号则为删除。总体上和 Flash 版差不多,只是某些地方 Danny Yaroslavski 在原有的基础上做了一些人性化的调整,玩起来要比 PC 端顺手不少。
关于指令符号,最基本的有六种,直走、转弯、跳跃、亮灯、P1(函数1)和 P2(函数2)、但随着游戏的深入,需要点亮的地板会逐渐增加,因此在空间有限的指令方框内安排符号就必须避免重复动作的出现,以最少的步数来完成关卡。但需要注意的是,MAIN 方框最多只能放置 12 个指令,而后期关卡盘面较大,无法将所有指令通通放在 MAIN 中,此时可以将重复出现的连续指令放到 P1 或者 P2 中构成指令集,并将它们放置在 MAIN 框中进行调用,可以大幅缩减指令占用空间。
此外,这 40 道关卡一共被分为了 5 大章节,而每一章节都会在基本玩法上加入一些新元素,例如升降台、涂料刷子等等,不仅需要考虑指令数量,而且在起步或某些相同的循环指令上更是要求深思熟虑,因此 P1、P2 的合理利用是过关的保证,同时也是游戏的精髓所在。
游戏同样也引入了奖励机制,在某些关卡中,如果能在规定的步数内完成任务,玩家会得到一颗星星作为奖励,但由于本作并没有加入道具要素,因此在指令的设定上要比普通关卡更为缜密。
总的来说,虽然这是一款 Flash 移植游戏,不过在当下这个游戏同质化、山寨化日益严重时代,指令游戏确实显得别具一格,而 Danny Yaroslavski 在基本玩法的基础上衍生出了更多的趣味元素和挑战机制,因此可玩性有了不小的提高,感兴趣的玩家不妨来试试。
三、Lightbot2.0 在线电脑版本 http://armorgames.com/play/6061/light-bot-20
最新版本,似乎难度更高一些
感兴趣的,可以试下。
编程或编码只是人们使用计算机理解的指令告诉计算机该怎么做的方式。
无论指示是图标还是文字,您实际上都是在玩Lightbot时进行编程!
如果愿意,您现在可以将在Lightbot中创建的任何图标程序翻译成该文字语言。
祝您今后的编码工作顺利!
现在,您可以继续学习另一种编程语言,该语言可以告诉计算机执行其他更复杂,更酷的事情。您可以应用有关什么是编程以及命令,过程和循环之类的东西如何工作的知识。
Bonus
Lightbot还教授一些编程语言常用的一些特定编码结构。这些术语的技术术语是:
顺序控制流:命令依次执行。
过程:利用可重用模式的代码块。
循环:专门用于重复或“循环”模式的代码块。
调试:运行和重新运行程序,测试解决方案,修复错误。