What is Marauroa
跳转到导航
跳转到搜索
Marauroa是一个开放源代码的多人在线游戏框架和引擎,用于开发回合制和实时游戏。 它提供了一种在可移植的且强大的服务器体系结构上创建游戏的简单方法。 该服务器使用Java编码,可以使用Python进行游戏描述,提供MySQL或H2后端,并使用TCP传输通道与数十名玩家进行通信。 我们的参考客户端使用Java和C语言进行编码,以实现最大的可移植性并也使用开放技术。
Marauroa的基础是我们称为“Action/Perception(动作/感知)”的哲学,每回合将表示周边世界的感知发送给客户端,客户端可以要求服务器以客户端的名义进行任何动作。 Marauroa完全不了解游戏,对您要做什么几乎没有任何假设。
Marauroa的基本原理是:
- 客户端使用可靠的TCP网络协议与服务器通信(反之亦然),以便在出现在线游戏延迟时提供更稳定的体验.
- 要玩游戏,每个玩家都需要在服务器上用用户名和密码标识一个帐户.
- 玩家使用其帐户登录服务器,然后选择一个存储在其帐户下的“玩家”进行游戏。 然后,服务器使用MySQL或H2后端检查登录信息,并使用持久性引擎将玩家加载到游戏中。
- 玩家将动作发送到服务器。 动作系统是完全开放的,没有任何硬编码,因此您可以完全根据自己的游戏风格进行编辑。 服务器每隔一定的时间间隔(称为回合)向每个玩家发送感知信息,以告知他们游戏状态和任何相关的状态修改。 Marauroa的感知系统基于Delta ^ 2形态:只需发送已更改的内容.
- 服务器每回合执行一些代码,以继续游戏状态。 使用此钩子可以轻松编写触发器、超时、条件以及所需的任何行为的代码.
- 服务器透明地自动将玩家和游戏状态修改存储在持久性引擎上,并由游戏开发人员决定如何使用其游戏定义脚本.
- 可以使用Python编写服务器端游戏规则,以实现简单,快速的开发,而无需重新编译规则引擎,也无需了解Marauroa的内部知识。 游戏规则也可以用Java编码。
- 服务器生成存储在数据库中的使用情况统计信息(以便您以后可以从它们中生成丰富的统计信息)。 或者,如果您不需要它们,可以将其禁用以节省CPU周期和磁盘空间。 Marauroa具有模块化结构,这意味着可以更改和禁用模块而不会影响其他模块的操作。
- 服务器和客户端都有完整的文档,除了普通的API文档外,还包含有关规格和设计的文档.
{{#breadcrumbs: Marauroa | 概述 | Marauroa是什么}}