summaryrefslogblamecommitdiffstats
path: root/2023/info/adventure-after.md
blob: ff86ce58fc95259ce927823202bfaab14d46dc6e (plain) (tree)
1
2
3
4
5
6
7
8
9


                                                                


                                             


            














                                                                                                                                               


    










































                                                                                                                                                 


             






















                                                                                                                                           


                    

























                                                                                                                                                
                                                                                                                                                                                                                                                                                                                      


                                            
<!-- Automatically generated by emacsconf-publish-after-page -->


<a name="adventure-mainVideo-transcript"></a>
# Transcript


Introduction

[[!template new="1" text="""Hi, I'm going to give you a little demo""" start="00:00:00.000" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""of a project that I'm working on""" start="00:00:04.040" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""which is called the `orgdungeon`.""" start="00:00:06.440" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""As you can see here, they are just a bunch of Org files""" start="00:00:09.840" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and also an Emacs Lisp file.""" start="00:00:16.040" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""What I found is that if you have these Org files""" start="00:00:20.560" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then you have an Emacs Lisp file as a source""" start="00:00:26.800" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""to control how to progress from one file to another,""" start="00:00:30.920" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""it will give you a game-like experience.""" start="00:00:36.880" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""It's like the old game Myst.""" start="00:00:40.520" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""It was developed with the technology""" start="00:00:43.480" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""HyperCard for the Macintosh.""" start="00:00:46.120" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Basically, it uses a similar technology,""" start="00:00:48.760" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""so a similar interface to the developer""" start="00:00:53.200" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""who was using that technology to develop the game.""" start="00:00:57.560" video="mainVideo-adventure" id="subtitle"]]

Demo

[[!template new="1" text="""Concretely, I'm going to give you""" start="00:01:01.200" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""a demo of how the game looks like.""" start="00:01:03.800" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""So, this is a very vanilla Emacs setup.""" start="00:01:08.880" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Then I open up the first Org file.""" start="00:01:14.840" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""The Org file is just a bunch of text,""" start="00:01:18.640" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""but it tells you a story.""" start="00:01:22.840" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""So you wake up somewhere,""" start="00:01:25.520" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then there is a dog-like robot called Emi around you.""" start="00:01:27.360" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""And then it tells you what you should do.""" start="00:01:32.600" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Following the instructions...""" start="00:01:37.760" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""For example, here it tells you""" start="00:01:40.800" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""down there is one thing called &quot;code block,&quot;""" start="00:01:42.720" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then you can evaluate it by pressing `C-c C-c`.""" start="00:01:46.240" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Then we can just go there""" start="00:01:51.360" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then just evaluate the code block.""" start="00:01:53.640" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""So technically it just runs the Emacs Lisp file,""" start="00:01:55.240" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""because you can see here, if you load Emacs Lisp...""" start="00:02:00.240" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""It just evaluates that Emacs Lisp file.""" start="00:02:05.000" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""I can just say `C-c C-c`.""" start="00:02:07.160" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Then for this one, I just say yes,""" start="00:02:09.800" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then it will jump to another file.""" start="00:02:12.320" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""But in the game, I call it the plane.""" start="00:02:16.520" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""So it jumps to another plane.""" start="00:02:18.760" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Yeah, so...""" start="00:02:21.040" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""In the other one, it's just saying that""" start="00:02:24.040" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""there is a function called `emi-escape-10`.""" start="00:02:26.400" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Assuming that you don't have any experience""" start="00:02:29.880" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""how to use Emacs,""" start="00:02:33.480" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""so you have no idea how to do that,""" start="00:02:34.760" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""but down there, it's saying that""" start="00:02:38.760" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""there is a key combination called `C-h f`,""" start="00:02:41.320" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and it will bring up the help system.""" start="00:02:44.320" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Then you can read the help file of `emi-escape-10`.""" start="00:02:48.400" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""So you can just do that. For example, `C-h f`""" start="00:02:52.560" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then `describe-function` `emi-escape-10` here.""" start="00:02:55.740" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""It will show you the help file.""" start="00:03:03.000" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Then it's just saying that you can press `M-x`,""" start="00:03:06.320" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and Meta usually mapped to Alt,""" start="00:03:10.920" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then yeah.""" start="00:03:13.520" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Then you can just close this help file using `C-x 1`.""" start="00:03:15.080" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""I'm just going to do that. And then yeah...""" start="00:03:18.720" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""I'm just try that. `M-x` and then `emi-escape-10`.""" start="00:03:21.400" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""All right.""" start="00:03:31.480" video="mainVideo-adventure" id="subtitle"]]

emi-escape-12

[[!template new="1" text="""So I will jump to another file.""" start="00:03:33.360" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Or in the game, you jump to another plane.""" start="00:03:36.040" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""And now you know that""" start="00:03:39.360" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""there is a function called `emi-escape-12`.""" start="00:03:40.339" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""And yeah, you can just do that `emi`,""" start="00:03:44.840" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""because you learned it previously, right.""" start="00:03:47.639" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""`emi-escape-12`.""" start="00:03:50.400" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""But this time, it asks you for a password,""" start="00:03:52.080" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""which you probably don't know, right?""" start="00:03:55.120" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""If you just type in anything,""" start="00:03:57.800" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""it will just say incorrect password.""" start="00:03:59.840" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""But yeah, it's part of the learning experience""" start="00:04:02.720" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""because previously you learned""" start="00:04:06.360" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""that you should use the help file,""" start="00:04:07.280" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""help system to read the help file of a function,""" start="00:04:10.320" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""so you can just use the help file""" start="00:04:16.200" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""to look for the help of `emi-escape-12`.""" start="00:04:18.320" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Then, yeah, the help file will say that""" start="00:04:25.840" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""you should enter a password,""" start="00:04:29.520" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and the password is `emi`.""" start="00:04:31.240" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Right. So you can just do that.""" start="00:04:34.160" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Write `emi-escape-12`,""" start="00:04:36.440" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then now you know the password is `emi`. Right.""" start="00:04:42.240" video="mainVideo-adventure" id="subtitle"]]

The rest of the game

[[!template new="1" text="""So you can progress along these different files,""" start="00:04:47.040" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and then if you...""" start="00:04:51.840" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Okay, it's like a game,""" start="00:04:53.520" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""but at the same time, it also teaches you""" start="00:04:54.640" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""something about how Emacs works.""" start="00:04:57.280" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""For example, like the previous one,""" start="00:05:01.680" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""you know how to use the help file, for example,""" start="00:05:04.600" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""but in the later part, you will learn how to""" start="00:05:07.280" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""evaluate some Emacs Lisp code""" start="00:05:11.520" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and also how to write some Emacs Lisp code""" start="00:05:14.280" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""as well, and then you will learn""" start="00:05:17.160" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""the difference between interactive commands""" start="00:05:19.560" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""and also just ordinary functions, for example.""" start="00:05:23.400" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Now, I just created a few Org files,""" start="00:05:27.240" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""but I'm actively adding more Org files""" start="00:05:31.400" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""so that we can have a complete kind of""" start="00:05:36.440" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""educational experience.""" start="00:05:39.600" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""If you want to follow along [with] this project,""" start="00:05:42.560" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""you can just go to my Github repository.""" start="00:05:45.640" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""I hope you enjoyed this little demo.""" start="00:05:51.360" video="mainVideo-adventure" id="subtitle"]]
[[!template text="""Thank you.""" start="00:05:56.540" video="mainVideo-adventure" id="subtitle"]]



Captioner: sachac

Questions or comments? Please e-mail [emacsconf-org-private@gnu.org](mailto:emacsconf-org-private@gnu.org?subject=Comment%20for%20EmacsConf%202023%20adventure%3A%20An%20Org-Mode%20based%20text%20adventure%20game%20for%20learning%20the%20basics%20of%20Emacs%2C%20inside%20Emacs%2C%20written%20in%20Emacs%20Lisp)


<!-- End of emacsconf-publish-after-page -->