Object Classes And Records:

// This File Lists all the Record information for the Elements used in the Game
// Elements are the objects in the game, each will have a list of attributes associated with 
// them that dictate how they react to the user, and to other elements in the game


Basic Element TYPES:

NPC : TYPE  // Non Playable Character. The other people in the game besides the player 
can ocationally join the player

Monster : Type // The enemy characters that the user will have to defeat

// Other base objects will be added later, (ie, buildings, trees, ect…)

NPC : TYPE  Record Array

CharacterName : The name of the NPC, used for interaction between user and NPC, 
generated from a list

CharacterAge : The age, in years of the character

CharacterPower : used for battle computations when NPC is fighting with a Monster

CharacterHP : When reduced to zero, NPC is dead

CharacterJob : The basic behavior routine for the NPC, will dictade how he acts 

CharacteModle : The save file of the character modle, will be of type .x, .3ds, or .mdl

CharacterWeapon : Used for battle computations

Monster : TYPE Record Array

MonsterType : what is it, a sqwirl, or an ogre?  Will dictate behavior

MonsterClass : A,B,C…. soforth, will dictate NPC reaction, (ie run from class C, kill 
class A, ignore class b)

MonsterHP : When Reduced to zero, monster is dead

MonsterModle : the .x, .3ds, or .mdl file of the creature



Job : TYPE Record Array  // The record array for determining NPC behabvior

Behavior : List of Behavior elements, how NPC Reacts to different situations

MeasageStream : The Diologue Tree that is accessed when the user activates the talk to 
aspect of the NPC

Behavior : TYPE

A list of behavior Attributes for selected element TYPE 

Action1 : Action : TYPE
.
.
.
ActionN : Action : Type

Action : TYPE

action : the action performed (a .cpp, or .obj file that tells the computer what the element 
is doing, and the rendering softwear what to render, this is were the AI code goes)
object : a single element, or list of elements on whitch to perform the action, 
bool ; a Boolean operator, used to suppress dormant traits (1 or 0) and bring out active 
ones, can switch as game progresses

actions:

Attack : The element will approach the selected object, and procede to "attack" it.
Run : The element will avoid the selected object by moving away from it
Talk : the activation of the talk to function, used only for NPC's
Assist : The element will follow the selected object and defend object, as well as follow 
orders from object, not limited to NPC-User interaction
Collect : The element will "pick up" the selected object
Walk : a designated path, or point to which the element will follow/move to
Wait: The element remains in current Location (No object listing needed)

// other actions will be added as development procedes









List of Elements, and their records:

NPC's

(Hunter Template Follows)(all values Initialized)

ElementName: HunterN                           
ElementType; 	 NPC : TYPE

CharacterName: (Randomly selected from a list)
CharacterAge: (Randomly selected, between 20-30)
CharacterPower: (Determined by D&D Rules)
CharacterHP: (Determined by D&D Rules)
CharacterJob ;	Hunter : TYPE
CharacterModle: (insert Modle name here)
CharacterWeapon: (Randomly selected from a list)

Behavior; HunterBehavior : TYPE
MeasageStream: (insert name of text file containing diologue tree for the hunter)

Action1: 	Attack		Monster.Class=A			1
Action2:	Attack		Monster.Class=B			1
Action3:	Run		Monster.Class=C			1
Action4:	Attack		Player				0
Action5:	Talk		Player				0
Action6:	Assist		Player				0
Action7:	Assist		Hunter				1
Action8:	Walk		Path##				1
Action9:	Walk		Point(##,##)			0
Action10:	Wait						0	

(Town Guard Template Follows)

ElementName: GaurdN                           
ElementType; 	 NPC : TYPE

CharacterName: (Randomly selected from a list)
CharacterAge: (Randomly selected, between 20-30)
CharacterPower: (Determined by D&D Rules)
CharacterHP: (Determined by D&D Rules)
CharacterJob ; Gaurd : TYPE
CharacterModle: (insert Modle name here)
CharacterWeapon: (Randomly selected from a list)

Behavior; GaurdBehavior : TYPE
MeasageStream: (insert name of text file containing diologue tree for the Gaurd)

Action1: 	Attack		MonsterClassListA		1
Action2:	Attack		MonsterClassListB		1
Action3:	Attack		MonsterClassListC		1
Action4:	Attack		Player				0
Action5:	Talk		Player				0
Action6:	Assist		Player				0
Action7:	Assist		Guard				1
Action8:	Walk		point(##,##)			0
Action9:	Walk		Path###			        0
Action10:       Wait						1


(Villager Template Follows)

ElementName: VillagerN                           
ElementType; 	 NPC : TYPE

CharacterName: (Randomly selected from a list)
CharacterAge: (Randomly selected, between 20-30)
CharacterPower: (Determined by D&D Rules)
CharacterHP: (Determined by D&D Rules)
CharacterJob ;	Villager : TYPE
CharacterModle: (insert Modle name here)
CharacterWeapon: (Not Used)

Behavior; HunterBehavior : TYPE
MeasageStream: (insert name of text file containing diologue tree for the Villager)

Action1: 	Run		MonsterClassListA		1
Action2:	Run		MonsterClassListB		1
Action3:	Run		MonsterClassListC		1
Action4:	Attack		Player				0
Action5:	Talk		Player				0
Action6:	Assist		Player				0
Action7:	Walk		Path##				1
Action8:	Walk		Point(#,#)			0
Action9:	Wait						0



    Source: geocities.com/timessquare/corner/5515

               ( geocities.com/timessquare/corner)                   ( geocities.com/timessquare)