Great job figuring out all this about Hal in such little time. Zabaware is in the process of finishing up a new version of its Ultra Hal Representative software. The new Ultra Hal Representative software will be marketed as a professional development tool. It can be implemented on a web page, on AIM, or through a simple ActiveX control be added to any Visual Studio project. An updated version of the Ultra Hal Brain Editor will be core of the program. All projects created with the Ultra Hal Representative software will be compatible with Ultra Hal Assistant. The software will be free for non-commercial use.
The software itself is almost complete, but the documentation for it still needs a lot more work. Among some of the things in the documentation will be all the functions contained in the HalBrain.DLL
Here is a list of all the functions contained in the HalBrain.DLL:
Sub AppendFile(ByVal FileToAppend As String, ByVal AppendWhat As String)
Function AlphaNumericalOnly(ByVal UserSentence As String) As String
Function ExtractKeywords(ByVal TextString As String) As String
Function RandomNum(ByVal MaxVal As Integer) As Integer
Function UsCaps(ByVal UserSentence As String) As String
Function WorldCaps(ByVal UserSentence As String) As String
Function CheatResponse(ByVal UserSentence As String) As String
Function OriginalBrain(ByVal UserSentence As String)
Sub LimitSize(FilName As String, Size As Long)
Function KeywordBrain(ByVal GlobalIn As String, ByVal FileName As String, Optional ByVal LastChance As Boolean) As String
Function Learn(ByVal UserSentence As String) As String
Function ChooseSentenceFromFile(ByVal TextFileName As String) As String
Function HalMath(ByVal MathProblem As String) As String
Function StoreVars(Emotion, Hate, Swear, Insults, Compliment, PrevSent, LastResponseTime, ScriptMem2, ScriptMem3, ScriptMem4, ScriptMem5) As String
Function RecallVars(ByVal VarListString, Emotion, Hate, Swear, Insults, Compliment, PrevSent, LastResponseTime, ScriptMem2, ScriptMem3, ScriptMem4, ScriptMem5) As String
Function DecodeVar(ByVal FromWhat As String, ByVal DecodeWhat As String) As Variant
Function CountInstances(ByVal CountWhat As Variant, ByVal InWhat As Variant) As Variant
Function QABrain(ByVal UserText As String, ByVal BrainFN As String, ByRef Relevance As Variant) As String
Function ConversationBrain(ByVal UserText As String, ByVal BrainFN As String, ByVal LastUserSent As String, ByRef Relevance As Variant) As String
Function FixCaps(ByVal TextString As String)
Function HalScript(ByVal UserSentence, ByVal ScriptFile, ByVal HalRel) As String
Function CompareSentence(ByVal CompareWhat As String, ByVal InWhat As String) As Single
Function OpenPage(ByVal PageURL As String) As String
Function ProcessSubstitutions(ByVal UserSentence, ByVal DBFile) As String
Function TopicSearch(ByVal UserSentence, ByVal TopicFile) As String
Function DetectVowel(ByVal TextString As String) As String
Function SentenceGenerator(ByVal File_Name As String) As String
Function GetResponse(ByVal UHPFile As String, ByVal UserSentence As String, ByVal UserName As String, ByVal ComputerName As String, ByVal LearningLevel As String, Custommem1 As String, Hate As String, Swear As String, Insults As String, Compliment As String, PrevSent As String, LastResponseTime As String, PrevUserSent As String, Custommem2 As String, Relevance As String, Topicfocus As String) As String
Function ReadSent(ByVal TextString As String, ByVal SentNum As Integer) As String
Function EncodePronouns(ByVal UserSentence As String) As String
Function DecodePronouns(ByVal UserSentence As String) As String
Function MakeContractions(ByVal UserSentnece As Variant) As String
Function RemovePronouns(ByVal UserSentence As Variant) As String
Function CheckLinkingVerb(ByVal UserSentence As Variant) As Boolean
Function CheckRepetition(Sentence1 As Variant, Sentence2 As Variant) As Boolean
Function FragmentMatch(UserSentence As Variant, BRNFile As Variant)
The following functions are in the DLL for compatibility with old versions of Hal, but are pretty much useless for any current projects:
Sub SetDir(DirPath As Variant)
Function Cheater(ByVal SearchPhrase As String, ByVal UserSentence As String, ByVal Prefix1 As String, ByVal Suffix1 As String, ByVal Prefix2 As String, ByVal Suffix2 As String, ByVal Prefix3 As String, ByVal Suffix3 As String, ByVal NoW5H As Boolean) As String
Function NullEnd(Crap As String) As Integer
Function ChangeString(ByVal UserSentence As String, ByVal ChangeWhat As String, ByVal ToWhat As String, Optional IgnoreCaps As Boolean) As String
Function ChangeStringFast(ByVal UserSentence As String, ByVal ChangeWhat As String, ByVal ToWhat As String) As String
Function MakeInsult(Optional ByVal OhYeah As Boolean) As String
I can't describe what each of these does in detail right now, but if you have any specific questions about these functions I'll be happy to answer them.
Robert Medeksza