by Alan Harder
UltiStats is a tool for collecting and viewing statistics of ultimate
frisbee games on a PalmOS-based PDA device.
There are four basic functions:
Configure some user interface options and select what data about the game
will be recorded.
Create team rosters containing names of the players.
- Record Data
Data is entered into UltiStats as the game progresses.
Play by play detail or statistics summaries can be viewed.
Data can also be exported for viewing on a desktop system.
Choose the Options / Preferences from the main menu.
The preferences dialog has three sections:
Tap on the tabs across the top of the dialog to move between the sections.
The data preferences control what data will be recorded during the
game. UltiStats will adjust its interface to record only the data
you want to collect.
This section defines defense types and your own custom events that
can be recorded during a game.
The options section offers additional control over the UltiStats
interface. Most options in this section do not affect the data that
- The first selector specifies the level of detail to record on offense:
- All Throws
This mode records every pass. This allows you to track number of
touches and completion percentage for each player.
- Count Throws
This mode records the number of completed passes on each possession,
but not the players involved. This allows you to track the completion
percentage for the team, but not individual players.
- Goals/Turnovers only
This mode only records the outcome of each possession, either a goal
or a turnover. This mode tracks goals thrown/caught and turnovers
made by each player, but offers no information about the number of
passes made or completion percentage.
- Defense type
This checkbox specifies whether or not to record the type of defense
played. Tracking defense type allows reporting on the percentage of
time each type results in a turnover. The possible choices for the
defense type are specified in the Customize section.
- Who pulled
This checkbox specifies whether or not to record which player throws
- Quality of pull
This checkbox specifies whether or not to track the "quality" of the
pull.. controls for "good", "ok" and "bad" will be available when this
mode is turned on.. of course, which one to check is purely a judgement
call of the person taking the stats.
- Calls to Record
UltiStats can record calls made during the game: Foul, strip, pick,
travel, fast-count, double-team, or other/unknown. You may not be
interested in tracking all of these different calls, so you can specify
which calls will be available to record during the game.
- The left column of this section specifies the possible values for
Defense Type. If tracking defense type is turned on (checkbox
in the Data section) then the values listed here will be the
choices offered during the game. You can choose to track only basic
information (like Man or Zone) or more specific information (type of
zone, what type of force).
- The right side of this section defines Custom Events. You can
use custom events to track anything you want. Each event has a checkbox
to the right which specifies whether the event is a team-event (simply
record that the event occurred) or a player-event (also record which
player was involved). Examples of custom events: Red zone (team-event;
the team advanced the disc to within 10 yards of the endzone),
Burnt for score (player-event; the specified player allowed the person
s/he was guarding to catch a goal), Hammer (player-event; the specified
player threw a hammer), Good defense (team-event; the team played good
defense, leading to the opponent turning it over.. this can track when
good D forced a turnover, even though a block may not be recorded).
The possibilities go on and on!
- Autoselect last 7 in subs dialog
When a point ends the subs dialog comes up so you can select the
players in the next point. If this checkbox is selected then the
dialog will appear with the same 7 players from the last point
already checked. If this option is turned off then the dialog will
come up with no players selected.
- Show points-played in subs dialog
UltiStats tracks the playing time of each player (number of points
played and consecutive points in or out). If this option if checked
then this information will be displayed in the subs dialog. When the
option is turned off you can see more players in the subs dialog at
once, so you don't have to tap the toggle button as often.
- Allow interception for goal
When this option is selected a checkbox labeled for goal will
appear when entering a block for a defensive player. This allows for
a goal to be scored by a defensive interception, with no passes thrown
(this rule is known as the "Callahan goal"; included in 10th edition
- Activate timer
UltiStats can keep track of the time spent between points or during
timeouts. When this option is turned on you will see a clock in the
subs and timeout dialogs. Also by selecting this option you can enter
time limits when you wish to hear warning beeps. Click a checkbox to
turn on a warning beep and then enter the number of seconds at which
the beep should occur in the text field at right.
The lower half of the UltiStats main screen is the Teams section.
Before any data can be collected a team roster must be created to
store the names (or numbers) of the players.
Manage team rosters using the buttons along the bottom of the main screen:
Create a new team roster. The New Team dialog will appear
for entering the team name.
To copy all player names from an existing team: select the team to
copy before tapping New. Then select the Copy selected
team checkbox in the New Team dialog.
Edit the names on the roster of the selected team.
- Edit Name
Rename the selected team.
Delete the selected team. This will not delete any statistics data
previously collected for this team.
The New and Edit options will lead to the edit roster
dialog. Enter the player names here and tap Ok to save.
Standard Cut/Copy/Paste functions are available in the menu of this dialog.
If you have more than 22 players tap the <> button to
toggle to a third column with 11 more player slots.
To start recording data with UltiStats first tap the name of the team roster
to use for this game. Then tap the Start Game button just above the
teams list. A window will pop up to specify the opponent for this game.
UltiStats can record statistics for one or both teams in the game.
Check the Record Opponent Stats box to record data for both teams.
In this case the opponent will be selected from the list of available
team rosters as full stats requires a roster for both teams (it is possible
to use the same roster for both teams).
Any name for the opponent can be entered when collecting stats for one team.
Tap Ok and the game begins.
The first screen that appears is the subs window. This screen comes up at
the beginning of each point to select the players in the game.
- 0 button: uncheck all players.
- <> button: toggle between the columns of player names in
- The current score is shown to the right of these two buttons.
- The area to the right of the score is used for three things:
- When the subs window appears (except at the very beginning of the game)
the End Game button is shown. Tap this button when the game is
over. Deslect all players to access this button again if it becomes
invisible (or tap the 0 button).
- As players are checked off the total number of players selected is
- If the timer is active (see preferences section above) a clock will
appear here to show the amount of time since the previous point ended.
- Tap the menu button to access these functions:
- Timeout: record a timeout called between points.
- Points played: view the number of points played in this game
and total points since the overall playing-time counters were last reset.
- Add to Roster: add new player(s) to the current team roster.
- Clear PT count: reset overall playing-time counters.
- View Stats: view statistics summary for the game up to this point.
Select seven players and tap Ok to proceed to the main data entry
screen. The UltiStats interface presents all the possible events at each
step as the game progresses. The functions available are also affected by
the options selected in the UltiStats preferences. All the possible events
in all the possible configurations are too numerous to list here, but the
basic flow works like this:
- Select event type in upper left.
- Select any modifiers in the lower left.
- Tap a button in the lower right to enter the event.
The button may be a player name, event detail or just Ok.
- Repeat the above until a goal event is entered and the subs screen
For example, in the screen shot at right, first tap Turnover to
specify the event type that occurred. Then select any modifiers that
apply to this event: in this case the turnover was a Huck. Then tap
the event detail to enter the event: in this case perhaps Throwaway.
After tapping a button in the lower right the interface will present
the options available for the next event.
It is easy to skip over the event modifiers because omitting them does not
cause any errors.. don't forget to look at the checkboxes in the lower left!
Here are some functions in addition to the basic flow:
- Buttons in the upper right:
- Gm Note: Enter a note about the entire game. Text can be
added/modified/removed during any point of the game.
- Pt Note: Enter a note about the current point.
The game and point notes are displayed in the play-by-play output
- Undo: Undo the last event. UltiStats supports infinite undo and
provides guides in the interface to aid in redo of previously entered
events (dots appear on the lower-right buttons). This allows for going
back some number of events, making a minor correction, and quickly
reentering events to catch up with the progress of the game.
But be careful: changing modifiers or event detail of a past event
allows redo to continue, but entering a different event type will
cause all redo data to be lost.
- Defense: If recording of defense type is activated in the
preferences this button will appear in the offense and defense modes.
Tap the Defense button to specify the type of defense being
played in the current possession. Note that this is not an "event"
so there is no need to tap Undo to change the defense type.
Simply tap the Defense button again at any time during the
same possession and select the correct type.
When the end of a possession is reached (either by a goal or turnover)
UltiStats will check if the defense type has already been entered.
If so it will continue on to the next possession. If not the controls
automatically pop up to force the entry of the defense type for that
possession. This is worth repeating: when the defense type selection
automatically appears then UltiStats is asking for the defense played
in the possession that just ended, not the new possession just
- Menu items:
- Clock: Shows the current time, length of the current point
and the whole game, and the number of timeouts called by each team.
You can also access the clock by tapping on the team names/score in
the upper right of the main data entry screen.
- Playing Time: Shows the number of points played by each player
in the current game, total points since the overall PT counters were
last reset, and the number of points in or out in the current game.
- View Stats: Shows the statistics summary for the game so far,
not including the current point.
- Pass counter:
Available only in the count throws mode selected
in the preferences. This is for counting the number of completed passes
in each possession, without recording who threw and caught each pass.
Tap the + and - buttons to set the correct number before
entering an event that ends the possession. The hardware up/down buttons
on the PDA will also increase/decrease the count.