Configuration file server.ini

来自gamedev
跳转到导航 跳转到搜索



使用名为server.ini的配置文件配置服务器。 可以使用-c命令行参数使用其他文件. 大多数情况下游戏会提供 GenerateINI 程序以帮助你生成 server.ini 文件. 不过,了解一下有哪些参数以及如何设置它们还是很有趣的.

如果您正在编写自己的游戏,则还应该看看如何提供GenerateINI程序。

数据库配置Database Configuration[编辑]

Marauroa 需要访问数据库。 MySQL和H2得到了很多积极的支持和测试。 其他数据库也可以工作,但也许需要一些调整。

H2很酷,因为它不需要设置数据库服务器就可以开箱即用: 您只需要指定一个将自动创建的文件名。 在本例中,它被称为marauroa-h2db,“~”表示它是在主文件夹中创建的。

# example database connection to H2
database_adapter=marauroa.server.db.adapter.H2DatabaseAdapter
jdbc_url=jdbc:h2:~/marauroa-h2db;AUTO_RECONNECT=TRUE;DB_CLOSE_ON_EXIT=FALSE;AUTO_SERVER=TRUE
jdbc_class=org.h2.Driver

MySQL是一种传统的数据库服务器,因此,必须单独设置。 创建数据库和用户后,可以按如下方式进行配置:

# example database connection for MySQL
jdbc_url=jdbc:mysql://localhost/marauroa
jdbc_class=com.mysql.jdbc.Driver
jdbc_user=username
jdbc_pwd=password

游戏配置[编辑]

下一部分是针对游戏的。 您通常不必进行编辑。 它允许游戏定义自定义框架的类。 本教程对此进行了详细说明.

# 游戏有关的配置
database_implementation=games.stendhal.server.core.engine.StendhalPlayerDatabase
factory_implementation=games.stendhal.server.core.engine.StendhalRPObjectFactory
world=games.stendhal.server.core.engine.StendhalRPWorld
ruleprocessor=games.stendhal.server.core.engine.StendhalRPRuleProcessor
python_script=

服务器[编辑]

在服务器部分,您可以配置tcp端口和回合时间。 通常,游戏会为这两种设置提供建议。 您可以通过为statistics_filename参数提供文件名来启用服务器统计信息的日志记录。 如果需要调试服务器,则可以提供自己的log4j配置文件.

tcp_port=32160
turn_length=300
statistics_filename=server_stats.xml
log4j_url=marauroa/server/log4j.properties

版本与联系信息:

server_typeGame=stendhal
server_service=stendhal
server_name=Stendhal server
server_version=0.81
server_contact=https://sourceforge.net/tracker/?atid=514826&group_id=66537&func=browse

限制[编辑]

您可以定义一些限制,以防止因海量数据、大量消息或大量玩家而崩溃。 如果您的服务器连接的是小型Internet连接,则此功能特别有用.

allowed_bytes_per_second=1024
allowed_messages_per_second=20
max_number_of_players=128

第二套设置与上述设置非常相似。 但是那些与资源使用无关,而是与预防故障有关:

account_creation_counting_time=3600
account_creation_limit=5
parallel_connection_limit=10
ip_whitelist=127.0.0.1

其他限制:

limit_characters_per_account=2147483647

帐号及角色创建[编辑]

从Marauroa 3.8.4开始,可以使用以下命令禁用帐户和角色创建

allow_account_creation=false
allow_character_creation=false

如果使用其他方式创建帐户,这将很有用。 例如,从另一个应用程序填充account,characters和rpobjects表。 它在stendhalgame.org上用于测试服务器,因为测试数据库与主数据库共享帐户.

从Marauroa 3.9.5开始,可以定义新帐户的初始状态.

account_creation_status=active

RSA[编辑]

RSA是用于保护客户端服务器通信的加密算法。 注意:您需要使用GenerateINI生成一对自己的素数。 不要使用以下示例.

n=2408376769632966826891253753617412746862686794740723175774423430043927850498085639220684795629747326949838501777926669337171495421818563824539329224927899179237
e=15
d=2247818318324102371765170170042918563738507675091341630722795201374332660464879838332237004076252849654527963214772652641735279016325354691167883850414929419335

{{#breadcrumbs: Marauroa | 使用 | server.ini }}