Difference between revisions of "BotProgramming Basics"
From Gladiabots Wiki
Line 16: | Line 16: | ||
|Root node ||Each AI contains exactly one root node that defines the AIs starting point. It contains the name of the AI. | |Root node ||Each AI contains exactly one root node that defines the AIs starting point. It contains the name of the AI. | ||
|- | |- | ||
− | |Action node ||If a rectangular-shaped action node is evaluated valid, the described action is executed for the current tick. An action node is considered invalid if the bot {{Tooltip|cannot perform it|Example: Attacking an enemy in close range is considered invalid if there are only enemies in mid and long range.}}. | + | |Action node ||If a rectangular-shaped action node is evaluated valid during AI check, the described action is executed for the current tick. An action node is considered invalid if the bot {{Tooltip|cannot perform it|Example: Attacking an enemy in close range is considered invalid if there are only enemies in mid and long range.}}. |
|- | |- | ||
− | |Condition node||If an oval-shaped condition node is evaluated valid, the elements connected | + | |Condition node||If an oval-shaped condition node is evaluated valid during AI check, the elements connected from the bottom of the condition node are evaluated counterclockwise. A condition node is considered invalid if the current situation {{Tooltip|doesn't fit it|Example: Checking if an enemy is shooting myself from long range is considered invalid if there is only one enemy shooting myself from mid range.}}. |
|- | |- | ||
− | |Connector | + | |Connector node||The diamond-shaped connector node is always evaluated valid during AI check. It connects every element linked to the top with every element linked from the bottom of the connector node. A connector node can be used to simplify the layout of the AI. |
|- | |- | ||
− | |Sub-AI | + | |Sub-AI node || |
|- | |- | ||
|Link || | |Link || |
Revision as of 07:46, 19 October 2017
![]() |
This page needs improvement, you are welcome to contribute. |
Basics
The robots in Gladiabots are autonomous and obey their Artificial Intelligence (AI). Bots can only execute one of the possible actions at a time. The AIs task is to determine what action to use in the current situation. Each bot checks its AI counterclockwise, searching for the first valid branch leading to an action.
![]() |
Rest of the page is a work in progress. |
The AI of a bot is shaped like an upside down tree. It can be composed of the following elements:
Element | Description |
---|---|
Root node | Each AI contains exactly one root node that defines the AIs starting point. It contains the name of the AI. |
Action node | If a rectangular-shaped action node is evaluated valid during AI check, the described action is executed for the current tick. An action node is considered invalid if the bot cannot perform it![]() |
Condition node | If an oval-shaped condition node is evaluated valid during AI check, the elements connected from the bottom of the condition node are evaluated counterclockwise. A condition node is considered invalid if the current situation doesn't fit it![]() |
Connector node | The diamond-shaped connector node is always evaluated valid during AI check. It connects every element linked to the top with every element linked from the bottom of the connector node. A connector node can be used to simplify the layout of the AI. |
Sub-AI node | |
Link |