From f1694b45ecca0f1d0841ff411ebc89f21e44e138 Mon Sep 17 00:00:00 2001 From: Serhii Snitsaruk Date: Fri, 27 Oct 2023 14:21:23 +0200 Subject: [PATCH] Improve Blackboard docs --- doc_classes/Blackboard.xml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/doc_classes/Blackboard.xml b/doc_classes/Blackboard.xml index 14ee570..0e1528a 100644 --- a/doc_classes/Blackboard.xml +++ b/doc_classes/Blackboard.xml @@ -1,12 +1,12 @@ - A key/value store to hold data shared by BT tasks. + A key/value storage for sharing among [LimboHSM] states and [BehaviorTree] tasks. - A key/value store to hold data shared by tasks of a behavior tree. - Blackboard can serve as a parent scope for another blackboard. In this way, if a value is not found in the active scope, a parent scope Blackboard is asked to return a value. A parent scope Blackboard can have its own parent scope. This structure is called Blackboard scope chain. There is no limit on how many Blackboards can take part in a chain. Blackboard never overwrites parent scope values. - A new scope can be created by [BTNewScope] or [BTSubtree] tasks. It is automatically created for any [LimboState] that has a non-empty Blackboard data defined, or for any root [LimboHSM]. + Blackboard is where data is stored and shared between states in the [LimboHSM] system and tasks in a [BehaviorTree]. Each state and task in the [BehaviorTree] can access this Blackboard, allowing them to read and write data. This makes it easy to share information between different actions and behaviors. + Blackboard can also act as a parent scope for another Blackboard. If a specific variable is not found in the active scope, it looks in the parent Blackboard to find it. A parent Blackboard can itself have its own parent scope, forming what we call a "blackboard scope chain." Importantly, there is no limit to how many Blackboards can be in this chain, and the Blackboard doesn't modify values in the parent scopes. + New scopes can be created using the [BTNewScope] and [BTSubtree] decorators. Additionally, a new scope is automatically created for any [LimboState] that has defined non-empty Blackboard data or for any root-level [LimboHSM] node. @@ -15,19 +15,19 @@ - Removes variable by name. + Removes a variable by its name. - Returns [Blackboard] data as a [Dictionary]. + Returns Blackboard data as a [Dictionary]. - Returns a [Blackboard] that serves as a parent scope for this instance. + Returns a Blackboard that serves as the parent scope for this instance. @@ -42,28 +42,28 @@ - Returns [code]true[/code] if Blackboard contains [code]p_key[/code] variable. Parent scope included. + Returns [code]true[/code] if the Blackboard contains the [code]p_key[/code] variable, including the parent scopes. - Replaces NodePath variables in the [Blackboard] with references that are retrieved by calling [method Node.get_node] on a [code]p_node[/code] argument. + If [code]true[/code], any [NodePath] variables in the [Blackboard] are replaced with [Node] references when the tree is instantiated. References are retrieved by calling [method Node.get_node] on the agent instance. - Overrides Blackboard data, discarding anything that was stored at this scope. Use with caution. + Overwrites Blackboard data, replacing any previously stored variables within current scope. Use with caution. - Sets the parent scope. If a value is not found in the Blackboard's active scope, the parent scope Blackboard will be asked to retrieve it. + Assigns the parent scope. If a value isn't in the current Blackboard scope, it will look in the parent scope Blackboard to find it. @@ -71,13 +71,13 @@ - Sets value of blackboard variable. + Assigns a value to a Blackboard variable. - Returns topmost [Blackboard] in the scope chain. + Returns the topmost [Blackboard] in the scope chain.