2012年10月30日星期二

外交部发言人警告批评者“注定会失败”

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-10-29 通过 Solidot 作者:blackhat

外交部发言人周一证实温家宝家人已雇用律师回应《纽约时报》的报道,再次警告其批评者"阴谋注定会失败"。洪磊说:"世界上总有些声音不希望看到中国发展强大,他们别具用心抹黑中国和中国领导人,借此散布不稳定的讯息。你们的阴谋注定会失败。温家宝总理的家人已经授权律师发布了一项声明(截图),并将继续澄清《纽约时报》的部分错误报道。"和过去一样,这些内容又没有出现在外交部网站上。官方《人民日报》昨天还发表评论说,"《纽约时报》近年来丑闻叠出声望下降"。



 
 

可从此处完成的操作:

 
 

2012年10月19日星期五

致命的武器和文明的演化

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-10-19 通过 Solidot 作者:blackhat

从矛到原子弹,致命的武器引导了人类文明的进程。从原始平等主义社会,到专制和民主社会,武器技术的创新推动了人类文明的进步,新武器的出现可能会驱动人类文明走上全新的轨道。 最古老的矛有40万年历史,鉴于考古记录的不完整,加上木头不容易长久保存,所以肯定矛的历史远远长于40万年。矛可以帮助猎杀猎物,也可以从远处猎杀同类。因此当矛出现之后,文明结构从强人蛮力统治时代进入到社会平等合作时代。平等主义是如此成功,以至于它持续了数十万年,直到一万年前才被打破,原因是农业的发展推动了贸易的增加和武器技术的进步。财富的积累导致了阶级的出现,上层阶级可以利用财富建立一支武装去保护自己。人类从此进入了专制国家时代,下层阶级通过纳税获得上层阶级的保护,只要外部敌人的威胁胜过内部的非人道剥削,系统就是稳定的。但靠钱收买忠诚天生缺乏稳定。17世纪火器的发明推动基于等级权力的专制制度被民主制度取代,因为致命的枪将权力归还了民众,公民通过火器打破了国家在高压威胁上的垄断,合作再次成为主流。过去70年,超级武器如原子弹和生化武器的发明推动了国际间的合作趋势,因为不合作人类就没有未来。但原子弹对一国内部社会结构的影响微乎其微,因为它不能让一部分人比另一部人有更多的权力。所以,国家本身仍然靠枪杆子说话。研究发现,一个国家越多垄断武器它越专制。



 
 

可从此处完成的操作:

 
 

2012年10月10日星期三

国庆堵车

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-10-10 通过 shell's home 作者:shell

国庆堵车的原因

国庆堵车,乃至一切国庆拥堵的原因,是16亿人的时钟被调整到了同一节律上,除此之外别无其他。在国际上,大型节假日也会堵车,费用涨价,这不是什么值得大惊小怪的东西。要说中国和其他国家的区别,主要是三点。

  • 大量的劳动力离开农村,来到远方的大城市谋生。他们希望有足够长的假期回家和亲人共渡。
  • 中国的三大运输行业,主力的铁路还处于计划经济时代,公路则有巨量的过路费。飞机对于大多数人来说不是一个合理的选择。
  • 中国的道路设计和运行,是按照收费状况来进行的。本次假日,价格降低了。

细分市场

对于解决国庆拥堵,市场经济下的标准做法有两种。

  • 一种是保持免费,由质量的下降来控制人数。
  • 第二种是增加价格,让部分人不愿意出行,换取通行畅通。

通常来说,我们更愿意取后者,因为堵塞在路上并不会产生经济效益。而增加出行价格不但会产生直接的经济收益,而且会让部分去不了的人做其他更有意义的事情,而不是呆坐在车上发呆。这种机制叫做市场价格机制。更进一步,我们可以根据出行时对拥堵的接受能力,分割出不同的市场。让愿意接受堵车的人便宜出行,不愿意接受堵车的人付费。这种方法叫做细分市场,即,对于市场的供需状况发生明显变化的区域或者时段,或者人群,采取完全不同的价格策略和服务策略。这样会优化资源配置,让不同的区域/时段/人群获得他们希望获得的结果。

然而,无论哪种方案,都不可能采取反向措施。在高峰时期降低出行价格,让拥堵的道路更加拥堵。本质上说,国庆道路拥堵是由于定价策略根本错误所导致的。他们细分了市场,可是针对高需求市场提供低价策略。你能抱怨发生短缺么?而很多人居然还抱怨到,"不敢占国家便宜了","高速收费有理"。对于后者,如果加上高峰时期的限制,我觉得还没说错。对于前者就是彻底的无语了。

同样的市场策略不解还发生在非常多的日常问题上。我曾经提出过分流解决市内经济拥堵的方案,包括非高峰期和高峰期的地铁和出租车价格差异化。很多人都表示不理解。我觉得在经济层面理解这个效应没有任何困难,只要你想想就能明白。简单来说,就是对市内拥挤时期和非拥挤时期差别定价。例如平时公交0.8,高峰期公交1.2。平时地铁3元,高峰期地铁5元。

从市场角度说,这很明显的会压缩高峰时期出行人数,缓解高峰时期的交通工具拥挤现象。而且这个方案并不难实施——地铁和公交基本都是刷卡收费,对收费装置改造,让不同时间收费不同价格并不困难。出租车更是本身就支持这个功能。作为一个合理的驳斥,你可以说这个方案有明显的缺点。这个方案会使得更多的人偏好在高峰期自驾出行,从而加剧道路拥堵。

然而抱怨"太复杂了","没道理",都是属于无常识的。如果说复杂,出租车系统是如何支持夜间收费的?如果说没道理,你为何不投诉出租车夜间费用机制呢?还有个朋友坚持认为,无论票价如何变化,出行人数应当不会有太大变化。用术语来说,即,交通需求的弹性相当小。然而我很简单的问了一个问题,如果是这样,当交通免费的时候,乘车人数应当如何变化?她想当然的说——当然是不怎么变化。旁边另一个朋友同时也说,广州发生过这个事情,地铁瘫痪了。场面顿时冷了下来。

和我讨论的人中,有八成以上的人直觉的反对这个方案,却给不出合理的理由。大多都只能说,太复杂了,搞不起来,没道理。我知道你们的想法——八成的人都需要在高峰期出行,这个无疑是在加剧他们出行的成本。然而,城市的出行费用并不是单方决定的,这是一个供需问题。虽然我没有量化数据,然而根据我对目前状况的分析,我觉得正确的票价不但不会上升,反而应当下降。在高峰时段,我们的出行人数略高了。然而在非高峰时段,我们的出行人数可是远远不足。对此应当采取低票价,鼓励可以调节时间的人在非高峰时段出行。只要非高峰时段采取了低票价,高峰时段人数过多的问题也会适当缓解。

当然,这个方案也有固有问题,即自驾车的问题。从鼓励公众交通考虑,我们应当降低公共交通费用,甚至免费。然而从良好服务考虑,我们又应当调控公共交通费用。这是固有矛盾,没有什么万能的解决方案。比较好的方法是增加自驾出行成本——例如扩大高峰期非上海牌照限行范围(不过这又会拉高上海牌照价格),或者对市内拥堵路段ETC收费。然而,只有几个人,很合理的提出了自驾出行的问题,我认为这是一种理性的,经过思考的讨论。虽然大部分的80后的应当学过经济学,可是能够使用经济学,进行理性思考的人为何寥寥无几呢?

黑洞无毛

同样还有改善高峰期出租车数量的方案,高峰期时段牌照,也是基于细分市场定价。基本思路是发放针对高峰时期的特殊牌照,拟定不同的价格,使得高峰时期牌照的回报比比普通牌照略高一些。按照市场原则,很多司机可能放弃做普通出租车司机,而只开高峰牌照。这样会带来三个好处。

  • 高峰时期出租车增加,打车容易。
  • 平时出租车减少,减少浪费。
  • 只开高峰车的师傅,完全可以在空下来的时候做别的事情,例如开网店,或者导游。

同样是个有各种好处的事情,收到的驳斥意见非常多。有人给我说了一通历史原因,然后分析当政者心理,总结为什么不可能。我觉得虽然这和市场没关系,然而这个分析本身还是有道理的。有人直接扯上了毛泽东时代如何如何,我直接闭嘴了。您要么看我的一篇《回到毛泽东时代》,看看您是不是真的愿意回到毛泽东时代。

其中说历史原因的人非常有意思。他说出租收管理费贵,主要是两个方面原因。一方面,是上海政府大量收取出租管理费作为政府开销。另一方面,则是早年出租运营公司在牌照上都是赔钱的,不让他们赚钱他们不干。

纷纷扰扰的原因,让我想起天体物理学的一个很重要观点——黑洞无毛。

黑洞无毛,意思是黑洞的外界性质,只有重量和角动量。两个重量和角动量完全一致的黑洞在对外上应当不存在区别。因为你既不能通过光观测他的表面特性,也无法做其他信息传出。这相当于一个从现实空间割裂的独立空间。唯一能证实其存在的特性,只有万有引力造成的空间扭曲。

而从经济分析角度来说,一个项目的经济学特性其实也只有一项——风险下的投资回报比曲线。当然,也许不止这一项。我不是经济学专家,所以并不清楚是否还有其他需要考虑的特性。然而,任何能够转化为上述特性考虑,并不引入外部性的特性,就不要出现在我的桌面上了。

不同投入资产,在不同风险级别上,会产生不同收益。虽然没有人精确测量和描绘过这条曲线(说曲线并不准确,绘制出来的话应当是一个面),然而我们都在无意识的使用这个观点。我们经常说"项目风险",说的其实是投资回报比在XX以上的概率有多大。如果你不介意将投资回报比降低到近乎于无穷小,任何项目都是近乎于0风险的。我们说"低风险投资回报率",指的是这个曲线在低风险情况下,在普通投资区间的平均回报比。我们说"公司价值","项目价值",其实并不是指项目有多少资产。相反,我们是在评估,这个投资回报比的项目,某一个份额的转让市场价格是多少。

现在,我们可以说回到出租车牌照的问题。出租车牌照问题,我们可以认为是一个项目。而这个项目,无论是历史原因也好,还是什么其他的也好。其实都只是对他的未来回报曲线产生影响。我们可以抛开到底这个问题是什么的问题,转而专注另一个问题——当你最终存在了一条投资回报比曲线——可以是任何曲线——细分市场是否能够对这个市场产生影响,得到更优化的资源配置?

这个当作思考题,大家不妨考虑一下。

公平

国庆交通的另一个话题,则是有人说,中国解决了这么多人的交通问题,这是一个创举。英国的铁路是私营的,然而资本家完全没有改善铁路的打算,铁路依然破旧。网络购票问题本质是铁路运能不足,要加快铁路建设,等等。

我先不说英国的铁路到底好不好的问题,仅仅说另外一个问题——到底是谁?决定要不要修建基础设施。

私营老板出钱

我们知道,基础设施是要花钱的。如果是私营,这笔钱必然是老板出,然后转嫁到客户头上。他自然会考虑,是否可以愿意承担这个费用。如果他们觉得客户愿意承担,那么他们会修修看——同时将修建费用合并到票里面,卖给客户。如果客户不愿意,他们当然不会冒着亏本的危险自作主张。——当然,着有个前提,就是私营老板并没有垄断铁路业。

国家出钱

而如果是国家出,一样是转嫁到客户头上。如果不行,客户数量不足,就会转嫁到每个纳税人——即,你,或者我——头上。

问题来了。不是每个人,包括我,都需要大量使用铁路交通的。与其修建那么多基础设施,来增加高峰期运力。不如降低火车票价来的有吸引力。如果国家修建,然后由纳税人均摊,其实这是不公平的。

实际上,我可以肯定这个花销是无法由客户均摊的。如果可以的话,铁路系统为什么不自己组织修一条线呢?这固然是因为铁路修建的拆迁工作需要当地政府的大力配合,另一方面,也是因为铁路系统并不确定是否能在旅客收入——主要是非高峰收入上——拉平成本。其中也有可能因为国家目前从铁路系统获得大量税收,在不减少这个税收的情况下做不到。精确的说,修建一条铁路的开销无法由铁路带来的客运增量来平衡,因此才是铁路修建需要由国家拨款的原因。

公平论

既然是全民税收,公平就是一个核心问题了。我们首先排除铁路部门贪污腐败的问题,没有看到的事情,我们暂时不讨论。就公平上,是否应当采取这一行动,做一条讨论。

我记得我说过公平论。当你模糊你的身份时,你提出的结论才是公平的。如果我是不需要回家的本地人,为了春运修建大量铁路显然有悖于我的利益。然而如果我是需要回家的打工仔,春节不能回家又是一件很苦逼的事情。权衡两者,我觉得全民收费修建铁路还是一个可以接受的结论。

其他方案

其实在上文中,我们不断探讨各种技术问题,然而都没有涉及一个实质问题——16亿人的节奏在时空上高度同步。这本身是最大的问题。不解决这个问题,讨论细分市场也好,政策公平也好,都只能在技术上,让尽量多的人各得其所。只有让聚集问题彻底解决,才能彻底解决16亿人民的出行和游玩问题。

那这个核心的方案也就呼之欲出了——年假制和生产中心西迁。

目前我国有10天带薪假期,称为国定假日(顺便说一句,这个和其他国家比小气的可怜)。这些日子固定放假。一旦和前后连成长假,大客运高峰就随即发生。而国外很多是采用年假制的。每个人每年都有一定时间的假期,可以自行安排。很多企业还规定,当员工的工龄增加时,年假也随之增加。据说意大利人最长有一个月的年假(羡慕阿)。

年假制度可以减缓高峰的存在。从理论上说,采取年假后全年的交通量应当都是平均的。然而现实告诉我们——没那么美的事。由于传统节日的存在(例如感恩节,春节),很多人选择在节日附近回家。这还是造成了拥堵,不过显然比现在更轻。因为很多没有钱在假日回家的人,可以选择避开假日回家。

年假的一个问题,就是给与某些老板合法剥削员工的机会。因为如果是固定假日,工厂是否加班很明显。而年假则很难说,某人是否休了年假,除了他自己还有谁知道?但是与此同时,固定假日制度难道就不存在"剥削"员工的老板?员工留下来加班,却只支付正常工资,这种老板有没有?不希望休年假,希望多工作的员工,有没有?

我们不能只关注于年假造成的问题,而束手束脚不解决问题。作为一个可行的方案,部分的实行年假是一个很好的思路。鼓励部分企业实行年假制度,对年假不休的实行三倍工资。部分可行至少好过总体上一无所获。

而生产中心西迁,则是中国政府目前正在努力做的一件事。不过限于地理因素,目前效果好像不大明显。如果有时间,我希望对这一问题做一下全面了解和思考,看看到底是为什么。


 
 

可从此处完成的操作:

 
 

移动互联网的软件时代

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-10-10 通过 It Talks--上海魏武挥的博客 作者:魏武挥

摘要:软件时代,终将过去。而从这个意义上讲,应用商店的最大竞争者,其实是浏览器。

9月头上,Facebook的CEO扎克伯格在一个公开场合表示:"押注HTML5是个巨大的错误,现在公司将聚焦移动、推出原生Android应用。"据他声称,Facebook5.0放弃了html5的web app转而投向native app后,数据显示有半数iOS用户在4天内选择了更新客户端,在App Store的评分也在短短三周内从2颗星上升至4颗星,更新后iOS用户阅读的新鲜事数量提高了一倍。不过,话音刚落,两天后,Facebook的产品开发人员就发出了和他不太一样的声音。

在Facebook的一场面向媒体的会议上,开发人员说:"HTML5以及基于HTML5的Web版Facebook不会就此消失——事实上,为了给用户带去更棒的体验,HTML5在未来扮演着非常重要的角色。"

这似乎是一个矛盾。但在我看来,这代表着战术和战略两种选择。战术上(或者说短期内),native app被Facebook当成重点,扎克伯格列举的数字都是短期数据。而在战略上(或者说长期而言),Facebook并没有放弃web app。

一直以来,在native app和web app的选择上,都有着争论。8月我参加一个某手机浏览器的研讨会时,主持人还问过这样的问题,并要求到场的讨论嘉宾"站队"。我表示在没有时间这个变量下,无法站队。因为很明显的一点是,短期内原生应用有优势,而长期,则是web app。

首先要明确的一点是:商业文明,其实是供给方推动的。没有人在iPhone诞生之前就会冒出这样的想法:我需要这样的手机。一个有趣的关于调研的笑话是说,在汽车没被人发明之前,所有的用户调研都是:要更快的马车。从大的意义上讲,供给方愿意选择什么,这个市场就会向那个地方所倾斜。就app而言,无论是开发成本,还是未来对用户的控制(比如说web app几乎就是供方升级就完成升级的),web app都具有更大的优势。

不过,需求者的具体需求也必须考虑到。Native app的优势在于它能让用户体验更好,也能让设备更好地发挥硬件功能,最重要的是:在当今的网络状态下,native app显然比web app更让用户青睐。

这不得不让我想起早期的桌面互联网时代。当年的网速比起今天来说,可以用"极慢"来形容,于是在很多具体功能上,人们都倾向于用"客户端"(其实就是native app)。最好的例子莫过于邮件。国产的Foxmail成为早期最出色的工具软件之一,它就是一个用于邮件收发的客户端。一个不支持POP3协议的邮件服务商是很难得到用户青睐的,因为它迫使用户必须用浏览器来收发邮件。在慢速网络下,这是一个非常糟糕的体验。在中国,hotmail邮箱更多的只是用来登录msn而不是用来收发邮件就是明证,因为它不支持POP3协议。

但web端的邮件具备了这样的好处:你可以用不同的机器登录上去看邮件,这一点随着人们的手持设备越来越多样变的越来越重要。如果转发一份带有大附件的邮件,速度会很快,因为那个附件本来就在服务器上。两个前提条件的改进促使了越来越多的人使用web端的邮件:硬盘的廉价导致的邮箱空间变大,以及网速的大幅提高。

随着桌面互联网的网速提高,越来越多的软件倾向于web化,比如有web qq之类的基于网络的聊天工具。有些软件的安装包都web化:用户下载的其实是一个很小的软件安装启动程序,真正意义上的软件需要机器在安装时处于联网状态获取。这样的好处是:用户下载到的永远是最新版本的软件。

开发成本的降低是很明显的事,web app基本上可以通行于各种设备上,native app则要建立不同的团队去做不同的开发,还有大量的适配工作。但更重要的是,开发者对这款应用的控制力增强了。Native app只要用户不选择更新,开发者除了让这款应用停止它可以运作之外别无它法。QQ就是这么干的,不更新新的版本就无法聊天。但QQ这么干也有两个重要的前提:其一是在QQ已经覆盖量很大的情况下,它对用户的逃离并不担心;其二这款软件的使用需要在线。一些单机版软件(比如游戏)根本控制不了用户更新还是不更新。

Web app还有一个非常重要的好处是可以绕过应用商店,这点在iOS系统上特别抢眼。比如FT英文版就是一个web app,它向用户收费无需给iOS抽成,也不存在审核不审核。当然,这是一把双刃剑,离开了app store,也就是FT这么大名鼎鼎的品牌才能得到用户的注意,一般的初创应用,都不晓得去哪里做推广。

移动端的浏览器兴起,可能为这些web app提供了推广的渠道。浏览器特别喜欢web app,因为两者的对接几乎是无缝的。而在这两年,移动端的浏览器的确开始发力,巨头都开始涉足这个领域。

当下的移动互联网时代,正如早期的桌面互联网,网速很慢费用很高,native app的优势可以在这个背景下被完全发挥出来。但随着情况的改变,web app将慢慢取代大量的native app(并非全部,特别是游戏,正如桌面互联网中端游还是很大一块市场,移动网络中亦然),这是桌面互联网的规律,同样也是移动互联网的规律。

软件时代,终将过去。而从这个意义上讲,应用商店的最大竞争者,其实是浏览器。

—— IT经理世界 专栏供稿 ——


Copyleft © 2010 知识共享署名-非商业性使用-禁止演绎 注意:转载勿改标题!
ItTalks -- 魏武挥的Blog (digitalfingerprint:fc4f8fc31f70097eea4b780b13146415)

欢迎 浏览我收集的信息图 关注我的微博 访问我的分享
无觅猜您也喜欢:

中国移动互联网简史

移动互联网=移动+互联网?

移动互联网只有三年?

移动互联网的营销机会
无觅

与本日志可能相关的文章有:


 
 

可从此处完成的操作:

 
 

噱头与实质

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-10-9 通过 It Talks--上海魏武挥的博客 作者:魏武挥

可以复习的宾馆一位朋友给我讲了这样一个故事。在一所学校边上有一个酒店,酒店比较安静,在学生口碑中是一个可以用于复习的地方。老板觉得这个可资利用,于是就用"可以用来复习的酒店"来招徕顾客。这个营销话术很讨巧,越来越多的学生成为他的顾客。再往后,老板觉着既然大家都冲着"可以复习"而来,那就索性不要开酒店了,搞成教室算了。结果,改装之日,便是他迈向关店之时:学校里哪里还会缺他这点教室?

这个故事当然是虚构的,但它反映出非常重要的一点:营销所用的话术、宣传的重点,有时候未必就是这个企业自身真正意义上的核心竞争力。一个不虚构的事情是,很多饭店都会用"本店啤酒畅饮"的宣传语,但没有一个饭店老板会脑子进了水会以为只靠供应免费啤酒就能财源广进的。

故事听着很简单,很多人以为没人会犯那种低级错误吧?但事实真的有。没有搞清楚营销噱头不过只是噱头,最终丢了自己的本质。这里一个非常好的案例是陌陌。

这款社交工具有"约炮神器"的称谓,姑且可以看成一个营销噱头。虽然陌陌从来没有承认过他们是有意这么做推销的,但无论是有意为之还是无心插柳,最终的事实是:约炮神器这个噱头对于它初期用户的增长确有帮助。然而,这只是一个噱头而已。如果陌陌的实质就是"约炮神器",那么,这个社交工具商业上就基本废掉了。可以想见的是,大概也只有杜蕾斯这样的品牌会考虑在这个免费工具投放广告,其它广告主便要躲之不及了。约炮神器四个字有时候甚至会引发用户的选择不安装:万一被老婆看到我手机上装了这个,我可就说不清了。

对于一个初创应用而言,有无噱头是非常重要的,它能够帮助这项服务在相对较短的时间里快速发展用户。但噱头到底是噱头,而不是核心竞争力,仅仅依靠噱头而起来的用户群,会在其它噱头的刺激下迅速离去。甲饭店会搞啤酒免费畅饮,乙饭店也会搞,丙饭店也会跟进,核心的要义:菜品是不是够物廉价美,服务是不是值回票价,才是一个饭店的本质生存之道。网络服务的道理是同样的。

初创应用的开发者应该很明白这一点,在使用者的认知上,噱头不要成为他们以为的实质。时间点的把握是很重要的,推出新的功能来强化自己产品的实质性的竞争力是一个方面,淡化公众对自家产品的噱头性认知也是一方面。事实上,早期的QQ也会被人传为"找小姐的工具",但QQ始终把握得很好,大范围意义上的这种认知并不存在。

其实微信也有所谓的"约炮工具"的说法,但微信运营方在功能拓展上尽力地控制住这种感觉。不得不承认的是,一部分人的确如是认为,但并没有广泛到这个程度:我装一个微信会有装一个陌陌般的担心。陌陌的一个教训是:放任它的噱头以至于到了被误以为是这个产品的本质的时候,都没有主动做些什么来纠偏,如此下去,最终被微信所淹没,我看没必要去大骂微信抄袭,因为它在大众面前,已经迷失了它的本质。

回到文头的故事来,一个可以用于复习的酒店最终变成了教室的虚构案例,映射到现实中,一个可以用于约炮的社交工具变成了约炮神器,岂不是极其相似?当一个服务的营销噱头变成了服务的实质时,这个服务大概就离死期不远了。

—— 创业邦 专栏 ——


Copyleft © 2010 知识共享署名-非商业性使用-禁止演绎 注意:转载勿改标题!
ItTalks -- 魏武挥的Blog (digitalfingerprint:fc4f8fc31f70097eea4b780b13146415)

欢迎 浏览我收集的信息图 关注我的微博 访问我的分享
无觅猜您也喜欢:

类Kik应用有没有机会?

中国证券经纪业务百论之十七:分销:何为分销

马化腾,你应该道歉

这不是一个娱乐的互联网
无觅

与本日志可能相关的文章有:


 
 

可从此处完成的操作:

 
 

2012年10月8日星期一

用Python制作游戏外挂(上)

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-10-7 通过 eyeHere 作者:xishui

漫漫长假,何以解忧,唯有……代码
——by 某屌丝

悲剧成我这样的人,我知道肯定不止我一个,所以我一点都不悲伤:-( 所以我打开了4399小游戏网,点开了一个不知名的游戏,唔,做寿司的,有材料在一边,客人过来后说出他们的要求,你按照菜单做好端给他便好~ 为啥这么有难度?8种菜单记不清,点点就点错,鼠标还不好使肌肉劳损啥的伤不起啊……

首先要声明,这里的游戏外挂的概念,和那些大型网游里的外挂可不同,不能自动打怪,不能喝药不能躲避GM…… 那做这个外挂有啥用?问的好,没用,除了可以浪费你一点时间,提高一下编程技术,增加一点点点点点点的做外挂的基础以外,毫无用处,如果您是以制作一个惊天地泣鬼神不开则已一开立刻超神的外挂为目标过来的话,恐怕要让您失望了,请及早绕道。我的目的很简单,就是自动玩这款小游戏而已。

工具的准备

这篇文章需要您有Python基础,我不会讲解Python语法啥的~

Python
需要安装autopyPIL以及pywin32包。autopy是一个自动化操作的python库,可以模拟一些鼠标、键盘事件,还能对屏幕进行访问,本来我想用win32api来模拟输入事件的,发现这个用起来比较简单,最厉害的是它是跨平台的,请搜索安装;而PIL那是大名鼎鼎了,Python图像处理的No.1,下面会说明用它来做什么;pywin32其实不是必须的,但是为了方便(鼠标它在自己动着呢,如何结束它呢),还是建议安装一下,哦对了,我是在win平台上做的,外挂大概只有windows用户需要吧?
截屏和图像处理工具
截屏是获取游戏图像以供分析游戏提示,其实没有专门的工具直接Print Screen粘贴到图像处理工具里也可以。我用的是PicPick,相当好用,而且个人用户是免费的;而图像处理则是为了获取各种信息的,我们要用它得到点菜图像后保存起来,供外挂分析判断。我用的是PhotoShop… 不要告诉Adobe,其实PicPick中自带的图像编辑器也足够了,只要能查看图像坐标和剪贴图片就好饿了,只不过我习惯PS了~
编辑器

这个我就不用说了吧,写代码得要个编辑器啊!俺用VIM,您若愿意用写字板也可以……

原理分析

外挂的历史啥的我不想说啦,有兴趣请谷歌或度娘(注:非技术问题尽可以百度)。

看这个游戏,有8种菜,每种菜都有固定的做法,顾客一旦坐下来,头顶上就会有一个图片,看图片就知道他想要点什么菜,点击左边原料区域,然后点击一下……不知道叫什么,像个竹简一样的东西,菜就做完了,然后把做好的食物拖拽到客户面前就好了。

顾客头上显示图片的位置是固定的,总共也只有四个位置,我们可以逐一分析,而原料的位置也是固定的,每种菜的做法更是清清楚楚,这样一来我们完全可以判断,程序可以很好的帮我们做出一份一份的佳肴并奉上,于是钱滚滚的来:)

autopy介绍

github上有一篇很不错的入门文章,虽然是英文但是很简单,不过我还是摘几个这次用得到的说明一下,以显示我很勤劳。

移动鼠标

1 2 3 
import autopy autopy.mouse.move(100, 100) # 移动鼠标 autopy.mouse.smooth_move(400, 400) # 平滑移动鼠标(上面那个是瞬间的)

这个命令会让鼠标迅速移动到指定屏幕坐标,你知道什么是屏幕坐标的吧,左上角是(0,0),然后向右向下递增,所以1024×768屏幕的右下角坐标是……你猜对了,是(1023,767)。

不过有些不幸的,如果你实际用一下这个命令,然后用autopy.mouse.get_pos()获得一下当前坐标,发现它并不在(100,100)上,而是更小一些,比如我的机器上是(97,99),和分辨率有关。这个移动是用户了和windows中mouse_event函数,若不清楚api的,知道这回事就好了,就是这个坐标不是很精确的。像我一样很好奇的,可以去读一下autopy的源码,我发现他计算绝对坐标算法有问题:

1 
point.x *= 0xFFFF / GetSystemMetrics(SM_CXSCREEN);

这里先做除法再做乘法,学过一点计算方法的就应该知道对于整数运算,应该先乘再除的,否则就会产生比较大的误差,如果他写成:

1 
point.x = point.x * 0xffff / GetSystemMetrics(SM_CXSCREEN);

就会准多了,虽然理论上会慢一点点,不过我也懒得改代码重新编译了,差几个像素,这里对我们影响不大~咱要吸取教训呀。

点击鼠标

1 2 3 4 
import autopy autopy.mouse.click() # 单击 autopy.mouse.toggle(True) # 按下左键 autopy.mouse.toggle(False) # 松开左键

这个比较简单,不过记得这里的操作都是非常非常快的,有可能游戏还没反应过来呢,你就完成了,于是失败了…… 所以必要的时候,请sleep一小会儿。

键盘操作

我们这次没用到键盘,所以我就不说了。

本来我想一篇文章说完的,貌似有点难度太长了懒得看,所以也做个上中下篇吧,这次是基础,下次是图像分析,最后是实现,敬请期待。


 
 

可从此处完成的操作:

 
 

用Python制作游戏外挂(上)

 
 

satan 通过 Google 阅读器发送给您的内容:

 
 

于 12-10-7 通过 eyeHere 作者:xishui

漫漫长假,何以解忧,唯有……代码
——by 某屌丝

悲剧成我这样的人,我知道肯定不止我一个,所以我一点都不悲伤:-( 所以我打开了4399小游戏网,点开了一个不知名的游戏,唔,做寿司的,有材料在一边,客人过来后说出他们的要求,你按照菜单做好端给他便好~ 为啥这么有难度?8种菜单记不清,点点就点错,鼠标还不好使肌肉劳损啥的伤不起啊……

首先要声明,这里的游戏外挂的概念,和那些大型网游里的外挂可不同,不能自动打怪,不能喝药不能躲避GM…… 那做这个外挂有啥用?问的好,没用,除了可以浪费你一点时间,提高一下编程技术,增加一点点点点点点的做外挂的基础以外,毫无用处,如果您是以制作一个惊天地泣鬼神不开则已一开立刻超神的外挂为目标过来的话,恐怕要让您失望了,请及早绕道。我的目的很简单,就是自动玩这款小游戏而已。

工具的准备

这篇文章需要您有Python基础,我不会讲解Python语法啥的~

Python
需要安装autopyPIL以及pywin32包。autopy是一个自动化操作的python库,可以模拟一些鼠标、键盘事件,还能对屏幕进行访问,本来我想用win32api来模拟输入事件的,发现这个用起来比较简单,最厉害的是它是跨平台的,请搜索安装;而PIL那是大名鼎鼎了,Python图像处理的No.1,下面会说明用它来做什么;pywin32其实不是必须的,但是为了方便(鼠标它在自己动着呢,如何结束它呢),还是建议安装一下,哦对了,我是在win平台上做的,外挂大概只有windows用户需要吧?
截屏和图像处理工具
截屏是获取游戏图像以供分析游戏提示,其实没有专门的工具直接Print Screen粘贴到图像处理工具里也可以。我用的是PicPick,相当好用,而且个人用户是免费的;而图像处理则是为了获取各种信息的,我们要用它得到点菜图像后保存起来,供外挂分析判断。我用的是PhotoShop… 不要告诉Adobe,其实PicPick中自带的图像编辑器也足够了,只要能查看图像坐标和剪贴图片就好饿了,只不过我习惯PS了~
编辑器

这个我就不用说了吧,写代码得要个编辑器啊!俺用VIM,您若愿意用写字板也可以……

原理分析

外挂的历史啥的我不想说啦,有兴趣请谷歌或度娘(注:非技术问题尽可以百度)。

看这个游戏,有8种菜,每种菜都有固定的做法,顾客一旦坐下来,头顶上就会有一个图片,看图片就知道他想要点什么菜,点击左边原料区域,然后点击一下……不知道叫什么,像个竹简一样的东西,菜就做完了,然后把做好的食物拖拽到客户面前就好了。

顾客头上显示图片的位置是固定的,总共也只有四个位置,我们可以逐一分析,而原料的位置也是固定的,每种菜的做法更是清清楚楚,这样一来我们完全可以判断,程序可以很好的帮我们做出一份一份的佳肴并奉上,于是钱滚滚的来:)

autopy介绍

github上有一篇很不错的入门文章,虽然是英文但是很简单,不过我还是摘几个这次用得到的说明一下,以显示我很勤劳。

移动鼠标

1 2 3 
import autopy autopy.mouse.move(100, 100) # 移动鼠标 autopy.mouse.smooth_move(400, 400) # 平滑移动鼠标(上面那个是瞬间的)

这个命令会让鼠标迅速移动到指定屏幕坐标,你知道什么是屏幕坐标的吧,左上角是(0,0),然后向右向下递增,所以1024×768屏幕的右下角坐标是……你猜对了,是(1023,767)。

不过有些不幸的,如果你实际用一下这个命令,然后用autopy.mouse.get_pos()获得一下当前坐标,发现它并不在(100,100)上,而是更小一些,比如我的机器上是(97,99),和分辨率有关。这个移动是用户了和windows中mouse_event函数,若不清楚api的,知道这回事就好了,就是这个坐标不是很精确的。像我一样很好奇的,可以去读一下autopy的源码,我发现他计算绝对坐标算法有问题:

1 
point.x *= 0xFFFF / GetSystemMetrics(SM_CXSCREEN);

这里先做除法再做乘法,学过一点计算方法的就应该知道对于整数运算,应该先乘再除的,否则就会产生比较大的误差,如果他写成:

1 
point.x = point.x * 0xffff / GetSystemMetrics(SM_CXSCREEN);

就会准多了,虽然理论上会慢一点点,不过我也懒得改代码重新编译了,差几个像素,这里对我们影响不大~咱要吸取教训呀。

点击鼠标

1 2 3 4 
import autopy autopy.mouse.click() # 单击 autopy.mouse.toggle(True) # 按下左键 autopy.mouse.toggle(False) # 松开左键

这个比较简单,不过记得这里的操作都是非常非常快的,有可能游戏还没反应过来呢,你就完成了,于是失败了…… 所以必要的时候,请sleep一小会儿。

键盘操作

我们这次没用到键盘,所以我就不说了。

本来我想一篇文章说完的,貌似有点难度太长了懒得看,所以也做个上中下篇吧,这次是基础,下次是图像分析,最后是实现,敬请期待。


 
 

可从此处完成的操作: