先交代一下背景:我初一,之前在另一个平台学过一阵子Python,Scratch也玩过。算是有点基础,但也就那样吧,会写几个if和for,离真正做出什么东西来还差得远。

我一直有个想法——我想自己做一款游戏。

不是那种拖拖拽拽的Scratch小游戏,是那种有剧情、有技能、能打怪的正经游戏。但靠我现在的水平,连门都还没摸到。

怎么发现的 CodeCombat

具体记不太清了,好像是先在视频号还是抖音上刷到了一个视频,然后班里也有同学提过这个名字。我一搜,发现这东西还挺对我胃口的——写代码操控英雄,打怪过关,代码写对了角色就释放技能,写错了就被打。

我跟我妈说我要试试,她看了一下觉得还行,"反正学编程也练英语了",就同意了。

对,这个要说一下。CodeCombat里面代码指令都是英文的,hero.attackhero.moveRight这些。玩了一段时间之后我发现自己看英文代码没那么费劲了,有些单词不用查就知道什么意思。这个算是意外收获吧,我妈对这一点挺满意的。

地牢那段是真的爽

第一张地图叫地牢。

怎么说呢,就是那种你明知道自己在学东西,但完全不觉得是在上课的感觉。每一关都有具体的任务,杀掉前面的食人魔、收集宝石、保护农民之类的。你要用代码来指挥英雄完成这些事情。

比如前面有两个敌人,你得写一段逻辑让英雄判断先打哪个。比如宝石散落在不同位置,你要用循环让英雄一个一个捡完。每写对一段代码点了运行,看着英雄按你的指令一步步执行,那个感觉——很难形容,就是特别有掌控感。

而且它的难度曲线设计得挺聪明的。我虽然有点基础,但前面几关也不觉得无聊,因为它加了很多新的装备和技能,每过几关就给你解锁新东西。你一直有"再打一关看看下面是什么"的冲动。

我有好几次跟我妈说"再玩五分钟",然后一个小时就过去了。

基础语法确实打扎实了

这是我觉得CodeCombat做得最好的一点。

以前在别的平台学的时候,if-else、while这些我是"知道"的,但说实话没有真正理解透。就是那种考试的时候能选对答案,但让我自己从零写一段逻辑就卡住了。

在CodeCombat里面,这些语法你要用几十遍上百遍。而且每次用的场景都不一样——有时候是判断敌人距离,有时候是判断自己血量,有时候是选择走哪条路。用多了之后你就不再是"记住"这个语法了,而是真正"会用"了。

这个差别很大。

后来的一些变化

打完地牢进了森林之后,节奏有点变化。森林地图前面有一段跑图比较多,剧情推进慢了一些,不像地牢那样每一关都有很强的任务感。老实说我有点不耐烦,觉得不如地牢好玩。

再加上后来期末考试来了,我妈让我先把心思放到复习上。编程就暂时停了一段时间。

但回过头来看,地牢那段时间学到的东西是实实在在的。Python的基础语法我现在用起来比以前顺多了,看英文代码也不慌了。这些不会因为我暂停了就消失。

(编者注:关于森林地图前段节奏的反馈我们收到不少,团队正在对该区域的关卡密度和任务节奏进行优化。也很高兴看到这位同学在暂停之后依然保留了学习成果——随时欢迎回来继续闯关。)

说给跟我差不多的人听

如果你也是初中生,也对编程有兴趣,也觉得光看网课太无聊——可以去试试地牢那几关,免费的就够你感受一下了。

我跟你说,第一次用代码指挥英雄打败一群食人魔的时候,那个爽感是看任何教程都给不了你的。

对了,提醒一句:跟你妈说的时候重点说"学编程还能练英语",亲测好用。