Interface: BotNeuron<S>
Type parameters
Name | Type |
---|---|
S | extends State |
Properties
action
• action: ActionDefinition
<S
>
ActionDefinition
associated with this Neuron.
children
• Optional
children: BotNeuron
<S
>[]
Child neurons of this one.
FIXME: Verify programmatically, that you defined either action
OR neurons
...
TODO: BotNeuron Definition Parser?
conditions
• Optional
conditions: (test
: ClientMessageConditions
<S
>, context
: ClientMessageContext
<S
>) => void
Type declaration
▸ (test
, context
): void
Additional conditions to notify bot if it can perform this action.
API of Conditions
here is limited on purpose,
you can only assess current player (eg. for ownership) and game state.
Optional, but without this, bot will brute force its way through all game elements to understand if this action can be played.
Parameters
Name | Type |
---|---|
test | ClientMessageConditions <S > |
context | ClientMessageContext <S > |
Returns
void
description
• Optional
description: string
entitiesFilter
• Optional
entitiesFilter: (test
: BotEntityAuxConditions
<S
>, context
: BotEntityAuxContext
<S
>) => void
| QuerableProps
[]
If your action targets entities
too broadly, add additional filter here.
Can simply be additional QuerableProps
object, or more advanced function
of conditions - subject is automatically set to each entity.
name
• name: string
playerEventData
• Optional
playerEventData: (context
: ClientMessageContext
<S
>) => any
Type declaration
▸ (context
): any
Make bot generate additional data
, if needed.
Will be passed to ClientPlayerMessage.data
Parameters
Name | Type |
---|---|
context | ClientMessageContext <S > |
Returns
any
thinkScale
• Optional
thinkScale: number
Scale up/down the time it takes the bot to act on this neuron.
value
• value: (context
: ClientMessageContext
<S
>) => number
Type declaration
▸ (context
): number
With higher values bot is more likely to pick that Neuron.
Bots may try to pick the same child-Neuron multiple times in a row, if the game still allows it (eg.: picking multiple cards of the same rank).
Optional, by default the value is considered to be 0
.
Parameters
Name | Type |
---|---|
context | ClientMessageContext <S > |
Returns
number