客户端或服务器端的Silverlight游戏逻辑?

时间:2010-08-01 12:00:34

标签: .net silverlight wcf silverlight-4.0

我现在遇到了一些问题。

我正在开发一款由两名玩家玩的纸牌游戏(Top Trumps)。我想知道如何最好地设置架构。

现在几乎所有游戏逻辑都是在客户端计算的。

游戏状态保存在数据库表中。数据库每秒更新一次。但是由于有两名球员在比赛,所以存在一些问题。这种方法很难解决问题。

使用WCF服务处理服务器端的所有游戏逻辑并使用客户端作为演示者可能会更好。 WCF将处理所有游戏逻辑,在数据库中保存/加载状态,两个客户端可以询问通过XML发送的游戏状态。

您如何看待这种方法?性能如何?或者有人可能知道更好的方法吗?

提前谢谢你。

2 个答案:

答案 0 :(得分:3)

服务器上的游戏逻辑是防止以任何有效方式作弊的唯一方法。永远不要相信客户。

答案 1 :(得分:1)

你应该在客户端和服务器中实现一些状态 - 例如,玩家不能放下一张牌然后在对手有机会玩牌之前立即放下另一张牌。不过你是对的 - 大部分逻辑应该在服务器端处理,客户端会间歇性地检查更新。