Skip to Content
Gaming Hacks
book

Gaming Hacks

by Simon Carless
October 2004
Beginner
464 pages
13h 42m
English
O'Reilly Media, Inc.
Content preview from Gaming Hacks

Make Your IF NPCs Talk

Sass, growl, flirt, threaten, and cajole players.

A good writer can say a lot with a few words. One of the best tricks in interactive fiction is make players do exactly what you want them to do while maintaining the illusion that they have free will. Nowhere is this more evident than in NPC conversations.

Ideally, your NPCs should drop hints, help solve puzzles, and converse with, and ocasionally bedevil, players. How do you predict what players will say? How do you know how to respond? In general, you don’t, but there are a few tricks to make your NPCs seem like living, thinking beings.

Detailing NPC Conversation

Inform comes with a few built-in methods of talking to NPCs. The centerpiece of the default conversational model is the Ask verb. Let’s make this our means of chatting with the access controller. The game’s parser will take a command such as ask the access controller about the token, toss out the articles, figure out that the operative verb is ask, set the variable noun to controller, and then, as the key part, place the word token into the variable second. If you type ask the access controller about oatmeal, the word oatmeal goes into the variable second, even though there is no oatmeal object in the game. This makes conversation trivial to implement. Add this to the controller’s life block:

Ask: switch (second) { 'id', 'identity', 'token', 'tokens': if (token has general) "~YES, TOKEN WAS ACCEPTABLE!~ the access controller barks. ~YOU MAY PROCEED!"; ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Retro Gaming Hacks

Retro Gaming Hacks

Chris Kohler
Developing Games in Java™

Developing Games in Java™

David Brackeen, Bret Barker, Laurence Vanhelsuwé
The Kollected Kode Vicious

The Kollected Kode Vicious

George V. Neville-Neil
Strange Code

Strange Code

Ronald T. Kneusel

Publisher Resources

ISBN: 0596007140Catalog PageErrata