时光飞逝,转眼间距离上一篇博客已经快三年时间。这三年里,人们逐渐从博客转移到了微博,看的人少了,写的人也少了。以前,写博客是一种潮流,现在,写博客已经是一种坚持了。连Google都放弃了RSS,我不知道那些曾经订阅过我博客的朋友,你们还在坚持用RSS看文章吗?我写的这篇文章,你们在用Google Reader的替代品看到我的文章吗?如果有看到,并且我的文章对你有帮助,请留言告诉我。这会是我更新博客很好的动力。
编程,游戏
也许是缘分,和游戏结下了不解之缘。从小,我就是个爱玩游戏的小孩。小学时因考三好学生,家人奖励了我一台小霸王游戏机,从此爱不释手。家人怕影响我学习,只有寒暑假才能拿出来玩,所以每次玩有格外珍惜。后来,电脑开始慢慢普及,网络开始盛行。人们开始成群的挤在网吧,玩大富翁4,红警,仙剑,FIFA99。我这时正读初中,参加了QB编程竞赛小组。
那时候的学习资源很有限,走遍整个小县城的书店也找不到几本关于编程的书。竞赛的结果并不理想,但是通过编程小组,让我在很早的时候就接触到了计算机,并且被编程所吸引。不知小叔从哪里找来的一台比386还旧的电脑,于是我就在这台电脑上折腾DOS、QB、WPS。当时编了一个小游戏,随机生成几个字母从左到右移动然后消失,然后需要玩家通过记忆输入刚才出现过的字母,玩的不亦乐乎。
高中时去租电脑光碟,偶然听老板说了一句:现在不用QB了,都流行用VB了。于是开始学VB。高二时还给英语老师做了一套英语听力教学系统,老师讲解一道题,然后出现四个选项,勾选后会出现对错的结果。当时的自豪感还杠杠的。
然而,高考的压力,我并未选择喜欢的计算机专业,而是保守的选择了招生最多的土木工程专业,中南大学的土木系在全国还能排在前几名,但是我不喜欢。于是我开始玩游戏,肆无忌惮的玩游戏,通宵达旦的玩剑一,每天晚上宋金战场抢夺BOSS人头总有我的身影,游戏里拉帮结派,抢地盘,打群架,做买卖。记得有一个帮会的人和我们打了一天架后,居然成了好朋友。至今还记得他们的帮会名字叫洪兴十三妹什么的。也有人被我们欺负后说要来长沙找我人肉PK,当时还真有那么一点害怕。
游戏中有太多有意思的回忆,在此就略过了。从那时起,我才真正意识到一个虚拟的网络世界真的会让人沉迷,忘记了吃饭睡觉,不去上课,考试挂科,对现实世界麻木不仁。当时我也很讨厌自己,为什么会这么没出息?我这学业还能不能完成,我是不是一直在辜负家人的期望。我想改变,但是发现很难。游戏里,我是快乐的,自豪的,精力无限充沛的,而现实中是麻木的,自责的,没精打采的。这种游戏的状态和感受,多年后也不曾再出现过。
游戏之余,同样有个东西吸引着我,那就是编程。并且很幸运加入了学校的学子天空网(中国大学生创业网)。在那里我遇到了很多优秀的同学,学习到太多的东西。它给了我信心,告诉我,也许,土木工程不一定是我的唯一出路。也许,我毕业后可以做自己喜欢的事情,那就是编程。
大学临近毕业了,我们专业的就业机会是很多的,而且各大铁路局都抢着要人。同学们纷纷签订了中铁XX局,XX设计院。而我一直在等待,等待着一个机会。有一天,偶然的机会,我看到金山软件在校本部举行校园招聘的消息。室友陪我一起逃课去参加了招聘会。我选择了WPS的自动化测试工程师,因为只有这个职位需要我熟悉的C#语言。我同学当时选了游戏策划,笔试完后,他异常兴奋,他说这是他从小到大答过的最爽的一次考试,里面问的全是游戏怎么好玩的问题。然而兴奋之余,他竟然在联系电话一栏忘记了填。
后来,我来到了金山软件。他在外面干了几年建筑设计后来回到老家进了个不错的设计院。我来到金山,成为金山训练营第一批成员,从此开始了我的编程生涯。之后从金山WPS,到金山毒霸,后来到西山居,有太多优秀的同事,给予了我巨大的帮助。在金山的这几年,是我学习积累非常重要的几年。测试开发的工作,没有太多项目的压力,不需要加班,可以尽情的利用业余时间去研究各种新奇好玩的技术。我的大部分技术博客,也是在那段时间完成的。
测试开发的工作,主要是编写一些测试代码去对产品代码进行测试,保证其功能的正确性,稳定性,安全性等。其实在我心里,一直都很羡慕直接参与产品开发的程序员。虽然我知道就编程来说,他们的工作其实和我的并没有多大的区别。但是,看着用户在使用着你的产品,关注着你的产品,作为一个产品直接的开发人员,自豪感是更强的。我告诉自己,我不想再测试别人的代码了,我想自己来写!
我一直在寻找和等待着这样一个机会,并且也做了不少的尝试。某天,当我听到我原来的技术老大鱼头要出来创业做游戏时,我已经按捺不住兴奋的心情了。于是我放弃了金山安逸的生活,来到了广州,开始了我的游戏开发的生涯,开始了我的创业生涯。
创业
公司初创人员有10几个, 大都来自金山内部。我经历了公司从无到有的整个过程,从申请营业执照,到选取办公地点、办公设备,申请域名,搭建Git,RTX,Wiki,项目管理平台Redmine,持续构建CCNet…… 这些都是一个公司必要的支持。而对于我来说,还是蛮新鲜的,能接触到一些平时不容易接触到的东西,初创人员也是激情四溢,各擅所长,感觉平时听他们聊天都能学习到不少的知识。
即使我平时游戏玩的够多,自认为也算是个中高端游戏玩家。但做为一个刚刚涉入游戏开发领域的新人,心中还是有一些胆怯的,所以我更多的是去听他们的想法,然后在心里理解分析。
关于游戏定位的讨论一开始就进行了。我们认真去玩并且分析了当时市面上刚出的几款端游。比如《征途2》、《凡人修仙传》等。最终,我们给出了我们游戏的定位:面向低端玩家的电脑配置要求低、易上手操作简单的道具收费玄幻题材的3DMMORPG。好吧,前面这句话是我自己总结的,大致是符合当时的想法的。我对于游戏定位的思考,一直贯穿着整个创业过程。但是在当时,身边都是比我有游戏经验的同事,我其实是没有太多的想法的。我的想法就是,信任他们。
为了实现游戏的配置低的目标,我们想出一个办法。就是给所有人的电脑配置都比较低,价格控制在3000块左右。一旦一个不合理的算法出现,或者不合理的美术资源添加,将直接影响到我们自己的游戏体验,从而督促着我们去修改。当时的我配置甚至是一台联想笔记本,在上面开发着3D游戏。
关于这种做法,当时我是纠结的。它的好处是明显的,开发环境和玩家环境一致,可以时刻督促我们的游戏在配置上不至于跑偏。当然,也有另外一个好处就是帮老板省钱。它的坏处也是明显的,严重影响了我们的开发效率。实际上,这条规则并没有一直贯穿执行下去,老同事用着慢如蜗牛的机器,用幻灯片的方式艰难的玩着LOL。新来的同事的配置调到最高却依然满帧。就在前几天,我们给所有程序的电脑升级到8G的内存,并且配置240G的SSD(固态硬盘),我使用了3年的老旧电脑也被替换了下来。用这种极端的方式控制游戏的性能,我也不能完全说是对是错,至少这是我们走过的路。
开始阶段,我负责整个游戏的UI脚本和表现逻辑部分。这在西山居可是两个组干的活,而且我还是个新手,需要不断的在摸索中学习。很快,我就已经上手。UI需要直接和游戏逻辑交互,表现逻辑需要直接和3D引擎交互,很快,我又担当起了游戏逻辑组的重担,并且在3D引擎组打了一手酱油。如今,我已经成为了程序组内的Full Stack,对整体开发环节最了解的一个。
写这篇文章,并不是从程序角度对写过的代码和模块进行总结。而是通过回忆一路走过的创业历程,让自己重新去思考,公司和人员是如何变化的,游戏产品是如何演变的,当然最重要的,是自己的心态和思维方式是如何改变的。
(未完待续……)
作者:CoderZh
微信关注:hacker-thinking (代码随想)
本文出处:https://blog.coderzh.com/2014/09/07/startup/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。