Where these differ from what feels right in another language like C, I'll try to highlight that and the rationale for why Rust is different. This is not going to be a Rust tutorial, but I will reflect on the code and the implementation. I'll just write what works and fix things as I go. I'm still learning though, so I'm probably not going to be writing idiomatic Rust all the time. This has already been done in C, so why Rust? Because I'm learning the language and I'm looking for a slightly more advanced project. At the same time you can make a text adventure using just the syntax in the language and very few external dependencies, so our focus can remain on the technique, not on learning new libraries. A text adventure game is a project large enough to need more structure than main.rs and will also need to use more advanced data structures. Text adventure games were groundbreaking when they were first written, but today, their concepts, structure, and simple implementation provide a great opportunity for learning while building a new creative work.Ī text adventure provides a good step up in scope from simple 'one-file' games. Why this tutorial then? To paraphrase Ruud Helderman, the author of the series that THIS tutorial is based on, because it will be entertaining, educational, and fun. Twine in particular expands the idea of what these creative works can be. Twine and Inform are freely available and continue to be used to create new interactive fiction works. Game engines allow players to continue to access the classics from past years and also author new experiences. Interactive Fiction authors and developers have created many high quality games and authoring systems that are mostly freely available. While text adventures are not generally commercially viable now, their progeny, now called Interactive Fiction live on. These games and many others like them have worked their way into the lexicon and phrases including 'You are in a maze of twisty passages, all alike' from the original Colossal Cave Adventure continue to appear in pop culture today. In the same way that many avid readers would argue that a good book is better than a movie of the same story, text adventures enable an interactive experience that proceeds at the pace of the reader and allows for a deeply engaging experience. Like books, a text adventure 'works' by counting on the imagination of the player to build an image far richer than even the best graphics can. While many (including sadly the critical mass of people willing to purchase a game) chase after ever increasing levels of realism in graphics, text adventures appeal to the imagination. Text adventures challenge the mind and appeal to a more cerebral experience. Some of my first gaming experiences were playing through the Infocom classics Zork and Planetfall. Text adventures were among the first widely popular computer games. This content and all code is licensed under the MIT License. This project is heavily based on the work of Ruud Helderman and closely follows the content and structure of his excellent tutorial series on the same topic using the C language. This is going to be a substantially larger project than our previous Rock, Paper, Scissors game and will be split up into multiple parts. In this project, we're going to make a fully functional text adventure game from scratch. At the end you'll be able build your own text adventure and tell your story! You'll learn how to implement locations, objects, conditions, scoring, and more. We're building a text adventure from 'cargo init' to 'You Won!' Along the way we'll show and describe every key decision and line of code. Ever wanted to learn to make a text adventure game from scratch? In this post series you'll learn how.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |