dupa

Author Topic: ABOUT ZABAWARE MOOD .HAP'S  (Read 11239 times)

Dr.Benway

  • Hero Member
  • *****
  • Posts: 554
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« on: May 22, 2005, 08:54:54 am »
Right now I am studying the .hap-files that Hal uses.
These files are located in the folder "Zabaware/Ultra Hal Assistant 5.0/Characters".
I have transfered the settings in the .hap-files to the table below.

Please take specifically notice of the following values (grayed out):

Neutral / HighEnergyNoise: 0.20000
Neutral / browtalk: 0.70000

Sad / browtalk: 0.70000
Sad / visemes: 12800000


Are these values the result of typing mistakes made by Medeksza?

http://www.zabaware.com/forum/uploaded/dr.benway/200552285328_Zabaware_moods.gif
« Last Edit: May 22, 2005, 05:54:26 pm by Dr.Benway »

Dr.Benway

  • Hero Member
  • *****
  • Posts: 554
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« Reply #1 on: May 22, 2005, 09:07:22 am »
Here comes my second question.
Hal uses the configuration file "Default.psn" to link the emotions of Hal to Haptek mood-files.
This file is located in the folder: "Zabaware/Ultra Hal Assistant 5.0/Characters/"
Here follows the content of "default.psn":

"Angry1","angry.hap"
"Angry2","bully.hap"
"Angry3","pycho.hap"
"RunProg","happy.hap"
"Snooze","sleepy.hap"
"Write","happy.hap"
"Learn","happy.hap"
"Happy1","Happy.hap"
"Happy2","ShyLove.hap"
"Sad1","sad.hap"
"Sad2","mellow.hap"
"Sad3","brokenheart.hap"

"Surprised1","pondering.hap"
"Surprised2","skeptic.hap"

"Normal1","neutral.hap"
"Normal2","shy.hap"
"Normal3","shylove.hap"


Please take specifically notice of the red lines.
Why has Medeksza linked surprise to "pondering mysteries" and "skeptic"?
« Last Edit: May 22, 2005, 09:07:50 am by Dr.Benway »

freddy888

  • Hero Member
  • *****
  • Posts: 1693
    • View Profile
    • AiDreams
ABOUT ZABAWARE MOOD .HAP'S
« Reply #2 on: May 22, 2005, 10:21:57 am »
You star!

This is the area I have been looking at lately.  Regarding the default PSN - I think perhaps they were just put in on the fly as maybe there wasn't a 'surprised' animation handy.  I can't seem to find one.  Some areas seemed a bit mismatched to me, which is why i went about re-writing the emotion handling in my brain.  I didn't think it was working properly, as fullbod.htr was just rotating through the hapfiles in the default.psn. and thats about it.

I ditched default.psn and changed things....

What I have done (and why) is as follows.

1) changed the trigger file 'emotions.brn' from a TopicSearch to a QABrain.  This allows more freedom and better control of tripping the emotions.  Hal will scan the sentence as a whole for relevent trip words and the relevance value can be adjusted easily.

2)Instead of coding the relevant Hap files within the brain program by the 'If...Then...' method i have put their details into the emotion.brn.  Like so:

'Emotion.brn' is like this:

Search String.................Hals Response

SAD MOODY UNHAPPY etc.........Sad.hap
HAPPY GLAD JOY................Happy.hap
WAIT STOP HOLD ON.............anim_hands_on_hips.hap
WALK..........................walk.hap

and so on.

Basically I get the Hal VBasic script to search the Emotion.brn and if it finds something relevant then it plays the accompanying HAP file.  All I have done is cut out the middle man, as before it got the word 'HAPPY' or 'NEUTRAL' took it to the program and did what it wanted with it, but within the limits programmed at the time.  There's a lot more to what I've done with that but I don't want to go on and on!

The end result is that this takes up less room in the program and means i don't have to keep rewriting the Vbasic when i add an emotion.  I just think of some trigger words,and put them along with the file name in the emotion.brn file.

I'm trying to decipher all those values like you have in the table to create some more animations, I've got an incredible frown that covers half of fullbods face, making her look like the Mekon.

If anyone knows how to send commands to the Haptek engine OUTSIDE of Hal then I'd like to know as I want to write a program to create hap files.  I've already written some code that lets me move a character around a scene but there's a limit to what can be done from within Hal.  What we need is to send the Haptek Hypertext directly to the Haptek engine.  This can be via ActiveX, API and DLL's, but I can't get any of that to work yet!!

freddy888

  • Hero Member
  • *****
  • Posts: 1693
    • View Profile
    • AiDreams
ABOUT ZABAWARE MOOD .HAP'S
« Reply #3 on: May 22, 2005, 10:33:34 am »
I forgot to say...

By using my method the range of emotions/animations is limited only by whatever HAPs I put into the emotion.brn.  So hal's visuals
are no no longer just the few things listed in the default.psn.
I'll have Hal doing a dance routine by the end of the month!!

[8D][8D][8D][8D]

Dr.Benway

  • Hero Member
  • *****
  • Posts: 554
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« Reply #4 on: May 22, 2005, 11:56:11 am »
Gee, Freddy! You don't waste any time, do you? You want to send commands to the Haptek-engine from outside Hal. I am yet not that far.
Nevertheless, I have thought about these things.
My thoughts were:

Hal needs a more flexible interface, more like Winamp. Hal must be capable of sending commands to a stand-alone Haptek window. I fantasized about building this interface with html so everything could happen from inside a webbrowser. The demo-pages on the Haptek-server convinced me that there is no real need to build applications to manipulate Haptek's.

Dr.Benway

  • Hero Member
  • *****
  • Posts: 554
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« Reply #5 on: May 22, 2005, 01:15:18 pm »
Considering the "Default.psn", the config.file that links Hal's emotions to Haptek mood-files, I see one big problem.
 
Newly added Haptek-characters are forced by Hal to use the Haptek mood-files in Hal's "Characters"-folder. Therefore the mood-files that come with a specific new character are always ignored.

freddy888

  • Hero Member
  • *****
  • Posts: 1693
    • View Profile
    • AiDreams
ABOUT ZABAWARE MOOD .HAP'S
« Reply #6 on: May 22, 2005, 04:23:48 pm »
i have a lot of time on my hands at the moment so i have the luxury of tapping away at Hal's brains for as long as I like!

Hmm, I too wondered about the use of a HTML setup, I don't know Java, but having had a look at the demo site, it seems fairly straightforward.  I think a winamp type interface would be great, it would be nice to change the way the menu comes up for example, and have a few controls that could directly manipulate Hal from one front panel.

Before I rediscovered Hal recently(I had seen something a long time ago about the project) I had been trying to write a similar program.  I hadn't got to the state of Hal, I'd only got as far as word and sentance manipulation with a reduced languge set called OGDENS BASIC ENGLISH.  It's the English language reduced to a few hundred words and I thought a good building block for an AI.  My idea was for the AI to work around words and their meanings, rather than relationships between sentences.  That way I thought it could eventually construct intelligent sentences.  So I do have some aquired knowledge which helps!  On that subject i notice that the inbuilt dictionary has an immense amount of usefullness that could be expolited - I see that the writer of the XTF brain was working with it's Meronyms and word links - this I think is well worth exploring as it means Hal can take a base subject and explore it's other aspects.  Like for example, rather than simply saying 'I understand you have a new car', Hal could ask you about it's interior, lights, colour, engine etc.  If you wanted!
But thats the way to go I think, because it makes Hal more enquiring which is what intellegence is all about.  We shall see!!


Yes - I see what you mean about the Default PSN.  With my method though you can set up an emotion.brn to link to whichever HAP files you like.  You would have to set up your own emotion.brn for each different character with their own unique set of emotion files.  That way Hal would stop using the deault.psn ( I removed mine ) and use the ones you have programmed.  As far as I can see each HTR comes with it's own animations embedded, and also in some cases with a DEFinition file with further enhancements. The trick is to get hal to use these because Hal 'as is' only uses a few default ones.

Unfortunately there doesn't seem to be much guidance about so I may have to fork out for the Haptek tools at some point, when I've finished poking around that poor demo girl of theirs!

[:D][:D][:D]

freddy888

  • Hero Member
  • *****
  • Posts: 1693
    • View Profile
    • AiDreams
ABOUT ZABAWARE MOOD .HAP'S
« Reply #7 on: May 22, 2005, 04:28:12 pm »
PS.  I realised that if you have got that Hap settings list in a database or spread sheet you could use it to create HAP files.
I mean something along the lines of tapping in the settings and simply pressing a button that generates the script.
Thats part of the idea for the program I am to write.
The reason I want to send data to the Haptek engine is so I can see the effects of changing the settings AS i change them.

Duskrider

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3316
  • Graphic King
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« Reply #8 on: May 22, 2005, 05:50:02 pm »
Freddy,
If you can figure this, it may be of help to you to get Hal to dance.
Go to http://www.haptek.com/tests/santa/index.html
When page is loaded go to hep_temp and get the santa_walkendance101.hap
For demo, drop the hap into any fullbody haptek for quick dance.
[;)]

Dr.Benway

  • Hero Member
  • *****
  • Posts: 554
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« Reply #9 on: May 22, 2005, 05:53:52 pm »
Wow, that all sound really promising and exciting. It seems like you have made the Hal-engine your own pretty fast. I can't wait to see what you are going to do with it.

I guess you have already read the recent thread about the high prices of the existing "Haptek tools". I own People Putty which can do some of the things you ask for. Maybe you should download the People Putty-demo. With the demo you can't save the head you have made, but maybe you can still make emotion .hap's and .mrf's with it. At least it will allow you to see changes immediately when you drag the sliders in the program.

I have spend some time trying to figure out the Bzip2-algorithm that Haptek uses for .htr and .jhp. Or stated more clearly: I tried to unzip and untar such files with a number of compression-programs. I had no luck. [B)] Still, I am convinced that it must be possible that way. I made the eyelashes (which I ripped from Haptek's salesgirl) a stand-alone .htr by changing some characters inside the file with a hex-editor. Haptek should have given every head eyelashes to begin with.

Another thing I have start thinking about is designing something like "esthetic facial expressions". I think that a lot of the standard facial expressions tend to make a character look ugly. For instance, I would say that Sandy.htr is a pretty girl, but when her face goes sad or angry she reminds me of the girl from the "The exorcist". BTW, I discovered that the morphing-technique that is also used for facial expressions is patented by the founders of Haptek.

http://gauss.ffii.org/Search/All/Applicant/Haptek%20inc

freddy888

  • Hero Member
  • *****
  • Posts: 1693
    • View Profile
    • AiDreams
ABOUT ZABAWARE MOOD .HAP'S
« Reply #10 on: May 24, 2005, 10:47:56 am »
thanks dustrider, i'll check that out.

Re;the patents; I didn't read it in detail but I am thinking it should be okay to use the demo as you like at home, but any commercial venture entails fees.  Where home enthusiasts stand is always a grey area!  This is more about the actual base coding isn't it, as Haptek supply the SDK telling you how to do animations?!

I think the desire to make new 3d characters will eventually beat me and I will get the software - I have no idea of the price though!

lol@ the exorcist face!  The esthtic face sounds very intersting, are you thinking of using more subtle animation changes?  Try playing with the time setting ie;

\translate[x= y= z= t=]

you could make the changes slow downspeed up as you like.

That Bzip2 thing is a blind alley perhaps, as I haven't found a decompression tool that works either.  It's probably an in-house compression to stop too much hacking going on!  Fair play really.

You could take a look at the fullBodDef.hap though as it isn't compressed.  I don't think anything we are doing is outside what Haptek have already allowed through the help in SDK.


Dr.Benway

  • Hero Member
  • *****
  • Posts: 554
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« Reply #11 on: May 24, 2005, 02:31:49 pm »
I will try out what you suggest, Roger.
People Putty is $54.95.
I also started to wonder about the value of the BZip2-story. I don't know much about compression, but I learned that a tarred file (like in "hap-tar") is just a group-file and does not imply any compression yet.
« Last Edit: May 24, 2005, 02:32:23 pm by Dr.Benway »

freddy888

  • Hero Member
  • *****
  • Posts: 1693
    • View Profile
    • AiDreams
ABOUT ZABAWARE MOOD .HAP'S
« Reply #12 on: May 24, 2005, 10:36:34 pm »
I had a look at that santa demo - nice moves!
Can't work out how to do the limb movements though as it's all in the HTR...ho hum, or should that be ho ho?!

I think the fullbodyDEF beckons me.

markofkane

  • Hero Member
  • *****
  • Posts: 5275
  • Crazy Man
    • View Profile
    • http://www.soundspectrum.com
ABOUT ZABAWARE MOOD .HAP'S
« Reply #13 on: May 25, 2005, 05:48:20 am »
I thought about purchasing people putty, but it only available for download. I am on snail dial-up.

Why isn't it available on CD?
Mark: I'll think about it
Laura: Don't think about it too long or I'll throw you out on your ***king a**.
"Political correctness is censorship"

Dr.Benway

  • Hero Member
  • *****
  • Posts: 554
    • View Profile
ABOUT ZABAWARE MOOD .HAP'S
« Reply #14 on: May 25, 2005, 07:54:35 am »
The company that delivers the download service offers a "get a BACKUP CD of your downloaded software MAILED DIRECTLY YO YOU!"-option. You have to pay an outrageous $10.95 extra go get that!

You could try to email Haptek directly and ask if they could send you a cd. I had contact with them a few times and they made a very helpful impression on me.