自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 收藏
  • 关注

原创 MMORPG游戏的人工智能(AI)和行为树设计

什么是MMORPG的AI?   玩MMORPG的地球人都知道,MMORPG的AI实在是弱智的要死。即使是在WOW这样顶级的游戏中,AI也是有限得掉渣,绝大部分NPC都像一个 木桩一样,哪怕是精心设计的BOSS也就只有一些战斗AI。尽管有很多人把动画,或者自动寻路之类的功能也叫做AI,但是我们并不讨论这种基本功能。我们 讨论的AI是指,可以使得NPC好像一个真人一样活动的AI。拥有这样AI的NP...

2016-04-23 19:49:38 281

原创 让EGOTableViewPullRefresh兼容iso678

      EGOTableViewPullRefresh是一个在ios下实现表格下拉刷新和上拉刷新的功能组件。在ios6下,使用的非常好,iso到7后,在计算视图大小时候考虑 UIRectEage,于是乎这个pulltableview就有点问题,具体表现在头部会升上去,被状态栏和导航栏遮住,因为在ios6下坐标0就是在导航栏下面,但是在ios7除非self.edgesForExtendedL...

2014-09-27 14:48:34 219

原创 使用ios的autolayout做UI

        之前一直用的是老的坐标定位,和自动缩放进行ui定位,现在iphone6出来了,尺寸又变了,为了适应各种屏幕,以前的通过判断设备类型和设备屏幕大小调用不同的xib已经有点过时了,或者说太浪费时间了,也可以说是一种bug。现在必须使用新的autolayout来定义界面。        使用autolayout必须知道Constraints。就是约束规则,通过定义一系列规则来描述...

2014-09-21 22:03:36 167

Supported orientations has no common orientation with the application, and shoul

在调用UIImagePickerController出现这个错误的解决办法:Supported orientations has no common orientation with the application, and shouldAutorotate is returning YES'在Info.plist里需要设置程序支持Portrait,同时编写一个继承类继承UIImagePick...

2014-08-31 11:01:17 2154

网页版本微信通讯协议分析

        没事分析了下网页版本微信的通训协议,并且用java实现了登录,发送和接收消息,以后可以用来集成到后台,作为一个业务通知系统,就是每次登录需要扫码比较费事。登录步骤:1.打开首页,分配一个随机用户id,2.根据该id获取二维码图片。3.微信客户端扫描该图片,在客户端确认登录。4.浏览器不停的调用一个接口,如果返回登录成功,则调用登录接口5.此时可以获取联系人...

2014-03-03 22:56:00 385

c++函数返回时异常出错原因

不断的注释调试,发现分配一个字符数组char msg[40];sprintf(msg, "恭喜,突破历史记录,获得最高分%d!", nowScore); 注释掉就不会出错,然后把msg长度设置为100就可以了,原因是字符串太长,函数内参数栈分配的存储空间不够,溢出导致的。。。 打印这个字符串长度CCLog("%s length=%d", msg, strlen(msg))...

2013-10-15 23:38:14 1410

cocos2d在IOS6上的初始屏幕方向

在6之前初始方向都是UIDeviceOrientationLandscapeLeft,用新的sdkios7编译后发现,初始方向是UIDeviceOrientationLandscapeRight,尼玛,真痛苦,网上各种找,试了- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation  这个方法,发现没用,最后...

2013-10-07 00:31:52 146

原创 弄了个微信公共帐号【北京汽车摇号助手】

花一天时间弄了个微信公共帐号,北京汽车摇号助手,微信号bjqcyh。已经实现了申请编码绑定,申请编码查询,名字查询,还不错。就是不能主动推送中签消息,这个有点欠缺。。。微信没主动推送的接口。 ...

2013-07-26 19:46:10 527

ios越狱设备在线安装ipa方法

        对于越狱设备,我们可以在线安装ipa,无需下载ipa再通过其他软件来安装。实现这个功能很简单,首先你需要一个web服务器,可供下载ipa和plist文件。然后准备plist。最后公布下载地址,点击下载地址就可以安装了,会在桌面上显示您的程序图标并且开始下载,就跟从AppStore下载的一样。        plist示例:  <?xml version="...

2013-06-21 21:58:50 3169

原创 两年的项目开发一点小心得(二)

        接着昨天的继续写。        对比开发时和上线后,开发时到时挺轻松的,基本上每天都能按时下班,一个功能要做很久,改很久,不会太着急。上线后就不一样了,知道这个功能的时候也就是这周就要上这个功能,也就是2天内要开发完成,这简直是天壤之别,于是加班就是必须的了。此外,基本上每次更新必然有bug,导致玩家骂声一片,还把项目组人员搞的疲惫不堪,我也曾经在群里跟大家反映,要求先更...

2013-06-20 23:31:58 157

原创 两年的项目开发一点小心得

        从11年8月份到现在,一直在参与开发一款网页游戏,我负责后端程序的开发,由java实现,基于mina框架。是现成的其他项目精剪后的框架给我们用的,我们只要在上面写写逻辑就差不多了。经历了一年多的开发,去年10月份公司内开始测试,年底正式对外测试并且收费,年后到现在就处于调整优化推广期了。2年的时间这么长,总要写点什么,于是这就开始写了。       在之前,我都是在基于web...

2013-06-20 00:38:12 189

原创 jdk常用工具命令收藏

jstatd 写道创建安全策略文件,并命名为jstatd.all.policygrant codebase "file:${java.home}/../lib/tools.jar" { permission java.security.AllPermission;};再次启动jstatd -J-Djava.security.policy=jstatd.all.policya)使用默认值rmi...

2013-05-22 18:45:40 120

原创 java分析内存溢出情况

jps获取java进程id“jmap -histo[:live] 进程id”,输出内存中类实例信息(加:live参数表示只输出有引用的实例)“jstat -gcutil 进程id”,输出GC情况

2013-04-03 11:33:52 155

这几天在cocos2dx上的心得

想把PRKIT放到cocos2dx上运行以及CCBLADE都移过来,但是却频繁出莫名其妙的问题,不得其解,看代码改动主要是CCPoint以及b2Vec2的转换。1.cocos2d的CGPoint是个结构体,而cocos2dx的CCPoint是个类,这2个有本质的区别,b2Vec2也是一个结构体。glVertexAttribPointer(kCCVertexAttrib_Position, 2,...

2013-01-03 19:44:30 125

ios6环境下屏幕截图代码:

ios6环境下,屏幕截图代码: +(UIImage*) makeaShot{ [CCDirector sharedDirector].nextDeltaTimeZero = YES; CGSize winSize = [CCDirector sharedDirector].winSize; CCLayerColor* whitePage...

2012-12-15 19:30:25 132

cocos2d在xcode4.5ios6上屏幕转向的问题

在ios5.1.1真机上测试的非常好,然后上传到appstore,等1周的结果是被拒,苹果审核人员到是仔细,给了我他们的屏幕截图和操作系统环境,在ios6.0.1下屏幕会错位,为了验证该情况,我将iPad有5.1.1系统升级到6.0.1,一看,果然如此,然后在网上找原因,终于找到解决办法: 写道将AppDelegate.m中的[window addSubview:viewControlle...

2012-12-15 19:20:10 102

原创 MacOs系统重装或者换电脑iPhone开发者证书前移问题

对于我等使用能够虚拟机的苦逼开发者,一旦苹果发新系统或者xcode升级,就苦不堪言,不敢直接升级系统,搞不好虚拟机bagong启动不起来,xcode升级对于系统版本也有需求,悲剧!但是也不能不升级,ios6都出来了,你还在ios5上开发,这显然不是苹果想要的!费了一天功夫是把10.8虚拟机装好了,xcode4.5也装好了,这时候也要把开发者证书拷贝过来,之前不知道可以拷贝,采用了重新生成证书的...

2012-12-02 11:35:45 486

解决android内部存储空间/data/dalvik-cache存储问题

       U880系统的内部存储空间总是不足,发现/data/dalvik-cache占据了100M的内存,/data总共才有200M啊,决定将它移走,移动到哪里?       /cache只有60M不够,放到sdcard需要先格式化sd卡再分区,麻烦。       发现/dev有200MB的空间,决定放到这里面,这是命令cp -a /data/dalvik-cache /dev/...

2012-05-18 17:47:39 2850

vmware8安装MacLion10.7.3

MacLion10.7.3的dmg下载地址:请用迅雷下载 http://dl1.c6.sendfile.vip.xunlei.com:8000/Mac%20OS%20X%20Lion%2010%2E7%2E3%2Edmg?key=733cd8196e108f819ad79f8a131d164b&file_url=%2Fgdrive%2Fresource%2FF4%2FE2%2FF4...

2012-05-13 20:37:35 149

原创 解决NSData中非法utf-8字节的问题

当用nsdata,按照utf8编码来初始化nsstring时,如果nsdata出现了非法utf-8编码,nsstring就回返回空,这不是我所期望的,对于非法的字节,可以用A代替。 按照utf8格式标准,U+00000000 - U+0000007F: 0 xxxxxxx 0x - 7x U+00000080 - U+000007FF: 110 xxxxx 1...

2012-05-13 13:12:25 350

练练手,用mina2.0搭建一个nio客户端

练练手,用mina2.0搭建一个nio客户端,连接服务器。mina2用NioSocketConnector连接,以前mina1的时候叫SocketConnector,现在SocketConnector是一个接口,要注意下区别。需要的东西,一个handler来处理各种io事件,一个ProtocolCodecFactory来对消息进行编码(ProtocolEncoder)和解码(Pro...

2012-05-08 16:03:16 126

搭建基于mina的网页游戏服务器-序

最近项目不太忙,打算整理一下代码,写一个连载博客,"搭建基于mina的网页游戏服务器",不知能否坚持下去。先想想分哪几个模块写,然后开始写。 应该是基础知识介绍,数据库部分搭建,服务器工具搭建,服务器框架搭建,后期的调优和维护。 应该还有别的,想到再加上。 2012-5-8...

2012-05-08 13:34:27 243

android网络连接Wifi和cmnet及cmwap的问题

困扰了我很久的,android ,http client无法直接使用cmwap,使用某些wifi会出错的问题,这2天被解决了,也是在网上无意看到别人说的就这么做了。 第一个。某些Wifi连接,有时候出现100-continue的错误,apache http client说什么协议错误,解决办法://关闭Expect:100-Continue握手//100-Continue握手需谨慎...

2011-10-27 23:43:23 144

cocos2d 开发入门

cocos2d是iPhone开发上的一个2d免费开源框架。可以用来开发2D游戏,官网网址是:www.cocos2d-iphone.org。 下载cocos2d-iphone-1.0.1版,2.0还是alpha版本,暂时先不下载使用。 下载完成后解压,下面开始安装,运行install-templates.sh脚本,会自动安装成功。 打开Xcode,新建一个工程...

2011-10-23 02:08:32 90

Android源码下载出现的问题

      在下载Android源码的时候,参照Android官方的文档,我的是mac的虚拟机,按照该页面的步骤http://source.android.com/source/initializing.html。Setting up a Mac OS X build environment。先创建一个40g的硬盘,大小写敏感的,日志的。不用写命令,在mac有ui工具可完成,很方便。 ...

2011-10-16 00:24:07 138

原创 Xcode3.2.6破解免证书真机开发调试

      Xcode只有破解后才能免费真机调试,否则需要注册苹果的开发者计划,需要99美元一年,除非发布程序到苹果商店,否则可以先不注册,破解到真机调试。真机为越狱后的ios设备,比如ipod,iPhone,iPad。我的iPod版本是4.3.3,Xcode版本是3.2.6,mac版本是10.6.8。第一步:创建证书打开应用程序->实用工具->钥匙串访问.打开菜单:钥...

2011-10-15 23:55:41 147

原创 Windows环境利用Vmware7.1.3 搭建iPhone开发环境

       开发iPhone程序必须要在MacOS下利用Xcode开发,可一个apple MacBookPro可要不少大洋,新的MBP少说8000,对于拿着基本生活工资的我们兼职就是一边天文数字,没有办法,用小黑顶替吧!下面就说说如何在windows环境下搭建iPhone开发环境。 硬件要求:1.CPU支持VT,称作虚拟技术,如果没有VT只能运行Mac OS X10.5了,10.6S...

2011-10-14 23:57:40 299

原创 实体环境中配置Android项目Ubuntu开发环境指南

原文出自:http://blog.csdn.net/chancechu/article/details/6871966实体环境中配置Android项目Ubuntu开发环境指南                                                                                                     ...

2011-10-14 23:02:05 104

原创 QQ空间g_tk算法

[code="java"] public int getGTK(String str){ int hash = 5381; for(int i = 0, len = str.length(); i < len; ++i){ hash += (hash

2011-08-17 23:17:28 258

原创 object c学习小记

    这几天在学习object c,把object c基础教程看的差不多了,作为c的衍生语言,不太难懂,但也模糊与object c的语法,想不通为啥要用中括号来调用方法,编辑代码麻烦,哪有c原生的括号方式简单,既然你要学习人家,就得遵守人家的规则,哎,苹果牛逼了,于是object c也牛逼了!    在学习时也发现,obj c的class貌似就是一个struct,因为我可以通过c的结构指针方...

2011-07-11 00:09:53 146

C++学习小记

      很久没有写技术博客了,年后过来没有多少编程的工作,就这样一直荒废到现在,强烈的离职冲动充斥在我心里,可又不甘心这么就走了,慢慢拖拖做了一年的游戏还没有上线,如果就这么走了那可真是白玩了!回想这一年,游戏改版多次,翻做了很多次,自己也是只有编程半年,然后玩了半年!最近特别荒废,每天上班就是玩游戏,看新闻,玩微博,似乎很惬意,可谁知我心里的空虚!      这段时间在复习学习C++,虽...

2011-07-05 23:23:26 96

原创 Java解惑读书笔记2

从网上下的java解惑总共讲了61点,我拣一些,自己不知道的或者需要注意的分享出来,以作笔记。20.程序中的Unicode转义字符//\u0022是双引号的Unicode编码表示System.out.println("a\u0022.length() + \u0022b".length());// 2\u0022表示一个双引号",可以在编码时用\u0022代替双引号,当然不会有...

2011-05-07 11:10:37 132

Java解惑读书笔记1

1。奇偶判断,应该用i%2!=0为奇数来判断,因为当为负数的时候%2的结果可能会是-1,用i%2==1会出错。(i&1)!=0使用低位是否为1来判断是否奇偶。2。小数精确计算。java中的float和double都是不太精确的,容易造成精度丢失,比如System.out.println(2.00-1.10);结果不是0.9而是0.8999999999999999。一次我们可以用long...

2011-05-07 10:14:48 131

原创 JavaNIO开发的猜大小游戏

学习一下javaNIO用法,就开发了个简单的小游戏,猜大小,服务端用javaNIO api写的,客户端用的普通的socket,一个服务端支持多个客户端!每个客户端猜大还是小,然后由管理员控制开始猜测然后通知所有玩家。。。使用NIO传送数据,ByteBuffer需要用characterEncoding编码才行,要不然对方收不到。这是服务端代码:[code="java"] package ...

2011-04-27 19:53:30 239

哲学家问题除死锁-java解法

哲学家问题,java去除死锁的解法,琢磨了半天,要避免死锁就必须在得不到右边的筷子情况下放弃左边的筷子,如此才可!正所谓,退一步海阔天空。。。。[code="java"]public class Zhexuejia { public static void main(String[] args) throws Exception{ new Zhexuejia().t()...

2011-04-22 17:35:58 233

Android无法System.out.println出null

今天在采集错误时,发现有一个诡异异常:com.android.internal.os.LoggingPrintStream.println(LoggingPrintStream.java:298)抛出空指针异常,NullPointerException,奇怪了,我没有调用这个方法啊,只是System.out.println()出字符串信息?难不成println空指针字符串会出错为了验证...

2011-04-06 21:17:58 134

QQ牧场接口协议分析

QQ牧场接口协议分析 这几天蛋疼,于是分析了qq牧场的接口,然后弄了个Android版本的助手,目的就是简化游戏操作,说实在的,现在的这些游戏,整天偷啊,几百个好友要操作,那可真是累啊!一趟弄下来1个小时过去了!说一下自己的开发方法吧,通过firebug在火狐下分析每次调用的接口数据,由于是明文传输的json格式,非常容易采集数据,数据采集完毕,就是分析了,怎么分析,就是猜测!猜测...

2011-03-19 11:51:00 472

根据时间戳计算出时间格式java代码

[code="java"]import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.TimeZone;public class Time { /** * @param args */ public static void main(String[] arg...

2011-03-16 16:26:19 156

mongodb中mapreduce应该注意的问题

今天用mongodb统计,老是出错误,在反复改和看官网文档后,终于知道错在哪了!在使用mongodb的mapreduce时,需要注意以下2点:1.map中的emit的第二个参数和reduce返回的数据格式应该是一致的,否则会出现难以预见到的错误!2.reduce方法是被迭代调用的,同一个key也会被调用多次,所以计算和时不能根据vals.length计算,而应该是累加和!代码:...

2011-03-15 14:46:21 335

原创 Java常见笔试面试题

1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特...

2011-03-08 21:26:36 137

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除