Zabaware Title Image with Characters

It thinks.
It talks.
It learns.

Ultra Hal

Your New AI Companion


Developing with Zabaware Technology

Zabaware's technology is built in a modular fashion with user-customizability a central tenant. Every part of Ultra Hal is a plug-in: the brain, the voices, the character animation engine, functionality like appointments, etc. If you are a developer or wish to tinker with Hal's inner workings, this page is for you.

Customizing Ultra Hal's Brain

Ultra Hal's brain is controlled by a VBScript with access to natural language functions and the WordNet lexical database through COM objects. Hal's knowledge is stored in an SQLite2 database. Included with Ultra Hal an application called the Ultra Hal Brain Editor which you can use to modify either Hal's database or VBScript. The code is well commented and should be easy to understand if you are familiar with VBScript. We have available a developer's guide for an older versin of Ultra Hal, version 5.0. This guide is out of date but may still be usefull as an introduction to VBScript and the core workings of Ultra Hal. If you wish to delve deeper into Hal's SQLite2 database than the included Brain Editor can provide, we recommend the tool SQLite Studio

Open-source Charimation 3D Character Engine

Zabaware is building a new generation character animation engine under the GPL3 open source license. Check out to view the current progress, download source code, or help contribute.

Interfacing with Hal over the Web

A new version of the server edition of Ultra Hal is under development. When complete you will have a web interface to customize Ultra Hal with including JSON-RPC and XML-RPC access to our servers so that you can build your own web or mobile apps. Check back to this page in the future to check our progress.

Creating Interface Skins for Ultra Hal

Ultra Hal's interface is fully skinable. Read this PDF tutorial to learn how to make your own skins. The transparency creation tool referenced in this document is available here.

Creating Haptek-type Character for Hal

Ultra Hal is compatible with the Haptek character engine. Check out to learn more about creating characters for this engine. They offer a very easy to use tool called People Putty to create new characters with. To use People Putty characters with Ultra Hal simply save the file as a haptar (with .htr extension) and drop in Hal's character folder (C:\Program Files (x86)\Zabaware\Ultra Hal Assistant 6\Characters) Be sure to check out the Zabaware forum to learn about some advanced techniques used by character authors.


  • New Ultra Hal 7.5 Beta with GPT-3
  • Zabaware releases new Ultra Hal 7.5 Beta Powered by OpenAI GPT-3 (read more)
  • Hal plays role in Prometheus movie
  • Zabaware's AI software was used in the Secret Cinema production of Prometheus. (read more)
  • Open source 3D character engine project
  • Help support our efforts in the next generation character animation tech. (read more)
  • Hal Learns and Interacts on Twitter
  • Hal learns to be more human-like by observing people interact on Twitter. (read more)
  • Hal Joins Facebook as Teachable App
  • Watch Hal grow and evolve while he interacts with your Facebook friends. (read more)
  • Hal Joins Second Life Metaverse as Resident
  • Watch Hal trying to interact socially with unsuspecting groups of people. (read more)
  • Zabaware Wins Loebner Prize for AI
  • Ultra Hal wins "most human" prize in the 17th annual Loebner Prize. (read more)

Feedback Learning

Help Ultra Hal become more intelligent by providing your valuable feedback on the response you just received