GameServer世界管理

时间:2017-11-29 19:40:07

标签: java multithreading server

我正在用Java创建2D游戏。世界是基于多维数据的磁贴,我有服务器 - 客户端系统的体系结构。 客户端/客户端连接是多线程的。

现在我的问题是: 我的客户端是否应该向服务器发送请求以在其视图范围内询问当前的世界状态(具有实体等...),还是应该在我的连接/用户类中创建另一个线程,仅用于每个servertick发送世界数据? 或者是否有更好的解决方案来向他的实体发送/请求世界?

感谢您的帮助;)

1 个答案:

答案 0 :(得分:0)

在游戏中,您经常不想信任客户。服务器字是法律,客户端应该很少依赖它们。

  

我的客户端是否应该向服务器发送请求以询问当前的世界状态

可能不是,因为客户端不知道何时有更新信息

服务器知道什么时候更新以及提供什么信息,服务器在需要时将数据发送到客户端会更有意义

关于发送数据的频率,每当客户端视图中的某些内容发生变化时(无论是来自客户端操作还是仅仅是移动),都会发送数据

这可能经常在快节奏的游戏中(即子弹地狱),或者在慢速游戏(即棋盘游戏)中更少,