I guess this is one for Daniel, but I figure it’d be useful here anyway.
Not sure if this is a current or planned feature, but from my reading you generally can only have one blackboard accessed from any given behavior tree?
So if that’s the case, I’d like to request that we add support for multiple blackboards in any given BT’s. The reasons for this are pretty simple, in that if you want to do any form of group AI systems, its far easier if you have some coordinating system to do it. In my own code I pretty regularly use multiple blackboards (with an blackboard ID used to map which one I’m using in a condition).
I’m sure Daniel and Meisko know why you’d want this, but for anyone reading, you would use multiple blackboards for instance to coordinate multi-agent movements like squad behaviors. You’d have each agent with its own blackboard, but then have an overall commander AI that actually manipulates the agents blackboards, or often a central blackboard that is shared between the squad members. Imagine that each squad member has a “who is my current target” object set, stored in its own blackboard, but also has “squad is aware of these threats” in a squad blackboard, so that the AI can position the squad members in such a way that they can engage their own target without compromising their position with respect to what the squad has engaged.
I’ve also used multiple blackboards in social simulations and smart object type systems (using a central blackboard as the way to coordinate agent access to the social object).
If this is currently possible, then ignore this post but I haven’t seen specific mention of this feature yet.
Ta.
Phil.