Tasks:Schedules: Difference between revisions

From Adonthell
Jump to navigation Jump to search
Requirements: updated for current state of implementation
Updated for current state of implementation
 
Line 17: Line 17:
* <span style="text-decoration:line-through">character activity can be paused and resumed</span> (done)
* <span style="text-decoration:line-through">character activity can be paused and resumed</span> (done)
* generic activities written in python can be used to create individual activity schedules for characters.
* generic activities written in python can be used to create individual activity schedules for characters.
* Schedules are event driven: schedule of player listens for keyboard events and reacts accordingly; other schedules are controlled by other types of events.
* <span style="text-decoration:line-through">Schedules are event driven: schedule of player listens for keyboard events and reacts accordingly; other schedules are controlled by other types of events.</span> (done)
* schedule state must be saved and loaded ([[Architecture:Base Module#Data Persistence|Persistence]])
* schedule state must be saved and loaded ([[Architecture:Base Module#Data Persistence|Persistence]])


== References ==
== References ==


* [[Architecture:Map Module# Character_Schedules|Schedule description]]
* [http://cvs.savannah.gnu.org/viewvc/adonthell/src/world/schedule.cc?root=adonthell&view=markup Schedule implementation] in CVS.
* [http://cvs.savannah.gnu.org/viewvc/adonthell/test/data/schedules/char/?root=adonthell Sample schedules] in CVS.
* [http://lists.gnu.org/archive/html/adonthell-devel/2002-04/msg00208.html Suggestions] (take with a lump of salt)
* [http://lists.gnu.org/archive/html/adonthell-devel/2002-04/msg00208.html Suggestions] (take with a lump of salt)
* [http://lists.gnu.org/archive/html/adonthell-devel/2003-02/msg00035.html More suggestions] (take with a grain of salt)
* [http://lists.gnu.org/archive/html/adonthell-devel/2003-02/msg00035.html More suggestions] (take with a grain of salt)
* [http://lists.gnu.org/archive/html/adonthell-devel/2002-06/msg00002.html Sample code]
 
[[Category:Development]]
[[Category:Tasks]]

Latest revision as of 18:27, 11 May 2009

Back to Task List

Overview

Character schedules give life to a NPC. They are implemented by Python scripts specifing movement and actions of each character.

Dependencies

none

Requirements

  • a master schedule decides what activity schedule controls the character at any given time. This master schedule is only executed when no other schedule is active (done)
  • activity schedules let characters walk, talk, pick up, combine and drop items, etc. ... (done)
  • events (time, quest, etc.) can be used to stop the active schedule, thus triggering the master schedule. (done)
  • character activity can be paused and resumed (done)
  • generic activities written in python can be used to create individual activity schedules for characters.
  • Schedules are event driven: schedule of player listens for keyboard events and reacts accordingly; other schedules are controlled by other types of events. (done)
  • schedule state must be saved and loaded (Persistence)

References