1

我正在用 Flash 开发一款益智游戏。这是一款包含一些实时元素的两人对战游戏。它不像俄罗斯方块,但玩家互动的水平和移动速度与 Facebook 上的俄罗斯方块之战相似,但稍微复杂一些。

当然,我想通过互联网匹配玩家。我也想尽可能地防止作弊。正因为如此,我正在研究一个权威的服务器解决方案,就像 Colin Moock 在这个类似问题的答案中描述的那样。也就是说,服务器运行权威游戏逻辑,而客户端运行并行模拟,将玩家动作发送到服务器进行验证。

我的问题是:这是否意味着在客户端和服务器端都实现游戏逻辑?更糟糕的是,服务器可能不会在 Flash/ActionScript 中运行其模拟,这意味着您无法共享代码,并且您将使用两种不同的语言两次实现相同的逻辑。这听起来像是一场逻辑混乱、漏洞百出的噩梦。我误解了这个问题吗?

4

1 回答 1

2

我曾在几家制作此类 Flash 游戏/应用程序的公司工作过,我可以告诉你,我还没有找到解决方案。如果你想要安全,一切都需要在服务器端进行评估,如果你想要响应能力,你的客户端需要能够在调用发送到服务器时处理事情。欢迎来到令人兴奋的客户端-服务器通信世界。

话虽如此,AS3 代码与 Java 极为相似,尤其是如果您已正确地将业务逻辑与视图分开的话。这使得编写 Java 服务器变得非常容易(我们培训了几位 Flash 开发人员在几天内编写服务器逻辑,但编写完整的服务器需要一些时间)。此外,您可能会很幸运地搜索到 Actionscript 到 Java 的转换器(尽管我所看到的一切都需要在之后进行一些手动更正)。

于 2011-11-14T01:41:23.470 回答