All Classes and Interfaces
Class
Description
An abstract adapter is used to configure a
GsonBuilder to read and write objects that share a common
parent class, including abstract types like interfaces and abstract classes.A list of command line arguments and various utility methods to parse keys
and values.
An asset is any named object or concept in a
story world.A tool for defining the
assets used in a story
world.The choice message is sent from an
agent to
the {edu.uky.cs.nil.tt.Server server} to signal what turn the agent wants
to take.The clock thread regularly calls the server's
tick
method.A command parser listens (on
standard input) for and
executes simple text commands, like modifying the server's database and
shutting the server down.A command is a type of operation that can be parsed by a
command parser and executed on a server.An operation represents a single command that can be executed on a server
based on a series of arguments that define how it behaves.
The connect message is sent from the {edu.uky.cs.nil.tt.Server server} to an
agent as soon as the agent connects to give
details about which story worlds and agents are available for play.Advertises that a specific story world and agent pair is waiting for a
match.
A constant is a
logical value that always exists in all story worlds, such a the Boolean concepts of True and False, numbers,
and so on.A database is a
server's persistent store of information about
the story worlds and agents available for sessions.A
database entry for an agent.A database entry represents an individual elements in the database,
including its meta-data, such as its
title and description.A listable
entry is one that can either be set as clearly
publicly available (listed) or not clearly available (unlisted).A
database entry for a story world.A described object is associated with a human-readable natural language
description.
A tool for generating English descriptions of certain objects based on
natural language templates.
The names of elements which can be replaced in description templates
A
describer rule has two parts: a context that defines
when to apply it and a natural language template to use when this rule is
applied.A verb is an object used in the templates of a
describer.An encoded object has a unique string of
1's and 0's that
uniquely distinguishes it object from others of the same type in the same
story world.The end message is sent from the {edu.uky.cs.nil.tt.Server server} to an
agent to indicate that the session had ended
and that they should now disconnect.An ending is a
signed asset that represents one of
several possible ways a story can end.An entity is an
asset that represents a character, object,
place, or idea in a story world.The error message is sent from the {edu.uky.cs.nil.tt.Server server} to an
agent if one of the agent's messages causes
a problem or is incorrectly formatted.A generic adapter is used to configure a
GsonBuilder
to write all subclasses of a given superclass as that superclass.The join message is the first message sent from an
agent to the {edu.uky.cs.nil.tt.Server server} to
provide the agent's credentials and its preferences for what story world,
role, and partner they want for their session.A log is used to record system messages and session data.
A logical object is anything that is itself a predicate logic formula or
contains a predicate logic formula.
A logical
world model implements the internal logic of a
story world using logical propositions and describes its
elements using a rule-based describer.A message is information sent to or from a
server in JSON format.A named object has a unique name that specifically distinguishes it from
other objects of the same type in the same context.
A proposition is a
logical expression that can be either
true or false.An operator defines the behavior of a
proposition.The report message is sent from an
agent to
the {edu.uky.cs.nil.tt.Server server} to indicate the value of a question on
a survey about the session they are playing.Represents the two roles in a collaborative storytelling
session: the Player, who typically controls a single character, and the
Game Master, who controls all other characters and the environment.The main entry point for the Tandem Tales server.
An event represents a single
turn during a storytelling
session as well as the actual state of the story world after the turn
and the state of the world as perceived by the player.A report occurs when one participant in a session sends their response
to a question about the narrative.
A result explains how the session ended.
A timestamped object records the moment at which it was created.
Constants and other project-wide settings.
A signed asset is an
asset which has a unique signature among all other assets of that type in a story
world.The start message is sent from the {edu.uky.cs.nil.tt.Server server} to an
agent when a partner has been found and their
session begins.A status contains the full history of a
session in a story world, a description of its current state, and a list of turns that can be taken next (if
any).The kind of turn being taken
A example of how to create a
logical story world model.A unique object has a sequential integer ID that specifically distinguishes
it from other objects of the same type in the same
story world.The updates message is sent from the {edu.uky.cs.nil.tt.Server server} to an
agent each time a turn is taken and the
state of the story world changes.A collection of utility methods used throughout this project.
A value is a
logical expression which evaluates to itself.A world model is an implementation of a
story world that
contains the necessary logic to simulate how turns change the
story state.