The babble dialog
system is just used to make sure the actors don’t repeat the same line over and
over again. It’s a way to control what
they babble J
The babble system is activated either when the actor is used or a
playdialog event is received by the actor.
alias <alias
name> <real name> <parameters>
where parameters can
be:
global - all instances act as one (not per
actor)
stop - once used, don't use again
timeout <seconds> - once used wait
specified time until using again
maxuse <times> - can only be used
specified number of times
weight <weight> - random weighting
dialog <alias>
<parameters>
where parameters can
be:
randompick - randomly picks out dialog from
alias list
playerhas <item name> - only plays if
player has specified item
playerhasnot <item name> - only plays
if player doesn't have specified item
has <item name> - only plays if actor
has specified item
has_not <item name> - only plays if
actor doesn't have specified item
depends <variable name> - only plays
if the specified variable is set
dependsnot <variable name> - only
plays if the specified variable is not set
random <percent between 0 and 1> -
plays this percent of time
Both alias and dialog
commands are put in the init/server section of the tiki of the actor that needs
to say the dialog.
The way this works is
when the system tells a dialog to play it starts at the top of the dialog list
and tries each dialog line. The first
one that it finds where all of the conditions are true is played.
Then it picks which
exact dialog sound to play out of the alias list. It normally just does this in order, will play alias1, then
alias2, etc. The randompick dialog
parameter can change this as can the stop, timeout, maxuse, and weight alias
commands.
ex.
init
{
server
{
alias secret_dialog1 “sound/whatever.wav”
stop
alias edenmale_dialog1
"sound/dialog/edenfall/recruiter/newlife.wav"
alias edenmale_dialog2
"sound/dialog/edenfall/recruiter/bow.wav" maxuse 2
alias edenmale_dialog3
"sound/dialog/edenfall/recruiter/joinus.wav" timeout 5
dialog secret
playerhas sercret_item1
dialog edenmale_dialog
randompick
}
}
In this example the following will happen: if the player has secret_item1 then the actor will say secret_dialog1
(only once) otherwise he will say one of the edenmale_dialogs. It will randomly pick between the 3 of them
except it will play edenmale_dialog2 a max of 2 times and will only play
edenmale_dialog3 every 5 seconds.
lipsync <options> <list, wave, or mp3 file>
options: -q for quiet
(doesn’t print most messages)
-f for force (converts all sounds
regardless of timestamps)
NOTE: this program only works in NT right now (will be fixed).
This will produce a lip file for the file specified or all of the files
specified in the list file.
For an example of a list file look at copy.ls in the root fakk
directory.
Make sure to place the lip files in the same directories as their
corresponding sound files.
This file tells the game how much and when to move the actor’s mouth
while he is talking.