Xabsleditor¶
Xabsleditor (eXtensive agent behavior specification language editor) is our home cooked editor with code highlighting and syntax checking for the description language XABSL.
Though it might seem complex at first, this is a powerful tool that, in combinition with recording the behavior that the robot went through during gameplay, allows for reasonably easy debugging of behavior bugs.
The .xabsl files are located inside </path/to/mainRepo>/NaoTHSoccer/Source/Cognition/Modules/Behavior/XABSLBehaviorControl
.
Note
This documentation lacks implementation details (intermediary code, gradle)
- TODO: Move and expand Xabsl documentation from the team report.
Starting Xabsleditor¶
Xabsleditor is located inside its own repository.
It is started by running the gradlew executable inside.
Because it needs Java 11, either change your system Java before execution, or, if on linux:
- Download latest JDK from here
- Untar to ~/.local so that the path is ~/.local/jdk-11.0.<number>
- Now start Xabsleditor with env JAVA_HOME=~/.local/jdk-11.<number> </path/to/XabsleditorRepo>/gradlew
Tipp: Set yourself an alias for this.
Current behavior in a nutshell¶
TODO: Outline when init, when idle, etc.
Xabsleditor features¶
Transition graphs¶
Once a .xabsl file is loaded, for example /Options/Roles/role_default.xabsl (they are all located inside </path/to/mainRepo>/NaoTHSoccer/Source/Cognition/Modules/Behavior/XABSLBehaviorControl
) you should see a state graph on the right side. Each node represents a state {}
in your code on the left.
Symbols¶
TODO