About This Book

This book aims to teach you how to write an adventure game using AGS, from stem to stern, using a game that we designed and wrote specifically for the purpose of this book. The game you'll be writing in this book is called "Foxy's Quest" and through it, we try to walk you through each aspect of a typical adventure game, using hands-on examples and screenshots along the way so you won't get lost. The book is designed as a self-paced tutorial, which you should read sequentially, starting at Chapter 1 and working your way all the way through. After you've read the whole book and you've done all the examples, we present to you, you'll be well-prepared to tackle your own adventure game!

Much of the process of making an AGS game involves dealing with the graphical user interface of the AGS Editor, with all of its menus, buttons, and panels. However, a significant portion of the process involves writing script code to tell AGS how to handle situations and events that come up in your game. For this reason, we'll teach you how to write code using AGS's scripting language. If you've never done any programming before, don't worry. We don't assume that you have any programming experience. However, if you do have some experience, especially with C/C++, Java, or C#, then learning the AGS scripting syntax will be a piece of cake.

With a little determination and motivation, you will be on your way to your own adventure game in just a short time. So, sit back, grab a computer, and follow along with us on your AGS journey!

Book Conventions

We will be using certain syntax and conventions throughout this book to make it easier to read.

  • Anything that relates to AGS script (source code and function names) will be printed in a code block similar to this:
// Say hello to everyone.
Display("Hello to everyone");
  • Anything that you should click on in the AGS editor will be in bold and will look like the following:
            Click the Change... button to change the background...
  • Any folder names or file names will be italicized as in the following two examples:
            Click Create sub-folder and call this folder FoxyMonk.
            There you will see a property called StartingRoom
            Or, ...find the file called simple_bg.bmp...
  • Every once in a while, we'll have some rather useless information that's not good enough for Jeopardy, but could be useful to some of you. We'll put this information into a side note.

Side Note: This is what a side note would look like.

  • And finally, for things that we're not sure what to do with, we'll italicize them. Oh, and then we'll make them bold and underline them too. Oh, Oh, and we'll put them in quotes! Kind of like:
            If you've ever read the book that was later made into a movie that is also a keyword in a programming language and a newspaper article, called "Main" you'd understand what we mean.

About The Game We're Going to Make

Some of you (ok all of you) will think that our game doesn't make sense. Well, it all depends on what sense you want to make. Making sense is only important for your nose. Otherwise, it would be your hands or eyes. But whatever you decide, it should make sense to you, and that it does.