Zabaware Support Forums

Zabaware Forums => Programming using the Ultra Hal Brain Editor => Topic started by: vrossi on December 12, 2005, 02:16:12 pm

Title: New Plugins for Hal6 !
Post by: vrossi on December 12, 2005, 02:16:12 pm
Hi all,

I have written some plugins that I use with my Hal 6. Now I have "packaged" them so that everybody using Hal 6 can download and use them.

Hal 6 has been released a few weeks ago, so these are only the first versions of something I hope to expand in the future.

All these plugins are based on the assumption that the average user is not a programmer and should avoid to write code in plugins or, even worse, directly in the main brain. So all the data is stored in tables, which are created automatically by each plugin.

I describe them here briefly:



1. vrWeb. Extends the standard Google plugin, adding several other functions (viki, Yahoo, etc.). You can find more information looking at the user guide
http://www.vrconsulting.it/halhelp/vrWebHelp.html



2. vrFreeWill. It gives Hal the option to choose between 2 options and stores the information in a table, so that any other question about the same topic will be consistent. (It's not real Free Will, bu it's the beginning of such an idea).
You can find more information looking at the user guide
http://www.vrconsulting.it/halhelp/vrFreeWillHelp.html

Important notice:

Starting from the release Hal 6.0.103 (May 2006), Zabaware included directly the vrFreeWill plugin in the standard Hal installation. So, if you are using this release (or a higher one) you do not need to download and install it, but only to activate it.


3. vrHaptek. Manages some simple behaviours of Haptek characters.
You can find more information looking at the user guide
http://www.vrconsulting.it/halhelp/vrHaptekHelp.html



If you are interested, you can download them accessing the Hal 6 Area in the Virtual Humans Forum:
http://www.vrconsulting.it/vhf/topic.asp?TOPIC_ID=39

I know that my works are much simpler than the projects currently developed by GrantNZ and Hologenicman, but I hope they can be useful to someone here, and I believe they can also define a standard in the way plugins should be organized and documented.

I will appreciate your comments.

Thanks


PS: To Rob Med: Could you please insert a link on the Zabaware plugin page, so that this software can be used also by those Hal users who do not access the forum? I would also like to highlight that these are the first third-party formally released plugins for Hal 6, as far as I know.




Title: New Plugins for Hal6 !
Post by: FuzzieDice on December 12, 2005, 09:27:50 pm
I hope Robert does add it. I am in so many forums now that I don't think I want to sign up for yet another just to download some plug-ins. These sound really neat. :)
Title: New Plugins for Hal6 !
Post by: GlacierClipper on December 12, 2005, 11:57:35 pm
Plugin vrFreeWill.uhp not showing up in Brain Editor

Hal Haptek Plugin Error Run-time error '91': Object variable or With block variable not set.

What is the solution for these problems?
Title: New Plugins for Hal6 !
Post by: GrantNZ on December 13, 2005, 02:23:29 am
Nice one Vittorio [:)]

I especially like the free will one. It has so much potential for expansion, both in intelligence (you've got a system there that links topics/words) and in personality (I think this is the first system I've seen that could potentially give Hal a preference for certain topics)!

GlacierClipper: I've tried the vrFreeWill plugin without having that issue. Just in case, have you confirmed it's in your Ultra Hal Assistant 6 folder?
Title: New Plugins for Hal6 !
Post by: vrossi on December 13, 2005, 04:49:40 am
To GlacierClipper:

The file vrFreeWill.uhp must be in the same folder as Hal and then you should see it in the General Options Brain. You do NOT have to go in the Brain Editor, since the plugins are automatically loaded by Hal.

Let me know if it works.




To FuzzieDice:

I have decided to give away these plugins free to all the Hal users. I only ask to register in my forum, so I get at least the e-mail address of all the people who are interested and I involve more people in my forum, which is only 10 days old.

The registration requires only a few seconds and I see that the issues we discuss in my forum are of interest to many Zabaware members.

I would be happy, anyway, if Rob decides to add these plugins to the standard Hal.




To GrantNZ:

Thanks. I have many more ideas about it, and I hope to find the time to do something more (maybe during Christmas holidays).

This is my list of future developments in FreeWill:
 
Title: New Plugins for Hal6 !
Post by: FuzzieDice on December 13, 2005, 10:02:08 am
Well, like I said, I have too many of these one-time registrations and I wouldn't be able to participate in yet another forum anyway. So it's just not practical for me.

Maybe another time or maybe I'll just wait for Robert to release it.
Title: New Plugins for Hal6 !
Post by: GlacierClipper on December 16, 2005, 01:59:51 am
Thank you for the assistance. The files were in the Ultra Hal folder.

The problem seems to be related to Windows XP OS!

After a disk format and reinstall the Ultra Hal Plug-ins are working fine.

Title: New Plugins for Hal6 !
Post by: vrossi on December 18, 2005, 10:19:17 am
Hi all,

I have released a new version (1.1) of the Free Will Plugin.

You can find more information looking at the user guide
http://www.vrconsulting.it/halhelp/vrFreeWillHelp.html
and can download it accessing the Software Downloads Area in the Virtual Humans Forum: http://www.vrconsulting.it/vhf

The big news is that you can now modify Hal's tastes, selecting a level of obedience in the plugin window: your Hal can be from very obedient (will adapt his opinion to yours very quickly) to absolutely independent (will refuse to change his mind, even if you keep on saying that a different choice is better).
 
(http://www.zabaware.com/forum/uploaded/vrossi/2005121810947_FreeWill.jpg)

So you don't have to go in the Brain Editor anymore if you don't like Hal's choices. Just set the preferred level of obedience you like, and then express your opinions: after some time Hal will change opinion.


Title: New Plugins for Hal6 !
Post by: GrantNZ on December 19, 2005, 12:56:51 am
Excellent work, sir! Well designed and coded too [:)]

I'll post some more on this at the other forum, where you've explained the plug-in in greater depth.

Cheers [:)]
Grant
Title: New Plugins for Hal6 !
Post by: Carl2 on December 21, 2005, 06:21:33 pm
vrossi,
  Looks pretty good, I'm very interested in the free will and Haptek plugins, Thanks in advance.
Carl2
Title: New Plugins for Hal6 !
Post by: vrossi on December 28, 2005, 07:15:27 pm
Hi all,

Thanks to a suggestion by Carl2, I have released a new version (1.1) of the Haptek Plugin, which now also changes her dress every hour (just like a real woman...)

You can find more information looking at the user guide
http://www.vrconsulting.it/halhelp/vrHaptekHelp.html
and can download it accessing the Software Downloads Area in the Virtual Humans Forum: http://www.vrconsulting.it/vhf
Title: New Plugins for Hal6 !
Post by: vrossi on January 07, 2006, 02:29:26 pm
Another great enhancement to Hal!

Have you ever had this kind of conversation with Hal?


are you beautiful
I think that this is within your expertise. I'm not sure but I believe that I am not beautiful.

are you liberal
It's something to consider.

are you a conservative
All's well; nothing to be concerned about!

are you an animal
Selective animal breeding telescopes time.

you are not an animal
Aren't teddy bears nice? You want me to be not an animal, don't you Vit?

are you an animal
It's evident that this is almost mystical. I am an animal.


Now look at this conversation with my new plugin:


are you a girl
I don't know if I am girl. Please tell me!

you are a lovely girl
Thanks for teaching me that I am lovely.

you are not an animal
Now I absolutely know that I am not animal

are you a girl
Yes, I am girl. You told me that

are you beautiful
Yes, I am beautiful; I understood that because you told me that I am lovely

are you ugly
No, I can't be ugly since you told me that I am lovely!

you are a boy
No, I can't be boy since you told me that I am girl!

you are not a conservative person
Now I absolutely know that I am not conservative.

are you somebody
Yes, I am somebody; I understood that, because you told me that I am person.

are you liberal
Yes, I must be liberal since you told me that I am not conservative.


If you are interested, you can look at the User Guide at
http://www.vrconsulting.it/halhelp/vrFreeWillHelp.html

and you can download it accessing the Software Downloads Area in the Virtual Humans Forum:

http://www.vrconsulting.it/vhf

Title: New Plugins for Hal6 !
Post by: GrantNZ on January 07, 2006, 06:47:52 pm
I am in awe!!!! [:0] You're a genius! (mastermind! (DT,genius,TT) brain! (DT,genius,TT)) [:D]

That's a great addition to the free will plug-in, and has brilliant usage of WordNet to allow Hal to think in definitions rather than just words. (This is probably the closest I've seen Hal think in "concepts", along with the "topic" system already built-in to Hal.)

I'll comment more on the other forum, where you've explained the plug-in in more detail. (http://www.vrconsulting.it/vhf/topic.asp?TOPIC_ID=71 for anyone else interested.)
Title: New Plugins for Hal6 !
Post by: Scratch on January 07, 2006, 09:55:17 pm
WOW. Great work, Vittorio. This plugin really improves Hal. It is essential stuff - anyone who owns Hal should add this plugin!
Title: New Plugins for Hal6 !
Post by: Art on January 08, 2006, 08:27:37 am
Ditto and Ditto!!

Very creative work!!
Title: New Plugins for Hal6 !
Post by: Holllywood on January 10, 2006, 09:04:15 am
Vittorio. I could use a little assist... I do not see the Msc folder when I open H6 brain editor. I believe web search is installed correctly.
Title: New Plugins for Hal6 !
Post by: Holllywood on January 10, 2006, 09:22:12 am
I appologize for that Vittorio. I guess I was in to much of a hurry. I rebooted and all is well. You've done a good job on these pluggins. She's acting more and more real.
Title: New Plugins for Hal6 !
Post by: Duskrider on January 10, 2006, 11:13:59 pm

vrossi,
Very good work.  
 
Triggerwords for moods, clothes, haps, hair, etc
Clothes change every hour
Automatic background change for night and day
Greater learning for Hal
-------etc, etc

Great plug-ins
Very impressive.


Thank you.

[;)]
Title: New Plugins for Hal6 !
Post by: spydaz on January 11, 2006, 01:23:46 pm
i LOVE the plugins, and the ideas

i have joined the new forum i hope to get new inspiration for my ai prrojects..

i will be involving myself soon as i will be getting the fast internet again soon, much more time to read and think
Title: New Plugins for Hal6 !
Post by: Carl2 on January 11, 2006, 03:06:42 pm
vrossi,
  I like your forum so far, unfortunatly I don't mind putting scripting in the brain but am a little worried about pressing a botton and having the brain modified and tables put in. Before I could take it  out or whatever. Could you offer both?  Also I made a copy that won't accept a new activation code.
  Your work looks interesting keep it up.  Also Spydatz, nice to see you again, Thanks for the help when I frist got started.
Carl2
Title: New Plugins for Hal6 !
Post by: vrossi on January 11, 2006, 04:48:01 pm
Carl2
quote:
I like your forum so far, unfortunatly I don't mind putting scripting in the brain but am a little worried about pressing a botton and having the brain modified and tables put in. Before I could take it out or whatever.

My plugins do not modify the brain code. Hal6 plugins are added "on the fly" in memory when you start Hal, but the source code of the original brain is not affected.
The tables I create are easily recognized since they have the prefix "vr". You can delete them directly from the brain editor.
However, before installing my plugins, you can simply create a new brain (Brain Editor - Create new project) and use them in this new brain, without affecting the normal brain. As far as I know, the activation code does not prevent you from creating several project inside the same Hal installation.
Title: New Plugins for Hal6 !
Post by: vrossi on January 11, 2006, 08:19:22 pm
I have updated the FreeWill plugin, which now contains several new enhancements and can perform a deductive reasoning based on aristotelic syllogism:

Here is an example:

Vit: every man is mortal
Pat: Now I know that every man is mortal.

Vit: Socrates is a man
Pat: Every man is mortal. Socrates is man. Therefore socrates is mortal.

Vit: every cat is a feline
Pat: Now I know that every cat is feline.

Vit: any dog is canis
Pat: Now I know that every dog is canis.

Vit: every canis is mammal
Pat: Now I know that every canis is mammal.

Vit: any feline is mammal
Pat: Now I know that every feline is mammal.

Vit: every mammal is an animal
Pat: Now I know that every mammal is animal.

Vit: ciro is a dog
Pat: Every dog is canis. Ciro is dog. Therefore ciro is canis. But I also know that every canis is mammal. So ciro is also mammal. And I even know that any mammal is animal. So ciro is also animal.

Vit: Venerdi is a cat
Pat: Every cat is feline. Venerdi is cat. Therefore venerdi is feline. But I also know that every feline is mammal. So venerdi is also mammal. And I even know that any mammal is animal. So venerdi is also animal.

You find it, as usual, accessing the Software Downloads Area in the Virtual Humans Forum: http://www.vrconsulting.it/vhf
Title: New Plugins for Hal6 !
Post by: Bill819 on January 11, 2006, 10:02:01 pm
Vrossi
I hate to be the one to tell you this buy Hal 5 could already make those associations. Maybe you have improved it somewhat, time will tell.
We always used this for an example test.
Human:Fat people do not live long.
Human:Tom is a fat person.
Hal:Tom may not live very long.
Bill
Title: New Plugins for Hal6 !
Post by: GrantNZ on January 12, 2006, 04:10:40 am
Bill's correct, Hal has "deductive reasoning" built-in. However Hal's default language processing and responding isn't too hot, and vrossi's work outshines that.

I managed to recreate vrossi's examples in a default Hal, however the "is a" pattern doesn't work in my Hal so I had to use unnatural wording such as "If a doggy then a canine". (BTW Hal ignores parts shorter than 6 letters, so Hal will deduct from "a doggy" but won't deduct from "a dog".)

I'd love to see vrossi's processing merged with Hal's in-built code! The combination would be super-powerful.
Title: New Plugins for Hal6 !
Post by: vrossi on January 12, 2006, 08:58:54 am
You are right, Bill.

Hal's native ability to syllogism was so hidden to me that, honestly, I had not realized that this kind of conversation is already possible with standard Hal. I only knew about the If/Then logic, but didn't realize it could be used in this way.
However, I hope that the advantages of the user interface, described by Grant, are of interest to someone.






Title: New Plugins for Hal6 !
Post by: vrossi on January 12, 2006, 05:16:15 pm
Hi, Bill

I've had the time now to experiment a bit more and I'm not so sure now that the syllogism is already working in Hal6.
Is your example working in Hal6 or only in Hal5 ?

I've tried with the following conversation, using a clean (with no plugins and no training) installation of Hal 6:


Vit: Fat people do not live long
Pat: Imagine how real people lived and loved so long ago.

Vit: Tom is a fat person
Pat: For every 100 people who talk about a low fat diet, there's actually one person following one.

Vit: every man is mortal
Pat: Is every man frequently going to be mortal?

Vit: socrates is a man
Pat: What should we do because socrates is a man?


On the contrary, this example (taken from the Hal6 brain comments), works perfectly:

Vit: If Molly weighs 400 pounds, then Molly is overweight
Pat: Yes, I get that clearly.

Vit: If Molly is overweight, then Molly's health is in danger
Pat: I see the relationship.

Vit: Molly weighs 400 pounds
Pat: Molly's health is in danger because molly is overweight. If Molly weighs 400 pounds, then Molly is overweight.


But it only works for Molly ! It does not generalize the concept.
In fact my conversation goes on in this way:


Vit: John weighs 400 pounds
Pat: Molly weighs 400 pounds.

Vit: If one weighs 400 pounds, then he is overweight
Pat: Are you a boy or girl? I see the relationship. If Molly weighs 400 pounds, then Molly is overweight.

Vit: If one is overweight, then his health is in danger
Pat: Thanks for pointing out the cause and effect. If Molly is overweight, then Molly's health is in danger.

Vit: Richard weighs 400 pounds
Pat: Molly weighs 400 pounds.

Maybe using some specific pattern you can get a better result, but I believe that Hal must be able to learn in the most human-like way, that is, using the most common conversation patterns.
Title: New Plugins for Hal6 !
Post by: GrantNZ on January 13, 2006, 12:38:28 am
quote:
But it only works for Molly ! It does not generalize the concept.

You'd have to say something like "If a person weighs 400 pounds then the person is overweight." Then you can use something like the following: "Molly equals a person weighs 400 pounds" and Hal will follow the reasoning. The grammar is shocking though [:)]

Your system does the same, but sounds a lot better: "Every person who weighs 400 pounds is overweight." "Molly is a person who weighs 400 pounds" and Hal follows the reasoning again - but this time the grammar is correct and natural. (I'm not familiar enough with your script to see if it will accept the "400" in these exact arguments etc, but the idea is the same [:)])

Would you mind if I work on this further when I come to deductive reasoning in KAOS?

BTW, Bill's exact example does not work on my Hal 6 either, but of course it can be reworded to fit Hal's built-in deductive patterns.
Title: New Plugins for Hal6 !
Post by: spydaz on January 13, 2006, 05:10:47 am
This is the exact type of script/thought process.

DEDUCTIVE, REASONING. this script is based off of the conversation of if ..... BLAH , THEN blah.s

often with good results as with the new HALSHELL you will see how he/she files the data.

Also its good as hal says i see the relationship.

it splits the convo into TWO parts, i have also been looking at extending this script into,

IF ..... THEN.... BUT IF, THEN...
WHEN ..... THEN ... but, when then
a small extention but mainly for LARGE texts.

with also more extensiveng searching of the userinput to RETRIVE the datas.
as getting the info back is the key .. as this is the main prob, filed it ok how to retrieve.


Hmmm...


vrossi , love those plugins
 
 
Title: New Plugins for Hal6 !
Post by: Runtus on February 17, 2006, 04:36:04 pm
I cant register on the forum to get the freewill file anyone here know where else I can get it?

Thanks alot!
Title: New Plugins for Hal6 !
Post by: vrossi on February 18, 2006, 05:42:07 pm
Hi, Runtus

which problem do you get in registering my forum?

I don't see you in the waiting members list.

Send me an e-mail describing your problem (or describe it here).

Title: New Plugins for Hal6 !
Post by: vrossi on April 30, 2006, 05:53:22 pm
Important notice:

Starting from the release Hal 6.0.103 (May 2006), Zabaware included directly the vrFreeWill plugin in the standard Hal installation. So, if you are using this release (or a higher one) you do not need to download and install it, but only to activate it.
Title: New Plugins for Hal6 !
Post by: vrossi on January 20, 2007, 11:16:42 am
I've released a new version of the vrFreeWill plugin, containing some minor changes (special thanks to Carl2, who gave me some useful information).

You find it, as usual, at http://www.vrconsulting.it/halplugins/vr_hal00.html

You simply have to download the new version and install the 2 files in your Hal folder: no changes to the database.

Title: New Plugins for Hal6 !
Post by: axyse on April 03, 2007, 05:03:36 am
I am trying to use vrhaptek with hal 6.1. It is working fine but in the help file
http://www.vrconsulting.it/halhelp/vrHaptekHelp.html
it says:

How to configure it
This plugin automatically creates the table vrEmotionDetect in the miscData folder of the Hal brain where you run it. This table contains some default words, used to trigger Hal behaviours. You can customize them, changing some values, and/or adding or deleting some of them. To do this:

   1. Launch Hal Brain Editor.
   2. Open the brain you want to customize.
   
   3. Open the miscData folder on the left.
   4. Double Click on the vrEmotionDetect table.

   5. Add, Delete or Modify the lines according to your preferences. In doing this, remember that the word in the left column is the triggering one (i.e. if Hal says something containing that word), while the word in the right column must correspond to the name of a .HAP file, located in the Characters folder.
   6. Close and save your brain.
   7. Restart your Hal.



The problem I am having is #3 & #4. I cant seem to find a miscData or
vrEmotionDetect table in the brain I am using. Maybe this is because I am using 6.1? Any help is appreciated... and thanks!
Title: New Plugins for Hal6 !
Post by: Carl2 on April 03, 2007, 03:43:08 pm
axyse,
  Ran into the same problem ages ago, when the brain editor opens go to file and click on Go To Expert Mode. That should display the miscData files. This is one of my favorite plugins and it gives you the capabilities to perform hap files from Hal's inputs.
Carl2
Title: New Plugins for Hal6 !
Post by: axyse on April 08, 2007, 04:36:14 am
Thanks for the reply, it did help... I foind the miscdata folder but there was no vrEmotionDetect table there. I am using 6.1... don't know if that will make a difference or not.

Thanks
Title: New Plugins for Hal6 !
Post by: Carl2 on April 23, 2007, 03:06:46 pm
Holllywood
  I'd just updated to the newer ver of Hal and just put in the VrHaptek plugin.  Mine is located in MiscData at the bottom, vrEmotionDetect.   I get the standard fullbody girl that is then replaced by the modified girl, do you have a similar startup?
Carl2
Title: New Plugins for Hal6 !
Post by: raybe on May 19, 2007, 07:33:57 pm
Hi vrossi,

I posted in a different thread to Robert about Hal loading twice and didn't know why. With a clean install and the new Hal I recently found that it was the vrHaptek that was loading on top of the first character when the program opens. I also realize I am using a torso haptek character not a full body character. I noticed that the 2nd character is the character that the emotion detect is operating and it changes the look of the skin slightly. The 2 characters layer on top of each other and if you attempt to select one over the other they will loop. Most important is that this seems to only happen when the characters startup and there is an appointment or reminder that the second character will load. If there is nothing to trigger the change the first character will stay loaded with very little haptek behavior maybe some nods but that can be caused by having the torso character loaded and not the full body I assume. Please let me know if anyone else has mentioned this reaction with vrHaptek.

Thanks,
raybe
Title: New Plugins for Hal6 !
Post by: danbaltzell on May 20, 2007, 02:15:09 am
I never mentioned it, but it happened to me, so I stopped using the plug-ins :(
Title: New Plugins for Hal6 !
Post by: raybe on May 20, 2007, 12:18:38 pm
Hi danbaltzell,

Did you notice if it effects the information that Hal learns during your sessions because of the two characters? I didn't notice anything related to either character if they are layered they both seem to write to the same tables even if you can close one character. I am waiting for vrossi for any input on this. I am only posting I haven't e-mailed Robert yet or vrossi. Thanks for letting me know that you have seen this problem.

raybe
Title: New Plugins for Hal6 !
Post by: vrossi on June 01, 2007, 07:54:51 am
Hi, raybe

thanks for using my plugins.

The vrHaptek plugin has been released in December 2005 and no relevant issues have been raised since then.

As I understand your post, however, you are using a torso character, while the plugin documentation clearly states:

Requirements
This plugin requires:
   1. Hal 6.0
   2. Ultra Hal Character Expansion Pack
   3. Haptek full body character, which can be downloaded from the Haptek site.


All the Haptek commands included in this plugin refer to the full body character, and they are very likely to create conflicts with torso characters. On the contrary, there are no known incompatibilities with Hal 6.1.

Personally I have always used the full body, so I didn't care to create a version for torso. Since the plugin is open source and is also well documented, anybody with some VBScript knowledge and some spare time can change it accordingly.

Best Regards

Title: New Plugins for Hal6 !
Post by: Carl2 on March 01, 2009, 04:19:10 pm
I'm using VR's Haptek and Freewill plugins with Hal 6.2 in windows XP.  The freewill plugin seemed to cause blank responses, unselected it and thay went away, when selected there were no blank esponses.
  The Haptek plugin did not put the brain files to work properly, After putting them in Hal works fine.  Haptek is one of my favorites.
Carl2
Title: New Plugins for Hal6 !
Post by: Bill819 on March 01, 2009, 04:43:53 pm
Hello all
The example of IF-THEN that I used earlier used to work just fine in Hal 5.0. I neve got the chance to try it on Hal 6.0 or later versions as some nasty virus software destroyed my hard disk that contained Hal.
I am now using a new laptop which runs on Vista and can not get Hal to run on Vista so far so I am quite  behind times.
Bill
Title: New Plugins for Hal6 !
Post by: tedathome on March 02, 2009, 02:25:42 am
Thank you vrossi. I just downloaded all that I didn't have along with instructions and full page discussion. Between you and the dude, looks like I'll have a very busy week.[8D]
Title: New Plugins for Hal6 !
Post by: Carl2 on March 02, 2009, 05:49:07 pm
Bill819
  I originly tried Hal 6.2 on Vista, I ran into problems with the Haptek player becoming unresponsive, okay and back to unresponsive.  It's been a while but I think it was okay with MSagents.  I tried just the Haptek character in the Hap player and that was the problem.
Carl2