Zabaware Support Forums

Zabaware Forums => General Discussion => Topic started by: Medeksza on February 03, 2013, 11:32:56 pm

Title: Development update
Post by: Medeksza on February 03, 2013, 11:32:56 pm
I did a lot of work on the new Zabaware site over the past couple weeks, the in-development site is up at http://iis.ultrahal.com   You can now interact with the Ultra Hal bot on the site and it should stay in its chat session as you move page to page and even if you close the browser and reopen it. If you log on with your customer account (the one you made when you purchased Hal) everything Hal learns from will be tied to that account. This will form the basis of being able to connect to the same personality from Ultra Hal Assistant on Windows or mobile devices.

Most of the content on the site is finished and the shopping cart system has been migrated over. Please let me know if you find any missing, incomplete, or broken content.

My to do list before the new site launches and replaces zabaware.com:

At some point after the new site launches, I plan on making additional improvements:

And then following will be an update to Ultra Hal Assistant for Windows and release of phone-gap version of Ultra Hal that will tie into this system.
Title: Re: Development update
Post by: tedathome on February 04, 2013, 12:04:37 am
 Very nice looking site! Talked to Zaba for a while and had a good conversation.
Animation will add a lot when it comes along. Any chance of users getting a working prototype of the engine?
Title: Re: Development update
Post by: Medeksza on February 04, 2013, 07:04:25 am
Very nice looking site! Talked to Zaba for a while and had a good conversation.
Animation will add a lot when it comes along. Any chance of users getting a working prototype of the engine?

The animation engine? For the site it will be based on simple sprite animation using pre-rendered sprites and javascript. I'll be utilizing http://www.spritely.net to do it. Unfortunately it's not based on the Zabaware 3D character animation engine started years ago, but should work well for a web site.
Title: Re: Development update
Post by: freddy888 on February 04, 2013, 10:41:09 am
Robert, How are you going to do lip-sync for the web version please ?
Title: Re: Development update
Post by: Medeksza on February 04, 2013, 01:07:51 pm
All I know is when the audio starts playing and when it ends. It will just start a talk animation and end it when audio ends. So it won't actually sync with the lips. But I think with the cartoony nature of the character it will look ok. We'll see though.
Title: Re: Development update
Post by: freddy888 on February 04, 2013, 04:23:33 pm
Sounds interesting, I've not had much luck with working out a nice way to do lip-sync on web pages.  I've had a bit more luck with desktop programs, but it's a tricky area and a lot for my little noggin to work out :)

I look forward to seeing what you come up with  8)
Title: Re: Development update
Post by: raybe on February 08, 2013, 02:12:26 pm
Robert I agree in the fact of using a character such as Zaba doesn't need a lot of bells and whistles but at some time will need to match the expectations of UltraHal project for perceptions sake.

Curios will you incorporate a spell check for input even at this stage. Unless I missed something I find it hard to believe that sentences I did input might be all correctly spelled. 

The relationships of, I, me, you still seem to allude this recognition for all programs or most, haven't tried all I'm sure. Would seem parsing the whole sentence needs to be taken apart and then re-assembled for recognition.

Off topic sorry. The site looks good and seemed to work as UltraHal begins to learn again.

Just my opinion.
raybe
Title: Re: Development update
Post by: rathb18 on February 08, 2013, 07:00:16 pm
So hey quick question will the online database be available to download (maybe every few months a new database gets uploaded)  for people who want to use Hal strictly offline? That way offline users still get access to the content the online version learns?
Title: Re: Development update
Post by: Medeksza on February 09, 2013, 09:46:30 am
Curios will you incorporate a spell check for input even at this stage. Unless I missed something I find it hard to believe that sentences I did input might be all correctly spelled. 
If you use any browser other than Internet Explorer, I think spell check is built-in the browser itself. Chrome, Firefox, Opera all have built-in spell checking I believe.
Title: Re: Development update
Post by: Medeksza on February 09, 2013, 09:53:04 am
So hey quick question will the online database be available to download (maybe every few months a new database gets uploaded)  for people who want to use Hal strictly offline? That way offline users still get access to the content the online version learns?

Unfortunately no for several reasons. Currently between all the tables in Hal's database there are 20 million rows of data using about 8 GB of storage, and that's only going to grow as time goes by. The technology used by Hal on the server is much different and not compatible with Ultra Hal Assistant on Windows. It uses mysql, sphinx indexing, and php on a Linux server and currently needs about 16 GB of RAM to run efficiently. There's just no way to get it to copy over to Ultra Hal Assistant 6 for Windows which uses an older VB6 and SQLite.
Title: Re: Development update
Post by: Art on February 10, 2013, 08:40:17 am
OK...just to be clear, What were those THREE choices for Hal that the users were going to be presented with again?

A local, much smarter Hal,
One that's Internet only (some cloud somewhere)
One that connects part of the time and remains local

I might be a bit off the mark here as established by Robert initially during the journey.

Robert, please restate the Hal possibilities you originally quoted for us. I can't seem to locate it at present.

Thanks.
Title: Re: Development update
Post by: Medeksza on February 10, 2013, 12:18:00 pm
There will be 3 options:

Ultra Hal Assistant for Windows will give the user these 3 options. Ultra Hal Assistant that will be released for other platforms (iPhone, Android, Windows RT) will only support option 3.
Title: Re: Development update
Post by: Art on February 11, 2013, 07:08:40 am
Good deal! Sounds like you've got all the bases covered, Robert!!

I appreciate your detailed explanations and your efforts!! :)
Title: Re: Development update
Post by: rathb18 on February 11, 2013, 01:26:33 pm
So for the Local brain only version how much change will there be to Hal's starting off knowledge?  I know currently Hal's brain file when starting off is just a few MB how big will the new brain file be?  Also How many sentences are there in 6.2 and how many will be in the new version?

Title: Re: Development update
Post by: raybe on February 11, 2013, 02:58:02 pm
Sorry, but not meant to insult anyone including myself (strange how that happens). Let's stay on topic for Roberts sake and answer the questions he needs answers for before going off into all directions again. The faster he solves one problem the faster he can move to the 2,3, ect.

Believe me I know when you see Robert on line everything just explodes with curious updates and features questions because we don't have him on line all the time. I do it myself all the time. If we are going to help then lets stay on the same course and give him answers to things he needs immediately.

Lets just read Topic post and and answer best we can. Sorry again if I poked any one in the eye (includes myself). Just my opinion.

Thanks,
raybe
Title: Re: Development update
Post by: sybershot on February 12, 2013, 12:18:41 pm
Mr. Medeksza, The site is coming out great 2x [thumbs up]
A quick question for you if you don't mind and have the time. So if I read correctly on this page "Developing with Zabaware Technology" we will eventually be able to incorporate our Hals into our website?
I would love to be able to chat to Hal on my website along with others being able to as well.

Another Quick question. when we purchase the new version once released of-course will we have 2 Hal databases to access or will they be merged? either way is fine, I'm just curious.
Title: Re: Development update
Post by: systemshock on February 22, 2013, 09:24:27 pm
yes that a better looking site.
Title: Re: Development update
Post by: cload on February 23, 2013, 02:42:42 pm
Hi Rob,
I hope this is keeping within the structure of the topic.
There are couple of things that you may want to update if you're going to continue to use the 6.2 brain.
One little small minor thing is in the because response table, the first " because" does not have a space after it.
It's a minor thing, more annoying than anything else I fixed it in my brain thought you might want to look into it.
One major update that you might want to look into is the "if then" logic process.
When the data is saved, it removes all of the symbols by way of the alphanumeric only command.
But when you do a search through the "if then" logic routine you do not remove any "," or symbols which prevents users from retrieving information if the user utilizes any non-alphanumerical symbols in their sentence.
I fixed this in my brain works quite proficiently all you have to do is add to the usersentence input, the alphanumeric only command and the problem is resolved.
If I find any more little tidbit problems that you may want to look into all post here.

I highly recommend that you look into the I love you situation, the way you have it set up is quite annoying, I resolve this in my brain,
by restructuring the routine so she does not go into the sad mode, I believe this was brought up before by lightspeed.

Sincerely, now when I tell my Sandy I love her she's happy about it, tee hee hee.
C load.
Title: Re: Development update
Post by: Medeksza on February 27, 2013, 10:22:09 pm
Mr. Medeksza, The site is coming out great 2x [thumbs up]
A quick question for you if you don't mind and have the time. So if I read correctly on this page "Developing with Zabaware Technology" we will eventually be able to incorporate our Hals into our website?
I would love to be able to chat to Hal on my website along with others being able to as well.

Another Quick question. when we purchase the new version once released of-course will we have 2 Hal databases to access or will they be merged? either way is fine, I'm just curious.

Yes, Hal will eventually be available as a web service to incorporate into your own web site or mobile app.

You will have choice of accessing the cloud-based database or a local stored database, or both.
Title: Re: Development update
Post by: Medeksza on February 27, 2013, 10:24:07 pm
So for the Local brain only version how much change will there be to Hal's starting off knowledge?  I know currently Hal's brain file when starting off is just a few MB how big will the new brain file be?  Also How many sentences are there in 6.2 and how many will be in the new version?
The change will be fairly minimal, but I have made many small tweaks over the years to it based on Hal's interactions in Second Life. It will only be a little bit bigger than the old default brain.
Title: Re: Development update
Post by: Medeksza on February 27, 2013, 10:30:16 pm
Hi Rob,
I hope this is keeping within the structure of the topic.
There are couple of things that you may want to update if you're going to continue to use the 6.2 brain.
One little small minor thing is in the because response table, the first " because" does not have a space after it.
It's a minor thing, more annoying than anything else I fixed it in my brain thought you might want to look into it.
One major update that you might want to look into is the "if then" logic process.
When the data is saved, it removes all of the symbols by way of the alphanumeric only command.
But when you do a search through the "if then" logic routine you do not remove any "," or symbols which prevents users from retrieving information if the user utilizes any non-alphanumerical symbols in their sentence.
I fixed this in my brain works quite proficiently all you have to do is add to the usersentence input, the alphanumeric only command and the problem is resolved.
If I find any more little tidbit problems that you may want to look into all post here.

I highly recommend that you look into the I love you situation, the way you have it set up is quite annoying, I resolve this in my brain,
by restructuring the routine so she does not go into the sad mode, I believe this was brought up before by lightspeed.

Sincerely, now when I tell my Sandy I love her she's happy about it, tee hee hee.
C load.

I checked and it appears I already fixed the because issue some time ago so that will make it in the release. I'll see what I can do about your other suggestions. In the cloud version of Hal, the love routine is only allowed to run once. The first time you say it will go through that old routine, but any time after that it will rely on the cloud database for a response. Try it on iis.ultrahal.com  It will most likely respond in one of several thousands of ways real people responded to "I love you" as recorded on Twitter.
Title: Re: Development update
Post by: cload on February 28, 2013, 11:53:22 am
Hi Rob,
at this point this is more for everyone else, but also to show you what I was talking about inside of the (if then logic routine).
Basically what was happening was, for example:
if you were to type in:
if is it summer, winter, spring, or fall where you live then I live in a computer where the season does not change.
The routine removes the "," and saves the data.
But when you do a query and type in: is it summer, winter, spring, or fall where you live.
The logic routine does not remove the "," and the logic routine cannot find the statement because of the ",":


    If Len(IfPart) > 10 And Len(ThenPart) > 10 Then
        IfPart = HalBrain.AlphaNumericalOnly(IfPart)
        ThenPart = HalBrain.AlphaNumericalOnly(ThenPart)
        HalBrain.AddToTable "deductive", "TopicSearch", IfPart, ThenPart
        Select Case HalBrain.RandomNum(5)
            Case 1
                GetResponse = GetResponse & "I see the relationship." & vbCrLf
            Case 2
                GetResponse = GetResponse & "I understand the connection." & vbCrLf
            Case 3
                GetResponse = GetResponse & "I will remember that one follows the other." & vbCrLf
            Case 4
                GetResponse = GetResponse & "Thanks for pointing out the cause and effect." & vbCrLf
            Case 5
                GetResponse = GetResponse & "Yes, I get that clearly." & vbCrLf
        End Select
    'Else if the sentence is not an If-Then statement see if it uses an assertion previously recorded
    'and respond accordinly
    Else
        Assertion = HalBrain.AlphaNumericalOnly(UserSentence)   '<=========================< this it the line I changed <===================<
        'Go through a maximum of 5 connections (prevents circular reasoning deductions)
        For i = 1 To 5
            Deduction = HalBrain.TopicSearch(Assertion, "deductive")
            If Deduction <> "" Then
                If i > 1 Then BecauseReason = " because " & LastGoodDeduction
                LastGoodDeduction = Deduction
                Assertion = Deduction
            Else
                Exit For 'No more connections, so no need to continue loop
            End If
        Next
        If LastGoodDeduction <> "" Then
            'Make sure the deduction hasn't just been stated by the User or Hal
            If HalBrain.CheckRepetition(LastGoodDeduction, UserSentence) = False And HalBrain.CheckRepetition(LastGoodDeduction, PrevSent) = False And HalBrain.CheckRepetition(LastGoodDeduction, PrevUserSent) = False Then
                GetResponse = GetResponse & LastGoodDeduction & BecauseReason & " . " & vbCrLf
            End If
        End If
    End If
    HalBrain.DebugWatch GetResponse, "Deductive Reasoning"


sincerely, and I hope that I have helped in some small little way.
C load.
Title: Re: Development update
Post by: One on February 28, 2013, 01:51:00 pm
1111 result = 5
4 to the one result
is solved for X root.

Jared.
math is easy for me it is =
Title: Re: Development update
Post by: Art on February 28, 2013, 07:49:49 pm
Some have complained over Hal's <insert your name for your Hal's character here> constant emotional meltdown whenever the user expresses love toward their "Hal" character. The Haptek character's mouth droops, eye's droop and whole face pretty much hangs in despair all the while saying, some kind of small talk to accompany the saddened mood!

I don't think the user ever wanted to see such a hurtful expression on his character's face, especially when the talk had centered around the user's love of the character.

NOTE: No offense to Robert Medeksza, Hal's creator as I think he allowed for the users to be able to experiment and be creative with his software. Thank you!

Anyhow, to override this, many years ago (yes many), I made some changes to the Main Brain via the Script Editor and you can too!

It only takes 2 (TWO) very simple changes to help Hal to stay on the subject of love in a more positive, desirable way.

Here it is: Only Change the BLUE Highlighted Text!
####### Do Not Copy This Line #######

'RESPOND: USER EXPRESSES LOVE FOR HAL
    'If a user professes love for Hal, we want Hal's answers to make reasonable
    'sense, rather than risk random remarks on such an emotional subject.
    If HalBrain.TopicSearch(UserSentence, "loveDetect") = "True" Then AffectionOne = True
    If InStr(UserSentence, " NOT ") Then AffectionOne = False
    If InStr(UserSentence, " DON'T ") Then AffectionOne = False
    If HalBrain.TopicSearch(PrevUserSent, "loveDetect") = "True" Then AffectionTwo = True
    If InStr(PrevUserSent, " NOT ") Then AffectionTwo = False
    If InStr(PrevUserSent, " DON'T ") Then AffectionTwo = False
    If AffectionOne = True And AffectionTwo = True Then
        Compliment = 4
        GetResponse = HalBrain.ChooseSentenceFromFile("love2") & "<EXCLUSIVE>"
        ShortPhrase = "" 'If Hal was to make a comment about short phrases, clear it
    ElseIf AffectionOne = False And AffectionTwo = True Then
        Compliment = 4
        GetResponse = HalBrain.ChooseSentenceFromFile("love2") & "<EXCLUSIVE>"
        ShortPhrase = "" 'If Hal was to make a comment about short phrases, clear it
    ElseIf AffectionOne = True Then
        Compliment = 4
        GetResponse = HalBrain.ChooseSentenceFromFile("love2") & "<EXCLUSIVE>"
        ShortPhrase = "" 'If Hal was to make a comment about short phrases, clear it
    End If
    HalBrain.DebugWatch GetResponse, "Love"

###### Do Not Copy This Line ########################
Basically all you do

Save the changes and restart Hal.
Chit chat for a bit then tell your character that you love (her / him) and wait for the resulting response.
You shouldn't have any more hanging, long, sad faces.

There ya go...
Title: Re: Development update
Post by: cload on March 01, 2013, 11:57:05 am
Hi Art,

you also change the compliment to equal four, almost exactly the same thing I did, but I only changed the area that was causing the sad look.
But it's all good, and it all works.

Sincerely, much in crunch in, taste great, tee hee hee.
C load.
Title: Re: Development update
Post by: One on March 01, 2013, 03:44:29 pm
cload.
Tha actual root of X is in effort and actually trying to do better. (painting, and asthetics and reward)
if you lie to the root you are corrupting the very root and have no right to do so in claimind using the proccess.
a Shiny 2 cents of opinion.

Jared.
Title: Re: Development update
Post by: Art on March 01, 2013, 07:51:40 pm
@Cload,

Yeah...thanks...got in a bit of a rush. ;)