UDN
Search public documentation:

UT3ServersCH
English Translation
日本語訳
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

虚幻竞技场3的服务器管理

文档概要:第三代虚幻竞技场游戏的服务器管理方面的权威指南。

文档变更记录:由Richard Nalezynski?创建。

简介

运行虚幻竞技场的专用服务器是一个有趣并有益的经历;并且多于某些人来说,它是全职工作。运行服务器可以帮助保持Unreal社区的活跃度!

本文档的目的是为那些对服务器管理感兴趣的人提供它们成功地运行他们自己的服务器所需要的信息。

要想获得更多的信息,请参照虚幻竞技场3的官方的Epic论坛: http://forums.epicgames.com/forumdisplay.php?f=20.

运行专用服务器

PC服务器

UT3 server <map name?options?etc> <-login> <-password>

server 要求以专用服务器方式进行启动。在它后面的第一个参数必须是地图名称。

map name 输入了您想在服务器上启动的地图的名称。(比如: "UT3Demo server DM-Heatray -login -password"将会使用默认的设置在DM-Heatray上启动专用服务器。)

-login= 你必须从命令行中指出有效的GameSpy 登录信息来启动专用服务器。您可以在游戏中的标题屏幕的"Create Profile" 下创建这些信息。这些选项必须在命令行的最后面,在任何?选项的后面。

-password= 必须指出和登录密码相匹配的密码。您可以在游戏中的标题屏幕的"Create Profile" 下创建这些信息。这些选项必须在命令行的最后面,在任何?选项的后面。

?numplay=x 您在游戏中放置的AI机器人的数量。当玩家加入的游戏中时,这些机器人将会退出,并且当它们退出时玩家将替换它们。

?maxplayers=x 在您的游戏中您期望的人类或AI玩家的数量。这个数量将会在服务器浏览器中反应出来。

?timelimit=x 决定了服务武器旋转到下一个地图前必须过去的时间量。在达到这个时间限制之前,任何队伍的胜利也会触发地图的变换。

?goalscore=x 决定了触发一次服务器旋转所需要的'分数'。在CTF中,它是指旗帜夺取物。在DM/TDM中,是指一个个体或团队杀掉的人的数量。

?botskill=x AI(人工智能)机器人的技能等级。范围是从0到7,7是最难的等级。

?minnetplayers=x 开始一次比赛所需要的最少的人类玩家数量。

?game=UTGame.UTTeamGame 强制一个DM地图为TDM比赛。

?forcerespawn=x 强制立即重新产生被杀死的玩家。0代表关闭,1代表打开。

?vsbots=x 强制把所有的人类玩家归为一个队伍、所有的机器人归为另一个队伍。另外,它决定了机器人的数量是否比人类玩家多。1.0意味着AI机器人的数量和人类玩家数量相等,1.5意味着AI机器人的数量比人类玩家数量多50%,2.0 意味着AI机器人的数量是人类玩家数量的一倍。

?bUsesStats=x 决定了是否要把从服务器上获得的统计数据输出到排行榜。True代表输出,False代表不输出。

示例:

ut3 server DM-Deck?numplay=8?maxplayers=8?timelimit=20?goalscore=40?botskill=3 -login=FakeUser -password=FakePassword

这个配置将启动一个8人混战的DM-Heatray游戏。直到玩家加入之前,将会有8个中等难度级别的机器人存在于游戏中。它在服务器浏览器中将显示为 _FakeUser(虚假用户)。

PC服务器

随着PS3补丁包的发行(今天发行的),我们已经有了针对PS3 客户端的PC专用服务器。这个服务器仅用于PS3客户端,它不支持PC 对 PS3的对战(主要是因为它们的游戏帧频率的不同)。

介绍:

首先,安装专用服务器(默认的安装目录和PC专用服务器的目录一样,所以如果您已经安装了一个PC专用服务器那么您应该更改目录。)

因为这个服务器是在PS3GameSpy 命名空间中运行的,所以您将需要创建一个PS3 命名空间的GameSpy 账户。这个账户的名称可以和您的PC的GameSpy 账户一样,但是它们分别是不同的账户。为了完成上述过程,运行CreateAccount.bat文件:

CreateAccount.bat MyUserName MyPassword MyEmailAddr

从命令行中,运行一下命令:

utgame server <map?option?option> -seekfreeloading -login=MyUserName -password=MyEmailAddr

当然,请确保正常地设置了地图、选项和GameSpy 信息。注意它是 utgame.exe,而不是ut3.exe,并且您需要使用-seekfreeloading选项。

现在PS3服务器浏览器中应该出现了服务器(MyUserName?)。

注意: 这个服务器是不支持包下载的,所以实际上它仅用于真正地发行的地图、mutator等。在为PS3和PC烘焙 地图/mods 时可能会有太多的不兼容,并且PS3需要手动地安装mod,但是如果您尝试在服务器上设置一个密码,那么将不会有太多和那个问题相关联的PS3客户端了。不支持把PC DS的mods 添加到PS3上。

管理员名

这些命令允许服务器管理员远程地管理服务器。一旦登录到服务器,管理员便可以踢出并禁止存在问题的玩家。

?AdminPassword=<password>: 附加到命令行参数的尾部来启动服务器。

示例:

ut3 server DM-Deck?numplay=8?maxplayers=8?timelimit=20?goalscore=40?botskill=3 -login=FakeUser -password=FakePassword

当玩家登录到服务器时,他们可以通过按下 ~ 键来获得控制台,输入以下命令来访问管理员命令:++

AdminLogin <password>

示例:

AdminLogin FakeAdminPW

Admin(管理员)的登出模式将会关闭控制台,输入以下命令:

AdminLogout <password>

示例:

AdminLogout FakeAdminPW

当Admin在服务器类型上时踢出一个玩家:

Adminkick <playername>

示例:

Adminkick AnnoyingPlayer

当Admin在服务器类型上时踢出并禁止一个玩家:

Adminkickban <playername>

示例:

Adminkickban OffensivePlayer

通过修改服务器的 utgame.ini 文件可以删除对已经被禁止的玩家的限制。默认情况下它存储在以下位置:

C:\Documents and Settings\<Windows User Name>\My Documents\My Games\Unreal Tournament 3 Demo\UTGame\Config.

当Admin类型时,改变服务器显示的地图:

Adminchangemap <mapname>

示例:

Adminchangemap DM-Deck

注意,当启动服务器后,命令行中使用的参数中的目标和时间限制是持续存在的。当按照把VCTF 分数限制3转换为杀死人数限制3的方式切换游戏类型时,这将会产生一些问题。+ 但是,当启动服务器时把这些限制保留为空,那么它将使用那个游戏类型的默认值。这使得通过这个命令切换游戏类型时具有了更多的灵活性。

网络管理

我们已经创建了一个独立的网络管理应用程序 - 它和核心的游戏包相分离,从而可以使这个重要的功能获得更快的迭代和更新。

您可以在这里下载最新的网络管理包: http://www.epicgames.com/download/WebAdminPatch.zip

注意: 请确保安装最新的包!

以下是安装步骤: 1. 把 WebAdminPatch?.zip中的内容提取到您的UT3服务器安装目录的根目录中。请确保持档文件中的文件夹结构。

2. 启动您的服务器。这将会在您的/UTGame/Config/ 文件夹中创建一个新的配置文件: UTWeb.ini

3. 关闭您的服务器。

4. 在文本编辑器中打开/UTGame/Config/UTWeb.ini文件。

5. 对文件进行以下修改,设置您需要的任何网络服务器端口(默认是80):

    [UWeb.WebServer]
    ListenPort=80
    bEnabled=true

6. 保存文件,重新启动您的UT3服务器。这将会在您的/UTGame/Config/ 文件夹中创建一个新的配置文件: UTWebAdmin?.ini

7. 关闭您的服务器。

8. 在文本编辑器中打开 /UTGame/Config/UTWebAdmin.ini 文件。

对文件进行以下的可选的修改:

    [WebAdmin.WebAdmin]
    bHttpAuth=true

    [WebAdmin.BasicWebAdminAuth]
    RequireUsername=Admin

您不是必需要设置bHttpAuth 为真。当您保留它为假时,您会获得一个表格形式的日志,并且可以记住验证信息(时间持续1个月) 。当设置bHttpAuth 为真时,网络管理将会使用”基本的“http验证(就像先前的webadmin版本一样)。

RequireUsername? 设置也是可选的,当把它留置为空时,则可以接受任何用户名。这样多个管理员可以使用不同的名称登录服务器。登录名称也可以作为聊天过程中的昵称。

10. 保存文件,重新启动您的UT3服务器。

11. 通过打开网络浏览器并把它指向您的服务器的IP地址来测试Web Admin(网络管理)的功能。 如果您改变了默认的端口,那么您需要在URL指出那个端口。

12. 使用以下信息登录: - username(用户名) Admin - password(密码) [YourServerAdminPassword]

性能基准测试

Demo(演示)

和完整的游戏不同,演示不包含某些演示版的记录功能。但这并不意味着我们没有一丝希望进行性能基准测试了,因为虚幻竞技场3中的所有地图都有照相机浏览整个地图的功能,所以它可以用于静态几何体的GPU性能测试。这意味着它不能体现武器FX 和AI(人工智能)的性能消耗,但至少它可以完成一些功能。

以下是我们实现这个目的所使用的命令行开关:

MAPNAME?causeevent=FlyThrough?quickstart=1?nocusto mchars=1?numplay=0 -seconds=300 -unattended -novsync -fixedseed -CaptureFPSChartInfo -nomoviestartup

如果您想使用外部捕获应用程序,您可以删除"-CaptureFPSChartInfo"。默认情况下数据将会被写到您的My Documents文件夹的Stats 文件夹中。

另外,您或许想修改UTEngine.ini文件,并把 bSmoothFrameRate 的值从TRUE变为FALSEl来禁用帧频率平滑/限制,如下所示:

[Engine.GameEngine]
bSmoothFrameRate=TRUE

另一种形式的比较基准是以观众模式来运行机器人的比赛,尽管不同运行之间的变化非常大,所以这是进行较广范围的比较及趋势分析是很好的。我们已经说过,通过和机器人进行比赛的方法确实可以完全地测试您的系统,并且通过武器特效、玩家模型等可以对GPU施加压力。

以下是我们实现这个目的所使用的命令行开关:

MAPNAME?numplay=12?timelimit=5?automatedperftestin g=1 -unattended -novsync -fixedseed -CaptureFPSChartInfo -nomoviestartup

基准比较结果基于每个级别以HTML的形式存在于以下位置中,新运行测试的会显示在顶部。

My Documents\My Games\Unreal Tournament 3 Demo\UTGame\Stats