Info director

From Valve Developer Community
< Zh
Revision as of 23:31, 6 August 2021 by 1416006136 (talk | contribs)
Jump to navigation Jump to search
English (en)中文 (zh)Translate (Translate)

本页面由大康更新于2021年8月7日。

Template:L4d series point:zh-cn 它是臭名昭著的 AI 导演,必须存在于每个求生之路和求生之路2地图中才能正常游戏。

导演几乎完全自动化,仅在设计时存在于其他设计师放置的实体需要与其进行通信的少数情况下,例如在战役开场动画开始时强迫幸存者到他们各自的 info_survivor_position

Template:Since:zh-cn=l4d2 可以输出导演的愤怒等级,让关卡设计师可以根据玩家的表现来调整条件。

强制至幸存者位置

如果幸存者设置了幸存者名称,导演可以强制所有幸存者站在 info_survivor_position 处。
这用于战役开始时,以防止幸存者在地图下方生成,或在结局中将幸存者传送出地图以暗示他们在逃离载具内。

为此,请转到 info_director 输出并添加以下输出:

  My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnGameplayStart !self ForceSurvivorPositions <none> 0.00 No
Io11.png OnGameplayStart !self ReleaseSurvivorPositions <none> 0.20 No

注意事项

  • 使用 changelevel 控制台命令重新启动地图将导致导演忽略forcesurvivorpositions输入。
如果您在使用changelevel重新编译后重新启动地图并且您需要测试您的开场动画,请在之后使用kill控制台命令使任务失败,这将导致地图以重新启动的方式允许 info_director 使用forcesurvivorpositions输入,这也将允许您的相机运行。
  • logic_auto 不能触发forcesurvivorpositions除非地图是从游戏菜单中作为战役新加载的,或者在任务失败后重新启动。
为了解决这个问题,让导演使用ongamestart输入对自己调用forcesurvivorpositionsreleasesurvivorpositions。当您的战役准备好发布时,如果您愿意,您可以在最终编译之前安全地将其改回使用 logic_auto,因为玩家将从游戏菜单加载您的战役。

键值

Name (目标名称) <target_source>[ Edit ]
这个名称是其他实体通过 输入/输出(en) 或其他 关键值(en)(如 parentnametarget) 来引用该实体时使用的标识符。
该名称也会显示在 Hammer 编辑器的 2D 视图和 实体报告(en) 中。
参见:  所有实体均可使用的 通用键值、输入与输出(en)

Origin (X Y Z) (origin) ([todo internal name (i)]) <[[Zh/coordinates|coordinates]]([{{fullurl:coordinates}} en])>
实体处于世界中的位置,旋转实体会以实体坐标原点旋转。

输入

求生之路 原始输入

PanicEvent
当地图发生某些你认为重要的事情时,应该让导演知道。
PanicEventControlled <int>
类似于恐慌事件,但允许通过波的数量对强度进行一些控制。早期地图的标准值为 1,后期地图为 2。
Template:Note:zh-cn
ForceSurvivorPositions
让每个幸存者站在一个 info_survivor_position。
Template:Note:zh-cn
ReleaseSurvivorPositions
让幸存者再次自由行动。
Template:Note:zh-cn
FireConceptToAny <string>
向任何能够说出它的幸存者发射一个演讲概念。允许由地图实体触发幸存者对话(例如,带有参数 hospital04_path4 的毫不留情的电梯)
StartIntro
开场动画开始时触发。玩家在此(输出)激活时免疫伤害。不会产生丧尸或 SI。
FinishIntro
介绍结束时触发。玩家现在会受到伤害。鉴于玩家不再站在标记为 PLAYER_START 和/或 CHECKPOINT 的导航方块中,丧尸和 SI 可以生成。
EnableTankFrustration
可用于启用“tank frustration meter”。
DisableTankFrustration
可用于禁用“tank frustration meter”。

Template:I Targetname:zh-cn

求生之路2 额外输入

以下是仅在 L4D2 中可用的额外输入。

BeginScript <string>
EndScript
Squirrel开始/结束一个导演脚本
ScriptedPanicEvent
Squirrel运行一个脚本化的恐慌事件,类似于大结局的阶段事件。
ForcePanicEvent
触发恐慌事件,无论发生什么。
EndCustomScriptedStage
Squirrel结束脚本化的结局阶段。
IncrementTeamScore <int>
增加一个团队的分数。(2=survivors, 3=infected)
CreateNewJournal <string>
创建一个新日志。
WriteToJournal <string>
将任务添加到 I/O 日志。
ExecuteJournal <string>
执行指定日志中的所有任务
RefreshInitialSpawnPositions
Template:Todo:zh-cn

输出

求生之路 原始输出

OnGameplayStart
当地图加载时触发,所有玩家加入并开始游戏。
OnPanicEventFinished
当恐慌事件完成时触发。

实体目标名:

OnUser1 to OnUser4
这些输出将分别响应于FireUser1FireUser4 输入。 详见 User Inputs and Outputs
OnKilled  (存在于 求生之路系列求生之路系列 之中)
当实体被删除时触发此输出。

求生之路2 额外输出

以下是仅在 L4D2 中可用的附加输出。他们专注于新的清道夫模式和 vscripts。

OnCustomPanicStageFinished
当自定义恐慌事件或自定义结局的每个阶段结束时触发。依赖于 vscripts。
OnTeamScored
当一个团队在清道夫加油口中放置清道夫物品时触发。
OnScavengeRoundStart
当清道夫回合开始时触发。
OnScavengeOvertimeStart
计时器时间到,游戏进入超时赛时触发。
OnScavengeOvertimeCancel
时间被添加到计时器,结束超时赛。
OnScavengeTimerExpired
时间到了,比赛没有进入超时赛。
OnScavengeIntensityChanged <int>
强度级别已更改。 1 = 最高强度,随着数字变大而降低。
OnUserDefinedScriptEvent1-4
从 Squirrel Script 触发的通用用户定义事件 (UserDefinedEvent1()-UserDefinedEvent4())

另请参阅