Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
English

Overview

The Dialog Editor is used to play spoken words in CryENGINE during normal game sequences and in cutscenes. The Dialog Editor references specific lines of dialog, and is fully compatible with regional language localization and subtitling.

The functions of the Dialog Editor can be referenced using the Flow Graph.

The Dialog Editor

Instead of a menu system, there are two buttons at the top of the editor.

  • Add ScriptLine: Adds a line to the current dialogscript
  • Delete ScriptLine: Deletes a line from the current dialogscript

The Dialogs panel contains a browser for all dialog scripts organized within folder Libs\Dialogs. By default editing dialogs is locked to remind that editing happens locally.

Right-clicking on the script and selecting 'Edit Locally' will enable editing.

The task menu allows access to management options for the dialog menu.

  • New: Allows the creation of new DialogScripts and dialog script groups.
  • Delete: Deletes the currently selected !DialogScript, if it is not write protected. Deleting the last remaining DialogScript will cause its parent group to also be deleted.
  • Rename: Brings up a rename dialog for the !DialogScript. Renaming its parent group will create or move the DialogScript to the defined group.

The description box shows details and properties of the lines used within the !DialogScript.

Underneath the description is the main panel for editing dialog lines.

Setting

Description

Line

Current line. Click this column to select the whole line. You can then drag the line around. To add a new line, double click in free area or use Add ScriptLine from the toolbar.
To delete a line press Delete or use Delete ScriptLine from the toolbar. Double-click to play or stop the Sound of the Line.

Actor

The Actor for this line. Select this from from the combo-box. Any Entity can be an Actor. An Entity can be assigned as Actor using the Dialog:PlayDialog flownode.

Sound

The Sound to be played. Use browse button to choose the sound through the Sound Browser or paste a Sound key from the Localization sheet.
Note: The sound name will show no '.wav' extension. If a sound is specified the time of 'Delay' is relative to the end of the sound.

Animation:

Name of Animation Signal or Action. You should select an entity first and then browse its signals/actions.

Type

Signal {{OneShot animation. Action }} Looping animation. Animation can automatically be stopped, when Sync is enabled.

EP

When checked, Exact Positioning [EP] will be used to play the animation. The target for the EP is the LookAt target. If you want to make sure that an animation is exactly oriented, use this option.

Sync

When checked, the animation or Action will automatically stop when the sound ends.

FacialExpr.

Facial expression. Normally, every sound is already lip-synced and may already contain facial expressions. Use with care.
This feature can be useful when you don't play a sound, but simply want the Actor make look with a specific mood or expression. Use #RESET# to reset expression to default state.

Weight

Weight of the facial expression [0-1]. How strong the facial expression should be applied. When sound already contains a facial expression, use only small values < 0.5.

Fade

Fade-time of the facial expression in seconds. How fast the facial expression should be applied.

LookAt

Lookat target of the Actor. Actor will try to look at his target before he starts to talk/animate. Sometimes this cannot be guaranteed.
Also, while doing his animation or talking he may no longer face his target. For these cases use Sticky look at. To disable sticky look-at use #RESET#.

Delay

Delay in seconds before advancing to the next line. When a sound is played, Delay is relative to the end of the sound.
So, to slightly overlap lines and to make dialog more natural, you can use negative delays. When no sound is specified, the delay is relative to the start of the line.

Description

Description of the line.

Dynamic Help underneath the main panel displays context sensitive help for the currently selected element of the dialog editor.

Triggering a Dialog in Flow Graph


A simple dialog setup.

The Area Trigger entity Enter port links to the Play Port of the PlayDialog node. This will cause the dialog node to play when the Enter condition of the trigger is fulfilled. This may be caused by traditional methods (the player enters the trigger), or by manually triggering the condition using a trackview event track trigger on the object.

The actors defined within your by DialogScript Actor property in each line of dialog are listed in the node. These actors are defined by the entities linked to the appropriate port of the flownode.

Input Ports

Description

Play

Starts the dialog node playing.

Stop

Stops the dialog node playing.

Dialog

The DialogScript which the node will play.

Startline

The line of the DialogScript which the node will play.

AIInterrupt

Set the level of alertness at which the AI will abort the dialog.

AwareDistance

Max. Distance the player is considered listening. 0 disables this check.

AwareAngle

Max. view angle the player is considered listening. 0 disables this check.

AwareTimeOut

Time after which the player will be considered not listening any more when out of range.

Flags

Additional flags for dialog options.

Buffer

The dialog buffer type. Only one dialog can be played each time in the same buffer. Other dialogs in the same buffer get queued and played back once the buffer is free again. The different buffers have no priorities and can't block each other. The buffer types can be defined here: Libs/FlowNodes/DialogFlowNodeBuffers.xml

BufferDelay

The delay in seconds after a queued dialog starts to play once the buffer is emptied.

Actor X

Defines the objects to be used as actors for the scene. Actor numbers defined in the dialog editor.

Output Ports

Description

Started

Triggered when the dialog has started playing dialog.

Done

Triggered when the dialog node has stopped performing actions.

Finished

Triggered when the dialog node has finished playing dialog.

Aborted

Triggered when the dialog node action has been halted by any influence.

PlayerAborted

Triggered when the dialog node action has been halted by player action.

AIAborted

Triggered when the dialog node action has been halted by AI action.

ActorDied

Triggered when any actor in the scene dies.

Lastline

Outputs the last line spoken.

Curline

Outputs the current line spoken.

The Dialog Browser

The dialog browser can accessed on the Sound Menu as well as the Line property of the Dialog Entity. Use the Dialog Browser to select a line of dialog.


The dialog browser.


CVARS

g_debugDialogBuffers 1: Enables the on screen debug mode info for flownode dialog buffers. Displays which buffers are currently used and what dialogs are playing and/or are queued.

s_DialogVolume: Sets the volume of all dialog sounds. Default is 1, which is full volume.

s_GameDialogVolume: Controls the dialog volume for game use. Default is 1, which is full volume.

 

Chinese

使用对话编辑器

对话编辑器用来在 CryENGINE 的正常游戏序列和过场动画中进行对话。对话编辑器引用对话指定行并与地区语言本地化和字幕兼容。

可以使用 Flow Graph 引用对话编辑器的函数。

对话编辑器

编辑器的顶端有两个按钮代替菜单系统。

*对话*面板包含所有组织在文件夹 Libs\Dialogs 中对话脚本的浏览器。默认设置编辑对话被锁定以提醒编辑活动发生在本地。右击脚本并选择“本地编辑”即可启用编辑。

任务菜单允许访问对话菜单的管理选项。

描述框显示!对话脚本中使用行的详细信息和属性。

描述下方是用来编辑对话行的主面板。

SettingDescription
LineCurrent line. Click this column to select the whole line. You can then drag the line around. To add a new line, double click in free area or use Add ScriptLine from the toolbar. To delete a line press Delete or use Delete ScriptLine from the toolbar. Double-click to play or stop the Sound of the Line.
ActorThe Actor for this line. Select this from from the combo-box. Any Entity can be an Actor. An Entity can be assigned as Actor using the Dialog:PlayDialog flownode.
SoundThe Sound to be played. Use browse button to choose the sound through the Sound Browser或者从本地化工作表粘贴声音键。注:声音名称中没有 "wav" 扩展名。如果声音已指定“延迟”时间与其结束时间相关。
Animation:Name of Animation Signal or Action. You should select an entity first and then browse its signals/actions.
TypeSignal {{OneShot animation. Action }} Looping animation. Animation can automatically be stopped, when Sync is enabled.
EPWhen checked, Exact Positioning [EP]将用来播放动画。EP 的目标是 LookAt 目标。如果您想确保动画精确定位,请使用此选项。
SyncWhen checked, the animation or Action will automatically stop when the sound ends.
FacialExpr.Facial expression. Normally, every sound is already lip-synced and may already contain facial expressions. Use with care. This feature can be useful when you don't play a sound, but simply want the Actor make look with a specific mood or expression. Use #RESET# to reset expression to default state.
WeightWeight of the facial expression [0-1]面部表情应用的程度。当声音已经包含面部表情,仅用较小值 < 0.5。
淡化面部表情在几秒中淡化的时间。应当应用的面部表情变化速度。
LookAt玩家的 Lookat 目标。玩家尽量在他开始谈话/动画之前注视其目标。有时这无法保证。如当玩家在动画或谈论时,可能已不再面对他的目标。针对这些情况请使用“视线固定”。禁用“视线固定”请使用 #RESET#。
延迟在运行到下一行前延迟几秒。当播放声音,延迟时间与声音结束时间相关。所以稍微重叠行,使对话更加自然。您可以使用负延迟。当没有指定声音,延迟时间与开始行相关。
描述对行的描述。

主面板下的动态帮助显示当前对话编辑器已选元素的上下文相关帮助。

触发 Flow Graph 中的对话

上述 Flowgraphs 的示例显示了一个简单的对话设置。

区域触发器实体的进入端口与播放对话节点的播放端口链接。当触发器满足了“进入”条件就会播放对话节点。这可能由传统方法(玩家进入触发器)或使用对象上的轨迹视图事件轨迹触发器手动触发条件引起。

在对话的每一行里由对话脚本玩家属性已定义的玩家都在节点中列出。这些玩家由链接至 Flownode 合适端口的实体定义。

输入端口描述
播放开始播放对话节点。
停止停止播放对话节点。
对话节点即将播放的对话脚本。
开始行节点即将播放的对话脚本行。
AI 中断设置 AI 将中断对话的警觉级别。
意识距离玩家仍被认为处于侦听状态的距离。
意识超时玩家被认为不再处于侦听状态之后,多出范围之外的时间。
标志对话选项的附加标记。
玩家 X定义场景中作为玩家的对象。在对话编辑器中定义玩家数量。
输出端口描述
已开始当对话已经开始播放时触发。
完成当对话节点已停止执行操作时触发。
结束当对话节点已完成播放对话时触发。
中断当对话节点操作因任何影响而暂停时触发。
玩家中断当对话节点操作因玩家操作而暂停时触发。
AI 中断当对话节点操作因 AI 操作而暂停时触发。
玩家死亡当场景中的任何玩家死亡时触发。
最终行输出最终叙说的语言行。
当前行输出当前叙说的语言行。

对话浏览器

对话浏览器可以通过声音菜单和对话实体的*行*属性进入。使用对话浏览器选择对话行。

 对话浏览器