Jiahonzheng's Blog

《程序员升级记》

字数统计: 1.4k阅读时长: 4 min
2019/09/02 Share

在 Steam 上玩耍时,我发现了一款很符合自我角色的游戏:《程序员升级记》 。正好本学期 3D游戏编程与设计 的第一项作业是介绍一款功能游戏,而这款游戏正符合功能游戏的定义:因为它集寓教于乐益智解谜于一体,游戏的主要逻辑就是围绕着 计算机组成原理 而进行的,普及 CPU工作原理 相关的知识以及 程序设计 思想。

PS:游戏中文名称虽然为“程序员升级记”,但由于其英文名称为 Human Resource Machine ,所以更应该翻译为 “人力资源机器” (滑稽)。

功能游戏

在 2018 年 2 月,腾讯称将对“功能游戏”进行全面布局。在腾讯的官方介绍中,对功能游戏给出了这样的定义:

所谓功能游戏,可以将其理解为严肃游戏或应用性游戏,与传统娱乐型游戏有所区分,是以解决现实社会和行业问题为主要目的的游戏品类,系统性探索与发掘游戏的正向社会价值。

功能游戏的历史源远流长,最早同时也是应用最广的领域,就是军事训练。之前在 Steam 很火的 《Arma 3》 ,就是一款军事训练软件的“民用版”。

剧情介绍

在 《程序员升级记》中,你将扮演一位头发稀疏的程序员。在大厦的每一层,Boss 都将派给你一份编程工作,你需要用聪明才智编写“汇编程序”完成工作。为了给老板更好的印象,你还需要想方设法地优化程序,降低运行时间。在游戏里,你需要不断过关斩将,最终完成“升职加薪,走上人生巅峰”的终极梦想。

设计元素

游戏元素是设计师经验总结,并不是铁定规律, 比较公认的游戏设计元素包括:PlayersGoalsRules and ActionsChallenges

Players

在本游戏中,玩家将扮演一个从基层做起的员工,工作地点是一栋很高的程序员大厦(楼层越高,其工作等级越高)。玩家需要从底层做起,不断通过编写汇编程序,完成每个阶段的任务,进入更高的楼层工作,最终走上职场巅峰。

PS:游戏所提供的玩家人物很符合程序员的特色——头发稀疏。

Goals

在游戏的每一关开始,Boss 会给玩家派发任务。在主屏幕的右侧玩家操作区,Boss 提供了具体的任务描述,玩家需要严格根据描述,编写汇编程序。只有程序完成了任务,才能进入下一关,进入更高的楼层

Rules and Actions

Resources:玩家所能控制的道具是界面右侧的程序指令输入栏指令选择区、界面正下方的功能区按钮以及界面正中间的人偶,玩家可以控制人偶搬运箱子至指定区域。

Boundary:游戏地图是正方形的办公室室内环境,几乎每一关地图结构都基本相同,偶尔能透过窗户看到外面的天气变化。

Actions:玩家使用拖拽加点击的方式进行游戏,界面右侧的上方是任务描述,而下方就是程序指令输入栏,在其相邻的左侧是指令选择区,有多种指令代码供选择。玩家要做的就是根据任务描述,拖拽有用的代码至指令输入栏。界面正下方是功能区,含 运行程序DEBUG快进 的按钮。

Outcomes:当玩家“编写”完指令后,需点击界面正下方的“运行”按钮,界面正中间的人偶就会按照指令运动,如果开启界面快进,视觉和音乐体验还是很不错的。简单来说,玩家的行为决定了正中间的人偶的运动

Rules:当玩家编写的程序,使得人偶能够成功完成任务,即可进入下一关,进入更高的楼层工作。若当中发生了错误,则需要用户使用 DEBUG 操作区,对程序进行调试。

Challenges

在成功过关时,游戏会给玩家提示当前程序的优化诊断效率诊断的相关信息。为了追求程序的极致性能表现,玩家可以想方设法优化现有的程序实现,这是一个很具有挑战性的工作。

教育意义

在游戏中,玩家所编写的程序其实与汇编程序极其相近,游戏涉及到了程序的三种基本逻辑控制结构:顺序结构、条件结构、循环结构。玩家在进行游戏时,可以充分学习计算机组成原理的相关知识,将 CPU 工作机制形象化:界面中心的地板是“寄存器”,界面右侧是“程序指令”,人偶是“CPU”。通过游戏,玩家可以了解并掌握基本的程序设计思想,以及程序优化的思想(调整汇编语句的顺序)。

总体来说,《程序员升级记》是一款出色的编程普及游戏。

参考资料

腾讯要做的“功能游戏”,到底是什么?

CATALOG
  1. 1. 功能游戏
  2. 2. 剧情介绍
  3. 3. 设计元素
    1. 3.1. Players
    2. 3.2. Goals
    3. 3.3. Rules and Actions
    4. 3.4. Challenges
  4. 4. 教育意义
  5. 5. 参考资料