原来这个项目,一直想做成CS模式的,BS模式对于炉石这样的游戏来说比较困难。

暴雪到现在也只出了 Windows 和 iPad版本的炉石,最大的问题还是在于如何在小屏幕下,实现最佳的客户体验。

Windows和iPad的屏幕不会太小,所以操作起来不会出现很大的问题,但是如果是手机的话,对于操作的客户体验是一个巨大的挑战。

iOs系统还可以限制iPad上运行,不能在iPhone上运行。Android的话,估计很难区别到底是Pad还是Phone。

(iPhone通过特殊手段还是可以运行炉石的)

如果是BS的炉石,还需要考虑浏览器的兼容性,特效能不能很完美的再现等等,也相当复杂(IE6也想跑炉石??)

这篇文章只是一个Demo的介绍和一个志愿者招募的序章,所以,也不会介绍具体的技术。

(其实还在开发中,很多东西需要慢慢整理)

这一次代码更新的非常多,将一个原本为CS设计的卡牌引擎修改为CS/BS共用的引擎,是一个非常困难的工作。

同时原来的游戏数据都是保存为XML的,XML序列化的时候,由于NET版本的问题,可能在旧的NET4.0中出现序列化的错误

所以,这次增加了JSON数据格式的支持,这样的话,应该不会有问题了。(Newtonsoft.Json.dll

BS的话,使用了HTML5的WebSocket来实现双工的通讯,支持服务器向浏览器推送消息。(使用了开源项目Fleck)

图形的话,由于Canvas不支持DOM操作,所以使用了 SVG 来绘图。(原本我对于Javascript没有好感,不过在写了这个项目后,渐渐觉得将Js当作C#来写,也蛮有趣的)

用到了Jquery 和 JqueryUI 作为对话框的实现方法

服务器界面:

浏览器界面

我想找一两个合作者,一起完成这个项目

1.能够确保有足够的时间和热情进行开发,三分钟热度的请绕道

2.需要一个组织能力强的人来分配和协调工作,如果你组织能力强,我也可以听你指挥,最好精通Git的协同工作。Git我不熟悉,只会简单操作。

3.需要一个专门做文档的同志,将这个项目的代码转化为文档,需要细心的人做这件事情。如果是能力特别强的大学生,可以作为毕业设计和求职的材料。

4.考虑为这个项目做一个网站,以后开发工作的展开,BUG的报告,向大众介绍这个东西,都可以托管在网站上。

希望这个夏天能做完它。Git地址  https://github.com/magicdict/HearthStone

估计现在还缺一些文件没有提交上去,谁能编译一下告诉我结果吗

炉石传说 C# 开发笔记(BS模式Demo)的更多相关文章

  1. 炉石传说 C# 开发笔记(6月底小结)

    炉石传说的开发,已经有30个工作日了. 关于法术的定义方法,有过一次重大的变更:法术效果是整个炉石的核心,正是因为丰富的法术效果,才造就了炉石的可玩性. 原来构思的时候,对于法术效果没有充分的理解,所 ...

  2. 炉石传说 C# 开发笔记

    最近在大连的同事强力推荐我玩 炉石传说,一个卡牌游戏.加上五一放一个很长很长的假期,为了磨练自己,决定尝试开发一个C#的炉石传说. 这件事情有人已经干过了,开发了一个网页版的炉石,但是貌似不能玩... ...

  3. 炉石传说 C# 开发笔记 (续)

    炉石传说山寨的工作一直在进行着,在开发过程中深深体会到,对于业务的理解和整个程序的架构的整理远比开发难得多. 在开发过程中,如果你的模型不合理,不准确,很有可能造成代码的混乱,冗余,难以维护和扩展性比 ...

  4. 炉石传说 C# 开发笔记(BS上线尝试)

    昨天买了一个月的1G 1核的服务器,由于不是新用户,所以没有享受到阿里的6个月免费的优惠. (阿里脑残,为什么不对于续费或者升级免费呢?) 在服务器的通讯上面已经OK了,完全绕过了ASP.NET,就是 ...

  5. 炉石传说 C# 开发笔记 (源代码整理公开)

    源代码已经整理过了,去除了不需要的项目. 注意:以前文章中出现过的Git已经变更过了,请以前关注过,Fork过的朋友,重新Fork一下. GitHub地址 卡牌XML文件的做成:(Git上面是没有XM ...

  6. 炉石传说 C# 开发笔记 (法术篇)

    炉石的设计,最核心的内容是法术效果. 法术卡牌,无疑是法术的集中体现,但是,法术效果除了在法术卡牌之外,也不除不在. 随从的战吼,亡语,奥秘的揭示等等都是法术效果的体现. 法术卡牌在炉石里面有很多种( ...

  7. 炉石传说 C# 开发笔记 (初版)

    法术资料说明 1.资料的准备 从GitHub上面获得的工程里面,是没有XML卡牌资料配置的,这个是需要你自己生成的. 打开炉边处说的客户端 然后按下  卡牌资料生成 将炉石资料文件设定为 Github ...

  8. Qt+MPlayer音乐播放器开发笔记(一):ubuntu上编译MPlayer以及Demo演示

    前言   在ubuntu上实现MPlayer播放器播放音乐.   Demo                Mplayer   MPlayer是一款开源多媒体播放器,以GNU通用公共许可证发布.此款软件 ...

  9. stm32开发笔记(三):stm32系列的GPIO基本功能之输出驱动LED灯、输入按键KEY以及Demo

    前言   stm32系列是最常用的单片机之一,不同的版本对应除了引脚.外设.频率.容量等'不同之外,其开发的方法是一样的.  本章讲解使用GPIO引脚功能驱动LED灯和接收Key按钮输入.   STM ...

随机推荐

  1. 利用html 5 websocket做个山寨版web聊天室(手写C#服务器)

    在之前的博客中提到过看到html5 的websocket后很感兴趣,终于可以摆脱长轮询(websocket之前的实现方式可以看看Developer Works上的一篇文章,有简单提到,同时也说了web ...

  2. AngularJS快速入门指南17:Includes

    使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...

  3. C# 加密–RSA前端与后台的加密&解密

    1. 前言 本问是根据网上很多文章的总结得到的. 2. 介绍 RSA加密算法是一种非对称加密算法. 对极大整数做因数分解的难度决定了RSA算法的可靠性.换言之,对一极大整数做因数分解愈困难,RSA算法 ...

  4. DDD~WCF做中间件,实现多个项目的缓存共享

    回到目录 事情是这样的,前台网站有些数据不希望每次都从数据库里读,所以,应该做个缓存,而引起缓存更新的入口来自网站的后台管理,而前台和后台被部署在不同的网站中,这时缓存的更新就成了问题,前台的缓存与后 ...

  5. 知方可补不足~SQL为大数据引入分区表

    回到目录 一些概念 分区表在oracle和sqlserver中都上存在的,当数据表的数据量过大时,上千万,上亿的数据,在进行数据查询时需要显得比较慢,性能很差,这时是时候引入分区表了,分区表顾名思义, ...

  6. Atitit.attilax重要案例 项目与解决方案与成果 v6 qa15

    Atitit.attilax重要案例 项目与解决方案与成果 v6 qa15 1. attilax重要案例的分类(atiuse,auBackTech,bizImp)3 1.1. 两个book3 1.2. ...

  7. C#:使用Twain协议实现扫描仪连续扫描

    如果用Twain协议实现一次扫描多张图片?相信有接触过Twain协议与扫描仪通信的朋友都遇到过这样的问题.按照网上的例子,在连续送纸的扫描仪中,调用一次却只能扫描一张图片,怎么破? 关于这个问题 我研 ...

  8. 异步委托(APM)使用Func异步操作,处理耗时操作

    使用委托进行异步操作,处理一些耗时操作,防止主线程阻塞 使用例子: using System; using System.Collections.Generic; using System.Linq; ...

  9. Visual-Studio-2015-Cheat-Sheet Visual Studio 2015 快捷键列表

    PDF 文件下载 http://files.cnblogs.com/files/JamesLi2015/Visual-Studio-2015-Cheat-Sheet.pdf

  10. 去除IE6浏览器下获得焦点的元素的虚线框的两个小办法

    [1]onfocus = "this.blur()"//得到焦点时,失去焦点 e.g. <a href="#" onfocus = "this. ...