diff options
author | mms <michal@sapka.me> | 2024-06-20 22:38:34 +0200 |
---|---|---|
committer | mms <michal@sapka.me> | 2024-06-20 22:38:34 +0200 |
commit | 7af0f512af576b6eb544df7fb7dfc62af86d0d27 (patch) | |
tree | 77256f954240e3a5577286096ce9d08845d1f6e6 /content-org/cool-emacs.org | |
parent | 3a29a9568a131ed710b2f80a7dd02de6caa0f255 (diff) |
feat(ce): malyon
Diffstat (limited to 'content-org/cool-emacs.org')
-rw-r--r-- | content-org/cool-emacs.org | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/content-org/cool-emacs.org b/content-org/cool-emacs.org index 4235d32..0e81acd 100644 --- a/content-org/cool-emacs.org +++ b/content-org/cool-emacs.org @@ -644,6 +644,78 @@ You can find the channel ID using different online services, as it is not as str In Elfeed it will for main item URL, but not for items embedded in the body. We need to use =eww= to open the page and we can get the URL from there. + +*** Play Interactive Fiction of Malyon +:PROPERTIES: +:EXPORT_FILE_NAME: interactive-fiction-malyon +:EXPORT_HUGO_CUSTOM_FRONT_MATTER+: :abstract Play classic text adventures with Emacs +:END: + +#+begin_quote +The IFTF defines interactive fiction—IF, for short—as a kind of video game where the player’s interactions primarily involve text. +Under this broad definition, we can find decades of IF work taking many interesting and innovative forms. + +Parser-based IF, also known as the “text adventure” genre, represents one of the oldest and best-known forms of interactive fiction. +Some early examples are digital games from the 70s and 80s like Zork and Enchanter. +In a parser game, players type natural-language commands into a simulated world, and the game interprets them as actions for the story’s main character to carry out. +Parser games often involve puzzles that the player must solve to move forward in the story. + +-- [[https://iftechfoundation.org/frequently-asked-questions/][Interactive Fiction Technology Foundation]] +#+end_quote + +Games? +With text? +And thinking? +Sounds like a great match for Emacs! +Text and your favorite color scheme and keybindings. + +**** Z-machine + +Interactive Fiction (aka /IF/) is overengineered since it's inception. +/Infocom/, the company behind Zork, created a virtual machine (/Z/), just to make it easier to port their games to different architectures. +The machine is stil alive today, with vibrant community pushing new titles all the time. +It was also ported to Emacs, with the /malyon/ package. + +#+attr_shortcode: :file malyon-zork.png +#+attr_shortcode: :alt An Emacs screenshot showing first few moves in Zork games +#+attr_shortcode: :class centered +#+begin_image +Zork in Emacs +#+end_image + +Intallation is very straight forward, just + +#+begin_src emacs-lisp +(use-package malyon + :ensure t) +#+end_src + +And we're ready to play! + +Call =malyon= to open a games, =malyon-restore-file= to restore a previously saved game, and =malyon-quit= if the package breaks. +=malyon-restore= will activate buffer with game in progress. +You can save the gamy any time issuing the =save= command to the interpreter - that is in /the game/, not in =M-x=. + + +**** Formats + +Malon supports Z-machine based games only, and only three versions (z3, z5, z8). +You can determine version of Z-machine of a game, as the extension will match the version. + +The extremey popular =gblorb=, which supports things like embedded graphics, unfortunatelly is not supported. + +**** Getting games + +You can a lot (over 8,5k) Interactive Fiction titles on [[https://ifdb.org/][Interactive Fiction Database]]. +Be sure to check compatibility! + +**** Other resources + +- [[http://www.brasslantern.org/beginners/index.html][Beginner Resources]] on Brass Lantern. Great place to start. +- [[https://archive.org/details/getlamp-interviews][Get Lamp]] on Internet Archive. An amazing documetary on the early days of IF. + + + ** Appendix :PROPERTIES: :EXPORT_HUGO_MENU: :menu cool-emacs-appendix |