也许谷歌Chrome浏览器的开发团队无论如何也想不到,
在遥远的东方国度,有一群十三四岁的懵懂少年,
与深藏在浏览器之中的,
小恐龙!
结下了不解之缘。
在北大附中海口学校,每一位同学都有一台自己的笔记本电脑,而电脑上的应用程序和可访问网址均采用“白名单”策略进行管理,也就是说,不在白名单列表上的程序和网页,都是无法安装和打开的。
于是,假如同学们在谷歌浏览器中输入了www.baidu.com,就会出现无法访问的页面,而这个页面中有一只深藏不漏的小恐龙,如果你对它进行↑↓的操作,它就会奔跑起来,通过不断躲避障碍得分。
看似“弱爆”的小游戏却像非智能手机中的贪吃蛇一样,成了同学们课下的一道“曙光”,虽然多玩几次之后也会觉得无聊,但大家一开始都愿意拿它炫耀得分,而我们的ICT老师也借题发挥,让同学们通过破译小恐龙代码,理解游戏背后的程序知识。
用代码重新定义游戏逻辑
电子游戏是具有逻辑的艺术品,既然人类能够通过代码定义游戏逻辑,自然也可以通过修改代码来改变它的逻辑。我们从小恐龙的源代码中可以发现,游戏通过gameOver实现对游戏结束的逻辑控制,通过setSpeed设置小恐龙的跑步速度,那么我们是否可以通过中断gameOver的逻辑实现游戏永不结束呢?是否可以通过更改setSpeed的逻辑实现对小恐龙的速度控制呢?还有什么手段可以帮助玩家在游戏中取得高分,甚至无限得分呢?
第一次目睹了整个破译过程,惊讶的目瞪口呆。
认真脸凝视大屏幕......
后排的同学情不自禁的站起身来,生怕错过丝毫细节。
让我们来运行一下使用了相关计算机代码后的“小恐龙跑酷”游戏。
从视频中可以发现,通过简单两行代码,小恐龙实现了无视仙人掌等障碍物碰撞,跑酷速度飙升极致,几乎瞬间实现了游戏的分数最高值999999。
真是有趣的破译过程呢~以后我还要破译更多的程序,想想就很有成就感呢~
更有的同学下课之后还一直围着老师咨询各种破译细节。
看来,有高手指引,改编游戏比玩游戏还要有趣,毕竟如果已经看完了大结局,谁还会有动力去追剧呢?
当然,如果你不止满足于改编,而是想完整实现自己的想法,也可以尝试下学段选择这门选修课——Scratch游戏开发~
ICT教师说
同学们可以通过两行代码轻易实现游戏的通关,但是想真正的理解两行代码并不容易,因为就单破译小恐龙的两行代码就需要用到数学函数+英语单词+物理量三个学科领域知识。同学们在学会了基本的破译游戏方法后,开始将自己对游戏的狂热喜爱转化为对编程和计算机课的学习兴趣。而若想更好地理解编程,同学们又需要具备扎实的数学素养和英语基础。所以当孩子从游戏玩家变成创造者时,游戏就不再只是一种娱乐方式,而是帮助学生理解知识的工具,帮助学生学会思考的工具。