The Alexa Podcast - Episode 3
Co-hosts: Bradley Metrock (CEO, Score Publishing) and Kevin Old (software developer, LifeWay)
Guest: Teri Bertram, Sony Computer Entertainment
Duration: 29 minutes, 56 seconds
Podcast Links
Transcript
[intro music]
Bradley Metrock: [00:00:00] For the third episode of The Alexa Podcast, we were joined by Teri Bertram who recently ported the famous text-based video game "Colossal Cave Adventure" over to Amazon Alexa-enabled devices. We talked to Teri about her video games,about what Amazon needs to do to promote game development on Alexa-enabled devices, and much more. Enjoy!
Bradley Metrock: [00:00:30] Hi, and welcome to Episode 3 of The Alexa Podcast, as part of VoiceFirstFM. Our sponsors for the show are Fourthcast - F O U R T H C A S T - which turns your podcast into a custom Alexa skill. Get started at Fourthcast.com.
Bradley Metrock: [00:00:49] Our other sponsor is The Alexa Conference - the annual gathering of Alexa developers and enthusiasts. Learn more and get registered at AlexaConference.com.
Bradley Metrock: [00:01:00] Kevin Old and I are your hosts. My name is Bradley Metrock - I'm CEO of a company called Score Publishing based here in Nashville, Tennessee. Kevin Old is a software developer for Lifeway.
Bradley Metrock: [00:01:11] We are thrilled to have with us Teri Bertram - Teri, thank you so much for joining us. Teri has been around the video game industry a long time and just recently made news for porting the classic "Colossal Cave Adventure" to Alexa and the Amazon voice ecosystem. Teri, first let me ask you: how long have you been around video games? How long have you been a game developer? Share some of your background with us.
Teri Bertram: [00:01:56] Well, I've been playing games forever. I've been collecting games since the early '80s. I've been making games since the late '70s. I've worked for a number of gaming companies. I'm in the industry and my life is games.
Bradley Metrock: [00:02:15] So what was your impetus to bring Colossal Cave Adventure over to Alexa?
Teri Bertram: [00:02:28] A couple of things. It's always been a dream of mine. I love "Colossal Cave." It was called "ADVENT" when I first played it back in 1977; I was programming on a DEC PDP-10, where it was originally created by Willie Crowther and Don Woods. The first time I played it, I loved it as a text adventure game on this big mainframe machine. It was the first time I ever saw a game that talked to me and told me a story and didn't just add two numbers together. It was amazing. It was magic! Later on came other games, like Zork, but I've always had a special place in my heart for ADVENT - and as it came out on different platforms I always thought it would be neat if I could play it verbally. And once the Echo came out, I thought THIS is the platform to try it on. So I took a break from work last Christmas, bought myself an Echo, and decided to port it.
Bradley Metrock: [00:03:42] That's pretty awesome. So let me ask you ... I'm definitely not an encyclopedic resource on this, but ... there are a few games currently on Alexa-enabled devices, and I think the first mainstream one that got media attention was "The Wayne Investigation." Are you familiar with that?
Teri Bertram: [00:04:18] Yes. That one uses real audio and a new adventure system that was compileware.
Bradley Metrock: [00:04:26] Yes, it was a marketing initiative for the movie "Batman vs. Superman." They created an Alexa skill called "The Wayne Investigation" which has several professionally recorded audio assets, so that the player investigates the murder of Bruce Wayne's parents. There have been some other ones here and there. But it's my feeling that we're not going to see games take off until Amazon (or any of the tech companies: Google, Microsoft, Apple, whoever) allow the game developers to monetize the games they're developing, however they choose. Can you share your perspective on the direction you think that needs to go, to open up the world of game development for these platforms?
Teri Bertram: [00:05:29] I totally agree. The only reason I did this is because it's a labor of love. It took a lot of time and effort and testing, but I'm in love with the game, so I did it. But I'm not making anything on it; if anything I could be charged by having it out there - a lot of people play it. So yes, it's a very negative feeling. Luckily Amazon does allow for a free tier, and they offer extra money if you go over that tier. You have to sign up for it, which I did. But the point is that I'm not making any money on this; nobody is. If they had something like the App Store that allows the developer to set a price, then we'd probably see a lot more games out there. I'm happy with this being free, and I think it should be free.
Kevin Old: [00:06:25] I'm interested, Teri, in what you thought of the developer experience provided by Amazon, and how you worked through any of the challenges you faced as you built the game.
Teri Bertram: [00:06:42] Actually, this was my first foray into JavaScript. I usually do a lot of low-level coding - C, and assembly language, and C++. I know a lot of other languages but I never bothered with Web-based languages or Java, JavaScript, that sort of thing. So when I started to port this over it was also a learning experience with that language. It was pretty easy to just move from C to Java. But I thought that the tools were pretty good. Being a seasoned programmer it wasn't difficult to get it working right away. One of the nice things I like about this system, and the same with Android, is that you can buy the real product and test on the real product. You don't have to worry about getting special provisions or having some special hardware to test on. It just works, and that's very handy.
Kevin Old: [00:07:45] Certainly. Let's talk about the game and the developer experience when you were with the voice interactions. Did you have any challenges when you were either capturing a response from a player or processing something?
Teri Bertram: [00:08:10] Generally, I think the Echo does a pretty good job of that. (I've got one here, so it's going to start talking to me.)
Bradley Metrock: [00:08:18] This happens every single podcast - it's a rite of passage.
Teri Bertram: [00:08:25] Yes, I think Alexa does a pretty good job of understanding speech. There were a few words that I had trouble with in "Colossal Cave." I'm still looking for workarounds. Like the Plover Room - Alexa pronounces it "Pluvver," but that's OK. If you say "in" it gets confused with "inner inventory." But for the most part everything works. I was able to put in every word from the game and get it to work. Some of the special words had to be re-engineered - like "quit," "quit-close," kind of circumvent the coding and immediately quit the app. So instead of saying "quit," which is a legitimate command in ADVENT or Colossal Cave, I had to say "quit Adventure." Those are listed inside most commands that I put inside the program.
Bradley Metrock: [00:09:27] I've got a question for you, Teri. The big news this week in terms of Amazon and the Alexa ecosystem is that the Echo Show comes out tomorrow. Have you been following that at all?
Teri Bertram: [00:09:45] Oh yes, I have two on preorder.
Bradley Metrock: [00:09:48] OK. By the way, that deal to get a hundred dollars off when you buy two is kind of crazy. That's the type of thing that I think we'll look back and say "Wow, you're joking!"
Teri Bertram: [00:10:00] Yes, that's WHY I have two on preorder.
Bradley Metrock: [00:10:04] I've got one coming to me and I'm very excited about it. But now share with us: you've already developed a game for Alexa. What would you want to do with the Echo Show? What's the first thing you'd like to do with this combination Alexa voice assistant plus camera plus screen form factor?
Teri Bertram: [00:10:35] Well, a lot of that we're doing already through the Alexa app. If you open up the Alexa app while you're playing Colossal Cave, you'll see it display all of the rooms, the name of your room, the description of your room, and what your current command was to get there.
Bradley Metrock: [00:10:53] No, that would have helped!
Teri Bertram: [00:10:56] Yes, it comes in quite handy! I'm assuming - since I don't have the Show yet - that it will transfer over to the Show, so as soon as you play on an Echo Show you'll see that displayed and I won't have to change the code at all.
Bradley Metrock: [00:11:12] That's awesome. That's cool. I'll have to check that out tomorrow. Let me ask you this, since it's come up on some of our previous VoiceFirstFM podcasts. Also making news about the same time as the Echo Show is the Echo Look. You're familiar with that device, right?
Teri Bertram: [00:11:38] Yes.
Bradley Metrock: [00:11:38] That's a device I think is not going to have much relevance to the world of games - but it has a whole lot of relevance to an ongoing privacy discussion. How does that device strike you? We've had some people on the podcast say they're not big fans, and some people say they see the potential there. What do you think about the Echo Look?
Teri Bertram: [00:12:02] I don't wish to criticize something I haven't tried yet. I don't have a strong interest in it, but that doesn't mean it isn't going to be valuable.
Kevin Old: [00:12:12] With Alexa development you have to really focus on the phrasing of the intent and the intents that you develop. Can you talk a bit about your experience working through that with this game?
Teri Bertram: [00:12:29] Surely. You're familiar with how it's done: you basically have the intents and then the utterances which take the intents and assign words to them that you can say, which will send you an utterance or send you an intent, and then your code gets the intent straight. This is the lambda function. Like I said, I started doing this over Christmas break basically just to do something else. I like doing different puzzle-like things. I've written a few Alexa programs, most of them not published. But one that is published is called Sequence Master, which allows the player to guess a sequence of colors, which is a lot of fun. It's a great game, and it uses the Tablet 2, and you'll probably see it on Echo Show. So, anyway - whenever I write when a game like that, setting up the utterance tables and setting up those words is the first thing I do. Then I start writing the Lambda function to accept those. It's fairly straightforward. When I moved on to Colossal Cave I started similarly, except I started with the database and the database was a puzzle because I didn't have a way of deciphering it. So it was just kind of a fun thing for me to do. I don't know if you've seen the Colossal Cave database - it's really a neat thing to look at. It's got all of the rooms broken down: room number one is that you're on a road, and number two is you're in a building or are on a hill, and three is in a building or whatever. But next to those is this little cryptic set of numbers and a table with some numbers and some words, and those numbers tell you what those words will do in that room. And since I play the game so much I was able to look at those numbers and figure out what they did, and that was the puzzle for me. It was the fun. So the first one I wrote when I just put it in was to have the database sit there and let me move from room to room and do nothing else. And so I created the intents for all of the directions (north, south, east, west, up, down) - and the utterances for those, and then had it move through the database. And once I had that in, I said OK, what's the next thing to do? Oh, I need to have inventory so you can grab things in and drop things. So I put that in. And being so familiar with the game, having played it for decades, I was able to add command after command until finally my utterance table and my lambda function was able to do everything that the original one did.
Kevin Old: [00:15:34] That's awesome. It sounds like this game naturally lent itself to this medium, as well as your experience with it and just having you write it. It seems like it just kind of came together. You were able to naturally break down the problem and incrementally implement.
Teri Bertram: [00:15:57] Yes. And you could add enhancements to certain things - like instead of just saying "on" or "off" or "light," you can say "turn on the lamp," and that's just an added utterance to your intent. So the program just gets the command "lamp on," which is the intent; but the utterance for "lamp on" can be "light," or "turn on lamp," or "on," and all of those just send "lamp on." Very straightforward and very handy.
Kevin Old: [00:16:33] Did you run into any situations where it wasn't a natural utterance for a user?
Teri Bertram: [00:16:41] Omigosh, yes. The thing is, this program was written in the '70s BY programmers and pretty much FOR programmers, because back then those were the people who were playing the game. So the puzzles are hard. They're meant to be tricky. Even knowing how to kill a dwarf is a puzzle. And I've watched people play and it's a little frustrating for me. For instance: I added the command "path hint" because people might get to a point, not knowing which direction to go - and say "go north" and having Alexis say "there's no way to go that direction." It gets tedious. So I added the command "path hint" that would have it search the database and tell you what paths are actually available from that position. So you don't have to keep asking. Because it costs you two points to have the ability to use path hint - which isn't going to kill you, but it will stop you from getting a perfect game. And I added a special prize for anybody who gets the perfect game, which is kind of neat (so far I don't think anybody's done it except me).
Bradley Metrock: [00:17:53] I'm going to have to go do that now.
Teri Bertram: [00:17:57] It's not easy! Though I can tell you - it depends on the random number generator, but I can pretty much do it in about an hour. I have an Echo Dot in my car and when I drive to work in the morning my commute is about an hour. I play the game trying to win it before I get to work - maybe three times now I've won the game before I got to the parking lot.
Bradley Metrock: [00:18:27] See, Alexa needs to add achievements now. There needs to be "achievement unlocked" for managing to do that.
Teri Bertram: [00:18:37] I'll tell you, I can't thank Don Woods enough. I had this thing running in December, I was playing it in early January, and knew I wanted to have other people play it. So I tried to find email addresses for the original authors, Willie Crowther and Don Woods. I wasn't able to reach Willie, but I sent a message to Don and said, "Hey, I've got this 95% done. Do you know if it's public domain? Can you give me your blessing?"
Teri Bertram: [00:19:19] He got back to me about a week later and said "Hey, that sounds great. Yes, you have my blessing to put it on on the Alexa." That was just awesome. As a thank you, I sent him a couple of Echo Dots so he could play, because he didn't even own an Echo. And I wanted him to play it too, because it's just really good! It turned out really well and I play it daily. I love the game.
Bradley Metrock: [00:19:46] You were sharing that you are an arcade enthusiast and owner of perhaps multiple arcade machines, at minimum including "Addams Family Pinball." What is your favorite video game of all time?
Teri Bertram: [00:20:05] Gravitar. Yes, it's an obscure title. It's Color XY monitor from Atari. It actually didn't do very well in the arcades because it was very difficult to play, so the arcade owners weren't making a lot of money on it. And once you got good at it you could play it for forever. Often I'd play for over 30 minutes or an hour on one quarter.
Bradley Metrock: [00:20:36] Share with us what you do in Gravitar.
Teri Bertram: [00:20:42] It's kind of a mix between Asteroids and Lunar Lander. You start with a little Asteroids-type triangular ship, and you're in a solar system. And you fly that ship - with the thruster, and the left-right - toward the nearest planet and then the screen expands out and shows you the surface of the planet in 2D color vector graphics, with little bases on it. And you have to hover down and shoot all of the little red bases, and you can suck up little blue pods that give you more fuel. It uses fairly realistic 2D physics to manipulate, so it was difficult to fly - but once you got used to it, it was enjoyable and addictive.
Bradley Metrock: [00:21:28] So - if you had an hour left to live, and you got to play one game, it would be Gravitar?
Teri Bertram: [00:21:38] Ha! No, it would be a pinball machine.
Bradley Metrock: [00:21:40] OK, now we're finding out the truth here! What's your favorite pinball machine?
Teri Bertram: [00:21:49] Oh, I don't have ONE favorite. Medieval Madness. Addams Family. Bride of Pinbot. Stern Pirates of the Caribbean.
Bradley Metrock: [00:22:00] I liked NBA Jam, but my all-time favorite was The Simpsons Arcade Game. Did you ever play that?
Teri Bertram: [00:22:22] Oh, yeah.
Bradley Metrock: [00:22:24] That was legendary - for me, anyway. Spent a lot of quarters on that. Besides Gravitar, what are your other favorite arcade games of all time?
Teri Bertram: [00:22:43] I like '80s classics. I've got Tempest and Star Wars. I've got a lot of these games because I collect them. '90s games - not a big Capcom fan - probably Radikal Bikers or Hydro Thunder.
Bradley Metrock: [00:23:04] Now, I played Hydro Thunder. That was amazing. I don't think I ever played Radikal Bikers.
Teri Bertram: [00:23:11] Yes, it was a Geico game from Italy that got moved over and was published by Atari. It was a fun game where you rode a little moped-type motorcycle and you delivered pizzas. You had to get the pizza to the destination within a certain amount of time and there are obstacles in your way. It was a lot of fun.
Kevin Old: [00:23:35] That reminds me - and I guess this will place me in the proper date category - but I grew up in the Super Nintendo era and I really enjoyed a game called Paper Boy.
Teri Bertram: [00:23:48] Oh, sure! That was an arcade game before it was on the SNES.
Kevin Old: [00:23:52] It popped into my mind when you were recounting the previous game. You had to throw the papers and hit certain obstacles. Tons and tons of fun.
Kevin Old: [00:24:08] Also, I guess breaking news this week is that the Super Nintendo SNES is going to be re-released as a console. That is absolutely insane! I saw it this morning on Twitter and wondered how they're going to sell it for $79. It's going to be amazing. And I also saw that that Nintendo promises to have enough quantity this time.
Bradley Metrock: [00:24:42] We'll believe that when we see it.
Teri Bertram: [00:24:44] Yes, with the other Nintendo they released I couldn't get my hands on one.
Bradley Metrock: [00:24:54] I was unsuccessful with that too, Teri. But I guess you can get it on eBay whenever you want. I wanted to get an SNES Classic. Did you see, Teri, that it has Star Fox 2 on it, which is previously unreleased?
Teri Bertram: [00:25:10] No! I heard that it was going to have an unreleased game, but I didn't know that was there. You got me on that one!
Bradley Metrock: [00:25:17] So Kevin, the SNES Classic has a game on it that has never been released commercially before, Star Fox 2. It's got Star Fox 1 on it, as well. Teri, this may be the only thing I can mention that you didn't already know about. I'm going to savor this for just a moment!
Teri Bertram: [00:25:36] I'm glad you brought it up!
Bradley Metrock: [00:25:42] Let me ask you one more question while we're talking general games: what's the first game you ever played?
Teri Bertram: [00:25:51] Oh, wow. It would probably be one of those speed games they had way back when - you'd drop a nickel in the top of the machine and push a button, which would slowly pop out. When the button popped out you'd drop the nickel down the chute and you'd have to push the button back in before the coin hit the bottom, and it would trap the coin wherever it was. Basically a reflexes game: how fast could you press the button. And I was fascinated by that. So simple. But it ate my nickels.
Bradley Metrock: [00:26:38] And that was fun?
Teri Bertram: [00:26:39] Oh, it was great fun. For a five-year-old, it was awesome.
Bradley Metrock: [00:26:49] My parents had a Texas Instruments computer (I guess it was called a computer) that had games like Alpiner and Parsec, that I grew up playing. But the first sort of seminal game experience I had - and I don't remember which one was first - but I played Thexder on some sort of IBM PC, and also a game called BattleTech: The Crescent Hawk's Inception on a PC. Had you ever played either of those?
Teri Bertram: [00:27:24] No, I haven't.
Bradley Metrock: [00:27:26] The Thexder game was very action-oriented - basically you're a robot that can turn into a jet. The BattleTech game was very sophisticated; I think it was one of the first RPGs that was on IBM PC compatible computers. I also have very vivid memories of playing - if it wasn't the first real-time strategy game, it was among the first - Dune II: Battle of Arrakis. I think that came out on PC in '87 or '88, back in the day of Electronics Boutique and Babbage's competing against each other - and neither of them ever had the game! So I had to get some sort of PC game magazine, where the advertisements were these massive tiny print catalog listings of games. Do you have any memory of this? You know what I'm talking about?
Teri Bertram: [00:28:37] I spent a lot of time with Babbage's. Yes. Both those places, actually.
Bradley Metrock: [00:28:43] And so ... Dune II: The Battle of Arrakis was such an apparently esoteric, lightly-produced game that my parents had to order it for Christmas for me one year, in some mail order thing in a PC magazine. But those were the days. Those were fun times!
Teri Bertram: [00:29:03] That was one of the places I'd go to get Macintosh games. I did a lot of Mac programming in the mid-'80s.
Bradley Metrock: [00:29:11] Teri, we greatly appreciate your generosity with us this evening, sharing some of your time and your experience and your deep expertise with us.
Teri Bertram: [00:29:22] Thank you. It was a pleasure.
Bradley Metrock: [00:29:24] So, for Kevin Old and myself, this is episode three of The Alexa Podcast. Thank you for listening, and until next time.
[exit music]