Task System
From LSWiki
Revision as of 22:20, 19 May 2008; Matts (Talk | contribs)
(diff) ←Older revision | Current revision | Newer revision→ (diff)
(diff) ←Older revision | Current revision | Newer revision→ (diff)
This page is for the developers to discuss, debate, and collaborate on the in-process dynamic task system. To start I'll outline that various sections that I think we will need to interact with and then list the expected interactions there of.
Contents |
Incarnos
- ability to store gathered tasks
- ability to show and retrieve information on stored tasks via show?
Autonomon
- This section will all likely be encompassed by an extension attachable to a living. Incarnoi could possibly inherit this functionality?
- ability to know it's a task granter
- ability to poll for available, and suitable, tasks
- ability to respond to queries for available tasks
- ability to describe available tasks to incarnoi
- ability to evaluate progress of an incarnoi's relevant task
- ability to complete and reward an incarnoi who completes a relevant task
Task Daemon
- broker for task type definitions
- stores all tasks? ever? (database interaction?) at minimum, provides ability to specify an incarnos/autonomon/unique-tag and find out what active tasks in the MUD it is involved with and what roles it has in them
Task Descriptor
- Fields:
- Task_Type_Code
- Specifies the defined type of task, ie 'Task_Type_Elimination'
- /lib/task_types.h and /def/task_types encompasses this. Ideally the definitions for each type will define a lot of the functionality.
- Task_Name
- A semi-unique name for the task at hand, ie 'aildrek's rat Problem'
- Task_Description
- A verbose explanation of the task, ie 'aildrek at the lost lamb tavern is known to have an on-going rat problem.'
- Task_Status
- Task_Roles
- Task_Objectives
- Ideally this would fill out the objectives of the task, ie '30 rats'
- Task_Info
- Task general-purpose infostore
- Task_Flags
- Bitwise flags (see below)
- Task_Unique_Tag
- System generated tag to uniquely identify this task.
- Task_Type_Code
- Flags:
- Task_Flag_Active
- Functions:
- Placeholder
Task Type
- Courier
- Originator gives object/information to Actor who must deliver it to Objective.
- Knowledge
- Originator dictates X pieces of Objective knowledge Actor must become familiar with/memorize.
- Exploration
- Originator dictates location Objective that Actor must become familiar with/memorize.
- Elimination
- Originator dictates Objective target that Actor must kill.
- Collection
- Originator dictates X Objective items that Actor must gather.
- Escort
- Originator dictates Actor must escort Objective to destination.