时间:2025-08-14 09:01
人气:
作者:admin
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式
查看原图 | 大图模式













《编程乐趣:软件工程模拟器》游戏中玩家需要运用真实的Python代码来控制机器、机器人和无人机等设备,完成各种任务,如自动化物流配送、编写导航代码让机器人完成清洁工作、破解密码等。玩家可以选择将自己的解决方案和代码提交到排行榜,与全世界分享。

多样化的任务
游戏中包含多种任务,例如:自动化物流配送,快速将物品从A地运输到B地。编写导航代码,让真空吸尘机器人完成公寓清洁工作。为智能家居面板设计图形用户界面。用距离扫描仪、摄像头、激光雷达和防撞传感器,对自动驾驶车辆进行编程。
关卡编辑器
玩家可以使用随附的关卡编辑器创建自己的益智游戏,发挥创造力。还为初学者提供分步指南,帮助他们开启编程之旅。

性能指标
玩家可以匿名比较自己的解决方案与其他人的解决方案在速度、内存使用和代码长度方面的差异。
即时反馈
玩家在编写代码时会获得即时、增量的反馈,帮助找到有效解决方案。还不会因为某个关卡而卡住,总有其他开放的挑战可供选择。
真实编程体验
游戏不使用伪代码或虚构语言,而是提供功能齐全的Python代码和各种热门基础包,如numpy、pandas、scipy、pillow、sklearn等。
内置IDE
游戏内置基于CodeMirror的Python IDE,提供语法高亮显示、自动完成、文档字符串工具提示、调试、自动缩进、代码折叠等功能。

现实挑战
游戏中的挑战涵盖了从机器人技术到抽象算法和创意编码等多个计算机科学领域。每个关卡都有多种有效解决方案,鼓励玩家探索不同的编程思路。
性能比较
玩家可以匿名比较自己的解决方案与其他人的解决方案在速度、内存使用和代码长度方面的差异。每周处理不同的场景,并与自己的最优解决方案进行比较。
补丁1.0.2
- 改进的凯撒维氏和颅骨级别的客观描述
- 修复了导致命令多次计数的级别三角剖分
- 固定的“未找到”“ fibonacci”中的“未找到”错误和“电子邮件验证”级别
- 改进的日志窗口:a)增加不透明度。 b)单击线将其复制到剪贴板。
- 次要错误修复
修补程序1.0.1
修补程序1.0.1解决了一些玩家遇到的“三排序器”级别的问题。
版本1.0.1
-ThreeSorter级别的修补程序,有时RFID标签未被扫描
-Goldsmiths级别的修补程序
-DataExchange rpc调用中的补丁
编程的乐趣1.0
在Early Access度过了激动人心的一年之后,我很高兴(也有点自豪)宣布JOY of PROGRAMMING 1.0版本的发布及其Early Access阶段的结束。这并不意味着1.0将是最终更新。相反:我计划在可预见的未来支持JOY OF PROGRAMMING,并在我对新挑战有想法时添加新的级别。当然,我也希望1.0版本能带来一些新玩家,我们的小社区会随着更多用户制作的关卡而发展(在你对游戏本身感到满意后,可以查看关卡编辑器)!
我认为深化和拓宽你的编程技能比以往任何时候都更重要,而基于游戏的学习正是实现这一目标的绝佳机会。
快乐编码!
从去年到今天的完整更新日志:
版本1.0.0
-添加了“tinygrad”(https://github.com/tinygrad/tinygrad)第三方深度学习模块
-增加虚拟RAM升级(64->128128->256256->1024)
-新增机器:VacuumRobot,自动清理所有带有“污垢”标签的物体。
-增加了两个新的机器学习级别:图像分类和硬币检测
-添加了两个新的智能家居级别:VacuumRobot0和VacuumRobot1
-改进了几台机器的文档
版本0.9.0
-添加了一个新级别:
-SQL数据库(机器学习类)
-1.0版本的准备工作
-删除了“Beta Map”功能。
-清理了一些过时的UI
-Linux/Proton支持:请使用Proton Experimental。所有级别(包括图像处理级别)现在在质子实验下都能正常工作(但在质子9.03下不能)。
-已知问题:
-本地化:虽然UI和教程完全本地化为不同的语言,但大多数其他级别不支持本地化。这些是使用不支持轻松本地化的内置级别编辑器创建的。不幸的是,这很难修改,在即将到来的1.0版本中也不会改变。
版本0.8.0
-新增关卡:
-起重机(物流)
-时钟同步(智能家居)
-跨栏(驾驶)
-改进的气动起重机装卸
-改进了数据交换处理
-Linux/Proton下的已知问题:Linux/Protan下的图像处理级别无法正常工作(“传感器不可用”错误消息和空白图像)
版本0.7.3
-修复了Proton下StopProcess中的nullptr异常(Windows不受影响)。通过在Proton 9下运行,JOY OF PROGRAMMING现在(实验性地)与Linux兼容。它也应该在Mac下使用Whisky运行。
-将python.exe替换为pythonw.exe。后台python进程现在不可见。
版本0.7.2
-修复了“Bugged Phone”级别的错误,其中数字9没有正确产生波形数据
-修复了另一个与c++相关的启动崩溃
-修复了“网络图1”级别的一个错误(为源节点和目标节点添加了缺失的指标)
-修复了最近更严格的沙盒在“最大图像”级别引入的一个错误
版本0.7.1
-如果安装了旧版本的visualc++,则可能会出现启动崩溃的修补程序(建议从以下位置安装最新版本https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170)
-修复了跨越不同脚本选项卡的“撤消/重做”问题。现在,当脚本选项卡更改时,撤消历史记录将重置。
版本0.7.0
-增加了4个新关卡(自游戏发布以来有几个测试版地图):
-火炮射击(军事)
-洪水填充(创意)
-股票操纵(黑客攻击)
-卡片计数(黑客攻击)
-修复了“金匠”关卡中的错误
-修复了“.astype”函数被错误标记为不安全的错误
版本0.6.6
-安全修复(感谢Snudget和Loglet)
-重新定位直方图后端
-每周地图现在被称为Beta地图
版本0.6.5
-新级别类别:机器学习,从两个新级别开始
-将解决方案视频添加到两个ML级别
-修复:在SmartCamera中添加了缺失的代码工具提示
-修复:“UnlockedEverything”成就现在有效
-修复:在闹钟中添加了缺失的工具提示
-关卡编辑器:添加了4个新的SpawnableVFX雨、变形、火花、喷水
版本0.6.2
-修复了金牌排行榜未正确授予以及排行榜成就的其他一些问题(不幸的是,排行榜成就不能追溯授予)
版本0.6.1
-在“算法”类别中添加了两个新的基于图形的级别
-在“拼图”类别中添加了两个新的“硬币计数器”图像处理级别
-为“最大”和“图像最大”添加了解决方案视频
-在控制台日志窗口中添加了“切换粘滞按钮”,以防止其崩溃
-添加了新实体:SurveillanceSatellite可以使用get_satellite_data()获得地图上每个对象的确切世界位置。
-在Vector3类中添加了静态distance_to_line方法
-固定式移动平台和气动起重机并不总是在直线上移动
-修复了“TinyHouse”可能消失的体素数据
-修复了“电子邮件验证”的琐碎解决方案
-修复了PinHacker文档字符串中的错误/拼写错误
版本0.6.0:
-新增4个“算法”级别:最大图像、交换排序、链表中间、多数投票
-新增1个“谜题”级别:电子邮件验证
-添加了3个新的概况介绍以查找
-将MyDocuments/JoyOfProgramming/CustomLevels/*添加到Steam云
-添加了启用/禁用边缘滚动的控件选项,并修复了边缘滚动错误
-在sleep()函数中添加了可选的ignore_time_dilation参数,使其行为(几乎)类似于常规的time.sleep()
-为所有传送带添加了editior_set_max_speed功能,使地图创建者能够允许传送带速度高达25。
-在MovablePlatform中添加了editor_set_movement_speed和editor_sed_rotation_speed,使地图创建者能够调整速度。
-修复了添加了另一行代码的额外好处(现在最多可以编写200行代码)
-修复了级别编辑器GUI中“打开级别”列表无法滚动的问题
-修复了FactBox有时在地下产卵的问题
-修复了排行榜不使用自定义配置文件名称的问题。
-修复了InputBox set_text不接受空字符串的问题
-TriggerZones现在在任何游戏中的相机捕捉中都是不可见的。
-API更改:VoxelBuilder.build_voxel现在默认为simulate_physics=False而不是True。
版本0.5.6:
-添加了两个新的解决方案视频(钢琴课和BuggedPhone)
-重新设计DeliveryContainer以“交付”其中的任何物品,并触发相关的ondelivered事件。应向后兼容旧的DeliveryContainer。
-从pyjop-api中删除了“Deliverable”类(无论如何都是无用的,SpawnableEntities。级别编辑器的Deliverable仍然像以前一样工作)
-对KillZone进行了重新设计,以触发一个适当的事件,而不仅仅是rfid标签。
-固定火炮(基本上所有东西都坏了,并改变了射击命令,以使用适当的初速(m/s))。下一周的挑战将是关于炮兵的。
-在Vector3类中添加了方便的random()函数
-HideHud命令(Ctrl-J)现在也在第一人称视图中隐藏十字准线(在FPS视图中再次按下)
-在SimEnvManager中添加了draw_throw_prediction函数,允许可视化基本投掷弧线
-在“选项”->“游戏”下的主菜单中添加了“修复NiceGUI”按钮。如果NiceGUI无法为您启动,请使用一次。
-改进了沙盒/audithooks处理
-python模块中添加的统计模块在Perks菜单中解锁
-为日志消息添加了冗长系统。使用SimEnvManager.first().set_verbosty_level更改详细程度(重要)
-在print()命令中添加了详细程度选项。默认为重要。
-默认情况下,MovablePlatform在与静态对象碰撞时停止移动
-默认情况下,RobotArm在与静态对象碰撞时停止移动。也可以在携带物体与另一个静态物体碰撞时停止(使用携带物体的边界框进行检测)。
-级别编辑器:在MovablePlatform和RobotArm中添加了选项set_blocks_collision,以允许像以前一样剪切
-关卡编辑器:删除了MovablePlatform开始播放时的自动附加。最好调用attach_entities on_reset。还将附着范围增加了5厘米
-级别编辑器:为级别编辑器GUI中的所有可生成项添加了大型工具提示预览
-级别编辑器:确保的可选目标始终具有值0
-级别编辑器:改进了默认启动代码
-级别编辑器:固定可移动平台不接受0个位置/旋转限制
-关卡编辑器:新增6个可生成网格(长椅、椅子、办公椅、桌子、圆桌、邮箱)
-级别编辑器:添加了冷却系统。现在,有几个实体为命令提供了可配置的冷却时间,例如射击命令的火炮和狙击步枪装弹时间。
-级别编辑器:为大多数VFX发射器添加了缩放支持
版本0.5.5:
-添加了对已发布研讨会级别的排行榜/直方图的支持。请更新/重新发布您的级别以使其生效。
-在日志窗口中添加了“清除日志”按钮,禁用了自动清除。
-在代码编辑器中添加了toggleComment命令。Ctrl-/在美国键盘布局上,Ctrl-#在欧盟布局上(在这两种情况下都是回车键的左键)
-添加了4个新的解决方案视频(小房子;拍摄范围0、1和2)
-为自己的参赛作品在排行榜上添加了亮点(基于Steam/个人资料名称)
-改进了RobotArm的拾取、释放和碰撞阻挡
-提高GPS赛车水平的目标进度
-大多数情况下禁用时间膨胀的自动设置
-修复了关卡编辑器中构造代码重载的错误
-修复了(现在是真实的)排行榜前10名、前3名、前2名、前1名的成就没有得到正确奖励(只会奖励最高的成就,而不是全部)
-修复了代码编辑器中导致其卡在旧版本脚本上的错误(发生在更改导入后)
-修复了关卡编辑器“清除按钮”将代码重置为默认玩家代码而不是默认关卡构造代码的问题。
开始游戏或者解压缩游戏时候注意关闭杀毒软件,防止误杀免DVD文件。
1. 用WINRAR软件解压缩游戏到硬盘上
2. 开始游戏
上一篇:痛苦与折磨 免安装绿色版
下一篇:末日来临 免安装绿色版