Yo, Human! - An Adventure in the Making: Accessing Life with Adaptive Technology
"The stone walls smell of must and moss, damp-cold seemingly radiating from their surface in the narrow tunnel. Sounds of dripping water can be heard, echoing lightly somewhere in the distance. your torch sputters a bit, not much time left. The huge, nasty smelling thing lurches back away from you, leaving behind more damage than you'd like. Briefly in the distance you see some creature being chased by a huge spotted lion, which seems to be enjoying itself tremendously. Then they are gone into darkness."
'Hey! You dirty rat.' I think to myself, not liking this situation even a little bit! It took me over an hour to get down this far, now just to be sent packing because of some vermin?
Balancing my iPad Mini in one hand and placing the VO (VoiceOver screen reader) cursor on the Return key of the on-screen keyboard, I two-finger double-tap somewhere on the screen to start Dictation. Bink, the microphone is now listening.
“Attack the dirty rat," I state to the completely darkened surface.
Two-finger double-tap again, the microphone stops listening and Samantha smugly repeats my command. That sounds about right.
One-finger double-tap anywhere, the VO cursor activates the Return key entering my command into the game. Myself and everything around me takes one turn, the results of which immediately appear on the screen, or at least they would if I were not using screen-curtain. Samantha, in her matter-of-fact, almost-sarcastic way, auto-reads the results out loud.
"You assault, with the intent to harm, the alleged dirty rat.
Needed 55 or less. Rolled 63. You miss.
Not enough coffee this morning?"
"Apparently not!" I state out loud, while performing a two-finger single-tap to pause Samantha, and retrieving another hot cup from the kitchen. If my torch runs out my goose is cooked, I won't last long. I may have to make a cheat in town to teleport me down here, so I can finally test this area.
Beep! The coffee-pot announces as I reach over and pour another steaming cup, thinking back over the years. I had always been a player of RPG games and a designer of sorts, starting as a Dungeon Master with AD&D edition 1. We had books filled with charts, complete sets of colored dice and created our own home-made adventures and hand-drawn maps on graph paper. Paper! I know, right? This was in the early 80s, Apple II computers were popular, the Macs had not yet been introduced.
Later in the 80s I was ready for my first used computer. We've come a long way since the black & white TV connected to my Apple II+ with 64k, hooked up to the RF antenna, bang the side of the TV to get the channel to come in better. I remember my first big upgrade, "Ooo, disk drives." and the months I played Zork, Wizardry and HitchHikers Guide while learning BASIC programming. Then there was my IIGS and Bards Tale II, Kings Quest and Leisure Suit Larry. All of these good old games were mostly text-based, and admittedly not that old when I played them. The idea of mapping your way through a game had moved from the dungeons into the digital world nicely. Many of these early computer games even came with a pencil and pad of graph paper.
Soon the computer gaming world took over the mapping chores with full-color, interactive maps. Games like Baldur's Gate, Never Winter's Night and finally World of Warcraft online became so all encompassing, it was like entering another world. Of course none of these games are very accessible. A few years ago I found myself looking for games like in the good old days, where entire worlds were made with words. I found that and a whole lot more.
I return to my desk the iPad bluntly sitting there, it's smooth, glossy screen daring me to continue. Even though I am now creating my own worlds again, I purposely put enough randomness in the code so that I never know if I will survive testing it myself. Creating games with VoiceOver has become quite an adventure all of it's own. We've come a long way from the black & white TV 'get lamp' days, and yet here I am over two decades later, talking to my darkened iPad, with my own self-created torch about to run out of fuel. Whoa, flashback!
Two-finger single-tap to let Samantha finish, "The dirty rat attacks, gnashing it's cute little teeth.
Needed 45 or less. Rolled 2.
The dirty rat rolled 5 or less, double-damage. You take 8 damage. Ouch, I hate it when that happens." Samantha states bluntly.
Great! I should have saved the game. I definitely see a cheat in my future.
"Your HP: -3. You have died. You appear back in town with one HP. Oh well, it was faster than walking. Right? By the way, your torch runs out of fuel." she says, I can almost hear her smirking.
Wow, I certainly made that part tough. I'll have to try it again tomorrow. A traditional challenge in these games was getting through dark areas, having a light-source would help keep intruders away. This default behavior is built into the game-development software I am learning. It seems humorous to me now, worrying about a light-source, but it sure adds a nice challenge. Oh well, on with the game.
Double-tap two, "Go north."
Double-tap one, Samantha begins reading, "Healers Tower. A small tower made from stone blocks." The adventure continues...
Later on, with my head deep in the code...
Instead of examining the MinesCheat:
say "The room shimmers, you feel like you are being moved.";
move the player to DarkTunnel 12;
say "You appear in the dark mine tunnel. I hope you remembered a torch!";
continue the action.
There, that should help me test the rest of the Mines construction as well. I love working with these 'English-like' scripting languages. This Inform 7 game creation package reminds me of AppleScript, mostly self explanatory while reading through the code. It works like a word processor, starting with a blank page. It is devoted to game creation, so has many of the built-in mechanics and responses. It is a wonderful "Integrated Development Environment" (IDE) for what used to be called "Text Adventures."
Now-a-days, the Interactive Fiction community is still alive and growing, being fed by adventurers from both the playing and creation sides. Games range in scope from CYOA (Choose Your Own Adventure) games, to fantasy worlds with virtual areas linked together using compass directions (like Zork), to full-out D&D style strategy RPGs (Role Playing Games) and everything in-between. There are large game archives online filled with pro and home made games. There are 2 main game file types that can be created/played on Mac and iOS:
- z-machine: .z5, .z8 and zblorb. These are the old-style game formats, stemming from the original Zork code. Z-code is more limited in scope and size, but more compatible. These can still be created and played on Mac and played on iOS.
- Gluix: .ulx and gblorb. A more current and expansive format that can include graphics and sounds, but can also use just text. This format can use more in-depth programming structures and larger file sizes. Currently the compatibility for playing Gluix game files using VoiceOver on Mac is hit or miss. Fortunately, they can still be created on Mac, then played on iOS. The Inform 7 IDE has Windows and linux flavors with their own players as well. The games can be created on any platform, and played in most players, regardless of platform..
On the Mac, there are two main 'game players' also called Interpreters, "Spatterlight" and "Zoom". On iOS, the player I use is Frotz, it uses both game file types. The interface works well with VoiceOver and Dictation, and comes with several games already installed.
I must say, I chose something like this to help me learn to use VoiceOver, but it has turned into a years-long hobby as well. Watching the process going from idea to creation on the Mac, then playing your own game at your leisure on your iPad is very gratifying. Knowing that the process works with VoiceOver is pure frosting. The fact that you can download and learn to use everything I've mentioned above for free has nothing to do with my choices. Really! :-)
Save,... compile,... transfer,...
Okay, let's see if I can get to my test area, one more time. I place the VO cursor on the Return key, Samantha holds her breath. What has she got in mind for me this time? I simply want to test a single area, but she seems to be intent on thwarting my efforts. I have a secret weapon though, this time I literally 'out-coded' her!
Two-finger double-tap to start Dictation.
“Examine the MinesCheat," I state defiantly to the iPad, confident in my cunning.
"... you arrive in the dark tunnel. I hope you remembered a torch." Samantha smartly reminds me.
A descriptive reminder that all of our cool digital stuff that we work with, play with and enjoy, is all about "Living." Live well!
Lots of links:
What is Interactive Fiction? http://inform7.com/if/
Inform 7 game Creator, download. (for Mac, Win, Linux +) http://inform7.com/download/
Start making your Adventure at Brass Lantern. (Tutorials.) http://www.brasslantern.org/writers/howto/i7tutorial.html
Play and test your adventure.
Frotz, IF Player for iOS, some games included. iTunes Store. https://itunes.apple.com/us/app/frotz/id287653015?mt=8
Zoom IF Player for Mac. http://www.logicalshift.co.uk/unix/zoom/
Spatterlight IF Player for Mac. http://ccxvii.net/spatterlight/
Find new games online.
IFDB Interactive Fiction DataBase. http://ifdb.tads.org
Interactive Fiction archive. http://www.ifarchive.org/indexes/if-archive.html
The Inform 6 & 7 community. http://www.intfiction.org/forum/viewforum.php?f=7&sid=7fafe15c353df638136711ca5281441e
My Mac to iOS Process:
Create and edit code in Inform 7 IDE on Mac.
In Inform's toolbar, press the Release button. If all goes well you will receive a Save dialog. Save the game file onto the desktop.
Copy and paste the file into your Dropbox folder.
On the iPad: From Dropbox, share the file to 'other', then choose 'Copy to Frotz'.
Once it appears in Frotz, play and test to your heart's content. You can save the game before you do something risky, and/or simply put Frotz away. Your game will be there next time you run the app, waiting in exactly the same spot.
There are many methods for moving files around, use any method you are comfortable with. Before releasing and moving another version, remove the old one from Frotz first.
Playing without typing:
When playing in iOS; Place the VO cursor on the Return key. Double-tap with two fingers anywhere to start the Dictation mic listening. Dictate your command into the game. Use full sentences to make it easier. Double-tap two fingers again to stop the microphone. VO reads back your command, before it is confirmed. To confirm it, double-tap with one finger to have the VO cursor activate the Return key, which enters it into the game. Then VO reads what happened.
Rinse and repeat.
And,... don't forget your torch! :-)
All copyrights and trademarks mentioned above are property of their respective owners. All rights reserved.
Thank you for such an informative piece! It took me back to the University of Texas Cyber CDC 6600 where I first played text-based Star Trek. A year later, I was playing "Haunt," a text-based adventure, written LISP and running on an old DECsystem 10 mini-computer. Ah, how I loved the swimming moose in the basement.
As always, I enjoy reading your work.
Thank you for the nice comment. I was hoping it would be a good resource for entry level game development. It was a fun post to write. Star Trek... I had completely forgotten. :-) I think I played the Star Trek adventure on my IIe+ green screen.
I also enjoyed your Blind Santa post very much! It was a holiday treat! I'll be looking into an Audible membership soon.
Thank you again and have a happy holiday season!
Aside, one caveat I discovered...
I recently aquired my first iPhone and found my "playing without typing" process does not work in the same fashion as on my iPad mini. Placing the VO cursor on the Return key loses focus when activating Dictation. You can still play without typing, but have to find the Return key manually. If playing in Frotz on an iPhone, in portrait mode the Return key is the bottom-right-most key. Still very easy to activate.
Happy Holidays AppleVis!