storytellers.h

Go to the documentation of this file.
00001 /*
00002  * storytellers.h
00003  *
00004  * Bogus header file for doxygen documentation.
00005  *
00006  * Don't use this file!
00007  */
00008 
00009 ////////////////////////////////////////////////////////////////////////////////
00010 ///
00011 /// \ingroup aesop
00012 /// \defgroup storytellers AESOP Storyteller's Guide
00013 ///
00014 /// This guide is for Storytellers who want to create games.
00015 ///
00016 /// \n
00017 /// <b>Target Audience:</b> Anyone who wants to build a game.
00018 ///
00019 /// <b>Purpose of this Storyteller's Guide:</b> To describe how to create your
00020 ///     own games using the AESOP framework, and to provide examples to follow.
00021 ///
00022 /// \n
00023 /// A storyteller is someone who intends to build a real game from the
00024 /// framework.  I call game builders "storytellers" because the intention of
00025 /// the framework is to support rich interactive stories.
00026 ///
00027 /// The end goal of a storyteller is the creation of downloadable packages:
00028 ///  -# Client package(s).  This is the package that end users will install on
00029 ///     their local machine to actually play the game and interact with the
00030 ///     story.
00031 ///  -# Server package(s).  This is the package that a group of users will
00032 ///     download and run on a single server.  Then they'll connect their clients
00033 ///     to that running server.
00034 ///
00035 /// Using the AESOP framework, creating a game is actually a content assembly
00036 /// process that looks roughly like this:
00037 ///
00038 ///  -# The storyteller determines the story they'd like to tell.
00039 ///  -# The storyteller gathers all of the assets necessary to tell the
00040 ///     story.  These are things like 3D models, AI code, physics models,
00041 ///     etc.
00042 ///  -# The storyteller creates rich Map objects that contain their game
00043 ///     objects, and contain triggers and other elements to allow the players
00044 ///     to progress in the game (or not!).
00045 ///  -# The storyteller finds the correct client and server binaries to
00046 ///     distribute with the game.  In many cases, a storyteller will be able
00047 ///     to use the reference client and server binaries that come with the
00048 ///     AESOP framework.  But other storytellers may need to create their own
00049 ///     customer binaries, or add custom behavior.  If so, see the
00050 ///     \ref dev_guide .
00051 ///  -# The storyteller tests their game.  The AESOP framework is built to
00052 ///     be robust and has extensive unit tests.  But storytellers will need
00053 ///     to test all of the game elements they've created, to make sure players
00054 ///     won't get stuck.
00055 ///  -# The storyteller packages up the content (3D models, AI, physics
00056 ///     models, textures, sounds, maps) and binaries (server, client) into
00057 ///     multiple packages.  Typically a storyteller will need a server
00058 ///     package per operating system they intend to support for the server,
00059 ///     and a client package per operating system they intend to support for
00060 ///     a client.
00061 ///  -# The storyteller makes the packages available for download.
00062 ///
00063 /// Then people can start playing the game!
00064 ///
00065 ////////////////////////////////////////////////////////////////////////////////