/tg/ Station 13 - Modules - TypesVar Details - Proc Details

Pet Command

Set some AI blackboard commands in response to receiving instructions This is abstract and should be extended for actual behaviour

Vars

callout_typeCallout that triggers this command
command_descDescription to display in radial menu
command_feedbackShown above the mob's head when it hears you
command_nameUnique name used for radial selection, should not be shared with other commands on one mob
hiddenIf true, command will not appear in radial menu and can only be accessed through speech
radial_iconIcon to display in radial menu
radial_icon_stateIcon state to display in radial menu
sense_radiusHow close a mob needs to be to a target to respond to a command
speech_commandsSpeech strings to listen out for
weak_parentWeak reference to who follows this command

Procs

add_new_friendRegister a new guy we want to listen to
execute_actionExecute an AI action on the provided controller, what we should actually do when this command is active. This should basically always be called from a planning subtree which passes its own controller. Return SUBTREE_RETURN_FINISH_PLANNING to pass that instruction on to the controller, or don't if you don't want that.
find_command_in_textReturns true if we find any of our spoken commands in the text. if check_verbosity is true, skip the match if there spoken_text is way longer than the match
look_for_targetTarget the pointed atom for actions
provide_radial_dataProvide information about how to display this command in a radial menu
remove_friendStop listening to a guy
respond_to_calloutRespond to a callout
respond_to_commandRespond to something that one of our friends has asked us to do
set_command_activeActivate the command, extend to add visible messages and the like
set_command_targetStore the target for the AI blackboard
try_activate_commandApply a command state if conditions are right, return command if successful
valid_callout_targetDoes this callout with this target trigger this command?
waive_automuteStop the automute from triggering for commands (unless the spoken text is suspiciously longer than the command)

Var Details

callout_type

Callout that triggers this command

command_desc

Description to display in radial menu

command_feedback

Shown above the mob's head when it hears you

command_name

Unique name used for radial selection, should not be shared with other commands on one mob

hidden

If true, command will not appear in radial menu and can only be accessed through speech

radial_icon

Icon to display in radial menu

radial_icon_state

Icon state to display in radial menu

sense_radius

How close a mob needs to be to a target to respond to a command

speech_commands

Speech strings to listen out for

weak_parent

Weak reference to who follows this command

Proc Details

add_new_friend

Register a new guy we want to listen to

execute_action

Execute an AI action on the provided controller, what we should actually do when this command is active. This should basically always be called from a planning subtree which passes its own controller. Return SUBTREE_RETURN_FINISH_PLANNING to pass that instruction on to the controller, or don't if you don't want that.

find_command_in_text

Returns true if we find any of our spoken commands in the text. if check_verbosity is true, skip the match if there spoken_text is way longer than the match

look_for_target

Target the pointed atom for actions

provide_radial_data

Provide information about how to display this command in a radial menu

remove_friend

Stop listening to a guy

respond_to_callout

Respond to a callout

respond_to_command

Respond to something that one of our friends has asked us to do

set_command_active

Activate the command, extend to add visible messages and the like

set_command_target

Store the target for the AI blackboard

try_activate_command

Apply a command state if conditions are right, return command if successful

valid_callout_target

Does this callout with this target trigger this command?

waive_automute

Stop the automute from triggering for commands (unless the spoken text is suspiciously longer than the command)