Difference between revisions of "Bots/zh-hans"
m |
|||
(21 intermediate revisions by 10 users not shown) | |||
Line 1: | Line 1: | ||
− | [[Image:Tr_dustbowl0003. | + | {{DISPLAYTITLE:电脑玩家}} |
− | {{Quotation|''' | + | [[Image:Tr_dustbowl0003.png|right|thumb|300px|一个[[Soldier/zh-hans|士兵]]机器人在[[Dustbowl (Training)/zh-hans|Dustbowl 训练]]地图中活动。]] |
+ | {{correction}} | ||
+ | |||
+ | {{hatnote|这个页面是关于在游戏中的军团要塞 2 的电脑玩家。对于[[Team Fortress Wiki/zh-hans|军团要塞官方维基百科]]上的电脑用户,请参阅[[Help:Group_rights#Bots|机器人]]。对于介绍在[[Team Fortress Classic/zh-hans|《军团要塞:经典》]]的电脑玩家,请参阅[[Bots (Classic)/zh-hans|电脑玩家(经典)]]。对于介绍在[[Mann vs. Machine (update)/zh-hans|{{common strings|Mann vs. Machine}}]]的机器人,请参阅[[Robots/zh-hans|机器人]]。关于别的用处,请参见[[Robot/zh-hans|机器人]]。}} | ||
+ | |||
+ | {{Quotation|'''机枪手(电脑玩家)'''描述自己的钢铁拳头|我的拳头可是用钢铁做的!|sound=Heavy_specialweapon01.wav}} | ||
+ | |||
+ | 一个 BOT,又称机器人或电脑玩家,是服务器上[https://support.steampowered.com/kb_article.php?ref=9073-WOHK-7760 被电脑控制的玩家]。在军团要塞 2 中有两种'''机器人''':智能机器人以及木偶机器人。智能机器人使用了先进的人工智能代码进行编程,因此它们能学习玩家们在游戏中的动作,并且不需要开启[[Cheats/zh-hans|作弊]]模式来使用;木偶机器人没有人工智能,因此它们不会自动进行活动,但是它们对游戏测试以及训练有着显著帮助。若要使用木偶机器人,则必须在建立服务器时开启作弊模式,此时将不能完成[[achievements/zh-hans|成就]]。 | ||
− | |||
==智能机器人== | ==智能机器人== | ||
− | + | 智能机器人能够学习玩家的动作并且不会受玩家直接控制。同时,它们都是以随机方式选择[[classes/zh-hans|兵种]]的。他们使用复杂的人工智能代码编程,即使用''求生之路''一系列中生还者机器人以及被感染者机器人的代码设置。<ref>[http://teamfortress.com/post.php?id=3279 军团要塞官方日志 - "Erectin a dispenser"]</ref>添加智能机器人不需要服务器开启作弊模式,因此可以借此完成各种成就;不过有一个例外:机器人被杀后不会见到[[Deathcam/zh-hans|死亡摄像]];因此,玩家不能通过智能机器人得到与死亡摄像相关的成就。还有,用[[Strange/zh-hans|奇异]]属性的武器杀死机器人不会增加武器的杀敌计数,除非武器有着[[Strange Parts/zh-hans|奇异武器升级部件]]:机器人消灭数,则使杀敌数加到部件上而不是武器本身。 | |
智能机器人在以下情况能够间接被玩家进行一定程度的控制: | 智能机器人在以下情况能够间接被玩家进行一定程度的控制: | ||
− | * 在[[Setup time| | + | * 在[[Setup time/zh-hans|准备阶段]]内,任何被你准心指着的机器人都会做出[[taunt/zh-hans|嘲讽]]。 |
− | * 当你使用" | + | * 当你使用 "医生!" [[Voice commands/zh-hans|语音指令]]时,附近的己方[[Medic/zh-hans|医生]]机器人会为你治疗。 |
− | * | + | * 当治疗你的医生机器人的[[ÜberCharge/zh-hans|超级冲锋]]就绪时,使用 "冲!冲!冲!" 或者 "激活 Ubercharge!" 语音指令会让它立刻启动超级冲锋。 |
+ | * 受到重伤的医生机器人会马上启用自己的超级冲锋。 | ||
+ | * 机器人会试图参与同伴式嘲讽(例如[[High Five!/zh-hans|击掌]]或[[Conga/zh-hans|康茄舞]])。 | ||
===目前智能机器人的情况=== | ===目前智能机器人的情况=== | ||
− | + | 智能机器人目前还算是在测试阶段而且随着每次游戏更新智能机器人都会得到一定改进。目前,经过[[Hatless Update/zh-hans|无帽子更新]],所有的兵种的智能机器人都能正常运作,包括曾经有问题的[[Spy/zh-hans|间谍]]。智能机器人只能在大部分官方的[[King of the Hill/zh-hans|山丘之王]]地图、某些[[Payload/zh-hans|推车]]地图、攻防型地图 [[Dustbowl/zh-hans|Dustbowl]] 和 [[Gorge/zh-hans|Gorge]],[[Capture the Flag/zh-hans|夺旗]]地图,以及 [[Mann Manor/zh-hans|Mann Manor]] 上正常工作(在尾段两个地图中,智能机器人只能通过在控制台输入 tf_bot_add 指令来添加)。其他地图也可以使用这个方法添加机器人;但它们无法正常行动。 | |
− | + | ||
+ | ''注:目前已经有一些较为流行的地图被添加了[http://forums.steampowered.com/forums/showthread.php?t=1264447 一个提前制造的机器人路线套装]''。 | ||
− | '' | + | ====智能机器人名称==== |
+ | 智能机器人都有不同的名字,很多指着''军团要塞 2'',Valve 其它的游戏,以及电脑编程。很多这些名字在 [[Steam Users' Forums|Steam 论坛]]上被要求的。<!--If you encounter other names that aren't on the list, please add them--> | ||
+ | {{Bot names}} | ||
====在不支持机器人的地图中添加机器人的步骤==== | ====在不支持机器人的地图中添加机器人的步骤==== | ||
− | # 在控制台中输入"sv_cheats 1" | + | {{hatnote| 相关文章:{{vdc|Navigation Meshes}}}} |
− | # 在控制台中输入"nav_generate" | + | # 在控制台中输入 "<kbd>sv_cheats 1</kbd>"。 |
− | # | + | # 在控制台中输入 "<kbd>nav_generate</kbd>"。 |
− | # | + | # 等待系统为地图绘制路径点。 |
− | # 打开控制台,输入''"tf_bot_add < | + | # 重新载入地图(如果路径点已保存则不用重复之前步骤)。 |
+ | # 可选择修改绘制的路径来增入漏掉的数据并移除错误的数据。使用 "<kbd>nav_edit 1</kbd>" 来进入编辑模式。 | ||
+ | # 重载服务器(可选的,但是若不做,成就会仍然被禁用)。 | ||
+ | # 打开控制台,输入''"<kbd>tf_bot_add <数目></kbd>"''来选择添加机器人的数目。 | ||
+ | '''警告:如果开启着机器人时候编辑路径,游戏很可能会崩溃。''' | ||
− | '' | + | 机器人可以在用上方绘制过路径的地图上使用,并不需要每一次都使用这些指令,除了 ''"<kbd>tf_bot_add <数目></kbd>"'' 来增入机器人。 |
+ | |||
+ | 机器人最好在控制点,山丘之王,推车,和夺旗地图上运用。在[[Mannpower/zh-hans|曼恩之力]]地图上,机器人会当作夺旗,但不会使用[[Grappling Hook/zh-hans|钩爪]]或机智地使用拿到的增益道具。 | ||
+ | |||
+ | ====官方支持机器人的地图==== | ||
+ | * [[Dustbowl/zh-hans|Dustbowl]] | ||
+ | * [[Mann Manor/zh-hans|Mann Manor]] | ||
+ | * [[Badlands (KOTH)/zh-hans|Badlands(山丘之王)]] | ||
+ | * [[Lakeside/zh-hans|Lakeside]] | ||
+ | * [[Nucleus (KOTH)/zh-hans|Nucleus(山丘之王)]] | ||
+ | * [[Sawmill (KOTH)/zh-hans|Sawmill(山丘之王)]] | ||
+ | * [[Viaduct/zh-hans|Viaduct]] | ||
+ | * [[Badwater Basin/zh-hans|Badwater Basin]] | ||
+ | * [[Gold Rush/zh-hans|Gold Rush]] | ||
+ | * [[Hoodoo/zh-hans|Hoodoo]] | ||
+ | * [[Thunder Mountain/zh-hans|Thunder Mountain]] | ||
+ | * [[Upward/zh-hans|Upward]] | ||
+ | * [[Gorge/zh-hans|Gorge]] | ||
+ | * [[Barnblitz/zh-hans|Barnblitz]] | ||
+ | * [[Kong King/zh-hans|Kong King]] | ||
====智能机器人的行为==== | ====智能机器人的行为==== | ||
− | * | + | * 机器人目前只会装备基础的[[loadout/zh-hans|配置]]。 |
− | * | + | * 简单难度上的机器人会很少使用主武器之外的武器。更高等级的机器人会在主武器弹匣用完后换到并使用它们的副武器。 |
− | * | + | * [[Spy/zh-hans|间谍]]和[[Sniper/zh-hans|狙击手]]机器人不会在简单模式上出现,而只能在普通和更高的等级中出现。 |
− | * | + | * 目前机器人还不懂得使用特殊的[[Jumping/zh-hans|跳跃]],例如[[Jumping/zh-hans#火箭跳|火箭跳]]或是[[Jumping/zh-hans#黏弹跳|黏弹跳]],还不能[[haul/zh-hans|搬运]]建筑。 |
− | * | + | * 机器人在杀死玩家后,有几率立刻进行[[taunt/zh-hans|嘲讽]],而且就算暴露在敌人火力下也会照做不误。[[Mann vs. Machine (game mode)/zh-hans|曼恩 vs. 机器模式]]里的[[Robots/zh-hans|机器人]]有这种行为。 |
+ | * 间谍机器人(和玩家)在[[disguise/zh-hans|伪装]]着时会被其它的机器人忽略。但是,当碰到任何敌人机器人,[[Sapper/zh-hans|入侵]]建筑物,开火,或[[Cloak/zh-hans|隐形]]时,所有看到的机器人会将机器人/玩家称为间谍并不会忘记他,除非间谍在暗地里换伪装,暴露间谍的机器人死亡,或间谍用[[Dead Ringer/zh-hans|死亡之铃]]装死。 | ||
+ | * [[Pyro/zh-hans|火焰兵]]机器人会在非简单难度的游戏里十分频繁地使用[[Compression blast/zh-hans|压缩空气爆破]]来反弹敌方的飞行物。 | ||
+ | * [[Medic/zh-hans|医生]]机器人大部分时候会先治疗其它的兵种而不是狙击手(和到更小的程度,工程师),就算 "医生!" 的语音指令被使用。 | ||
+ | * 医生机器人通常喜欢治疗机枪手,士兵,爆破手,和火焰兵,若被玩家玩儿的。如果没有人类玩家玩儿其中的一个兵种,他则很少会被一直治疗着。 | ||
+ | * 超级冲锋准备就绪的医生机器人会在受伤时启用超级冲锋。[[Mann vs. Machine (game mode)/zh-hans|曼恩 vs. 机器模式]]里的 [[Über Medic/zh-hans|Über 医生]]有这种行为。 | ||
+ | * 如果一个伪装的间谍机器人在专家难度上见到敌人隐形,它会能够跟着他们,就算他们完全隐形并没有显示轮廓。 | ||
+ | * 机器人在准备阶段中不会开火除非它们先被攻击的(除了[[Demoman/zh-hans|爆破手]]机器人放下黏性炸弹)。 | ||
+ | * 工程师机器人不会升级自己的传送装置或从它移除电子工兵,有时还不会修复自己的步哨枪就算不处于交火下。 | ||
+ | * 除了工程师,间谍,和狙击手,机器人在[[Attack/Defend/zh-hans|攻/防]]或[[Payload/zh-hans|推车]]地图上会留在出生点上不动。 | ||
+ | * 间谍机器人,当被另一个机器人(或玩家)看到时,不会试图背刺而反会换到[[Revolver/zh-hans|左轮手枪]]边射击边撤退。 | ||
===智能机器人指令=== | ===智能机器人指令=== | ||
Line 41: | Line 85: | ||
|- | |- | ||
|{{nw|<big>'''tf_bot_add'''</big>}} | |{{nw|<big>'''tf_bot_add'''</big>}} | ||
− | | | + | |这个指令用于给双方队伍随机添加机器人,机器人的职业也是随机的。而且它们拥有有趣的名字。 |
− | ; | + | ;指令语法: <code>tf_bot_add [<''count''>] [<''class''>] [<''team''>] [<''difficulty''>]</code> |
− | ; | + | ;参数说明: |
:<code><''count''></code> | :<code><''count''></code> | ||
− | :: | + | ::加上这个参数会为服务器添加指定数量的机器人。如果不加这个参数,则每次只会增加一个机器人。 |
− | :: | + | ::使用这个参数时,如果添加的数目比服务器剩余位置还要多,例如一个24人服务器中有1名玩家,此时要想添加的机器人数目为25,那么只会在服务器中添加23个机器人。 |
:<code><''class''></code> | :<code><''class''></code> | ||
− | :: | + | ::此处所要填写的为机器人的兵种英文名称,例如''[[Demoman]]'', ''[[Engineer]]'', ''[[Heavy]]Weapons'', ''[[Medic]]'', ''[[Pyro]]'', ''[[Scout]]'', ''[[Soldier]]'', ''[[Sniper]]''或是''[[Spy]]'' |
:<code><''team''></code> | :<code><''team''></code> | ||
− | :: | + | ::此处要填写的是想要机器人加入的队伍英文名称,例如''[[red]]''或者''[[blue]]''。 |
:<code><''difficulty></code> | :<code><''difficulty></code> | ||
− | :: | + | ::此处填写的是机器人的难度等级,例如''easy'', ''normal''或者''hard''。 |
− | ; | + | ;例子: <code>tf_bot_add red 3 heavyweapons easy</code>意为在地图中为红队添加3个简单的重机枪手机器人。 |
|- | |- | ||
|{{nw|<big>'''tf_bot_difficulty'''</big>}} | |{{nw|<big>'''tf_bot_difficulty'''</big>}} | ||
− | | | + | |用以选择机器人的技能等级。 |
− | ; | + | ;指令语法: <code>tf_bot_difficulty <''level''></code> |
− | ; | + | ;参数说明: |
:<code><''level''></code> | :<code><''level''></code> | ||
− | :: | + | ::选择机器人的技能等级,用数字代替,例如: 0为简单, 1为普通, 2为困难, 3为专家。默认等级为"普通" (1)。 |
− | ; | + | ;例子: <code>tf_bot_difficulty 2</code>意为将所有机器人的等级设置成"困难"。 |
|- | |- | ||
|{{nw|<big>'''tf_bot_force_class'''</big>}} | |{{nw|<big>'''tf_bot_force_class'''</big>}} | ||
− | | | + | |如果填写一个兵种名称,则所有机器人都会选择此兵种。 |
− | ; | + | ;指令语法: <code>tf_bot_force_class <''class''></code> |
− | ; | + | ;参数说明: |
:<code><''class''></code> | :<code><''class''></code> | ||
− | :: | + | ::''class''处可以填写以下职业名称''[[Demoman]]'', ''[[Engineer]]'', ''[[Heavy]]Weapons'', ''[[Medic]]'', ''[[Pyro]]'', ''[[Scout]]'', ''[[Soldier]]'', ''[[Sniper]]''或是''[[Spy]]''。默认情况下是随机选择兵种。 |
− | ; | + | ;例如: <code>tf_bot_force_class medic</code>意为所有机器人都会选择医生。 |
|- | |- | ||
|{{nw|<big>'''tf_bot_join_after_player'''</big>}} | |{{nw|<big>'''tf_bot_join_after_player'''</big>}} | ||
− | | | + | |如果参数不为零,则机器人将会在玩家加入游戏后跟随加入。 |
− | ; | + | ;指令语法: <code>tf_bot_join_after_player <''integer''></code> |
− | ; | + | ;参数说明: |
:<code><''integer''></code> | :<code><''integer''></code> | ||
− | :: | + | ::此处可以填写 1 或者 0. 默认是 1 (即机器人会等待玩家)。 |
− | ; | + | ;例子: <code>tf_bot_join_after_player 0</code>意为即使没有玩家加入游戏,也会添加机器人。 |
|- | |- | ||
|{{nw|<big>'''tf_bot_keep_class_after_death'''</big>}} | |{{nw|<big>'''tf_bot_keep_class_after_death'''</big>}} | ||
− | | | + | |如果参数为0,那么每次机器人重生时都会重新选择职业。 |
− | ; | + | ;指令语法: <code>tf_bot_keep_class_after_death <''integer''></code> |
− | ; | + | ;参数说明: |
:<code><''integer''></code> | :<code><''integer''></code> | ||
− | :: | + | ::可以填写 1 或者 0。默认为0(开启此功能)。 |
− | ; | + | ;例子: <code>tf_bot_keep_class_after_death 1</code>意为不允许机器人更换兵种。 |
|- | |- | ||
|{{nw|<big>'''tf_bot_kick'''</big>}} | |{{nw|<big>'''tf_bot_kick'''</big>}} | ||
| | | | ||
− | + | 这个指令能将机器人踢出服务器。 | |
− | ; | + | ;指令语法: <code>tf_bot_kick <''name/all''></code> |
− | ; | + | ;参数说明: |
:<code><''name/all''></code> | :<code><''name/all''></code> | ||
− | :: | + | ::填写想要踢出的机器人名称或是踢出所有机器人。 |
− | ; | + | ;例子: <code>tf_bot_kick CEDA</code>意为将名称为"CEDA"的机器人踢出。 |
|- | |- | ||
|{{nw|<big>'''tf_bot_prefix_name_with_difficulty'''</big>}} | |{{nw|<big>'''tf_bot_prefix_name_with_difficulty'''</big>}} | ||
− | | | + | |如果参数不为零,则会在机器人名称之前添加其技能等级代码。 |
− | ; | + | ;指令语法: <code>tf_bot_prefix_name_with_difficulty <''integer''></code> |
− | ; | + | ;参数说明: |
:<code><''integer''></code> | :<code><''integer''></code> | ||
− | :: | + | ::可以填写 1 或者 0。默认为0(不开启此功能)。 |
− | ; | + | ;例子: <code>tf_bot_prefix_name_with_difficulty 1</code>以为机器人的名字会变为"1 Aimbot" (普通难度)或是"3 Saxton Hale" (专家难度). |
|- | |- | ||
|{{nw|<big>'''tf_bot_quota'''</big>}} | |{{nw|<big>'''tf_bot_quota'''</big>}} | ||
− | | | + | |这个指令是用来决定服务器中机器人玩家的数目的,其非默认参数设置只有两种:"tf_bot_quota_mode" = "fill" or "match". |
− | ; | + | ;指令语法: <code>tf_bot_quota <''integer''></code> |
− | ; | + | ;参数说明: |
:<code><''integer''></code> | :<code><''integer''></code> | ||
− | :: | + | ::设定的数字为0至服务器最大人数之间的一个数字。默认为0。 |
− | ; | + | ;例子: <code>tf_bot_quota 2</code>,如果tf_bot_quota_mode 设置为 match,则每有一名玩家加入服务器时,就添加2个机器人。服务器中每加入一名玩家时则会自动添加2个机器人。 |
|- | |- | ||
|{{nw|<big>'''tf_bot_quota_mode'''</big>}} | |{{nw|<big>'''tf_bot_quota_mode'''</big>}} | ||
− | | | + | |决定机器人的分配类型。 |
− | ; | + | ;指令语法: <code>tf_bot_quota_mode<''normal/fill/match''></code> |
− | ; | + | ;参数说明: |
:<code>''normal/fill/match''</code> | :<code>''normal/fill/match''</code> | ||
− | :: | + | ::如果为'normal',服务器则不会增加或踢出任何机器人,除非有明确的指令;bot_quota的指令也无效。 |
− | :: | + | ::如果为'fill',服务器则会根据玩家人数,按照1:1的比例增加机器人玩家。 |
− | :: | + | ::如果为'match',则服务器会根据玩家人数按照1:N的比例增加机器人,此处N是指 bot_quota 设定的参数。 |
− | ; | + | ;例子: <code>tf_bot_quota_mode fill</code>意为服务器永远保持与玩家人数相同数量的机器人玩家。 |
|} | |} | ||
− | == | + | ==木偶机器人== |
− | + | 木偶机器人没有AI程序所以不会自行运动。这类机器人就像牵线木偶一样,玩家可以通过指令来控制他们的行为,例如跟随玩家动作或是开火。木偶机器人只要被用于测试方面,如果使用恰当的指令,还可利用它们制作惊人的视觉效果。 | |
+ | ===木偶机器人指令=== | ||
+ | 并不是所有指令都有效果,但为了明确,下面列表中列出了所有的指令。 | ||
− | + | ''注: 只输入指令的主体部分但不输入参数部分时,并不会使指令生效,而且还会得到个间接的指令说明。'' | |
− | |||
− | |||
− | '' | ||
{| class="wikitable grid" | {| class="wikitable grid" | ||
− | ! class="header" | | + | ! class="header" | 指令 |
− | ! class="header" | | + | ! class="header" | 说明 |
|- | |- | ||
|{{nw|<big>'''bot'''</big>}} | |{{nw|<big>'''bot'''</big>}} | ||
− | | | + | |使用这个指令时会为服务器中添加一个机器人,如果没有明确参数设定时,机器人则会随机选择的兵种与团队。 |
− | ; | + | ;指令语法: <code>bot -team <''teamname/number''> -class <''classname''> -name <''botname''></code> |
− | ; | + | ;参数说明: |
:<code>-team ''teamname/number''</code> | :<code>-team ''teamname/number''</code> | ||
− | :: | + | ::指定机器人的添加数目与加入的团队。''name/number''可以设置为''[[RED]]''或是''1''、''[[BLU]]''或是''0'' |
:<code>-class ''classname''</code> | :<code>-class ''classname''</code> | ||
− | :: | + | ::''classname''可设置为''[[Demoman]]'', ''[[Engineer]]'', ''[[Heavy]]Weapons'', ''[[Medic]]'', ''[[Pyro]]'', ''[[Scout]]'', ''[[Soldier]]'', ''[[Sniper]]''以及''[[Spy]]'' |
:<code>-name ''botname''</code> | :<code>-name ''botname''</code> | ||
− | ::''botname'' | + | ::''botname''可以设置为任何参数。如果出现同名的机器人,则会在所有同名机器人前面增加一个数字来区分彼此(从1开始),从最早加入的那个机器人开始编号。例如, joe, (1)joe, (2)joe, 等等。如果不指定名字,则所有加入的机器人都已"bot"加上数字进行命。数字从01开始编号; 例如,第一个加入的机器人名字为 bot01,第二个为bot02,后面以此类推。 |
− | ; | + | ;例子: <code>bot -team red -class Engineer -name joe</code>这个代码的意思是:为红队添加一名工程师机器人,名字为joe。 |
|- | |- | ||
|{{nw|<big>'''bot_changeclass'''</big>}} | |{{nw|<big>'''bot_changeclass'''</big>}} | ||
− | | | + | |强制所有机器人选择指定的兵种类型。 |
− | '' | + | ''此命令好像还不能正常使用。'' |
|- | |- | ||
|{{nw|<big>'''bot_changeteams'''</big>}} | |{{nw|<big>'''bot_changeteams'''</big>}} | ||
| | | | ||
− | + | 让所有机器人强制更换团队。 | |
− | + | 这会强制所有的机器人交换团队,例如一个在红队的机器人更换到蓝队去,反之亦然。 | |
|- | |- | ||
|{{nw|<big>'''bot_command'''</big>}} | |{{nw|<big>'''bot_command'''</big>}} | ||
− | | | + | |命令指定的机器人做出特定的行为。 |
− | ; | + | ;指令语法: <code>bot_command <''botname''> <''console command''></code> |
− | ::''botname'' | + | ::''botname''填入的是你想要命令的机器人的名称。 |
− | ::''console command'' | + | ::''console command''填入的是你想要机器人所做的事情的指令,请查看[[Scripting#Console Commands|控制台指令]]. |
− | ; | + | ;例子 1: bot_command bot01 "voicemenu 0 0" 命令机器人01号使用语音菜单中的0 0选项 |
− | ; | + | ;例子2 2: bot_command bot01 "taunt" 命令机器人01号使用嘲讽动作 |
− | :: | + | ::切换指令与bot_command不能同时生效,但是使用bot_forcefireweapon指令,可以让所有机器人切换到指定武器并且不停开火,也可以让它们停止开火。当然,你只能强制命令指定并种类型的机器人这么做。 |
|- | |- | ||
|{{nw|<big>'''bot_defend'''</big>}} | |{{nw|<big>'''bot_defend'''</big>}} | ||
− | | | + | |指定特定团队的所有机器人进行防御,此时指定队伍的所有机器人都将处于防御状态。 |
− | + | 例如,重机枪手机器人使它们的机枪旋转起来。 | |
|- | |- | ||
|{{nw|<big>'''bot_dontmove'''</big>}} | |{{nw|<big>'''bot_dontmove'''</big>}} | ||
− | | | + | |允许或禁止机器人进行移动。当指令设置为''1''时,所以机器人都不能够移动但它们依然能转身和跳跃。配合这个<code>bot_mimic</code>指令,你可以把机器人带到你想它们去的地方并且让它们呆在那里不动。 |
− | ; | + | ;指令语法: <code>bot_dontmove <''0/1''></code> |
− | :: | + | ::允许或禁止机器人进行移动。 |
− | ; | + | ;例子: <code>bot_dontmove 1</code>意为禁止所有机器人移动 |
|- | |- | ||
|{{nw|<big>'''bot_forceattack'''</big>}} | |{{nw|<big>'''bot_forceattack'''</big>}} | ||
− | | | + | |这会强制所有机器人开火,无论它们手上使用的是什么[[weapon/zh-hans|武器]]。如果<code>bot_forceattack2</code>指令设置成''0'',那么机器人会使用主武器开火。如果设置成''1'',那它们则使用副武器开火。 |
− | + | 如果<code>bot_mimic</code>指令生效时(设置成''1''),那么强制开火指令就不会生效。 | |
− | ; | + | ;指令语法: <code>bot_forceattack <''0/1''></code> |
− | :: | + | ::设置为''0''时,机器人则不会开火。设置为''1''时,机器人则会开火。 |
− | ; | + | ;例子: <code>bot_forceattack 1</code> 意为机器人会进行自动开火。 |
|- | |- | ||
|{{nw|<big>'''bot_forceattack2'''</big>}} | |{{nw|<big>'''bot_forceattack2'''</big>}} | ||
− | | | + | |参见上一条指令。 |
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|{{nw|<big>'''bot_forceattack_down'''</big>}} | |{{nw|<big>'''bot_forceattack_down'''</big>}} | ||
− | | | + | |设置机器人的开火方式,分点射和连射两种。当设置为''0''时,机器人则会像不断点击开火键一样进行点射(对[[Pistol/zh-hans|手枪]]有效,但对[[Heavy/zh-hans|机枪手]]的[[Minigun/zh-hans|迷你机枪]]无效)。当设置为''1''时,机器人则会像按着开火键不放一样进行连射(对重机枪手来说有用)。 |
− | ; | + | ;指令语法: <code>bot_forceattack_down <''0/1''></code> |
− | :: | + | ::''1''为开启,''0''为关闭 |
− | ; | + | ;例子: <code>bot_forceattack_down 1</code> 意为所有机器人进行连射。 |
|- | |- | ||
|{{nw|<big>'''bot_forcefireweapon'''</big>}} | |{{nw|<big>'''bot_forcefireweapon'''</big>}} | ||
− | | | + | |强制拥有指定武器的机器人切换到此武器并进行开火。 |
− | + | 如果一个机器人没有此种武器,则不会对其有影响。 | |
− | ; | + | ;指令语法: <code>bot_forcefireweapon <''weapon filename''></code> |
− | ::''filename'' | + | ::''filename''一般填武器的名称''tf_weapon_ <weapon name>''. |
− | ; | + | ;例子: <code>bot_forcefireweapon tf_weapon_fists</code> 会使所有[[Heavy/zh-hans|重机枪手]]使用他们的[[Fists/zh-hans|拳头]]进行攻击,而其他机器人则会原地待命。 |
− | <code>bot_forcefireweapon tf_weapon_shotgun_pyro</code> | + | <code>bot_forcefireweapon tf_weapon_shotgun_pyro</code> 会使所有[[Pyro/zh-hans|火焰兵]]机器人使用[[Shotgun/zh-hans|霰弹枪]]开火,而且他机器人则原地待命。 |
− | :: | + | ::如果要想所有机器人停止开火,只需输入一个游戏中不存在的武器的名称即可。而且任何前端没有tf_weapon的武器不算军团要塞2的武器,因此机器人不会开火,例如''bot_forcefireweapon ,,'' |
− | :: | + | ::由于机器人的装备无法更换,因此无法命令他们使用非默认武器外的武器。 |
|- | |- | ||
|{{nw|<big>'''bot_kill'''</big>}} | |{{nw|<big>'''bot_kill'''</big>}} | ||
| | | | ||
− | + | 杀死指定机器人。 | |
− | ; | + | ;指令语法: <code>bot_kill <''bot name''></code> |
− | :: | + | ::强制指定机器人自杀。 |
− | ; | + | ;例子: <code>bot_kill bot01</code> 意为强制让机器人01号自杀。 |
|- | |- | ||
|{{nw|<big>'''bot_mimic'''</big>}} | |{{nw|<big>'''bot_mimic'''</big>}} | ||
− | | | + | |机器人模拟玩家的动作。 |
− | + | 机器人会模仿玩家的按键行为,即模仿玩家的人物动作。例如例如移动、转身、跳跃、开火等。 | |
− | + | 这个指令的效果会覆盖指令<code>bot_forceattack</code>的效果,但不会覆盖指令<code>bot_dontmove</code>的效果。 | |
− | ; | + | ;指令语法: <code>bot_mimic <''0/1''></code> |
− | :: | + | ::''1''表示开启,''0''表示关闭。 |
− | ; | + | ;例子: <code>bot_mimic 1</code> 意为机器人模仿玩家动作。 |
|- | |- | ||
|{{nw|<big>'''bot_mimic_yaw_offset'''</big>}} | |{{nw|<big>'''bot_mimic_yaw_offset'''</big>}} | ||
| | | | ||
− | + | 指定机器人的朝向。 | |
− | + | 机器人会转身面向一个指定的方向,其方向根据玩家而定。如果角度设置为''180'',则所有机器人都会面向玩家。设置为''0''时,所有机器人都会面向玩家所面向的方向。 | |
− | ; | + | ;指令语法: <code>bot_mimic_yaw_offset <''0-360''></code> |
− | :: | + | ::设置机器人的朝向 |
− | ; | + | ;例子: <code>bot_mimic_yaw_offset 180</code> |
|- | |- | ||
|{{nw|<big>'''bot_randomnames'''</big>}} | |{{nw|<big>'''bot_randomnames'''</big>}} | ||
− | | | + | |赋予机器人随机名字,名字列表如下 |
− | === | + | ===机器人名称=== |
− | + | 游戏中的机器人已经有很多被设定好的名字,其中一些与Valve出品的某些游戏有联系。当然有些与军团要塞2本本身有联系。有些名字这是根据STEAM社区论坛成员的要求而添加的。如果您遇到了列表中没有出现的名字,请帮助我们补充,谢谢。 <!--如果您遇到了列表中没有出现的名字,请帮助我们补充,谢谢--> | |
− | + | {{Bot names}} | |
− | + | ;指令格式: <code>bot_randomnames <''0/1''></code> | |
− | + | ::''1''为开启随机名字,''0''为关闭。 | |
− | + | ;例子: <code>bot_randomnames 1</code> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | :: | ||
− | ; | ||
|- | |- | ||
|{{nw|<big>'''bot_refill'''</big>}} | |{{nw|<big>'''bot_refill'''</big>}} | ||
− | | | + | |为所有机器人补充弹药,包括工程师的[[Metal/zh-hans|金属]]。 |
− | + | 指令格式: <code>bot_refill</code> | |
|- | |- | ||
|{{nw|<big>'''bot_saveme'''</big>}} | |{{nw|<big>'''bot_saveme'''</big>}} | ||
− | | | + | |强制所有机器人呼叫医生,这相当于对所有机器人使用指令<code>bot_command <''botname''> "voicemenu 0 0"</code>。 |
− | + | 指令格式: <code>bot_saveme <''0/1''></code> | |
− | :: | + | ::''1''为开启,''0''为关闭。 |
|- | |- | ||
|{{nw|<big>'''bot_selectweaponslot'''</big>}} | |{{nw|<big>'''bot_selectweaponslot'''</big>}} | ||
− | | | + | |让第一个加入的机器人切换指定的武器。 |
− | 0 = | + | 0 = 主武器; 1 = 副武器; 2 = 近战武器; 3 = 特殊武器(例如间谍的烟盒,工程师的PDA) |
− | + | 这个指令只对最先加入的机器人有效。而且目前并未发现能对特定机器人生效。 | |
− | ; | + | ;指令格式: <code>bot_selectweaponslot <''n''></code> |
− | :: | + | ::''n''为上面提到的武器种类代码。 |
− | ; | + | ;例子: <code>bot_selectweaponslot 2</code> 意为让第一个机器人切换到近战武器。 |
|- | |- | ||
|{{nw|<big>'''bot_teleport'''</big>}} | |{{nw|<big>'''bot_teleport'''</big>}} | ||
− | | | + | |传送指定的机器人到给定的坐标。 |
− | + | 可以通过在控制台输入<code>Status</code>来查看玩家当前所在位置的地图坐标。 | |
− | ; | + | ;指令格式: <code>bot_teleport <''botname''> <''X''> <''Y''> <''Z''> <''Pitch''> <''Yaw''> <''Roll''></code> |
− | :: | + | ::''botname''指的是机器人的名字. |
− | ::<code>''X'' ''Y'' ''Z''</code> | + | ::<code>''X'' ''Y'' ''Z''</code>指的是地图的坐标。 |
− | ::<code>''Pitch'' ''Yaw'' ''Roll''</code> | + | ::<code>''Pitch'' ''Yaw'' ''Roll''</code>指的是机器人传送后所要面对的方向。 |
− | ; | + | ;例子: <code>bot_teleport bot01 -4815 1385 -447 0 0 0</code> 意为传送机器人01号到坐标-4815 1385 -447,朝向为正前方。 |
|- | |- | ||
|{{nw|<big>'''bot_whack'''</big>}} | |{{nw|<big>'''bot_whack'''</big>}} | ||
− | | | + | |给予机器人致命的伤害。这种伤害类型取决于玩家当前所使用的武器,这条指令可能是在开发过程中进行测试所用的。 |
− | ; | + | ;指令格式: bot_whack <''botname''> |
− | :: | + | ::''botname''指的是指定机器人的名字。 |
− | ; | + | ;例子: bot_whack bot109 意为给予机器人109号致命的伤害。 |
|} | |} | ||
− | == | + | ==参考文献== |
<references/> | <references/> | ||
− | [[Category:Customization]] | + | [[Category:Customization/zh-hans]] |
− | [[Category:Gameplay]] | + | [[Category:Gameplay/zh-hans]] |
Revision as of 07:05, 28 January 2023
“Yippee ki-yay,我“亲爱”的文盲朋友!” 此条目需要编修,以确保文法、用词、语气、格式、标点等使用恰当。 请参见帮助:编辑风格(英语)以获取更多如何改进用辞的说明。 |
“ | 我的拳头可是用钢铁做的!
点击试听
— 机枪手(电脑玩家)描述自己的钢铁拳头
|
” |
一个 BOT,又称机器人或电脑玩家,是服务器上被电脑控制的玩家。在军团要塞 2 中有两种机器人:智能机器人以及木偶机器人。智能机器人使用了先进的人工智能代码进行编程,因此它们能学习玩家们在游戏中的动作,并且不需要开启作弊模式来使用;木偶机器人没有人工智能,因此它们不会自动进行活动,但是它们对游戏测试以及训练有着显著帮助。若要使用木偶机器人,则必须在建立服务器时开启作弊模式,此时将不能完成成就。
目录
智能机器人
智能机器人能够学习玩家的动作并且不会受玩家直接控制。同时,它们都是以随机方式选择兵种的。他们使用复杂的人工智能代码编程,即使用求生之路一系列中生还者机器人以及被感染者机器人的代码设置。[1]添加智能机器人不需要服务器开启作弊模式,因此可以借此完成各种成就;不过有一个例外:机器人被杀后不会见到死亡摄像;因此,玩家不能通过智能机器人得到与死亡摄像相关的成就。还有,用奇异属性的武器杀死机器人不会增加武器的杀敌计数,除非武器有着奇异武器升级部件:机器人消灭数,则使杀敌数加到部件上而不是武器本身。
智能机器人在以下情况能够间接被玩家进行一定程度的控制:
- 在准备阶段内,任何被你准心指着的机器人都会做出嘲讽。
- 当你使用 "医生!" 语音指令时,附近的己方医生机器人会为你治疗。
- 当治疗你的医生机器人的超级冲锋就绪时,使用 "冲!冲!冲!" 或者 "激活 Ubercharge!" 语音指令会让它立刻启动超级冲锋。
- 受到重伤的医生机器人会马上启用自己的超级冲锋。
- 机器人会试图参与同伴式嘲讽(例如击掌或康茄舞)。
目前智能机器人的情况
智能机器人目前还算是在测试阶段而且随着每次游戏更新智能机器人都会得到一定改进。目前,经过无帽子更新,所有的兵种的智能机器人都能正常运作,包括曾经有问题的间谍。智能机器人只能在大部分官方的山丘之王地图、某些推车地图、攻防型地图 Dustbowl 和 Gorge,夺旗地图,以及 Mann Manor 上正常工作(在尾段两个地图中,智能机器人只能通过在控制台输入 tf_bot_add 指令来添加)。其他地图也可以使用这个方法添加机器人;但它们无法正常行动。
注:目前已经有一些较为流行的地图被添加了一个提前制造的机器人路线套装。
智能机器人名称
智能机器人都有不同的名字,很多指着军团要塞 2,Valve 其它的游戏,以及电脑编程。很多这些名字在 Steam 论坛上被要求的。
未使用的人机名称
在泄露的 TF2 源代码版本中发现了以下的人机名称,其中包含由于未知原因而从未被使用的名称。
- John Spartan
- Leeloo Dallas Multipass
- Sho'nuff
- Bruce Leroy
- CAN YOUUUUUUUUU DIG IT?!?!?!?!
- Big Gulp, Huh?
- Stupid Hot Dog
- I'm your huckleberry
- The Crocketeer
在不支持机器人的地图中添加机器人的步骤
- 在控制台中输入 "sv_cheats 1"。
- 在控制台中输入 "nav_generate"。
- 等待系统为地图绘制路径点。
- 重新载入地图(如果路径点已保存则不用重复之前步骤)。
- 可选择修改绘制的路径来增入漏掉的数据并移除错误的数据。使用 "nav_edit 1" 来进入编辑模式。
- 重载服务器(可选的,但是若不做,成就会仍然被禁用)。
- 打开控制台,输入"tf_bot_add <数目>"来选择添加机器人的数目。
警告:如果开启着机器人时候编辑路径,游戏很可能会崩溃。
机器人可以在用上方绘制过路径的地图上使用,并不需要每一次都使用这些指令,除了 "tf_bot_add <数目>" 来增入机器人。
机器人最好在控制点,山丘之王,推车,和夺旗地图上运用。在曼恩之力地图上,机器人会当作夺旗,但不会使用钩爪或机智地使用拿到的增益道具。
官方支持机器人的地图
- Dustbowl
- Mann Manor
- Badlands(山丘之王)
- Lakeside
- Nucleus(山丘之王)
- Sawmill(山丘之王)
- Viaduct
- Badwater Basin
- Gold Rush
- Hoodoo
- Thunder Mountain
- Upward
- Gorge
- Barnblitz
- Kong King
智能机器人的行为
- 机器人目前只会装备基础的配置。
- 简单难度上的机器人会很少使用主武器之外的武器。更高等级的机器人会在主武器弹匣用完后换到并使用它们的副武器。
- 间谍和狙击手机器人不会在简单模式上出现,而只能在普通和更高的等级中出现。
- 目前机器人还不懂得使用特殊的跳跃,例如火箭跳或是黏弹跳,还不能搬运建筑。
- 机器人在杀死玩家后,有几率立刻进行嘲讽,而且就算暴露在敌人火力下也会照做不误。曼恩 vs. 机器模式里的机器人有这种行为。
- 间谍机器人(和玩家)在伪装着时会被其它的机器人忽略。但是,当碰到任何敌人机器人,入侵建筑物,开火,或隐形时,所有看到的机器人会将机器人/玩家称为间谍并不会忘记他,除非间谍在暗地里换伪装,暴露间谍的机器人死亡,或间谍用死亡之铃装死。
- 火焰兵机器人会在非简单难度的游戏里十分频繁地使用压缩空气爆破来反弹敌方的飞行物。
- 医生机器人大部分时候会先治疗其它的兵种而不是狙击手(和到更小的程度,工程师),就算 "医生!" 的语音指令被使用。
- 医生机器人通常喜欢治疗机枪手,士兵,爆破手,和火焰兵,若被玩家玩儿的。如果没有人类玩家玩儿其中的一个兵种,他则很少会被一直治疗着。
- 超级冲锋准备就绪的医生机器人会在受伤时启用超级冲锋。曼恩 vs. 机器模式里的 Über 医生有这种行为。
- 如果一个伪装的间谍机器人在专家难度上见到敌人隐形,它会能够跟着他们,就算他们完全隐形并没有显示轮廓。
- 机器人在准备阶段中不会开火除非它们先被攻击的(除了爆破手机器人放下黏性炸弹)。
- 工程师机器人不会升级自己的传送装置或从它移除电子工兵,有时还不会修复自己的步哨枪就算不处于交火下。
- 除了工程师,间谍,和狙击手,机器人在攻/防或推车地图上会留在出生点上不动。
- 间谍机器人,当被另一个机器人(或玩家)看到时,不会试图背刺而反会换到左轮手枪边射击边撤退。
智能机器人指令
为了在能使用智能机器人的地图中添加机器人,服务器管理员应在控制台中输入以下命令:
指令 | 说明 |
---|---|
tf_bot_add | 这个指令用于给双方队伍随机添加机器人,机器人的职业也是随机的。而且它们拥有有趣的名字。
|
tf_bot_difficulty | 用以选择机器人的技能等级。
|
tf_bot_force_class | 如果填写一个兵种名称,则所有机器人都会选择此兵种。
|
tf_bot_join_after_player | 如果参数不为零,则机器人将会在玩家加入游戏后跟随加入。
|
tf_bot_keep_class_after_death | 如果参数为0,那么每次机器人重生时都会重新选择职业。
|
tf_bot_kick |
这个指令能将机器人踢出服务器。
|
tf_bot_prefix_name_with_difficulty | 如果参数不为零,则会在机器人名称之前添加其技能等级代码。
|
tf_bot_quota | 这个指令是用来决定服务器中机器人玩家的数目的,其非默认参数设置只有两种:"tf_bot_quota_mode" = "fill" or "match".
|
tf_bot_quota_mode | 决定机器人的分配类型。
|
木偶机器人
木偶机器人没有AI程序所以不会自行运动。这类机器人就像牵线木偶一样,玩家可以通过指令来控制他们的行为,例如跟随玩家动作或是开火。木偶机器人只要被用于测试方面,如果使用恰当的指令,还可利用它们制作惊人的视觉效果。
木偶机器人指令
并不是所有指令都有效果,但为了明确,下面列表中列出了所有的指令。
注: 只输入指令的主体部分但不输入参数部分时,并不会使指令生效,而且还会得到个间接的指令说明。
指令 | 说明 |
---|---|
bot | 使用这个指令时会为服务器中添加一个机器人,如果没有明确参数设定时,机器人则会随机选择的兵种与团队。
|
bot_changeclass | 强制所有机器人选择指定的兵种类型。
此命令好像还不能正常使用。 |
bot_changeteams |
让所有机器人强制更换团队。 这会强制所有的机器人交换团队,例如一个在红队的机器人更换到蓝队去,反之亦然。 |
bot_command | 命令指定的机器人做出特定的行为。
|
bot_defend | 指定特定团队的所有机器人进行防御,此时指定队伍的所有机器人都将处于防御状态。
例如,重机枪手机器人使它们的机枪旋转起来。 |
bot_dontmove | 允许或禁止机器人进行移动。当指令设置为1时,所以机器人都不能够移动但它们依然能转身和跳跃。配合这个bot_mimic 指令,你可以把机器人带到你想它们去的地方并且让它们呆在那里不动。
|
bot_forceattack | 这会强制所有机器人开火,无论它们手上使用的是什么武器。如果bot_forceattack2 指令设置成0,那么机器人会使用主武器开火。如果设置成1,那它们则使用副武器开火。
如果
|
bot_forceattack2 | 参见上一条指令。 |
bot_forceattack_down | 设置机器人的开火方式,分点射和连射两种。当设置为0时,机器人则会像不断点击开火键一样进行点射(对手枪有效,但对机枪手的迷你机枪无效)。当设置为1时,机器人则会像按着开火键不放一样进行连射(对重机枪手来说有用)。
|
bot_forcefireweapon | 强制拥有指定武器的机器人切换到此武器并进行开火。
如果一个机器人没有此种武器,则不会对其有影响。
|
bot_kill |
杀死指定机器人。
|
bot_mimic | 机器人模拟玩家的动作。
机器人会模仿玩家的按键行为,即模仿玩家的人物动作。例如例如移动、转身、跳跃、开火等。 这个指令的效果会覆盖指令
|
bot_mimic_yaw_offset |
指定机器人的朝向。 机器人会转身面向一个指定的方向,其方向根据玩家而定。如果角度设置为180,则所有机器人都会面向玩家。设置为0时,所有机器人都会面向玩家所面向的方向。
|
bot_randomnames | 赋予机器人随机名字,名字列表如下
机器人名称游戏中的机器人已经有很多被设定好的名字,其中一些与Valve出品的某些游戏有联系。当然有些与军团要塞2本本身有联系。有些名字这是根据STEAM社区论坛成员的要求而添加的。如果您遇到了列表中没有出现的名字,请帮助我们补充,谢谢。 未使用的人机名称在泄露的 TF2 源代码版本中发现了以下的人机名称,其中包含由于未知原因而从未被使用的名称。
|
bot_refill | 为所有机器人补充弹药,包括工程师的金属。
指令格式: |
bot_saveme | 强制所有机器人呼叫医生,这相当于对所有机器人使用指令bot_command <botname> "voicemenu 0 0" 。
指令格式:
|
bot_selectweaponslot | 让第一个加入的机器人切换指定的武器。
0 = 主武器; 1 = 副武器; 2 = 近战武器; 3 = 特殊武器(例如间谍的烟盒,工程师的PDA) 这个指令只对最先加入的机器人有效。而且目前并未发现能对特定机器人生效。
|
bot_teleport | 传送指定的机器人到给定的坐标。
可以通过在控制台输入
|
bot_whack | 给予机器人致命的伤害。这种伤害类型取决于玩家当前所使用的武器,这条指令可能是在开发过程中进行测试所用的。
|