Changelog 2014-08-25


Well, it’s been a little bit since the last update, hasn’t it?

Work has been somewhat slow lately, owing to several things. A week of vacation was followed by a week of work-related travel, so not a lot of progress was made over that time. We did accomplish a few things; NR finished his work on the last two holy water rmodels (“dull” and “boiling”), and passed them on to me for implementation, so at this point all holy water versions are complete and functional. The “dull” version was a bit challenging because I wanted the water to appear cloudy, and that isn’t an easy thing to do in Torque. The solution that worked best was to create underwater smoke emitters, which was effective at making the water appear slightly opaque. The “boiling” version was a bit easier to finish since I already had underwater bubbles ready from the “hissing” version, so all I had to do was make the bubbles larger and spread them out a bit. The result is, I think, some very nice water to look at. Elsewhere in the game, not much additional progress was made, other than finalizing the implementation of the KISS verb, so that is now functional, although it took a little extra work than expected due to some errors with the ghost NPCs.

This past week was spent mostly making upgrades to my dev machine. My current setup is on a Mac Pro with a Boot Camp installation of Windows; most of the programming, testing, and asset management is done on the Mac side, while the modeling, animation, and exporting is done on the Windows side. Moving back and forth was getting to be a pain, since it required rebooting each time, so I decided to install Parallels on the Mac in order to run both OSes simultaneously. While that worked, Windows was just too sluggish running on a standard hard drive partition, so I upgraded to a new SSD drive, which meant recreating a new Boot Camp partition. This was not a big problem, until I ran into some issues reactivating some of my Windows software. After a couple of frustrating days working with several customer service folks, everything is now finally back up and running, but on a much speedier SSD drive. The new Parallels actually works quite well with this setup, and I think I’ll be very happy with it.


Three week period leading up to 2014-08-25:

  • Finalized “dull” and “boiling” versions of holy water, and final models exported and installed; all holy water versions are now complete
  • KISS command implemented and working
  • A little bit of work tweaking Drogo’s Act 1 animations accomplished
  • Dev machine upgraded to new SSD drive, new Boot Camp installation of Windows set up and is now ready for development use

This week’s screenshot shows a preview of the “dull” holy water in the church font from Act 2. The fresco is visible behind it (although that’s the fresco from Act 1, not Act 2).

The holy water has turned dull and cloudy...a sign of things to come?

The holy water has turned dull and cloudy…a sign of things to come?

Be the first to like.
Posted in Vespers | Leave a comment

Player Freedom vs. Railroading, Revisited

Although I’m still implementing material for Act 2 in Vespers, I’ve been working with NR on creating some of the new material for Act 3. In Act 3, there is considerably more action, and the story branches out in a couple of potential directions. There are a set of interactions and events that occur inside the monastery, and others that occur outside the monastery, where the player had not been able to venture before in Acts 1 and 2.

In reviewing the interactions and events for Act 3, I referred back to the design document I made, which I discussed a while back in another post. In so doing, I began to think about storyline issues I hadn’t considered before.

Be warned, spoilers are in that previous post, as well as below.

In the design of the original Vespers, Jason clearly intended that the events inside the monastery would be experienced before those outside the monastery, and he designed the game so that the player was guided in this order. Once the player wakes, he is encountered by Constantin, who urges him to follow him to the Cloister to investigate an important event. Following that, a series of subsequent events is triggered that advances the storyline in strange and interesting ways. The impact of the “inside the monastery” action is powerful and does a remarkable job setting the tone for the rest of the game, including the other, subsequent events mentioned that occur outside the monastery (as well as those in Act 4).

[SPOiLER WARNING] Vespers, Act 3. Click for a larger view.

[SPOILER WARNING] Vespers, Act 3. Click for a larger view.

But that got me thinking…I had never tried to play the text game where I pursued the “outside” events prior to the “inside” events. Is it possible? Would the “inside” events still be available afterward? What effect would it have on the flow and impact of the game?

I’m not sure if Jason specifically intended it, but it turns out that it’s quite possible to skip the “inside” events and go right outside the monastery to encounter the “outside” events. Technically, there is no reason why the player couldn’t do this, as doing so neither interrupts the storyline nor causes any problems with puzzle or character disconnect. Outside the monastery, the player can visit the other buildings on the grounds, and tackle several puzzles. If the horse puzzle can be solved, the player can travel outside the monastery grounds, which eventually leads to the avalanche puzzle. Surviving that, the player can then return to the monastery to trigger Act 4, where there are several other puzzles and events that lead to the dramatic climax.

But by doing so, what happens is that the player no longer has the opportunity to experience those initial “inside” events, since upon returning back to the monastery for Act 4 those events are now in the past and no longer relevant. It’s a missed experience – not one that is important for advancing the plot, but one that is important for setting the tone and dramatic tension of the game. By skipping the “inside” events, the game seems to have much less impact, and some parts don’t seem to flow quite as logically as they could.

So the question with regard to skipping the “inside” events is no longer, is it possible, but rather, should it be possible?

As Ron Gilbert said in his classic 1989 article, Why Adventure Games Suck, “Anyone who has designed a story game knows that the player rarely does anything at the right time or in the right order.” Although the context of his statement had to do with timing and drama, it’s also applicable to the conversation here: what is the right balance between player freedom and railroading?

Of course, this is not a new topic for discussion, with other people addressing different aspects of it in the past. It goes back longer than this, but there was the Ars Technica article from last year that addressed the various issues with storytelling and player freedom with BioShock Infinite, which included mentions of the LucasArts SCUMM titles. As the author stated:

When playing Infinite there’s an uneasy tension. You can either respect the pace and plotting of BioShock Infinite’s story, or you can set the story to one side, killing any sense of urgency but giving you the time to explore. You can’t really do both, however, without abrupt changes in tone and jarring changes of pace.

It’s somewhat the same with Vespers: the player can set the story to the side and explore the outside of the monastery, but in doing so ends up potentially skipping key parts of the story, resulting in a still-cohesive but less enjoyable experience of the story. But is that freedom (or even the illusion of it) worth the potential for a less complete experience?

There was also the follow-up to that article in Gamasutra, which touched upon some interesting concepts (including the “storytelling” cotinuum and the “living another life” continuum) but also included this snippet at the end:

For game designers, when designing a game it is important to consider the purpose of your game at the outset and how much player freedom and choice you envision granting. If the purpose of your game is to tell a very specific story, it may not be wise to give the player too much freedom or choice. However, if you want to tell a story that the player can change, you should also give the player some freedom to explore and interact with the world, because it is becoming a world they are truly part of.

Vespers certainly tries to tell a specific story, and in doing so Jason largely limited player freedom. Although there is an openness to certain parts of the game, the sense of freedom is largely an illusion, and there are only a few significant options when it comes to player choice. Descriptions and NPC interactions do change with those choices, but the impact on the overall story is not large.

But the quote did get me thinking about how narrowly we sometimes think about interactive storytelling in games, how much work has started in this field, and how much more there is to explore, discover, and experience. I think the true advances in gaming over the next several years will be in the evolution of methods to integrate story generation, pacing, and plot into the game mechanic, so that the game doesn’t necessarily serve as a vehicle for the story, but rather as a means for gameplay and story to come together, piece by piece, within a general framework. We’ll see.

Be the first to like.
Posted in game design, story in games, Vespers | 2 Responses

Changelog 2014-08-04


Work continued this week on the holy water, as we turned our attention to the two remaining versions needed. One is a “dull” version for Act 2, and the other is a “boiling” version for Act 4. NR and I went back and reviewed a couple of AVIs that could work for these animations, and he started the work on converting them to PNGs and IFLs. He created first pass versions of the DTS shapes with the animations, and so far so good. We’ll need to continue the work on them to refine the look and feel, but hopefully all that should be done in the next week or two. The rest of my time was spent fixing old issues and adding new functionality. The new functionality is the PRAY FOR command, which was relatively straightforward since there aren’t too many valid targets for that command. As for the fixes, there were a few: the response to the EAT HARE command in Act 1 is now correct, the background events (wind, wolf howl, voices, etc) are now delayed at the beginning of Act 2, and we now allow for skipping the “Act 2″ text when it is displayed on the screen. Finally, I started going back to make needed fixes to Constantin’s voice recordings for Act 1 (to provide proper synchronization with the animations), as well as minor tweaks to Drogo’s Act 1 animations, which could use a little spicing up.


One week period leading up to 2014-08-04:

  • Began work on “dull” and “boiling” versions of holy water; first pass DTS shapes created and tested
  • Final adjustments to “dull” and “boiling” animations begun (NR)
  • PRAY FOR command implemented
  • Fixed response to EAT HARE in Act 1 (tied to “Wait until I’m finished” animation)
  • Background event daemon adjusted to include delay before starting in Act 2 (and beyond)
  • Act text keymap created for the screens displaying the “Act” intro text
  • Act text display fixed to allow skipping for Act 2 and beyond
  • Began corrections to Constantin’s Act 1 topic response sound files for better synchronization with animations
  • Began tweaks to Drogo’s Act 1 animations

This week’s screenshot shows Drogo during Act 1, responding to a question about Ignatius.


How do you feel about Ignatius, Drogo?

How do you feel about Ignatius, Drogo?

Be the first to like.
Posted in Vespers | Leave a comment

Changelog 2014-07-28


It was an interesting and successful week, with another foray into the C++ engine code. I haven’t done that since the upgrade to AFX 1.1, so it took a while to get reoriented to the code. I’m not particularly good with C++, but I know enough to get by and make necessary minor changes. This time, I needed to find a way to make objects partially transparent, at a level specified by me. To this point, we were incorporating opacity into the object prior to exporting it to DTS format, but the game engine doesn’t seem to play well with that. With respect to the holy water, it was resulting in weird visual problems, where the water was either completely invisible (a layer sorting problem) or it would flash in and out of visibility depending on the viewing angle (a problem of uncertain origin). So to work around this, I wanted to try modifying the engine code to force it to display any object with a specified alpha transparency, rather than having that embedded within the object itself. I knew the Torque engine already did something like this — each object has a fade function, which causes the object to fade completely in or completely out. So it was just a matter of hijacking this code so that the fading function stops when the object reaches its specified opacity, rather than all the way to 0. It took a few days of effort, but I finally got it working, and it seems to have solved the problem with the holy water visual issues. Huzzah!

With that complete, NR and I worked on getting the different holy water objects re-exported and reinstalled into the game, and now they all appear to be working correctly. Once that was done, I then worked on adding bubbles and steam to one of the holy water versions — the version that appears early in the game if the player chooses to travel the “evil” pathway. Particle systems in Torque take a bit to get used to, but in the end I got it all working, and I’m very happy with the results.

In the process, I came across some better images for fire and smoke particles, and I used those to modify the appearance of the fire in the Locutory and the Calefactory. I think it looks significantly better now.


One week period leading up to 2014-07-28:

  • Set up new engine development partition on the dev machine with Xcode 3.1.2 and confirmed ability to compile engine code
  • Started and finished modifying the engine code to allow objects to have a specified alpha transparency via the startFade() routine and fading code
  • Compiled new game application (v05b)
  • Created and validated script code to set holy water opacity at 0.7 with ablility to fade in and out appropriately
  • Tested new alpha specification code with all current holy water objects, working well with no visibility issues
  • Created script to add bubbles, steam, and hissing sound to Act 1 holy water when player is “evil”
  • Grabbed new fire and smoke particle images for locutory/calefactory fire and adjusted settings for better looking fire
  • Continued to modify “spinning” version of holy water (Act 4B) for optimal appearance (NR)

This week’s screenshot shows a snapshot of the updated fire in the Locutory. It’s hard to capture it all in a single screenshot, since it looks better when animated, but you get the idea.

A nicer looking fire crackling in the locutory.

A nicer looking fire crackling in the locutory.

Be the first to like.
Posted in Vespers | Leave a comment

25 Years Later, Why Adventure Games Suck

A quarter of a century has come and gone since Ron Gilbert first wrote the article “Why Adventure Games Suck” in 1989.

I discovered this while flipping through some old posts on my blog, and I found one from six years ago that discussed this very article. Since my memory, generally speaking, sucks, I had to go back and read Ron’s article again, not to mention my own, as I could barely recall either. Note: I am not proud of this fact.

It was then that I realized that it’s the 25-year anniversary of that article. 25 years. That’s insane.

Ron reprinted it back in 2004, when a mere 15 years had passed, and at that time he declared that “adventure games are officially dead,” which is interesting considering he proceeded to collaborate over the next decade on several adventure-style games: Penny Arcade Adventures (“On the Rain-Slick Precipice of Darkness”), Deathspank, Tales of Monkey Island, and The Cave. So it would seem that adventure games are not dead, not yet at least. I think some would argue that the genre is a bit more difficult to define than before. It seems that adventure has become more of a game design element rather than a genre per se, such that games these days (a parallel to “kids these days” for us old people) include “adventure” as a descriptor if the game includes elements of exploration and/or storytelling, even if it’s a match-3 game.

Things were a bit different back in 1989, of course. At the time, pure text adventures were still selling (although Infocom still existed, the sun was certainly setting by then on that business model), and graphical adventures were young, some still including text parsers to go with the graphics. Interplay’s Neuromancer was Computer Gaming World’s 1989 Adventure Game of the Year. We had yet to see some adventure game classics, like LucasArts’ Monkey Island and Indiana Jones franchises, Full Throttle, and, of course, Grim Fandango. Perhaps it was because of lessons learned, like those outlined in Ron’s article, that the 1990′s were such a good period for graphical adventure games.

I thought about going through some of the important passages from his article and discussing how they are still relevant or not in today’s world, but apparently I did that six years ago, too. (Apparently, I’d live most of my life over and over again if it wasn’t documented somewhere.)

Suffice it to say that it was a good read back then, and it’s still a good read today, well worth the time for another look. The video games industry, indie and AAA, have come a long way over the years, particularly adventure games. So too has interactive fiction, particularly with respect to new advancements in text parsing, character interaction, and storytelling. Although we often think of adventure games nostalgically, people still make them and players still really enjoy them, and I have to think that some of the really interesting, entertaining, and creative titles are still to come.


Be the first to like.
Posted in adventure games, game design | Leave a comment