Hey folks! The guys from HardyDev invited me to write a remembrance from series of adventure game development tutorials that I have organized over the last few years at the Alpen-Adria Universität Klagenfurt, Austria. In these workshops I used Chris Jones’ AGS (Adventure Game Studio), which is a popular and powerful tool for creating your own adventure games.

Learning the ropes of AGS normally means working through heaps of online tutorials, endless browsing of special-interest forums or getting used to the good old trial-and-error principle. With this steep learning curve in mind it’s no wonder that hobby adventure developers are an exceedingly rare breed. So what if you could learn the basics of adventure game development together with peers in a hands-on workshop? Wouldn’t it be great if AGS was used in schools for project work? In this article I’ll discuss my experiences with organizing and performing such workshops.

Background

I should probably start with our motivation for the workshops. We (meaning the Alpen-Adria Universität Klagenfurt, Austria, where I am working as a university assistant) reacted to declining student numbers for technical studies by organizing various promotional activities. Among those are annual events where school classes from all over Austria visit our university. The pupils, aged between 15 and 18, can choose to attend several workshops that aim to demonstrate different aspects of technical studies in a fun, hands-on way. Workshops include experiments with electronic circuits, robot construction & programming and of course various game development tutorials. The AGS workshop was suggested by yours truly. I am a passionate adventure game player myself and had dabbled in AGS before, so the workshops were a welcome opportunity for me to look deeper into this topic.

We guessed beforehand that the typical audience would consist of teenagers with little to no background knowledge. The goal of our particular workshop was to get the participants playfully interested in programming/scripting. The idea of learning programming basics in a fun way isn’t a new one. Some schools use programming environments like Turtle Programming, the Java Hamster or AntMe! for teaching simplified programming concepts. AGS is a different beast though. It’s a quite professional game development environment with considerable depth and complexity. In comparison to other game development environments scripting cannot be entirely avoided and due to its focus on adventure games AGS is very specialized. Luckily the adventure game genre is very popular in German speaking countries, so there was never a lack of interest in the tutorials – on the contrary, our limit of 15 persons per 90 minute workshop was regularly exceeded. Also, against some early concerns the high complexity of AGS was not perceived as a disadvantage by the participants. On the contrary we got positive feedback of pupils that were impressed with its professionalism; it sparked their curiosity and motivated them to attempt their own projects at home. However I’ll go into more detail about reactions to the workshop later on.

First experiences

For starters I made myself more familiar with AGS by creating a small demo game using mostly existing graphics from AGS’ own Demo Quest. This demo game was called “Technik LIVE 2036” and had the simple goal of getting past a doorman into a building where a workshop event was taking place. Insert your typical convoluted adventure puzzles to win the game, you know the drill.

The Technik LIVE demo game

The Technik LIVE demo game

Building a comprehensible workshop based on the demo game was quite a challenge. Not knowing much about my audience in advance I had structured the tutorial into three parts: 1) a theoretical introduction into AGS, 2) a practical presentation of what is possible in AGS and 3) the scripting part of the workshop, where the participants would extend the demo game under my guidance. The first workshop went well, but there was room for improvement. The theoretical part proved mostly unnecessary for the specific audience: it wasted precious workshop time without providing much value for the participants. Most students who had registered for the tutorial were already familiar with the mechanics of adventure games, and those who weren’t proved to be fast with the uptake. The practical presentation of AGS was a hoot as I showed a very polished, voiced game (“Earl Mansin: The Breakout” by HillBilly) to demonstrate what AGS is capable. This immediately got the attention of all participants.

AGS practical demonstration: „Earl Mansin: The Breakout“ by HillBilly

For the second half of the tutorial participants were seated around notebooks in groups of two. They were provided a template of the “Technik LIVE 2036” game and had to add a short new puzzle that I laid out for them. All groups finished the minor changes in very short time, so we spent the rest of the scheduled time discussing more advanced scripting problems and how to create new games from scratch. With hindsight it’s clear that I had underestimated the participants and restricted them too much with adapting an existing game. The interesting part was that several participants of the workshop admitted being very bad and disinterested in programming in general, but the game-based scripting easily held their interest.

Experiences with the new and improved workshops

In later events, the workshops were adapted based on these first experiences. For one thing I shortened the introductory part to a minimum, I prepared the relevant scripting commands on handouts and for the practical part I wanted to guide the participants through designing and implementing their own small game. Because of the 90 minute time limit it wasn’t realistic to expect the participants to come up with and implement their own puzzles and create the necessary art for it; therefore I designed the riddles beforehand. The different groups were able to individualize their game through their own setting, graphics and scripted interaction responses. All workshops games were expected to follow the outline below:

–         The game is based on the AGS “New Game” template, with the standard GUIs and the default “Roger” player character.

–         There’s only one room, with an arbitrary setting and self-drawn background-graphics. That room must contain a door or gate that the player character (PC) wants to pass.

–         A non-player character (NPC) with self-drawn graphics stops the PC from entering said door/gate.

–         Somewhere in the room the PC can pick up an arbitrary self-drawn object and add it to his inventory.

–         This object must be given to or used on the guard NPC. The player character is then allowed to enter the door/gate which ends the short game.

After briefing the participants, each group had to come up with a setting for their game first and had then 15 minutes for drawing any needed backgrounds, screen objects and characters (other than the default main character) in MS Paint. We didn’t waste time on animations naturally. The student notebooks were equipped with a folder containing default graphics that I had prepared for the case that some participants wouldn’t keep up with the pace, but so far each group was able to come up with their own graphics and setting. In the following I list some funny outcomes from a previous workshop:

– One group chose a setting were the main character had to escape a prison. A soldier was guarding the entrance. They chose to use an axe to attack him. At least they had no time to draw all the blood! Very gruesome, but, hey, they understood the concept.

Screenshot of the workshop game “The Prison”

– Another group went very creative with the guard NPC and decided it would be a door with a big keyhole. They used a key to unlock said door and gain access to a cave. Opening the door was implemented by changing the room of the NPC. The group even managed to draw their own simple player character.

Screenshot of the workshop game „The Game“

–  A third group decided that the main character should enter a bar. Their solution was to give the doorman a sandwich from a nearby trashcan, which makes him change his mind and allow the player to enter. Clearly these participants were versed in adventure game logic! J

Screenshot of the workshop game „The Entry“

After the participants were finished with their graphics (or the allotted time had run out), I demonstrated stepwise how to import the backgrounds graphics to AGS, how to define walkable areas and how to create characters, screen objects and inventory items. After each step I let the participants try it themselves and I only intervened when questions arised. In a few cases pupils got lost in the AGS project tree and menus, e.g. some couldn’t find the eraser for walkable areas, but all things considered they didn’t need much further help.

After all pieces were in place and the basic work on the room was done, we proceeded with defining hotspots. Finally the pupils made their first encounter with scripting in AGS! I started by showing them where to put their scripts and demonstrated some simple commands like having the main character go to a hotspot he looked at and speak some lines. Then the participants tried to work out the rest of the commands (picking up the item, using it on the guard NPC etc.) on their own with the help of the handouts. Again I was ready to intervene in the case of problems. Mostly I spent that time giving the participants helpful hints for the work with AGS and answering advanced questions.

The workshops closed with each group shortly presenting their game in 30 seconds. Afterwards we had a discussion with feedback and questions. Many participants contemplated to continue dabbling in AGS on their own and at least one group considered it strongly for their graduation project. In a nutshell the workshop went down very well with the audience. One reason I see is the competition between the groups to implement the coolest game. From my perspective the only negative is the short duration of each tutorial. In each workshop that I have held, the pupils could have happily continued working for some more hours, which would have allowed us to go into much greater depth.

Bringing AGS to the teachers

Since the adventure game workshops were received so well, we started offering additional AGS training for school teachers two years ago. This training is part of a bigger informatics didactics program were teachers are schooled in alternative methods of teaching informatics and computer science. The idea is to use AGS as an ancillary tool in informatics classes with the goal to raise the students’ interest in programming. With the new target audience in mind the tutorials had to be adapted significantly. In comparison to the teenagers, teachers were on average much more unfamiliar with the adventure game genre. Therefore an extensive introduction about the rules of these games was needed, starting with the question “what is an adventure game?” I found out that using a combination of practical demonstrations and visualizations via state charts was a good way to discuss the concept of adventure game puzzles with this kind of audience, especially how to plan a game and avoid unwinnable situations. Funnily enough such a theoretical approach wouldn’t have worked at all with an audience of pupils (see figure!). After the introduction, the focus was now put on using AGS didactically, e.g. as a tool for visualizing and training programming concepts like variables, if-clauses and loops or as a tool for bigger school projects. To this end I not only presented a short demo game but also other graphical applications that I had implemented in AGS, for example a clock based on loops that shows the current time by representing each digit in the binary system (see figure!).

During the workshop the participating teachers had about 45 minutes to practically acquaint themselves with AGS. For guiding them I demonstrated the step-wise creation of a simple room based on existing graphics and the audience followed suit. I noticed big differences regarding the teachers’ success with AGS, which are probably explainable through their different backgrounds and their varying experience with games in general and adventures in particular. Some of the teachers were very fast and had time to experiment with the scripting on their own, while others had huge problems with finding their way through the AGS menus and syntax, in spite of my assistance. Also, some questions occurred that were no issue at all in the student workshops, for instance how to control the main character or how to change cursor modes. A few teachers had particular troubles with the “drawing parts”, i.e. defining walkable areas and hotspots, and were glad to proceed to the more familiar scripting.

A binary clock, used in the Inf2school teacher workshop in February 2010

While the short workshop duration only allows a superficial introduction to AGS, most participants liked its potential and some of them even requested advanced training courses (which we don’t offer as of yet). At the end of the event, the participants were encouraged to download a digital copy of the workshop handouts and the templates of the discussed games and applications for using them in their classes. Some links to deeper online tutorials were also provided. Currently the AGS teacher workshops have been conducted twice and they are scheduled again for the next school year.

During the last tutorial I was assisted by Jeremias Fliedl, my colleague’s 10-year-old son, who is an avid AGS-fan himself. He enjoyed taking the lead and showing a class of teachers how to script in AGS. The teachers on the other hand were delighted with this little boy who commanded them around and made working with AGS look so easy. At my request Jeremias provided a short statement for this article: „For me the workshop was a lot of fun. I liked that you allowed me to sit in front of the class and explain AGS to the teachers. The only thing that bothered me is that some of them didn’t pay attention!“

Coming to an end…

In summary both the AGS workshops for pupils and teachers have been very successful in the past. We will continue to organize each of them at least once a year at the Alpen-Adria Universität Klagenfurt, as part of the TechnikLIVE and Inf2School events respectively. Information in German language about past workshops can be found here and here. Our good experiences with AGS have led us to also use it in other areas. Currently a student project is planned where a “virtual university” game is developed. This game will be freely downloadable from our university homepage and support people who are interested in studying in Klagenfurt by giving them information about the campus, offered courses and the matriculation process. Perhaps the previous workshops have already inspired some people to work with AGS, and hopefully many more students, pupils and teachers will discover it and share their own games with the community!


About The Author


Jürgen Vöhringer (aka wesrey)

University assistant at the Alpen-Adria Universität Klagenfurt, adventure game player & hobby game developer. Currently, he is in advanced stages of creating The Far Corners of The World .