部署CodeCombat离线版,在充满冒险的奇幻世界中编写真实代码,开启你的编程之旅!

CodeCombat是什么?

CodeCombat是一个创新的编程学习平台,它通过角色扮演游戏的方式让用户学习真实的编程语言(如Python、JavaScript、C++等)。不同于传统的编程教程,CodeCombat将枯燥的语法练习转变为挑战性的游戏关卡,玩家需要通过编写真实的代码来控制角色击败敌人、解谜闯关。

平台核心特点

  • ​​游戏化学习体验​​
  • 在充满挑战的关卡中解决编程问题
  • 边玩游戏边编写真正的代码
  • 即时反馈机制,让你立刻看到代码效果
  • ​​支持多语言学习​​

// JavaScript示例:控制英雄移动到指定位置

hero.moveRight();
hero.moveDown();
hero.moveLeft(2);

Python示例:使用循环攻击敌人

while True:
   enemy = hero.findNearestEnemy()
   if enemy:
       hero.attack(enemy)
  • ​​渐进式学习路径​​
  • 从基础语法到高级算法
  • 涵盖变量、循环、函数、对象等核心概念
  • 项目式学习挑战

下面开始部署离线资源,一边玩游戏一边学编程

下载离线资源:CodeCombat离线包

链接:https://pan.quark.cn/s/0dff5fd6258a

环境:linux,docker、windows,Docker Desktop

codecombat.tar dump.tar.gz 文件上传到服务器
导入镜像:
docker load <codecombat.tar 
创建目录:
 mkdir /data/codecombat/{data,mongo} -pv
运行容器:映射两个端口9485跟3000,其中9485为websocket,3000为web端口
 docker run -id -v /data/codecombat/data:/home/coco/codecombat/data  -v /data/codecombat/mongo:/home/coco/codecombat/mongo -p 9485:9485 -p 13000:3000 operepo/ope-codecombat:latest
#这里容器行后会发现容器起不来,因为/home/coco/codecombat/data 缺少dump目录
cd  /data/codecombat/data
把原有的0大小的dump.tar.gz删除,并下载的dump.tar.gz文件放到data目录并解压
tar -zxvf dump.tar.gz
并重启容器:
docker restart 06edb670d460(实际ID)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

注册账号:

在这里插入图片描述

在这里插入图片描述
注册完后可以看到很多关卡需要解锁,需要更改所创建用户的权限为VIP
在这里插入图片描述
在这里插入图片描述

docker exec -it 06edb670d460(实际容器ID) bash 
mongo
use coco
#更改所创建的用户,此命令中用户为admin,即修改name后面的用户admin
db.users.update({'name':'admin'},{$set:{'earned.gems':9999999, permissions:["godmode","admin"]}},true,false);

刷新后其他关卡已解锁
在这里插入图片描述
在这里插入图片描述

结语:未来的编程学习模式

CodeCombat代表着编程教育的未来方向,它成功证明了学习可以是有趣且沉浸式的体验。无论你是初学者还是经验丰富的程序员,都可以在这个平台找到挑战和乐趣。在游戏中学习的代码可以直接应用于真实项目,实现了"玩中学"的教育理念。

​​开始你的编程冒险之旅吧!在充满魔法与挑战的世界中,每行代码都会带来真实的成就感,每次过关都意味着编程技能的真正提升。​

注意点:

html关卡需使用localhost访问,同时映射出外网会有首页循环跳转的问题无法访问,所以建议本机部署

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐