2011-02-17 48 views
4

我在规划和建设学习一个Facebook游戏的阶段。在过去的一年中,我的首要问题是“Flash或HTML5?”。我没有试图决定这个答案,而是认为我会让市场有更多的时间去成熟,并学习如何设计游戏以及如何管理服务器元素。闪存VS HTML5为Facebook游戏 - 商业的角度来看

在过去的一年,我吞噬成千上万的关于游戏开发和业务的发展,在AS3,Python和PHP,C#和javascript得到一个坚实的基础,沿着文本的页面。所以,我最感兴趣的是选择一个最适合这项工作的系统,而不是假设游戏逻辑是Python,因为这是我最喜欢的。

本场比赛是在其核心的策略游戏,我打算使用很多手机广泛除了标准的Facebook的“邀请您的朋友”的特点。图形不会华丽,并且在大多数地方由于主题元素而相当平坦,而不是像farmville或其他Flash游戏一样的3D等距游戏。

因此,从技术角度HTML5没有任何真正的优势,我可以在闪光灯看到,而且也不具有闪光灯在HTML5任何真正的优势。如果你看到一个人比另一个人有明显的优势,那么我会很乐意在你的评论中听到这一点。

我有我需要你的意见五个主要问题:

1)平台使建立一个Facebook游戏考虑未来的市场趋势更好的感觉?
2)哪个平台有更好的内在元素来帮助防止作弊? (如Flash被编译成一个.swf VS的JavaScript以纯文本)
3)平台将是最好的游戏开发人才,为未来的员工最有吸引力?
4)哪种平台最容易从一款游戏中获取技术并将其用于未来的其他游戏? (如在闪存中开发等距图形)
5)哪个平台最容易与团队一起开发?

+3

JS/HTML 5在中低档RAM的计算机上遭受巨大的性能冲击。 Actionscript 3是一个更强大和灵活的编程语言。 – 2011-02-17 21:55:42

+1

我认为你决定的一个重要因素应该是市场饱和度/目标受众。如果您使用HTML5制作Facebook游戏,您的观众可能会比使用闪光灯的观众小得多。支持HTML5的浏览器在全球范围内(您居住的国家可能有所不同)肯定不是常态。 Flash确实有更广泛的接受和使用,但在移动领域受到限制。只需要考虑一些金块。 – TNC 2011-02-17 22:03:52

回答

11

这里有一些想法。请考虑他们的观点而不是事实 - 我确定我忘记了一些东西,或者其他人可能会有不同的想法。我希望有一个富有成果的讨论,因为我相信你的问题很重要,值得在交换意见;)

  1. 很难预测未来,但考虑到在未来的HTML5标准将不会被最终确认几年以及微软的浏览器都落后了(只有最新的IE测试版支持HTML5),专门为HTML5开发似乎对我来说是一个巨大的风险。对于iOS和Android设备来说,这很有意义,因为Safari和Chrome的Webkit实现都很相似。但是如果您想将游戏分发给“普通”个人电脑和笔记本电脑,我也不想在没有后备解决方案的情况下使用HTML5。简而言之:如果你能负担得起,那么做两个,如果没有,就用Flash(它在任何地方工作,除了iOS上的)。

  2. 我会说这两个平台具有大致相同的脆弱性问题:用户下载游戏客户端计算机的很大一部分。您可以使用模糊处理工具和加密​​,但通过一些确定和努力,可以对代码进行反编译和/或分析以发现作弊的漏洞。在客户端计算机上永远不可能完全安全,所以唯一的“真正”安全机制是将大部分游戏逻辑保留在服务器上。然而,由于性能和容量的限制,这并不总是可行的。此外,您将始终需要某种客户端应用程序,因此至少篡改通信渠道的可能性将保持不变。使用你能想到的所有可能的预防措施,保持警惕,采取一些常规方法来检查违规行为(合理性检查,报告异常高分等),并准备在发生奇怪事件时迅速做出反应。你应该在所有平台上都这么做,真的。

  3. HTML5和Flash的支持矢量图形,这对员工的良好基础。在这个领域,Flash有一个主要的优势,在我看来:它提供了一个体面的IDE来创建关键帧动画。我相信Adobe正在开发一个SVG导出函数,它将允许使用Flash创建的动画在HTML5中使用,但目前还没有。而且我不知道任何可以导出SVG动画的2D动画工具。 (如果别人知道一个,请评论!)

  4. 如果你设计你的程序架构是模块化和可扩展的,您有关于这两个平台上相同的可能性。唯一的区别是,在HTML和JavaScript中,源文件也是您的最终产品:所有资源(HTML页面,JavaScript文件,图像,CSS文件等)都可以作为单独文件使用,并且团队中的任何人都可以替换在FTP服务器上不中断其他程序部分的事情。在Flash中,必须编译源代码,并且资源通常直接打包到生成的二进制文件中。因此,无论何时,只要图像发生变化,您都必须重新部署Flash二进制文件 - 除非您的项目被编程为在外部加载资源。一定要尽早决定资源管理战略,不仅要根据技术要求,还要根据工作流程的需求。

  5. 成功的团队编程,以我的经验,与其说是使用的编程语言的一个问题。借助现代工具,您可以为每个平台设置有用的团队实用程序,如版本控制,单元测试和持续集成。我会尝试去寻找一个平台,让我工作的大多数人了解和/或受过良好培训(例如,如果已经有一个核心团队),或者我自己也很满意能够跟进开发过程。这也取决于你可以找到和负担得起的人才类型。这一切都归结为:当没有人有效地使用它时,即使是最好的技术也有什么好处?

0

这取决于游戏,但老实说,闪光是要走恕我直言。浏览器将始终存在问题渲染。如果你想拥有iPhone和iPad的支持,HTML 5更像是一个热门话题,它的推动力就在于它。许多其他社交游戏公司只是将他们的成功游戏移植到本地应用程序,如果他们赚了很多钱的话。

1)考虑到未来的市场趋势,哪个平台更适合构建Facebook游戏?

Flash没有富媒体替代选项。对于任何复杂的游戏,Flash是唯一的出路。就后端而言,这是非常主观的。 Ruby,Python,C#,Php在社交游戏行业中都很常见。

2)哪个平台有更好的内在元素来帮助防止作弊? (如Flash被编译成.swf vs javascript为纯文本格式)

作弊行为在任何社交游戏平台都非常猖獗。 Flash可以完全反编译,因此您的安全需要始终处理服务器端。 Flash和HTML 5将具有完全相同的反作弊解决方案:服务器端验证一切。

3)哪个平台最适合未来招聘的最佳游戏开发人才?个人而言,与HTML 5渲染怪癖的争斗是一个巨大的痛苦。 Flash有它的问题,但总的来说,这很容易,你和渲染速度战斗,并将Flash Player推向极限。

4)哪个平台最容易从一个游戏中获取技术并将其用于未来其他游戏? (如在闪存中开发等距图形)

Flash。但我不会超越自己。制作一个有趣的标题,然后担心移植它。将网络游戏移植到移动平台不是1:1端口,您必须重新考虑UI和游戏本身。理想情况下,您不必重新编码服务器游戏逻辑。

5)哪个平台最容易与团队共同开发?

相同。