In the Beginning...

Posted by Carlos508 on Nov. 2, 2008, 7:22 a.m.

TODO List for today:

[100%] 1. Develop simple interface for LISA

1. Develop simple interface for LISA

Alrighty then. If any of you have ever seen the ancient, but classic, movie "2001: A Space Odyssey", I'm sure you recognize the lense in my logo and avatar, and now the UI for my application. That's HAL 9000 (http://en.wikipedia.org/wiki/HAL_9000)…the what was supposed to be the high point of AI by the year 2001. Nope, never happened.

It's actually funny, I've been working on a school project, where we are supposed to do a 5 page report on the scientific value of a movie. And despite the fact that this movie is exactly 40 years old, it's pretty accurate. Actually, it's one of the worse movies to review because it's so accurate.

Anyways, the image you see above is actually the UI for the program in GameMaker, as is. I did a search in the GameMaker forum and found a dll by roachofdeath which allows you to skin your application windows http://gmc.yoyogames.com/index.php?showtopic=377842&hl=skingmdll. Pretty nifty, and actually one of the main driving forces which led me to use GameMaker over other engines out there.

I'm going to write a DLL which grabs the CPU Usage percentage (found in the windows task manager), which will flicker LISA's red glow brighter or dimmer depending on how much CPU Usage is being used. You know, to provide a nice, purposeful, flickering effect.

The UI, or window, is composed of 5 layers, or sprites, on ontop of each other with varying transparency values and alphas. This allows me to adjust the magnitude of LISA's interior glow and control the reflective glare ontop. It's actually a nice little effect in real time. Eventually, as LISA gains more abilities (speak, search information, etc) her interior glow will change colors to give the user feedback on what she's doing.

Several years down the road, when she's learned enough to understand emotion (though not necessarily feel it), I may change the color depending on her current state. But that's so far down the road I'd rather not think about it!

Hmm, it seems I'll be needing to do more external coding than I had hoped. I'm now looking at creating a DLL which will allow you to dynamically change the window shape at runtime. Instead of using a file to set the mask, I'll use a sprite, which will combine with different shapes [sprites] to - for example - bring down a menu from behind LISA. Shouldn't be too hard, I've seen the examples of it online for C++, so I'll just work from there. Never mind, this works way to slowly, I'll have to wrap this later, for now I'll just use a static window shape.

I also have an idea to allow you to have a transparent window with opaque objects. The idea works like this, very simply use two windows at once. Position the transparent/alpha window behind the active window. I'll use this to allow LISA to emmit a glow around her, for a neat effect on the desktop. Can't wait. I'll work on this much much later.

***

Quick About Me, LISA, and everything else

Hey guys, this is my first time being here in 64Digits, and in fact, working with Gamemaker at all. So anyways, what is CORe Concepts? Well, actually it's just a play on words with my name, Carlos O Ramos and then the "e" just comes in for I guess "entertainment, exploration, etc", I don't really know :). Although, this is my first time working with GameMaker, you should know that it isn't my first time coding.

I am in fact a qualified Network and Information’s Specialist in the Army National Guard and have been coding away since I was in 5th grade, so about 10 years, maybe. In fact, my current project LISA, is the pinnacle of all my learning thus far. But what is LISA?

LISA stands for "Lexicon Integration via Software AI", which is just a fancy way of saying, "hey this program can learn to speak". OK, so maybe 'learn' isn't the appropriate word…yet. I've actually coded the main engine for it in VB, but I decided it would just be easier to switch to a language that allows you to do external script calls (yes I know vb has vbscript) easily. Why?

The end goal of LISA is to be able to learn, comprehend, and plan ahead. This means "she'll" constantly have a need to upgrade "her" code, almost on a per usage basis. And hell with it if anyone thinks I'm going to spend every waking second constantly upgrading the code…when she can do it herself.

Of course, this is far into the future, but hey, someday is always coming, right? Anyways, I'll have more information on the actual project later on as I start development in GM. Until then you can check LISA's main webpage for more info on why and how my AI unit works.

LISA's main website - http://lisaai.pbwiki.com/

Old LISA UI -

Comments

Juju 16 years, 1 month ago

The GM language is nice and easy, you'll have no trouble.

[deleted user] 16 years, 1 month ago

I'll look into this more tomorrow, but it'll be interesting to see how you handle context and stuff. Good luck either way.

Also, I found the book better than the movie, regardless of how much I liked the trip at the end of the movie.

Carlos508 16 years, 1 month ago

Actually I don't think I ever even saw the movie, go figure. Was it any good?