What if you had and artificial intelligence helping you?

Hello :slight_smile:, what do you think about having an artificial intelligence to help you out while you are
playing IF games, for example, giving some hints when you feel lost.
If you like the idea, what kind of help would be welcome from the AI?
Thanks for your time :slight_smile:.

It depends how helpful the AI was, but in general I prefer to figure things out for myself: it’s harder at the time, but more satisfying when met with success.

In some games, having the author or someone who’s familiar with the game give you clues or nudge you in the right direction can be helpful at time, especially with games that have a cruel forgiveness rating and those who are new to interactive fiction. Some games have smart hints that show different hints depending on how far you’ve got so as not to spoil the rest of the game. Also, an AI hint system would definitely be interesting to code.

Blue Lacuna has a “drama manager” of soerts you might be interested in checking out.

Thats exactly what i’m working on, a drama manager. The main focus are the new IF players, who
might need more hints to be able of enjoy the game without getting lost.
But its really hard to distinguish bewteen a player that is lost and a player that is exploring.

Blue Lacuna’s drama manager was subtle - I recall an animal scurrying towards a direction the game thought I’d missed. Subtle, but effective. I suppose if you go any higher than that, it starts being a hint system.

Maybe Aaron will check this out and tell us the reasoning behind his drama manager. In a pinch, though, a player who does these actions in a row, without anything constructive in between:

  • examining items
  • examining inventory items
  • checking inventory
  • LOOKing
  • moving around
  • interacting (fruitlessly) with the visible components of a known puzzle (or with his inventory)
  • making a lot of parser errors (mistypes, or just trying out strange verbs and/or syntaxes) out of frustration
  • repeating actions (like turning something on and off lots of times)

…is probably in need of assistance.

And yeah, each and every one of these items can be explained without involving a player in trouble; I know that. That’s what makes it hard, I guess.

An idea as old as the genre itself. :slight_smile: “Adventure” would notice when you had spent a certain number of turns in the location of a puzzle without having the necessary components to solve the puzzle, and offer you a hint for a certain number of points. Crude, but effective.

quuxplusone.github.com/Advent/play.html

It did?

And again we see proof that nothing is new under the IF sun; Crowther and Woods beat us to the punch yet again.

It’s like trying to compose something totally original, then digging up Bach and finding out he already did it, and much better.

It’s always annoying when that happens, especially when the code of the first version is readily available. However, chances are if we saw the source code for Adventure, we probably wouldn’t be able to make heads or tails of it, while you would always understand code that you wrote.

In fact, Crowther’s version would ask if you wanted a hint if you hit a parser error three times in a row in the presence of the grate, the bird, or the snake, whether or not you had the necessary components to overcome the puzzle.

In intelligence, as in food (and most other things in life), I tend to prefer the natural variety.

Robert Rothman

Having an AI help you could be good… or not. It would really depend on the story, I think.

If the AI is an integral part of the story - say, something like J.A.R.V.I.S., controlling various parts of the Iron Man suit - it could be a lot of fun. You could ask it for information, have it perform tasks, and generally interact with it naturally, effectively an NPC that follows you around. It could be part of your clothing, something you carry, or part of the world at large, eg, the Star Trek computer.

However, if it goes beyond answering questions and alerting to danger, that could get annoying; why would you be solving a puzzle, when the AI might as well just tell you the answer? The only way I can think of for the AI to know more information than you, but withhold it until you ask, would be if the AI were actually evil, eg, GLaDOS, and is withholding information to torment you. Which, of course, it should make known fairly early on.

Some other related concepts:

Curses, Dangerous Curves, Nothing More Nothing Less, and the recently-released Endless, Nameless all have in-game characters who can give hints about what’s going on, but who are characterized NPCs as well. In Curses one of these characters may be dishonest, and in Endless, Nameless some of them may be mistaken – but this is flagged up pretty clearly so that you can work out what to do with this hint information anyway. (I can’t recall whether Worlds Apart does this too, but it might.)

Max Blaster has two main characters, and doing nothing in the presence of one of the NPCs long enough may lead to that NPC solving it, albeit in his/her own way.

Like Blue Lacuna, City of Secrets has a drama manager that introduces hint-giving scenes at certain points if the player hasn’t made progress for a while. Judging from my occasional email, that doesn’t get people past everything they might want help with.

Several games have an UNWINNABLE command that tells you whether the game is now unwinnable (I seem to associate this with Mike Sousa’s work, but I forget which one in particular it applies to or whether he did it with all of them). This requires a certain amount of under-the-hood work to figure out when it applies. First Things First had a detector to help you figure out which objects were important, and Jigsaw had a detector that helped you find out whether there were any important items remaining before you left a game area you would not be able to revisit.

Bronze has an internal model of puzzles and object dependencies so that it can dynamically generate appropriate hints based on where the player is currently – whether they still need to find something by exploring more, whether they have everything they need to solve a problem, and so on.

I believe some of the extensions Aaron Reed has released do similar things in terms of actively modeling the puzzle space so that they can better describe it to the player.

This reminds me of the discussions of checkpoints I saw a while back. I bet it wouldn’t be hard to check whether the game had become unwinnable before saving the undo state, and refusing to do so if it had. The hard part would probably be letting the player know that an undo had gone back to an earlier state.

Has anyone worked on this particular feature, particularly in I7?