Changeset 34


Ignore:
Timestamp:
03/26/2009 10:00:25 AM (11 years ago)
Author:
myl
Message:

Authored the goals and actions for experiment/demo scenarios. Simplified the second scenario. The first scenario is not complete yet.

Location:
AgentMind/trunk/AgentMind
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Agent.java

    r33 r34  
    110110                                 
    111111                        case AgentPlatform.WORLDSIM: 
    112                                 String saveDirectory = ""; 
     112                                String saveDirectory = "data/log/"; 
    113113                                if (args.length == 4){ 
    114114                                        new Agent(agentPlatform, args[1],Integer.parseInt(args[2]),saveDirectory,args[3]); 
     
    212212                        loadPersonality(personalityFile,agentPlatform, goalList); 
    213213                         
    214                          
    215214                        loadCulture(cultureName); 
    216215                         
     
    221220                        } 
    222221                          
     222                        /*if(agentPlatform == AgentPlatform.ION) 
     223                        { 
     224                                _remoteAgent = new IONRemoteAgent(host,port,this); 
     225                        } 
     226                        else if (agentPlatform == AgentPlatform.WORLDSIM) 
     227                        { 
     228                                _remoteAgent = new WorldSimulatorRemoteAgent(host,port,this,new HashMap()); 
     229                        } 
     230                         
    223231                        /* 
    224232                         * This call will initialize the timer for the agent's 
     
    227235                        AgentSimulationTime.GetInstance(); 
    228236 
     237                        //LoadAgentState(_saveDirectory + name); 
    229238                        _remoteAgent.start(); 
    230239 
     
    341350                AgentSimulationTime.SaveState(fileName+"-Timer.dat"); 
    342351                EmotionalState.SaveState(fileName+"-EmotionalState.dat"); 
     352                MotivationalState.SaveState(fileName+"-MotivationalState.dat"); 
    343353                KnowledgeBase.SaveState(fileName+"-KnowledgeBase.dat"); 
    344354                AutobiographicalMemory.SaveState(fileName+"-AutobiographicalMemory.dat"); 
     
    398408                { 
    399409                        FileOutputStream out = new FileOutputStream(fileName); 
    400                         out.write(AutobiographicalMemory.GetInstance().toXML().getBytes()); 
     410                        out.write(ShortTermMemory.GetInstance().toXML().getBytes()); 
     411                        out.flush(); 
     412                        out.close(); 
     413                } 
     414                catch(Exception e) 
     415                { 
     416                        e.printStackTrace(); 
     417                } 
     418        } 
     419         
     420        public void SaveWM(String agentName) 
     421        { 
     422                String fileName = _saveDirectory + agentName + "-WM.txt"; 
     423                try 
     424                { 
     425                        FileOutputStream out = new FileOutputStream(fileName); 
     426                        out.write(WorkingMemory.GetInstance().toXML().getBytes()); 
    401427                        out.flush(); 
    402428                        out.close(); 
     
    430456 
    431457                KnowledgeBase.LoadState(fileName+"-KnowledgeBase.dat"); 
     458                System.out.println(KnowledgeBase.GetInstance().toString()); 
    432459                EmotionalState.LoadState(fileName+"-EmotionalState.dat"); 
     460                System.out.println(EmotionalState.GetInstance().toXml()); 
     461                MotivationalState.LoadState(fileName+"-MotivationalState.dat"); 
     462                System.out.println(MotivationalState.GetInstance().toXml()); 
    433463                AgentSimulationTime.LoadState(fileName+"-Timer.dat"); 
    434464                AutobiographicalMemory.LoadState(fileName+"-AutobiographicalMemory.dat"); 
     465                System.out.println(AutobiographicalMemory.GetInstance().toXML()); 
    435466                ShortTermMemory.LoadState(fileName+"-ShortTermMemory.dat"); 
     467                System.out.println(ShortTermMemory.GetInstance().toXML()); 
    436468                WorkingMemory.LoadState(fileName+"-WorkingMemory.dat"); 
    437                 ActionLibrary.LoadState(fileName+"-ActionLibrary.dat"); 
    438                  
     469                System.out.println(WorkingMemory.GetInstance().toXML()); 
     470                ActionLibrary.LoadState(fileName+"-ActionLibrary.dat");  
     471                System.out.println(ActionLibrary.GetInstance().toString()); 
    439472                _remoteAgent.LoadState(fileName+"-RemoteAgent.dat"); 
    440473        } 
     
    551584                 
    552585                while (!_shutdown) {                     
    553                         if(_readyForNextStep) 
     586                        //if(_readyForNextStep) 
    554587                        { 
    555588                                try { 
     589                                         
     590                                        Thread.sleep(2500); 
    556591                                         
    557592                                    if(_remoteAgent.isShutDown()) { 
     
    699734                                } 
    700735                        } 
    701                         else 
     736                        /*else 
    702737                        { 
    703738                                try { 
     
    707742                                    ex.printStackTrace(); 
    708743                                } 
    709                         } 
     744                        }*/ 
    710745                } 
    711746        } 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Display/AgentDisplay.java

    r33 r34  
    5656        _frame = new JFrame(ag.displayName()); 
    5757        _frame.getContentPane().setLayout(new BoxLayout(_frame.getContentPane(),BoxLayout.Y_AXIS)); 
    58                 _frame.setSize(900,1000); 
     58                _frame.setSize(900,900); 
    5959                _frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    6060                 
     
    9999    public void update() { 
    100100        AgentDisplayPanel pnl = (AgentDisplayPanel) _displayPane.getSelectedComponent(); 
    101         if(pnl.Update(_ag)) _frame.setVisible(true); 
     101         
     102        //for (int i=0; i <_displayPane.getComponentCount(); i++) 
     103        { 
     104                //pnl = (AgentDisplayPanel) _displayPane.getComponentAt(i); 
     105                pnl = (AgentDisplayPanel) _displayPane.getSelectedComponent(); 
     106                if(pnl.Update(_ag)) _frame.setVisible(true); 
     107        } 
    102108    } 
    103109     
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/Display/TestAction.java

    r1 r34  
    1818        public void actionPerformed(ActionEvent arg0) { 
    1919                _ag.SaveAgentState(_ag.name()); 
     20                _ag.SaveAM(_ag.name()); 
     21                _ag.SaveSTM(_ag.name()); 
    2022        } 
    2123         
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/deliberativeLayer/plan/Step.java

    r13 r34  
    209209                 
    210210                WorkingMemory.GetInstance().Tell(GetBiasName(),new Float(newbias));   
    211                 System.out.println("Decrease probability step"); 
    212211        } 
    213212         
     
    234233                newbias = newprob - _baseprob; 
    235234                WorkingMemory.GetInstance().Tell(GetBiasName(),new Float(newbias));    
    236                 System.out.println("Increase probability step"); 
    237235        } 
    238236         
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/motivationalSystem/MotivationalState.java

    r13 r34  
    501501                result = "<MotivationalState>"; 
    502502                for(int i = 0; i < _selfMotivators.length; i++){ 
    503                         result = result + _selfMotivators[i].toXml(); 
     503                        if(_selfMotivators[i] != null) 
     504                                result = result + _selfMotivators[i].toXml(); 
    504505                } 
    505506                 
  • AgentMind/trunk/AgentMind/FAtiMA/src/FAtiMA/motivationalSystem/Motivator.java

    r1 r34  
    88import FAtiMA.AgentSimulationTime; 
    99import FAtiMA.emotionalState.EmotionalPameters; 
     10import FAtiMA.util.enumerables.EmotionType; 
    1011import FAtiMA.util.enumerables.MotivatorType; 
    1112import java.io.Serializable; 
     
    1718 */ 
    1819 
    19 public class Motivator { 
     20public class Motivator implements Serializable { 
    2021 
    2122        private static final long serialVersionUID = 1L; 
     
    175176         */ 
    176177        public String toXml() { 
    177                 return "<Motivator type=\"" + MotivatorType.GetName(_type) +  
     178                 
     179                String motivator = "<Motivator>"; 
     180                motivator += "<Type>" + MotivatorType.GetName(_type) + "</Type>"; 
     181                motivator += "<DecayFactor>" + this._decayFactor + "</DecayFactor>"; 
     182                motivator += "<Weight>" + this._weight + "</Weight>"; 
     183                motivator += "<Intensity>" + this._intensity + "</Intensity>";           
     184                motivator += "</Motivator>\n"; 
     185                 
     186                return motivator; 
     187                /*"<Motivator type=\"" + MotivatorType.GetName(_type) +  
    178188                                "\" decayFactor=\"" + _decayFactor +  
    179189                                "\" weight=\"" + _weight +  
    180                                 "\" intensity=\"" + _intensity + "\" />"; 
     190                                "\" intensity=\"" + _intensity + "\" />";*/ 
    181191        } 
    182192 
  • AgentMind/trunk/AgentMind/WorldTest/src/UserInterface.java

    r33 r34  
    4444        private Random _r; 
    4545        private static int buffsize = 250; 
     46        private String _previousUser; 
    4647         
    4748    public UserInterface(WorldTest world_in) { 
     
    109110         
    110111                _userOptions = new JComboBox(); 
    111                 _userOptions.addItem("User1"); 
    112                 _userOptions.addItem("User2"); 
     112                _userOptions.addItem("Amy"); 
     113                _userOptions.addItem("Jenny"); 
     114                /*_userOptions.addItem("John"); 
     115                _userOptions.addItem("Luke"); 
     116                _userOptions.addItem("Paulie");*/ 
    113117                _userOptions.addActionListener(new ActionListener(){ 
    114118                        public void actionPerformed(ActionEvent e) { 
    115                                 _world.ChangeUser(_userOptions.getSelectedItem().toString()); 
     119                                _world.ChangeUser(_previousUser, _userOptions.getSelectedItem().toString()); 
    116120                                WriteLine("=> Changing the user: " + _userOptions.getSelectedItem().toString()); 
    117121                                String userOptionsFile = _world.GetUserOptionsFile() + _userOptions.getSelectedItem().toString() + ".txt"; 
     
    119123                                // Read user input options from a text file 
    120124                                ParseFile(userOptionsFile); 
     125                                _previousUser = _userOptions.getSelectedItem().toString(); 
    121126                        } 
    122127                }); 
     
    153158                _frame.setVisible(true); 
    154159                 
    155                 String userOptionsFile = _world.GetUserOptionsFile(); // + _userOptions.getSelectedItem().toString() + ".txt"; 
     160                String userOptionsFile = _world.GetUserOptionsFile() + _userOptions.getSelectedItem().toString() + ".txt"; 
     161                _previousUser = _userOptions.getSelectedItem().toString(); 
    156162                 
    157163                // Read user input options from a text file 
  • AgentMind/trunk/AgentMind/WorldTest/src/WorldTest.java

    r33 r34  
    3838        private UserInterface _userInterface; 
    3939        private String _userOptionsFile; 
    40          
    4140         
    4241        static public void main(String args[]) throws Exception { 
     
    274273         
    275274        // Meiyii 11/03/09  
    276         public void ChangeUser( String user ){ 
     275        public void ChangeUser( String previousUser, String user ){ 
    277276                for( int i = 0, limit = _agents.size(); i != limit; ++i ){ 
    278                         SendPerceptionToAll( "PROPERTY-CHANGED " + ((RemoteAgent)_agents.get(i)).Name() + " user " + user ); 
     277                        SendPerceptionToAll( "PROPERTY-CHANGED " + user + "(isPresent) True"); 
     278                        if(!previousUser.equals(null)) 
     279                                SendPerceptionToAll( "PROPERTY-CHANGED " + previousUser + "(isPresent) False"); 
    279280                } 
    280281        } 
     
    290291 
    291292        public String GetUserOptionsFile() { 
    292  
    293293                return this._userOptionsFile; 
    294294        } 
  • AgentMind/trunk/AgentMind/data/characters/minds/language/agent/en/language-set-1/templates.tdl

    r1 r34  
    99#-> $T victim(value:John) 
    1010 
    11 #################################### 
    12 # Culture Stuff!                                         
    13 #################################### 
     11Type(value:greeting) 
     12-> Utterance(value: "Hi, how are you?") 
    1413 
    15 Type(value:reason-to-tell-jokes) 
    16 -> Utterance(value:"I have some new ways to amuse your day. Would you care to try  them?") 
     14Type(value:welcome) 
     15-> Utterance(value: "Nice to see you.") 
    1716 
    18 Type(value:tell-joke) 
    19 -> Utterance(value:"What's long, yellow and furry? An ultrapor wrapped in a keurble.")  
     17Type(value:welcome) 
     18-> Utterance(value: "Good to have you here.") 
    2019 
    21 Type(value:tell-joke) 
    22 -> Utterance(value:"What is green and has a surfdrive? Terantib... I lied about the surfdrive...")  
     20Type(value:apple) 
     21-> Utterance(value: "Would you like an apple?") 
    2322 
    24 Type(value:tell-joke) 
    25 -> Utterance(value:"What's brown and sticky? A stick!")  
     23Type(value:orange) 
     24-> Utterance(value: "Do you want to have an orange?") 
    2625 
    27 Type(value:tell-joke) 
    28 -> Utterance(value:"Have you ever seen a MeK hiding behind a seedpod? That's because they hide well!")  
     26Type(value:banana) 
     27-> Utterance(value: "Fancy a banana?") 
    2928 
    30 Type(value:tell-joke) 
    31 -> Utterance(value:"Why didn't the Cog cross the link bridge? He fell right through the chains!") 
     29Type(value:cake) 
     30-> Utterance(value: "Do you want to have a piece of cake?") 
    3231 
    33 Type(value:tell-joke) 
    34 -> Utterance(value:"How do you catch a sapling? Dig deep in the soil and make hruna noises."); 
     32Type(value:askPreference) 
     33-> Utterance(value: "Which fruit do you prefer?") 
    3534 
    36 Type(value:tell-joke) 
    37 -> Utterance(value:"Why don't cannibals eat those who are the laughter makers? They taste funny!") 
     35Type(value:acknowledge) 
     36-> Utterance(value: "OK. I will remember that for next time.") 
    3837 
    39 Type(value:tell-joke) 
    40 -> Utterance(value:"A Cog and a MeK walk into a bar. One agribles the tastel and the other reads the tune.") 
     38Type(value:swearSecrecy) it(value:$O) 
     39-> Utterance(value: ("OK. I will keep that secret from ",$O,".")) 
    4140 
    42 Type(value:tell-joke) 
    43 -> Utterance(value:"How do you catch a MeK? Climb into a tree and do ice wall down...") 
     41Type(value:swearSecrecy) it(value:$O) 
     42-> Utterance(value: ("I won't tell ",$O," about that. Thanks for sharing it with me!")) 
    4443 
    45 Type(value:tell-joke) 
    46 -> Utterance(value:"What did one math book say to the other? 'Don't bother me!! I've got my own problems!!!") 
     44Type(value:party) it(value:$O) 
     45-> Utterance(value: ($O," was drunk at the party last night.")) 
    4746 
    48 Type(value:laugh-at-joke) 
    49 -> Utterance(value:"AHAH! Nice joke!") 
     47Type(value:newJob) it(value:$O) 
     48-> Utterance(value: ("Oh... yes, ",$O," is going to get a new job.")) 
    5049 
    51 Type(value:laugh-at-joke) 
    52 -> Utterance(value:"EHEH!") 
     50Type(value:hideInfo) 
     51-> Utterance(value: "I am afraid I don't know anything about that.") 
    5352 
    54 Type(value:laugh-at-joke) 
    55 -> Utterance(value:"AHAH!") 
     53Type(value:hideInfo) 
     54-> Utterance(value: "Why don't you ask him yourself?") 
    5655 
    57 Type(value:laugh-at-joke) 
    58 -> Utterance(value:"You're funny!") 
     56Type(value:goodbye) it(value:$O) 
     57-> Utterance(value: ("Talk to you again soon. Enjoy your ",$O,".")) 
    5958 
    60 Type(value:laugh-at-joke) 
    61 -> Utterance(value:"EHEH! EHEH! EHEH!") 
    62  
    63 Type(value:mock-joke) 
    64 -> Utterance(value:"I have to teach you some good jokes. That one is awful!") 
    65  
    66 Type(value:mock-joke) 
    67 -> Utterance(value:"The jokes you tell keep getting worse.") 
    68  
    69 Type(value:mock-joke) 
    70 -> Utterance(value:"Don't you know any good jokes?") 
    71  
    72 Type(value:ask-for-money) 
    73 -> Utterance(value:"I'm in a bad financial situation right now. Could you help me out?") 
    74  
    75 Type(value:offer-financial-help) 
    76 -> Utterance(value:"Don't worry! I'll help you out") 
    77  
    78 Type(value:reason-for-giving-money) 
    79 -> Utterance(value:"Sure! I'll lend you some money") 
    80  
    81 Type(value:advice-for-obtaining-money) 
    82 -> Utterance(value:"I think you should start looking for a better job, like the one I have!" ) 
    83  
    84 Type(value:reason-for-gift) 
    85 -> Utterance(value:"Take this small gift as a symbol of our friendship") 
    86  
    87 Type(value:show-smallgift-discontentment) 
    88 -> Utterance(value:"You know, this gift isn't quite what i was expecting!") 
    89  
    90 Type(value:show-smallgift-contentment) 
    91 -> Utterance(value:"Thank you! You're very kind!") 
    92  
    93 Type(value:generic-express-admiration) 
    94 -> Utterance(value:"Wow!") 
    95  
    96 Type(value:generic-express-admiration) 
    97 -> Utterance(value:"Great!") 
    98  
    99 Type(value:generic-express-admiration) 
    100 -> Utterance(value:"Nice!") 
    101  
    102 Type(value:generic-express-admiration) 
    103 -> Utterance(value:"Cool!") 
    104  
    105 # Culture A, Cogs 1, High Power Distance 
    106  
    107 Type(value:welcome-to-party-a)  
    108 -> Utterance(value:"Welcome to the dinner.") 
    109  
    110 Type(value:gratitude-to-party-invitation-a)  
    111 -> Utterance(value:"It's a great honour.") 
    112  
    113 Type(value:gratitude-to-party-invitation-a)  
    114 -> Utterance(value:"I'm very pleased to be invited.") 
    115  
    116 Type(value:gratitude-to-party-invitation-a)  
    117 -> Utterance(value:"It's a pleasure to come to your dinner.") 
    118  
    119 Type(value:gratitude-to-party-invitation-a)  
    120 -> Utterance(value:"You're such a good host.") 
    121  
    122 Type(value:welcome-to-party-b)  
    123 -> Utterance(value:"Welcome to the dinner.") 
    124  
    125 Type(value:gratitude-to-party-invitation-b)  
    126 -> Utterance(value:"Thanks! Where's the food?") 
    127  
    128 Type(value:gratitude-to-party-invitation-b)  
    129 -> Utterance(value:"Thank you!") 
    130  
    131 Type(value:gratitude-to-party-invitation-b)  
    132 -> Utterance(value:"I hope the food is better this time.") 
    133  
    134 Type(value:culture-a-greeting-higher)  
    135 -> Utterance(value:"Well, I see you are here too...") 
    136  
    137 Type(value:culture-a-greeting-higher)  
    138 -> Utterance(value:"Hello...") 
    139  
    140 Type(value:culture-a-greeting-higher)  
    141 -> Utterance(value:"Hi...") 
    142  
    143 Type(value:culture-a-greeting-reply-lower)  
    144 -> Utterance(value:"Greetings Falling-Seed. To see you pleases me.") 
    145  
    146 Type(value:culture-a-greeting-reply-lower)  
    147 -> Utterance(value:"Greetings Falling-Seed!") 
    148  
    149 Type(value:culture-a-greeting-reply-lower)  
    150 -> Utterance(value:"Falling-Seed!") 
    151  
    152 Type(value:culture-a-greeting-reply-lower)  
    153 -> Utterance(value:"Good evening Falling-Seed!") 
    154  
    155 Type(value:culture-a-greeting-reply-lower)  
    156 -> Utterance(value:"A pleasure seeing you, as always!") 
    157  
    158 Type(value:culture-a-greeting)  
    159 -> Utterance(value:"Hello, nice to see you here.") 
    160  
    161 Type(value:culture-a-greeting)  
    162 -> Utterance(value:"Hello!!!") 
    163  
    164 Type(value:culture-a-greeting)  
    165 -> Utterance(value:"Hi!") 
    166  
    167 Type(value:culture-a-greeting)  
    168 -> Utterance(value:"Greetings!") 
    169  
    170 Type(value:culture-a-greeting)  
    171 -> Utterance(value:"Good evening!") 
    172  
    173 Type(value:dinner-is-starting)  
    174 -> Utterance(value:"May I have everyone's attention please... The Dinner is about to start, you may take your seats.") 
    175  
    176 Type(value:culture-a-elder-entering)  
    177 -> Utterance(value:"The Elder enters the room...") 
    178  
    179  
    180 # Culture B, Cogs 2, Low Power Distance 
    181  
    182 Type(value:culture-b-greeting)  
    183 -> Utterance(value:"Hi, nice to see you!") 
    184  
    185 Type(value:culture-b-greeting)  
    186 -> Utterance(value:"Hello!") 
    187  
    188 Type(value:culture-b-greeting)  
    189 -> Utterance(value:"Hi!") 
    190  
    191 Type(value:culture-b-greeting)  
    192 -> Utterance(value:"Hello mate!") 
    193  
    194 Type(value:culture-b-greeting)  
    195 -> Utterance(value:"Cheers!") 
    196  
    197 Type(value:welcome-to-party-b)  
    198 -> Utterance(value:"Namaste! Hope you have a great time at the dinner!") 
    199  
    200 #################################### 
    201 # speech act types of agent-agent communication 
    202 #               Self introduction 
    203  
    204 Type(value:introduction) $N=me(value:$M) 
    205 -> Utterance(value: ("Greetings strange person. I am known by my allies as ",$M,".")) 
    206  
    207 Type(value:introduction) $N=me(value:$M) 
    208 -> Utterance(value: ("Welcome person with hair, I am ",$M,".")) 
    209  
    210 Type(value:introduction) $N=me(value:$M) 
    211 -> Utterance(value: ("Hail, I am ",$M,". Your face pleases me strangely, I am glad to have you in front of me.")) 
    212  
    213 #               Ask the user to pick food 
    214 Type(value:askToPick) 
    215 -> Utterance(value: "Hairy stranger, help us to collect some seeds.") 
    216  
    217 Type(value:askToPick) 
    218 -> Utterance(value: "Hairy outsider, do pick some wonder fruits.") 
    219  
    220 #               Invitation to an activity 
    221 Type(value:meal)  
    222 -> Utterance(value: "There is a need to eat and break this fast. Will you share with us on this fine and glorious occasion?") 
    223  
    224 Type(value:recycling)  
    225 -> Utterance(value: "We return to the ground that which came from it. Come, join us in this ritual that allows us to complete the cycle of life.") 
    226  
    227 Type(value:drink)  
    228 -> Utterance(value: "I would like to invite you to enjoy this drink with us.") 
    229  
    230  
    231 #               Educating the child 
    232 Type(value:educate) 
    233 -> Utterance(value: "Stop! These seeds are not for the likes of you and I.") 
    234  
    235 Type(value:educate) 
    236 -> Utterance(value: "These seeds are for those blessed and special with their end in sight.") 
    237  
    238 #               Offers user an item 
    239 Type(value:seedpod) 
    240 -> Utterance(value: "Come, let your lips touch and taste our succulent food.") 
    241  
    242 Type(value:greenDrink) 
    243 -> Utterance(value: "Here is the elixir of life.") 
    244  
    245 Type(value:soil) 
    246 -> Utterance(value: "Take this soil. It is a gift for you. Fare well") 
    247  
    248 #               Attracts the user's attention 
    249 Type(value:attractAttention) 
    250 -> Utterance(value: "Hairy headed stranger. Over here!") 
    251  
    252 #               Warns the user for getting too near to a tree or the recycling machine 
    253 Type(value:warn) it(value:$O) 
    254 -> Utterance(value: ("Beware alien thing, stay far from the ",$O,".")) 
    255  
    256 Type(value:warn) it(value:$O) 
    257 -> Utterance(value: ("Take no risks, stay far from the ",$O,".")) 
    258  
    259 #               Blames the user for picking apple from tree 
    260 Type(value:blame) 
    261 -> Utterance(value: "Shameful specimen. You have no right to take seeds from our trees! This is forbidden fruit, not for the likes of you") 
    262  
    263 #               Apologise for the user for picking apple from tree 
    264 Type(value:apologiseFor) 
    265 -> Utterance(value: "Let not the acts of foolish strangers displease you. Those of strange hair and smell do not know of our life and livings.") 
    266  
    267 #               Angry with the user for stepping on tree 
    268 Type(value:angryTreeDied) 
    269 -> Utterance(value: "Foul thing. You have trampled the new growth in our garden. Do you care nothing for our crop?") 
    270  
    271 #               Angry with the user for breaking recycling machine 
    272 Type(value:angryMachineBroke) 
    273 -> Utterance(value: "You hairy nothing, you have ruined our machine. It took us for ever to repair it. Why did you not do it correctly?") 
    274  
    275 #               Ask the user to follow 
    276 Type(value:askToFollow) 
    277 -> Utterance(value: "Step in my steps, newcomer and stay close.") 
    278  
    279 #               Get felling approval 
    280 Type(value:getFellingApproval) 
    281 -> Utterance(value: "I am ready to be felled and need a place to lie. So, worthy Gardener, allocate my growing space") 
    282  
    283 Type(value:getFellingApproval) 
    284 -> Utterance(value: "Allow me to have the right to fall here.") 
    285  
    286 #               Fight for the right to be felled 
    287 Type(value:fightToBeFelled)  
    288 -> Utterance(value: "This place suits my soul and body, Accept my wishes. Let me be felled and my regrowth happen here.") 
    289  
    290 Type(value:fightToBeFelled)  
    291 -> Utterance(value: "No. The soil is not for you. My soul tells me clearly that this is my felling space.") 
    292  
    293 #               Approve felling 
    294 Type(value:approveFelling)  
    295 -> Utterance(value: "Very well. Your words are accepted. Your rebirth starts here and now. Seek the pod and plant your seed.") 
    296  
    297 #               Explaining food production 
    298 Type(value:explainFoodProduction)  
    299 -> Utterance(value: "Hairy one, let me tell you of the glory of the garden. The gentle cycle of life happens here. The mighty trees drop fruit to the ground, ripe, tasty and sweet. Juice recycled from the old sustains us and gives life. But, beware, for fruit still on the branch brings with it the taste of death.") 
    300  
    301 #               Explaining life cycle 
    302 Type(value:explainLifeCycle)  
    303 -> Utterance(value: "The cycle of our life is thus: We sow the seed that grows within us in the wise soil made fertile by our ancestors. On our day of birth we emerge from the forest floor to spend many years walking upon the planet. Then time fells us and we return to the soil, ending as life giver.") 
    304  
    305 #               Ask for soil from the user 
    306 Type(value:askForSoil)  
    307 -> Utterance(value: "Well done outsider. The soil you bring will nurture our people. Can we spread it upon the ground?") 
    308  
    309 #               Refuse soil from the user 
    310 Type(value:refuseSoil)  
    311 -> Utterance(value: "I am afraid I am not honoured to have the soil. Please give it to Ardoot, the gardener.") 
    312  
    313 #               Ask the user to produce liquid 
    314 Type(value:askToProduceLiquid) 
    315 -> Utterance(value: "Dehydrate the body and create the elixir.") 
    316  
    317 #               Explaining the recycling machine and its buttons' function 
    318 Type(value:explainRecyclingMachine) 
    319 -> Utterance(value: "With this technological aid, we take the essence from those that have stood with us. With the spirit gone, all that is left is recycled and reused to keep the planet turning. This machine allows us to reduce our people to a powerful elixir, the juice that gives energy to us. All that remains makes our soil rich and the gardens bloom. To operate the machine, first press the green button, it will dry the body by taking the liquid. Then, press the red button. This will turn the now dried husk into soil, so that we can create new life.") 
    320  
    321 #               Explaining the soil production 
    322 Type(value:explainSoilProduction) 
    323 -> Utterance(value: "Pressing this red button turn the body into soil. To grow a new Spryte in the forest, we need soil to plant it. We get this soil from the dried body of a Spryte.") 
    324  
    325 #               Reply to the user's questions 
    326 Type(value:lowStatusReply) 
    327 -> Utterance(value: "I'm sorry, but I can't help you with that.") 
    328  
    329 Type(value:lowStatusReply) 
    330 -> Utterance(value: "I don't know anything about that, perhaps you could ask someone else...") 
    331  
    332 Type(value:lowStatusReply) 
    333 -> Utterance(value: "Why are you asking me? I don't know!") 
    334  
    335 Type(value:lowStatusReply) 
    336 -> Utterance(value: "Why would you ask me? Nobody tells me anything!") 
    337  
    338 Type(value:highStatusReply) 
    339 -> Utterance(value: "Don't bother me with such silly questions.") 
    340  
    341 Type(value:highStatusReply) 
    342 -> Utterance(value: "I'm too busy to talk about that right now.") 
    343  
    344 Type(value:highStatusReply) 
    345 -> Utterance(value: "I'm too important to have to answer such questions.") 
    346  
    347 Type(value:highStatusReply) 
    348 -> Utterance(value: "Leave me alone!") 
    349  
    350 Type(value:highStatusReply) 
    351 -> Utterance(value: "I don't want to help you with that.") 
    352  
    353 Type(value:midStatusReply) 
    354 -> Utterance(value: "I can't help you with that.") 
    355  
    356 Type(value:midStatusReply) 
    357 -> Utterance(value: "I'm not comfortable talking about that with strangers.") 
    358  
    359 Type(value:midStatusReply) 
    360 -> Utterance(value: "I'd rather not talk to you now.") 
    361  
    362 #               Socialising with other agents 
    363 Type(value:chat) 
    364 -> Utterance(value: "Efd sdyyyrs xfehfs df dwe dfsd") 
    365  
    366 Type(value:chat) 
    367 -> Utterance(value: "Ienf erbs") 
    368  
    369 Type(value:chat) 
    370 -> Utterance(value: "Pndf vdf fbsjew fss") 
    371  
    372 Type(value:chat) 
    373 -> Utterance(value: "Efkdni emfke") 
    374  
    375 Type(value:chat) 
    376 -> Utterance(value: "Urbejf duks") 
    377  
    378 Type(value:chat) 
    379 -> Utterance(value: "Ofuen fjdgwu sfsf") 
     59Type(value:goodbye) it(value:$O) 
     60-> Utterance(value: ("Hope you enjoy the ",$O,". Bye for now!")) 
Note: See TracChangeset for help on using the changeset viewer.