当天晚上,陈锐去找王磊。
王磊在机房,一个人占了三台机器,一台写代码,一台开着传奇客户端做封包抓取,还有一台跑数据分析。
期末季的机房几乎没人,整排电脑亮着屏幕,只有他坐在中间,键盘敲得噼里啪啦响,像个值夜班的。
v2.0,我想好了。
王磊的手停了一下,转过来。
陈锐拉了把椅子坐下,把下午在图书馆画的草稿纸摊在桌上。
三个功能。
第一,自动寻怪加攻击。程序自动识别周围的怪物,跑过去砍,砍完捡东西,再找下一个。
封包层面怎么做我大概有思路,你说识别逻辑。
客户端内存里有怪物列表的数据结构,坐标、血量、类型都在里面。读出来,按距离排序,找最近的,发移动封包走过去,到了攻击范围发攻击封包,循环。
王磊眼睛亮了一下:你连内存地址都知道?
不知道,但我知道数据结构长什么样,你用cE搜,先搜怪物血量变化的地址,顺着内存偏移往上找,能摸到列表头指针。
你以前干过这个?
算是吧。
陈锐没法解释他怎么知道这些。
前世在游戏公司干了十几年,没法细说,不如让王磊以为他研究过。
第二个功能,自动捡物加喝药。打完怪地上掉东西,程序自动捡,背包快满了自动丢垃圾装备,血量低于百分之三十自动喝红药水,蓝量低了喝蓝的。
这个简单,捡物和喝药都是固定封包格式,写个判断条件就行。
第三个功能,智能停挂。
什么意思?
程序检测到附近有其他玩家出现,自动暂停挂机,角色随机走几步,装成真人操作,过一会那个人走了,继续挂。
王磊想了想:检测其他玩家也是读内存里的玩家列表?
对,距离阈值你设个参数,用户可以自己调。
你怎么想到这个的?
有人挂一晚上,屏幕上一个角色在原地转圈砍怪,动作一模一样,间隔一模一样,旁边过个人一看就知道是挂机的,截图举报,封号。
王磊点了点头,没说话。
他对陈锐这种替用户想到前面的能力已经习惯了,不再问为什么。
还有一个事。
v2.0定价三十块一个月,不想要自动打怪的,还可以单独买v1.0的免蜡,十块。两个版本并行卖。
v1.0不砍掉?
不砍。十块钱的用户里有一批人只需要免蜡,砍掉就把他们逼走了,让他们自己选。用了v1.0觉得不够的,自然会升级v2.0。
那v2.0的三十块里包不包含免蜡?
包。买v2.0的用户,免蜡加自动打怪全有,三十块打包。
王磊扒拉了一下手指头。
三十块一个月。如果现在一千个付费用户里有一半升级v2.0,五百人乘以三十,一万五。剩下五百人继续买v1.0,五千。一个月两万。
这还没算新增用户。
自动打怪的吸引力比免蜡大得多,新用户肯定会爆一波。
多久能做完?
你说的那个智能停挂得调参数,测试量大,其他的,一周够了。
行,过了元旦就开干。
......
03年元旦,没放假。
准确地说,放了,但跟他俩没关系。
1月1号,校园里冷清得像个空壳子,大部分学生要么回家了,要么谈恋爱的小情侣,小旅馆腻腻歪歪。
食堂只开了两个窗口,菜就那么几样,土豆炖鸡、白菜豆腐、红烧肉。
红烧肉是元旦加的菜,算食堂大妈的心意。
陈锐吃了顿红烧肉,觉得今年开局还行。
王磊连红烧肉都没去吃,在机房啃了两个面包,下午两点开始写代码,一直写到凌晨三点。
第二天,继续。
两个人的分工很明确,王磊负责底层的封包截获、解析、伪造,陈锐负责上层的产品逻辑和测试。
陈锐虽然不写代码,但他能提供一样王磊没有的东西:精确的产品需求。
什么叫精确?
举个例子。自动打怪的攻击间隔应该设多少?
普通程序员会设一个固定值,比如1.5秒砍一刀。但陈锐说不行。
固定间隔太机械了,真人操作不可能每刀都是1.5秒。你加个随机波动,1.2到1.8秒之间随机,每次不一样。
有区别么?
盛大如果做操作行为分析,固定间隔是最容易被检测的特征。随机波动能过绝大部分机器检测。
盛大有行为分析?
现在没有,以后会有,我们先做好,不吃亏。
类似的细节还有很多。
自动寻路的时候角色走直线还是走弯线?走弯线,真人不会走直线。
背包满了自动丢装备,丢什么留什么?按装备价值排序,价值低于阈值的丢,阈值用户自己设。
喝药水的时机?血量低于百分之三十喝红药,但如果周围有三个以上怪物,提前到百分之五十就喝,防止被围殴暴毙。
王磊写一天代码,陈锐提十个需求改三个bug,两人的对话越来越像一家正经软件公司的产品经理和开发。
区别是,这家公司只有两个人,办公室是学校机房,产品是外挂。
开发用了十来天。
王磊的代码能力在实战中涨得很快,v1.0的时候还在摸索,到v2.0已经驾轻就熟了,封包截获模块直接复用v1.0的框架。
新写的自动打怪逻辑跑通之后,捡物和喝药都是往上加功能,不用从头来。
智能停挂调了三天参数。
检测范围设多大、暂停之后角色做什么动作、等多久才恢复挂机。
这些全靠实测,王磊在网吧开着两台机器,一台挂机一台当路人,反复模拟,直到他自己都分辨不出哪台是挂机的,才算过关。
1月13号,v2.0进入内测。
陈锐在群里发了条公告:夜行者v2.0内测招募,老用户限20人,免费体验三天,有bug请及时反馈。
三分钟,二十个名额抢完。
群里没抢到的开始刷屏:还有没有名额?
加我一个行不行?
我v1.0第一批用户,老资格了,不给我测说不过去吧?
陈锐没多放名额。内测人多了,bug反馈会乱,该测的东西反而测不出来。
二十个人拿到了v2.0的安装包。
当天晚上,群里开始有消息冒出来。
我去,自动打怪?这玩意真能自己砍?
挂上了挂上了,角色自己在砍蜘蛛,我手都不用动。
等等等等,有人路过它自己停了?还装模作样走了两步?这什么鬼设定哈哈哈哈哈。
第二天早上,qq群里沸腾了。
挂了一宿起来,升了七级,背包全是装备,地上掉的全捡了,药水自动喝的,一瓶没死。你们是怎么做到的?
我昨晚十一点开挂,今早八点起来看,经验条走了快两格,爆了一把银蛇。银蛇你知道吧?我手动打了两个月没见过的东西。
智能停挂太鬼了,有人路过它真的停,还往边上溜达两步,跟个真人似的。过一会那人走了,它又开始砍,这谁看得出来?
二十个内测用户,二十个自来水。
问:什么是最好的营销?
答:产品本身。
好的产品不需要你教用户怎么说好话。
三天内测结束,bug修了四个,都是小问题。
1月16号,v2.0正式上线。
群公告更新——
夜行者v2.0正式发布。新增功能:自动打怪、自动捡物喝药、智能防检测。月卡30元(含免蜡)。老用户续费八折24元。新用户首月体验价20元。v1.0免蜡版继续保留,月卡10元。
上线当天,群里多了两百多个人。
不是广告打得好,是内测用户帮忙传出去的。
二十个人在各自的行会频道、在论坛帖子底下、在私聊里跟朋友说——夜行者出2.0了,自动打怪,挂一晚上升七级,三十块,值。
传奇玩家的社交圈就这么大,消息传得快。
上线三天,v2.0新增付费用户六百多人。
六百人,均价大约二十五块(新老混合),三天入账一万五。
一万五。
v1.0卖三个月,月收入才刚过一万二,v2.0上线三天,三天顶一个月。
客单价的威力,数字面前一目了然。