炉石传说的开发,已经有30个工作日了. 关于法术的定义方法,有过一次重大的变更:法术效果是整个炉石的核心,正是因为丰富的法术效果,才造就了炉石的可玩性. 原来构思的时候,对于法术效果没有充分的理解,所以只将效果数据做成了常数,例如 造成5点伤害. 随着更加深入的解除,发现还有 毁掉你的武器,对所有随从造成武器攻击力的伤害,这样的话,效果是一个 表达式. 然后考虑到,有些追加效果,例如,对某个随从造成2点伤害,如果这个随从没有死,则抽一张牌, 这里就牵涉到了根据条件追加效果的处理. 同时,德鲁伊的…
原来这个项目,一直想做成CS模式的,BS模式对于炉石这样的游戏来说比较困难. 暴雪到现在也只出了 Windows 和 iPad版本的炉石,最大的问题还是在于如何在小屏幕下,实现最佳的客户体验. Windows和iPad的屏幕不会太小,所以操作起来不会出现很大的问题,但是如果是手机的话,对于操作的客户体验是一个巨大的挑战. iOs系统还可以限制iPad上运行,不能在iPhone上运行.Android的话,估计很难区别到底是Pad还是Phone. (iPhone通过特殊手段还是可以运行炉石的) 如果…
最近在大连的同事强力推荐我玩 炉石传说,一个卡牌游戏.加上五一放一个很长很长的假期,为了磨练自己,决定尝试开发一个C#的炉石传说. 这件事情有人已经干过了,开发了一个网页版的炉石,但是貌似不能玩.... http://cnodejs.org/topic/529c1366a6957a0809485f3d 如果这位同志看到这篇文章,请一定和我联系!! rudermail@qq.com或Q我377372779 第一天 开始学习炉石传说的玩法,最好的方法是不停的玩游戏. 一个应用是否逻辑清晰,取决于你对…
炉石传说山寨的工作一直在进行着,在开发过程中深深体会到,对于业务的理解和整个程序的架构的整理远比开发难得多. 在开发过程中,如果你的模型不合理,不准确,很有可能造成代码的混乱,冗余,难以维护和扩展性比较差等问题. 当然,除去领域专家之外,很少人对于一个新的事物可以在一开始就把握住整个核心业务. 接下来讲讲整个程序的构造: Card类库:将整个业务逻辑封装在里面,包括了服务器和客户端的通信逻辑.通信协议的编码和解码.现在是为了炉石定制的,以后想改写成更加通用的. CardHelper:一个辅助程序…
昨天买了一个月的1G 1核的服务器,由于不是新用户,所以没有享受到阿里的6个月免费的优惠. (阿里脑残,为什么不对于续费或者升级免费呢?) 在服务器的通讯上面已经OK了,完全绕过了ASP.NET,就是单纯的服务器和浏览器在通讯,页面也只是静态的页面,纯HTML5 + JS. 通讯是WebSocket,绘图SVG.不知道为什么,对于固定的文字,UC的文字绘制是OK的,对于JSON反序列化的对象,所有的绘制都是有问题的. 初步怀疑是由于使用了汉字,然后没有设置编码,造成了JS的本地反序列化不对. 服…
源代码已经整理过了,去除了不需要的项目. 注意:以前文章中出现过的Git已经变更过了,请以前关注过,Fork过的朋友,重新Fork一下. GitHub地址 卡牌XML文件的做成:(Git上面是没有XML文件的,原因是数量比较多,更新比较频繁,所以,运行游戏前,请自行生成) 代码里面有一个CardHelper的工程,运行这个工程: 资料导入导出…
炉石的设计,最核心的内容是法术效果. 法术卡牌,无疑是法术的集中体现,但是,法术效果除了在法术卡牌之外,也不除不在. 随从的战吼,亡语,奥秘的揭示等等都是法术效果的体现. 法术卡牌在炉石里面有很多种(200种),但是具体整理后,大约也只有10个种类,每个种类通过法术对象的指定方式,效果点数的不同排列组合,演化出了不同卡牌效果. 例如攻击类的卡牌,  通过攻击次数的不同(奥术飞弹是3次),攻击对象不同(有的是只能攻击随从,有的只能攻击英雄,有的两者都可以), 攻击方向不同(有的可以攻击对方,有的是…
法术资料说明 1.资料的准备 从GitHub上面获得的工程里面,是没有XML卡牌资料配置的,这个是需要你自己生成的. 打开炉边处说的客户端 然后按下  卡牌资料生成 将炉石资料文件设定为 Github上面的卡牌整理版本文件. XML文件夹则可以选择一个任意目录. 然后按下  导出到 XML ,则会自动生成XML文件夹和各个卡牌资料文件. 如果卡牌整理版本文件没有更改,则这个操作只需要做一次就可以了. 感谢网友chucklu的意见,由于NET4.0版本的问题,有些机器不能正常序列化 这个问题正在调…
前言   在ubuntu上实现MPlayer播放器播放音乐.   Demo                Mplayer   MPlayer是一款开源多媒体播放器,以GNU通用公共许可证发布.此款软件可在各主流操作系统使用,例如Linux和其他类Unix系统.Windows及Mac OS X系统.  MPlayer基于命令行界面,在各操作系统也可选择安装不同的图形界面.mplayer的另一个大的特色是广泛的输出设备支持.它可以在X11.Xv.DGA.OpenGL.SVGAlib.fbdev.AA…
前言   stm32系列是最常用的单片机之一,不同的版本对应除了引脚.外设.频率.容量等'不同之外,其开发的方法是一样的.  本章讲解使用GPIO引脚功能驱动LED灯和接收Key按钮输入.   STM32系列GPIO驱动LED灯   先来笔者根据自己使用的开发板的电路来使用GPIO进行LED操作,下图是笔者使用的开发板LED灯的电路图:    引脚PD6接LED1,PD12接LED2,PD13接LED3,电阻是限流电阻(计算方式高电平减去LED1的压降,然后除以LED能流过的电流).  复制模版…
前言   开发一个支持全国的IM聊天,可以有基本的功能,发送文本.图片.文件等等相关内容.   腾讯IM产品 概述   腾讯即时通信IM是腾讯推出的即时聊天程序,当前时间为2020年3月(腾讯IM的优惠活动和售卖方案不同时期会有变化).  该IM提供各端接入接口.稳定必达.覆盖全球的即时通信云服务上. 应用场景   包括但不限于以下场景:     特点 消息传输   支持文字.图片.短语音.短视频等富媒体消息及自定义消息与自定义表情,支持保存历史漫游消息,集成消息撤回.消息转发.安全打击等扩展能…
前言   做一些数据处理软件,使用matlab文件,.mat文件.   准备条件   安装matlab2016,发现是vs 12(是vs2011版本),Qt5.9.3是支持vs 14(是vs2015版本),安装matlab2020a版本(该版本是vs 14版本的,每年matlab上半年发布a版本,下半年发布b版本).  安装请自行百度,下载,解压,安装都比较费时间.  安装完后:     Qt的准备条件   (Qt5.9.3+QtCreator+msvc2015)  挑选Qt的版本,需要支持ma…
前言   目前主流国产芯片为RV11XX.RK33XX.Hi35XX系列,本系列开启Hi3516系列的开发教程.   Hi3516DV300芯片介绍   Hi3516DV300为专业行Smart IP Camera Soc. 主要特点      芯片逻辑框图    Hi3516DV300 HD IP专门用于做摄像机解决方案      开发板 开发板实物    开发板资源        开发版本提供资料   总的资料如下:    我们主要用到的就是"03硬件文档"和"04海思原…
原文:http://blog.csdn.net/aqi00/article/details/50012511 知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平.因此博主就想,入门的东西咱就不写了,人不能老停留在入门上:其次是想拾缺补漏,写写虽然小众却又用得着的东西:另外就是想以实用为主,不求大而全,但求小而精:还有就是有的知识点是java的,只是Android开发也会经常遇上,所以蛮记下来.个人的经…
欢迎转载,请注明作者[燕良@游戏开发]及原文地址:http://blog.csdn.net/neil3d/article/details/39580197 另外.欢迎大家来我的QQ群交流各种游戏引擎相关的技术:游戏引擎能吃吗(264656505) 话说,经过这段时间的学习和摸索.对于Unity3D的开发思路已经基本清晰了. 只有还剩下一个AssetBundle机制还没有搞透,这个涉及到前期项目的资源规划.资源管理代码的写法.以及自己主动更新机制的实现. 所以,还是想先把游戏逻辑的进一步分析押后,…
前言   上一篇已经将himpp套入qt的基础上进行开发.那么qt中拿到frame则是很关键的交互,这是qt与海思可能编解码交叉开发的关键步骤.   受限制   因为直接配置sample的vi比较麻烦,确实是困难的,其实就是配置驱动,所以我们只能从开发板的demo入手,去在相等条件下探测可能的留,从vpss中拿取后,进行软编码.  当然,如果不用qt还有一种方式,也就是大量开发海思人员使用的方式,是基于sample写一个编码程序,然后使用本地socket交互,其实绝大部分海思开发者都是这样开发的…
引言 简单介绍一下Cordova的来历,Cordova的前身叫PhoneGap,自被Adobe收购后交由Apache管理,并将其核心功能开源改名为Cordova.它能让你使用HTML5轻松调用本地API接口和发布应用到商店的应用开发平台.有低成本,低开发周期,轻量化等优点.它统一封装了Andriod,IOS,WindowsPhone,Symbian等几大移动开发平台的API,采用HTML5+JavaScript的混合开发的模式来开发智能移动的APP,解决系统兼容等问题.使用Cordova把APP…
在上一篇文章<安卓开发笔记——重识Activity >中,我们了解了Activity生命周期的执行顺序和一些基本的数据保存操作,但如果只知道这些是对于我们的开发需求来说是远远不够的,今天我们继续探索Activity,来了解下关于Activity任务栈和Activity四种启动模式的区别. 为什么需要了解关于Activity的任务栈,其实最直接的体现就是提高用户交互友好性. 举个例子,当我们去浏览一个新闻客户端的时候,我们进入了新闻详情页,在这个页面有相隔两条的新闻标题,当我们去点击这个标题的时…
关于广告轮播,大家肯定不会陌生,它在现手机市场各大APP出现的频率极高,它的优点在于"不占屏",可以仅用小小的固定空位来展示几个甚至几十个广告条,而且动态效果很好,具有很好的用户"友好性",下面来看几个示例图:     再来看下我仿写的效果: 关于广告轮播Banner这个东西,GitHub上面应该有现成的开源组件,不过我没去找过,觉得实现起来不会太难,就自己去仿写了,下面我说下实现的思路: 1.首先看到这个可以滑动切换图片的界面,我们很自然就会想到ViewPager…
Text主要总结UILabel.UITextField.UITextView.UIMenuController以及UIWebView/WKWebView相关的一些问题. UI细节主要总结界面交互开发中遇到的一些细节问题,包括Masonry部分的问题. 动画介绍最近用到的两个,算是常用级别的,动画这部分之后会专门研究总结下. 最后介绍两个工具及三个Xcode使用设置的问题. 1.Text (1)UILabel显示多行文字并且文字置顶显示 不限制UILabel的高度(宽度需要设置,确定文字何时换行)…
这一篇主要总结iOS开发中进行HTTP通信及数据上传下载用到的方法.网络编程中常用的有第三方类库AFNetworking或者iOS7开始新推出的NSURLSession,还有NSURLSession的前任NSURLConnection.一般情况下,使用AFNetworking即可满足绝大多数要求,并且更简洁高效. 1.HTTP协议之POST与GET 访问网络数据大部分都要用到HTTP协议,通过HTTP协议向服务器请求数据,再通过HTTP协议获得服务器的响应数据,常见的操作主要是POST与GET,…
智能手机版(简称M版)前端开发终于告一段落,第一次做移动端开发,没有想象中那么难搞,但是期间也遇到了各种这样那样的问题,虽然从小日记都不是自己写的,但是开发笔记还是要自己写的,不敢说让别人学习,只是仅以备忘,这算是序了. 关于M版,目前我们只考虑 iphone 跟 android 手机的兼容性,也就是说只需要考虑 webkit 内核的手机浏览器,这样可以放开大胆的使用 HTML5.CSS3 来实现一些效果,完全不用考虑 IE6,甚至连 IE 都不用考虑,这一点对于很多时间都在纠结于各种浏览器兼容…
这篇文章还不错,使用  .net , 对微信用户的想公众号发送的文字进行回复.比较简单,自己可以修改更复杂的回复. 微信公众号开发笔记(C#) 原文地址 需求分析 根据用户在微信上发送至价值中国公众号的消息,查询与该消息相关的内容返回给用户. 例如,用户发送[美国经济]后收到包含[美国经济]的内容,点击可查看全文.若没有查询到相关内容,则返回默认消息.   运行环境 .NET   准备工作 1.在微信公众平台申请开发者. 2.功能页面完成后上传至自己的网站并能正常访问该URL(以下统称:目标接口…
firefox 扩展开发笔记(三):高级ui交互编程 前言 前两篇链接 1:firefox 扩展开发笔记(一):jpm 使用实践以及调试 2:firefox 扩展开发笔记(二):进阶开发之移动设备模拟 最新版本的Firefox 终于舍弃了鸡肋的xul布局,可以使用原生的html用作ui交互,插件界面中可以引入 bootstrap jQuery等库,大大简便了布局和高度自定义化,本文以一个随机自定义referer 实例来记录jpm 高级ui交互编程. 界面布局 ui 控件 官方api中提供的ui控…
//////////////////////////// 注意: 此博客是个人工作笔记 非独立demo////////////////////////////////// ....................................................................................................................................................................…
 关于CS(Client-Server)模式和BS(Browser-Server)模式的水很深,盆地自己也认为对此了解不够透彻,但作为手机客户端设计,如果不对CS.BS做一定程度的了解,是很容易出现一些方向性的错误.走一些弯路抑或在实现性价比上付出过多代价.       本文偏向于基础知识,产品人员很多情况下不仅仅要了解表现.交互,还需要一定程度上了解可实现性.实现代价.实现形式.实现限制等.   二.CS模式产品       CS(Client-Server)模式:顾名思义为客户端-服务器的意…
我将不得不拿出一个完整的开发笔记.由于个人原因.代码已OK该,博客,那么就不要粘贴代码,直接解释了整个游戏设计,更确切地说,当新手应该注意的地方发展. 1.继承类和扩展作用的权----展阅读(MVC). 我们要封装一个角色类,第一印象就是封装一个继承自sprite的精灵,里面封装好玛丽的动作和角色属性等.继承自sprite是可行的,我们仅仅要重写几个static create函数,然后把这个精灵贴到层上就可以. 细致考虑一下,假设角色要再加入一个特效尾随呢.角色吃到道具出现幻影分身呢?一系列的B…
 炉石传说  Problem Description GG学长虽然并不打炉石传说,但是由于题面需要他便学会了打炉石传说.但是传统的炉石传说对于刚入门的GG学长来说有点复杂,所以他决定自己开发一个简化版的炉石传说. 在简化版的炉石传说中: 每个随从只有生命值和攻击力,并且在你的回合下,你的每只随从在本回合下只能选择一个敌方随从进行攻击.当两个随从a,b交战时,a的生命值将减去b的攻击力,b的生命值将减去a的攻击力,(两个伤害没有先后顺序,同时结算).如果a或b的生命值不大于0,该随从将死亡. 某一…
李兴华JavaWeb开发笔记 1.Java语法-基础 环境变量-JAVA_HOME, PATH, ClassPath 变量名 作用 举例 JAVA_HOME 指向JDK目录 C:\Program Files\Java\jdk1.7.0_21 PATH 指向java.exe目录. %JAVA_HOME%\bin; %JAVA_HOME%\jre\bin CLASSPATH 执行.jar文件.zip文件..class文件所在目录. (程序要用到哪些.class文件,) %JAVA_HOME%\lib…
题目链接:http://acm.fzu.edu.cn/problem.php?pid=2232 Description GG学长虽然并不打炉石传说,但是由于题面需要他便学会了打炉石传说.但是传统的炉石传说对于刚入门的GG学长来说有点复杂,所以他决定自己开发一个简化版的炉石传说. 在简化版的炉石传说中: 每个随从只有生命值和攻击力,并且在你的回合下,你的每只随从在本回合下只能选择一个敌方随从进行攻击.当两个随从a,b交战时,a的生命值将减去b的攻击力,b的生命值将减去a的攻击力,(两个伤害没有先后…