平时除了敲敲代码,就喜欢琢磨点新鲜玩意。你知道,工作久了总想找点乐子,又不能完全脱离技术这块。前阵子我家里有个亲戚住院,住了挺长一段时间,我没事儿就去医院陪着。这一陪,就看出来医护人员有多辛苦。
每天忙得跟陀螺似的,各种操作,各种病人情况,还得耐心解释,情绪管理。我当时就想,有没有啥办法能让更多人了解医护工作的日常,或者让这些辛苦的护士们能在放松的时候,也能玩点跟自己专业有点关系,又特别解压的小游戏?
这念头一冒出来,就跟扎了根似的,在我脑子里转转。我寻思着,光坐在那想没用,得动手干!于是我就开始琢磨,这个“护理小游戏”到底要做成啥样?
我一开头,先是拉了个小本本,开始瞎涂乱画。想过那种很复杂的医院模拟器,但是想想自己的时间,还有一个人单打独斗,那工程量也太大了。不行,得从小的、能落地的开始。我把常见的一些护理操作列出来,比如测体温、量血压、发药、换药,还有安抚病人情绪。我把这些抽象成一个个游戏里的“任务”。
任务有了,那游戏怎么玩?我脑子里蹦出个点子:时间管理加一点小策略。就是在一个规定时间内,玩家要扮演护士,给不同房间的病人完成各种护理任务。每个任务都有不同的耗时,还有优先级。比如,有个病人突然“呼叫”,你就得赶紧过去处理。还有,发药不能发错,不然扣分,甚至“游戏失败”。
想法大概有了,接下来就是撸起袖子干活了。我平时用JavaScript比较多,做点前端小工具很顺手,所以就决定用这个来搭架子。先是画界面,方方正正的几个病房,每个病房一个病人头像。屏幕上方放个计时器,左边是任务列表。这个阶段,我就是凭着一股蛮劲,把能想到的界面元素都堆了上去。
画完界面,就开始写逻辑。这可就头疼了。我写得很粗糙。点击病人头像,弹出任务选择框,然后点击任务,进度条就开始走。但是很快就发现问题了。病人有不同的状态,任务有不同的结果,怎么判定成功失败?怎么计算得分?而且如果同时好几个病人都有任务,我怎么调度?这可不是简单的“点点点”了。
那段时间,我几乎天天晚上都熬到挺晚。遇到问题就上网查资料,看人家怎么设计游戏逻辑。我甚至跑去跟医院的护士朋友们聊,问她们日常工作里最头疼的是什么,最有成就感的是什么。她们给我讲了很多细节,比如“给老人测血压要慢一点”、“小孩子打针前要安抚好情绪”之类的,这些都成了我游戏里“小细节”的灵感。
我一点点地把这些细节糅合进去。比如,给不同类型的病人(老人、小孩、成年人)设置不同的安抚难度,如果安抚不任务完成度就低。发药的时候,如果药和病人对不上,就会有“用药错误”的提示,直接扣大分。我还加了个“心情值”,病人心情不任务完成效果也差。
为了让游戏更生动,我又折腾起了美术资源。我是个代码仔,画画那真是“灵魂画手”。病人头像就是几个简单的几何图形。后来我专门去一些免费素材网站找卡通风格的护士和病人图片,再用最简单的PS抠图、改大小,勉强能看。音效也去找了些免费的,病人呼叫声、任务完成的“叮”一声,这些都让游戏多了点烟火气。
等我把一个大概的雏形做出来,我第一时间就拿给我的护士朋友们试玩。她们一开始还笑我“闲得慌”,但玩了几局之后,眼睛都亮了。她们说:“这个还真有点意思!那个抢救的提示音,一听就紧张起来了!”、“发药的时候,我得仔细看名字,跟平时真有点像!”
有了她们的反馈,我更来劲了。我根据她们的建议,又调整了好几轮。比如说,增加了“交接班”的环节,每天结束时会有一个简单的看看你今天完成了多少任务,有多少失误。还增加了几种不同难度的模式,从实习护士到资深护士,让大家都能找到适合自己的挑战。
我把这个小游戏起名叫“白衣天使的日常”。从最初的一个模糊想法,到小本本上的涂鸦,再到一行行代码的敲打,再到找素材、改逻辑、请人试玩、反复修改,整个过程虽然一个人忙活,但是真的乐在其中。看到朋友们玩得起劲,我也觉得特别有成就感。
后来我把这个小游戏的最终版本,简单打包了一下,放到了一个小论坛上分享。我没指望它能多火,就是想跟大家分享一下我这段时间的“折腾成果”。我觉得,只要自己动手做出来点什么,并且能让别人也觉得有点意思,那这事儿就算没白干。
