Features
This page outlines some of the major features of the components of the TRSoccerbots software package.
TREditor
TREditor is a streamlined yet powerful graphical user interface for creating teleo-reactive programs for use in the TRSoccerbots simulator. The flexibility of the interface allows a user to program using only the mouse, only the keyboard, or any combination of the two.
Features include:
- Intuitive interface that was developed utilizing fundamental HCI principles and weeks of user
testing
- Informative ToolTips that pop up information when the mouse hovers over any part of the screen
- Resizable panels that automatically attempt to give users the best view for any given resolution
- Informative icons
-
Intelligent text sensing
- Syntax highlighting clearly differentiates conditions, actions, comments, and errors
-
Dynamic help
- Displays pertinent information to the user as soon as the name of a condition or action is typed (i.e. how an action is used with what arguments)
- Describes in detail any errors in a rule as each new line is entered
- Automated cursor placement - as the user clicks to add any conditions, actions, or objects, the cursor is automatically placed in the correct position, greatly simplifying the task of programming
- Error checking to ensure the user never gives any erroneous input or makes any mistakes (e.g. a message box warns the users if they try to close the program before saving or create a new behavior with the same name as another behavior)
- Cut, copy, paste – all the amenities a user expects from a modern text editor.
- Appropriate menus, including context menus for objects that pop up when the user clicks on them
- Created in Visual C# .NET
TRConfig
TRConfig provides an easy-to-understand interface for setting up soccer matches in the TRSoccerbots simulator. With the TRConfig, it’s easy to load in programs that were created in TREditor and start a soccer match.
Features include:
- Mouse buttons provide simple “click and drag” control for positioning robots on the field and setting the direction they are facing
- Error checking ensures robots are configured properly before a match begins
- Helpful warning messages to alert users of useful information
TRSoccerbots Simulator
Once the user has written programs in the TREditor and has used the TRConfigurator to setup a soccer match, the TRSoccerbots simulator begins.
TRSoccerbots simulates a soccer game in which robotic players are driven by the user's TR programs. It features a fully functional TR interpreter that is also capable of processing parallel actions as well as a robust physics engine that allows for accurate world dynamics.
Our primary goal in creating the TRSoccerbots simulator was to create an exciting, graphically-rich environment in which users can see the results of their programming efforts. By creating a fully rendered world with dynamic sound effects and realistic physics, TRSoccerbots strives to capture the energy of a true soccer match and inspire users to become truly excited about refining their programs as much as possible. TRSoccerbots also supports a number of features that are designed to aid users in debugging their programs.
To this end, the TRSoccerbots simulator features:
-
A rich and dynamic world
- A frame-rate independent animation system based on interpolated values, allowing for the most fluid animation that the process can handle
- Completely original robot models with distinct animation sequences for every possilbe user action
- A fully articulated crowd that responds to the action on the soccer field
- Cut scenes that mark major events in each soccer match and provide each team with a unique personality
- 4.1 Surround sound
-
A game mode
-
Ability to choose from
a large set of cameras views to enjoy the game.
- Includes a dynamic, free floating camera that automatically focuses on the most important elements of each match
- The ability to take control of a robot and directly participate in a match
- Replay mode that allows users to watch the match again.
-
Ability to choose from
a large set of cameras views to enjoy the game.
-
A debug mode
- Displays current actions, showing users exactly which lines of the user written code a robot is responding to in the current world state.
- Active control over time - user may pause, advance by one time tick, set to slow motion, or run at full speed.
- Robots and the ball can be moved and rotated with the mouse.
- Ability to focus on a robot in isolation by taking control of a single robot and disabling all others