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 }}