From 7f2f383360efd4373b9c160d6b0c5031c9043c52 Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Sun, 18 Dec 2022 09:20:14 -0500 Subject: Update based on whisper --- ...ngeon--erik-elmshauser-corwin-brust-autogen.vtt | 5072 +++++++------------- 1 file changed, 1739 insertions(+), 3333 deletions(-) (limited to '2020/subtitles/emacsconf-2020--28-welcome-to-the-dungeon--erik-elmshauser-corwin-brust-autogen.vtt') diff --git a/2020/subtitles/emacsconf-2020--28-welcome-to-the-dungeon--erik-elmshauser-corwin-brust-autogen.vtt b/2020/subtitles/emacsconf-2020--28-welcome-to-the-dungeon--erik-elmshauser-corwin-brust-autogen.vtt index 65624f38..24c1910c 100644 --- a/2020/subtitles/emacsconf-2020--28-welcome-to-the-dungeon--erik-elmshauser-corwin-brust-autogen.vtt +++ b/2020/subtitles/emacsconf-2020--28-welcome-to-the-dungeon--erik-elmshauser-corwin-brust-autogen.vtt @@ -226,8 +226,7 @@ most of the commercial role-playing games that you have heard of or maybe tried out 00:05:07.919 --> 00:05:11.919 -from various stores and friends, what -have you. +from various stores and friends, what have you. 00:05:11.919 --> 00:05:14.800 So one of the first things we want to talk about is: @@ -272,12 +271,10 @@ So that's kind of why we like it, but also it makes it a tricky problem 00:06:08.533 --> 00:06:12.567 -when it comes to writing a computer game -to mimic +when it comes to writing a computer game to mimic 00:06:12.567 --> 00:06:16.400 -the game that we played with paper and -dice around a table. +the game that we played with paper and dice around a table. 00:06:16.400 --> 00:06:24.000 CORWIN: So when we look at it as kind of a technology problem... Whoops... @@ -310,7 +307,7 @@ Specifically, I learned it from Corwin when I was 7 or 8. CORWIN: Yeah, that's where... that's my cue in, right? 00:07:09.599 --> 00:07:14.560 -My folks and Erik's folks were were really tight. +My folks and Erik's folks were really tight. 00:07:14.560 --> 00:07:17.360 They used to run science fiction conventions together. @@ -340,8 +337,7 @@ basically we've also been into playing with computers. Over the years, we've worked with many, many different systems. 00:07:56.720 --> 00:07:59.700 -We've played with Ataris, Apples, and -Amigas +We've played with Ataris, Apples, and Amigas 00:07:59.700 --> 00:08:03.567 for a long time before either of us got PC clones @@ -359,8 +355,7 @@ So we also always thought, like, how is it that we can use these cool computers that we're into 00:08:22.639 --> 00:08:25.967 -to build this Dungeon game that we're -into? +to build this Dungeon game that we're into? 00:08:25.967 --> 00:08:28.319 'Cause that's what you do, right? @@ -588,4194 +583,2605 @@ in order to recreate the Dungeon experience that we had with paper and dice sitting around a 00:13:01.279 --> 00:13:05.600 -table when we were kids +table when we were kids. -00:13:05.600 --> 00:13:09.680 -and +00:13:02.160 --> 00:13:12.570 +And, I mean, we've, you know, it took a while for us to kind of -00:13:09.680 --> 00:13:12.079 -I mean we you know it took a while for +00:13:12.570 --> 00:13:15.870 +tease apart the problem in a way where we could actually -00:13:12.079 --> 00:13:13.839 -us to kind of +00:13:15.870 --> 00:13:19.370 +list out all of the features, like, what are the problems -00:13:13.839 --> 00:13:16.079 -tease apart the problem in a way where +00:13:19.370 --> 00:13:22.160 +we have to solve and how do we solve them? -00:13:16.079 --> 00:13:18.000 -we could actually list out all of the +00:13:27.160 --> 00:13:31.050 +So, creating any free software, any self-organizing free -00:13:18.000 --> 00:13:19.120 -features like +00:13:31.050 --> 00:13:34.740 +software project is challenging to start with, and we're -00:13:19.120 --> 00:13:20.959 -what are the problems we have to solve +00:13:34.740 --> 00:13:38.530 +generally people with a bunch of other responsibilities by -00:13:20.959 --> 00:13:27.760 -and how do we solve them +00:13:38.530 --> 00:13:43.570 +the time we get to it. So, it's not just, hey, you know, -00:13:27.760 --> 00:13:30.959 -so creating any free software any +00:13:43.570 --> 00:13:48.350 +the general herding cats, it's, you know, trying to make it -00:13:30.959 --> 00:13:33.040 -self-organizing free software project +00:13:48.350 --> 00:13:50.160 +a part of your life, too. -00:13:33.040 --> 00:13:36.000 -is is challenging to start with and +00:13:52.160 --> 00:13:56.570 +That being kind of a, you know, challenging battle, we kind -00:13:36.000 --> 00:13:37.200 -we're generally +00:13:56.570 --> 00:14:00.580 +of aligned on some principles that we wanted to adhere to -00:13:37.200 --> 00:13:38.480 -people with a bunch of other +00:14:00.580 --> 00:14:04.160 +once we started taking the project seriously. -00:13:38.480 --> 00:13:40.320 -responsibilities by the time we get to +00:14:04.160 --> 00:14:10.640 +Like, you know, particularly recognizing GNU in specific as -00:13:40.320 --> 00:13:40.560 -it +00:14:10.640 --> 00:14:14.160 +we focus on giving back to the community. -00:13:40.560 --> 00:13:44.000 -so it's it's not just hey +00:14:15.160 --> 00:14:19.830 +Taking what we learned as Perl programmers and, you know, -00:13:44.000 --> 00:13:47.040 -you know the general herding cats it's +00:14:19.830 --> 00:14:23.920 +bringing that spirit forward into our work and maybe -00:13:47.040 --> 00:13:47.680 -it's +00:14:23.920 --> 00:14:28.830 +specifically support, making sure that we can, you know, -00:13:47.680 --> 00:13:49.120 -you know trying to make it a part of +00:14:28.830 --> 00:14:34.160 +write functions for the game in Perl if we want to. -00:13:49.120 --> 00:13:51.040 -your life to +00:14:35.160 --> 00:14:40.250 +And then to use the game as a vehicle to make people look -00:13:51.040 --> 00:13:54.399 -that being kind of a +00:14:40.250 --> 00:14:45.510 +beyond the typically open source – sorry, typically nom -00:13:54.399 --> 00:13:57.680 -you know challenging battle we we +00:14:45.510 --> 00:14:50.290 +inally open source at best, generally pretty closed world of -00:13:57.680 --> 00:14:00.480 -kind of aligned on some some principles +00:14:50.290 --> 00:14:52.160 +computer gaming. -00:14:00.480 --> 00:14:02.639 -that we wanted to adhere to +00:14:52.160 --> 00:14:55.260 +A lot of Windows users out there, a lot of non-free -00:14:02.639 --> 00:14:04.079 -once we started taking the project +00:14:55.260 --> 00:14:58.670 +communication tools, and a lot of, you know, a lot of -00:14:04.079 --> 00:14:05.680 -seriously +00:14:58.670 --> 00:15:02.160 +ground to cover from a free software perspective. -00:14:05.680 --> 00:14:09.519 -like pre you know particularly +00:15:03.160 --> 00:15:08.160 +So what can Emacs do from a gaming standpoint to open that up? -00:14:09.519 --> 00:14:12.720 -recognizing gnu in specific as we focus +00:15:08.160 --> 00:15:12.960 +And not to mention the hubris of the, you know, the two of -00:14:12.720 --> 00:14:15.199 -on giving back to the community +00:15:12.960 --> 00:15:17.600 +us with a few friends basically deciding to take on what -00:14:15.199 --> 00:14:16.480 -taking what we learned as perl +00:15:17.600 --> 00:15:20.160 +amounts to a huge project. -00:14:16.480 --> 00:14:18.240 -programmers and +00:15:20.160 --> 00:15:24.080 +You know, we're essentially a year in now and we haven't -00:14:18.240 --> 00:14:22.079 -you know bringing that spirit forward +00:15:24.080 --> 00:15:29.160 +really gotten over halfway to our minimum play testable candidate. -00:14:22.079 --> 00:14:24.320 -into into our work and maybe +00:15:30.160 --> 00:15:34.160 +It's a work in progress. We've got a long road to go. -00:14:24.320 --> 00:14:26.399 -specifically support making sure that we +00:15:34.160 --> 00:15:37.310 +There's at least 50 items on the things that we think are -00:14:26.399 --> 00:14:27.120 -can +00:15:37.310 --> 00:15:40.390 +critical to be able to introduce it to my younger kids, for -00:14:27.120 --> 00:14:30.639 -you know write functions for the +00:15:40.390 --> 00:15:41.160 +example. -00:14:30.639 --> 00:14:31.760 -game +00:15:41.160 --> 00:15:48.650 +Okay, so we're in the accomplishments section. So we're -00:14:31.760 --> 00:14:35.199 -in perl if we want to +00:15:48.650 --> 00:15:51.700 +supposed to be talking about the things that we have -00:14:35.199 --> 00:14:38.079 -and then to use the game as a vehicle to +00:15:51.700 --> 00:15:54.160 +succeeded in doing in our first year. -00:14:38.079 --> 00:14:40.320 -make people look beyond +00:15:55.160 --> 00:15:59.580 +We have succeeded in working with data in org documents, -00:14:40.320 --> 00:14:43.360 -the +00:15:59.580 --> 00:16:04.030 +using org mode tables to store the data that we're going to -00:14:43.360 --> 00:14:46.800 -typically open source or sorry typically +00:16:04.030 --> 00:16:07.160 +use in the various parts of our game. -00:14:46.800 --> 00:14:49.600 -nominally open source at best +00:16:07.160 --> 00:16:14.440 +And we've had a lot of success with svg.el. It started with -00:14:49.600 --> 00:14:52.160 -generally pretty closed world of +00:16:14.440 --> 00:16:18.130 +drawing maps and we have another talk about our mapping -00:14:52.160 --> 00:14:54.160 -computer gaming a lot of windows users +00:16:18.130 --> 00:16:20.160 +specifically coming up next. -00:14:54.160 --> 00:14:55.440 -out there a lot of free +00:16:21.160 --> 00:16:25.160 +So we'll put off some of that discussion for a separate talk. -00:14:55.440 --> 00:14:57.519 -non-free communication tools and a lot +00:16:25.160 --> 00:16:30.050 +But we've also succeeded in getting into a bunch of -00:14:57.519 --> 00:14:59.760 -of +00:16:30.050 --> 00:16:36.770 +different elements of the game where we're, you know, -00:14:59.760 --> 00:15:01.839 -you know a lot of ground to cover from a +00:16:36.770 --> 00:16:39.340 +making a lot of progress using this drawing engine we -00:15:01.839 --> 00:15:03.360 -free software perspective +00:16:39.340 --> 00:16:43.360 +developed to also draw this other thing and also draw this -00:15:03.360 --> 00:15:05.920 -so what can Emacs do from a gaming +00:16:43.360 --> 00:16:45.160 +other thing and also draw this other thing. -00:15:05.920 --> 00:15:07.360 -standpoint to +00:16:46.160 --> 00:16:46.160 +And we kind of backed into, we've got this aesthetic -00:15:07.360 --> 00:15:12.160 -to open that up +00:16:46.161 --> 00:16:54.750 +and we're using it to draw interfaces for all of the different -00:15:12.160 --> 00:15:14.880 -and not to mention the hubris of the you +00:16:54.750 --> 00:16:56.160 +parts of the game. -00:15:14.880 --> 00:15:16.720 -know the two of us with a few friends +00:16:56.160 --> 00:17:08.160 +So let's talk a little bit about what works now. -00:15:16.720 --> 00:15:18.399 -basically deciding to take on what +00:17:11.160 --> 00:17:15.330 +First of all, there's the mapping part that Erik mentioned -00:15:18.399 --> 00:15:19.440 -amounts to a +00:17:15.330 --> 00:17:19.040 +and we'll jump here into, we'll start opening up some files -00:15:19.440 --> 00:15:21.839 -huge project you know we're +00:17:19.040 --> 00:17:20.160 +and looking around. -00:15:21.839 --> 00:15:24.720 -essentially a year in now and we haven't +00:17:20.160 --> 00:17:25.060 +But then also later we'll fire up an IELM and look at some -00:15:24.720 --> 00:15:27.839 -really gotten over halfway to our +00:17:25.060 --> 00:17:28.160 +of the other proofs of concept. -00:15:27.839 --> 00:15:30.000 -minimum playtestable candidate +00:17:28.160 --> 00:17:31.350 +So hopefully we can pivot the second talk more toward the -00:15:30.000 --> 00:15:32.880 -it's a it's a work in progress we've +00:17:31.350 --> 00:17:34.520 +demos as we skip some of the interactive stuff that might -00:15:32.880 --> 00:15:34.320 -got a long row to go +00:17:34.520 --> 00:17:37.160 +be mentioned in the slides that we go by. -00:15:34.320 --> 00:15:36.800 -there's at least 50 items on the things +00:17:37.160 --> 00:17:38.160 +Okay. -00:15:36.800 --> 00:15:38.399 -that we think are critical to +00:17:38.160 --> 00:17:48.160 +So, maps, visual battleboard. -00:15:38.399 --> 00:15:40.320 -to be able to introduce it to my younger +00:17:48.160 --> 00:17:51.160 +The battleboard... -00:15:40.320 --> 00:15:44.720 -kids for example +00:17:51.160 --> 00:17:55.160 +I'm just going to skip it Erik, we'll hit it in the next one. -00:15:44.720 --> 00:15:48.399 -okay so we're in the accomplishments +00:17:55.160 --> 00:17:57.160 +Okay. -00:15:48.399 --> 00:15:49.279 -section +00:17:57.160 --> 00:18:03.160 +Hang on. -00:15:49.279 --> 00:15:50.959 -so we're supposed to be talking about +00:18:05.160 --> 00:18:07.660 +Okay, so I'm just going to go ahead and open up maps and -00:15:50.959 --> 00:15:52.639 -the things that we have +00:18:07.660 --> 00:18:12.490 +let you talk from the SVG process itself, because that's -00:15:52.639 --> 00:15:55.920 -succeeded in doing in our first year +00:18:12.490 --> 00:18:15.160 +the interesting part to me. -00:15:55.920 --> 00:15:58.880 -we have succeeded in working with data +00:18:15.160 --> 00:18:21.160 +Okay. -00:15:58.880 --> 00:16:01.199 -in org documents using org mode +00:18:22.160 --> 00:18:26.350 +Talk about the SVG process, like what do you think exactly -00:16:01.199 --> 00:16:04.480 -tables to store the data that we're +00:18:26.350 --> 00:18:31.310 +we want to talk about? How we turn our data into an image -00:16:04.480 --> 00:16:05.360 -going to use +00:18:31.310 --> 00:18:34.160 +or what are you hoping for? -00:16:05.360 --> 00:16:09.279 -in the various parts of our game +00:18:34.160 --> 00:18:40.140 +Yeah, so I mean did you want to talk more from the hand-d -00:16:09.279 --> 00:16:12.519 -and we've had a lot of success with +00:18:40.140 --> 00:18:43.160 +rawn SVG graphics at all? -00:16:12.519 --> 00:16:14.160 -SVG.el +00:18:43.160 --> 00:18:48.160 +I thought we were going to save that stuff for the pathing talk. -00:16:14.160 --> 00:16:16.639 -it started withdrawing maps and we +00:18:48.160 --> 00:18:49.160 +Okay, that sounds fine. -00:16:16.639 --> 00:16:17.279 -have +00:18:49.160 --> 00:18:50.160 +But we can go into it right now if you want. -00:16:17.279 --> 00:16:19.440 -another talk about our mapping +00:18:50.160 --> 00:18:54.640 +Yeah, so we've got about 10 minutes before the turn where -00:16:19.440 --> 00:16:21.440 -specifically coming up next so we'll +00:18:54.640 --> 00:18:58.470 +we thought we would first take any questions that are -00:16:21.440 --> 00:16:23.759 -put off some of that discussion for a +00:18:58.470 --> 00:19:00.160 +hanging out there. -00:16:23.759 --> 00:16:25.199 -separate talk +00:19:00.160 --> 00:19:04.160 +I unfortunately closed the Etherpad, but I can open it again real quick. -00:16:25.199 --> 00:16:28.720 -but we've also succeeded in +00:19:04.160 --> 00:19:09.850 +Or you can jump into the pathing stuff now, or I can just -00:16:28.720 --> 00:16:32.320 -getting into a bunch of different +00:19:09.850 --> 00:19:14.160 +throw open an IELM and we can start the demos. -00:16:32.320 --> 00:16:35.680 -elements of the game where +00:19:15.160 --> 00:19:20.600 +So let me invite Amin or Sacha back in, or Leo, if any of -00:16:35.680 --> 00:16:38.160 -we're you know making a lot of progress +00:19:20.600 --> 00:19:23.350 +you want to join the conversation and make a suggestion as -00:16:38.160 --> 00:16:38.959 -using this +00:19:23.350 --> 00:19:27.160 +to how we balance between the remaining time. -00:16:38.959 --> 00:16:41.920 -drawing engine we developed to also draw +00:19:27.160 --> 00:19:30.300 +The rest of what we have left starts in on toward the -00:16:41.920 --> 00:16:43.759 -this other thing and also draw this +00:19:30.300 --> 00:19:34.250 +technical, so especially if there would be questions about -00:16:43.759 --> 00:16:45.279 -other thing and also draw this other +00:19:34.250 --> 00:19:37.160 +the game right now, that would be awesome. -00:16:45.279 --> 00:16:46.079 -thing and it's +00:19:37.160 --> 00:19:42.160 +And I'm going to get seated again. -00:16:46.079 --> 00:16:49.519 -you know we kind of backed into +00:19:44.160 --> 00:19:48.870 +I'm not sure if I talk over the stream, if you'll hear it, -00:16:49.519 --> 00:16:52.560 -we've got this aesthetic and we're +00:19:48.870 --> 00:19:57.160 +because I'm just watching your stream, but I can try writing on IRC. -00:16:52.560 --> 00:16:54.720 -using it to draw interfaces for all of +00:20:01.160 --> 00:20:06.140 +Sure, yeah, questions would be cool. Or, yeah, well Erik, -00:16:54.720 --> 00:17:03.120 -the different parts of the game +00:20:06.140 --> 00:20:08.980 +why don't you just go ahead and start walking us through -00:17:03.120 --> 00:17:05.600 -so let's talk a little bit +00:20:08.980 --> 00:20:12.000 +the hand drawn SVG stuff just a little bit, because I think -00:17:05.600 --> 00:17:06.959 -about what +00:20:12.000 --> 00:20:14.950 +if that isn't interesting to people, we can just preempt -00:17:06.959 --> 00:17:10.880 -what works now +00:20:14.950 --> 00:20:16.160 +for a question. -00:17:10.880 --> 00:17:13.360 -first of all there's the mapping part +00:20:17.160 --> 00:20:23.010 +Okay, so historically when we decided to actually start -00:17:13.360 --> 00:17:14.640 -that Erik mentioned +00:20:23.010 --> 00:20:27.080 +writing code, one of the very first things we wanted to do -00:17:14.640 --> 00:17:18.480 -and we'll jump here into we'll start +00:20:27.080 --> 00:20:30.990 +was the maps, because initially it seemed like the maps -00:17:18.480 --> 00:17:20.880 -opening up some files and looking around +00:20:30.990 --> 00:20:34.750 +were going to be one of the biggest challenges in terms of -00:17:20.880 --> 00:17:22.160 -but then +00:20:34.750 --> 00:20:37.160 +how do we get a text editor to draw pictures for us. -00:17:22.160 --> 00:17:25.520 -also later we'll we'll fire up an eye +00:20:40.160 --> 00:20:44.350 +So, we pretty quickly decided we wanted to work with SVGs -00:17:25.520 --> 00:17:26.959 -elm and look at some of the +00:20:44.350 --> 00:20:48.370 +because it allowed us to leverage the power of Emacs as a -00:17:26.959 --> 00:17:28.400 -some of the other proofs of concept so +00:20:48.370 --> 00:20:53.680 +text editor and a text manipulator to write text graphics -00:17:28.400 --> 00:17:30.240 -hopefully we can +00:20:53.680 --> 00:20:56.160 +with the SVG format. -00:17:30.240 --> 00:17:32.240 -pivot the second talk more toward the +00:20:56.160 --> 00:20:59.770 +So we did some SVG graphics by hand, we went in and just -00:17:32.240 --> 00:17:34.320 -demos as as we skip some of the +00:20:59.770 --> 00:21:03.620 +started hand coding things that looked visually like the -00:17:34.320 --> 00:17:35.520 -interactive stuff that might be +00:21:03.620 --> 00:21:07.300 +maps we used to draw by hand on graph paper when we were, -00:17:35.520 --> 00:17:43.200 -mentioned in the slides that we go by +00:21:07.300 --> 00:21:10.160 +you know, sitting around the table. -00:17:43.200 --> 00:17:46.880 -so maps +00:21:10.160 --> 00:21:13.160 +Yep, absolutely. -00:17:46.880 --> 00:17:50.080 -visual battle board +00:21:13.160 --> 00:21:17.610 +What emerged from that is as we started working on some of -00:17:50.080 --> 00:17:53.120 -the battle board I'm just going to I'm just +00:21:17.610 --> 00:21:22.140 +these files, this particular image is a test of some 20 -00:17:53.120 --> 00:17:54.160 -going to skip it Erik +00:21:22.140 --> 00:21:25.910 +wide water with some beaches around it and a special -00:17:54.160 --> 00:18:02.000 -we'll hit it in the next one okay +00:21:25.910 --> 00:21:29.160 +chamber kind of off to the side called a clapper. -00:18:02.000 --> 00:18:08.480 -hang on +00:21:29.160 --> 00:21:32.960 +And this was the way we would code is by sketching by hand -00:18:08.480 --> 00:18:09.919 -okay so I'm just going to go ahead and +00:21:32.960 --> 00:21:36.940 +all of these things to look right. And then we would take -00:18:09.919 --> 00:18:11.840 -open up maps and +00:21:36.940 --> 00:21:40.810 +that code and we noticed it became real repetitive as we -00:18:11.840 --> 00:18:13.760 -let you talk from the from the SVG +00:21:40.810 --> 00:21:45.160 +would go like chunk of water chunk of water chunk of water. -00:18:13.760 --> 00:18:15.039 -process itself +00:21:45.160 --> 00:21:48.860 +And we're like okay so what we really need is to define a -00:18:15.039 --> 00:18:16.480 -because that's the interesting part to +00:21:48.860 --> 00:21:52.620 +set of, we call it tiles, but like you can think of it as -00:18:16.480 --> 00:18:22.240 -me that to me +00:21:52.620 --> 00:21:56.660 +rubber stamps where we write this graphics code, and then -00:18:22.240 --> 00:18:26.080 -okay talk about the SVG +00:21:56.660 --> 00:22:01.160 +we're able to repeat it in different places around the map. -00:18:26.080 --> 00:18:28.640 -process like what what are you thinking +00:22:01.160 --> 00:22:05.680 +You want to flip over to code view and show that or do we -00:18:28.640 --> 00:18:30.640 -exactly we want to talk about how +00:22:05.680 --> 00:22:09.160 +want to move into. Sure. -00:18:30.640 --> 00:18:33.760 -we turn our data into an image or +00:22:09.160 --> 00:22:10.160 +Code view. -00:18:33.760 --> 00:18:37.919 -what what are you hoping for yeah so +00:22:10.160 --> 00:22:14.700 +So, you know, you can see just really obviously here the -00:18:37.919 --> 00:18:39.760 -I mean did you did you want to talk more +00:22:14.700 --> 00:22:19.240 +only thing that's changing from chunk of water to chunk of -00:18:39.760 --> 00:18:41.200 -from from the +00:22:19.240 --> 00:22:22.160 +water is the x and y coordinates. -00:18:41.200 --> 00:18:45.679 -SVG the hand-drawn SVG graphics at all +00:22:22.160 --> 00:22:26.990 +And, you know, we can skip getting into the SVG directives -00:18:45.679 --> 00:18:47.039 -I thought we were going to save that +00:22:26.990 --> 00:22:31.640 +and how all of the path statements actually work, but you -00:18:47.039 --> 00:18:49.760 -stuff for the passing talk okay +00:22:31.640 --> 00:22:36.230 +can trust us, all of these D equals and there's m's and h's -00:18:49.760 --> 00:18:52.000 -right now if you want yeah I mean so +00:22:36.230 --> 00:22:41.160 +and V's that turns out to be horizontal lines and vertical -00:18:52.000 --> 00:18:53.440 -we've got about +00:22:41.160 --> 00:22:42.160 +lines and cursor moves -00:18:53.440 --> 00:18:56.559 -10 minutes before the turn where we +00:22:42.160 --> 00:22:46.900 +kind of like turtle graphics if anyone remembers that far -00:18:56.559 --> 00:18:58.400 -thought we would first take any +00:22:46.900 --> 00:22:50.910 +back, and we're picking up our pen and dropping it and -00:18:58.400 --> 00:19:00.400 -questions that are hanging out there +00:22:50.910 --> 00:22:54.160 +drawing lines around on our map. -00:19:00.400 --> 00:19:02.320 -I unfortunately closed the ether pad but +00:22:54.160 --> 00:22:58.090 +Okay, so we do have a few questions if you want to take -00:19:02.320 --> 00:19:04.799 -I can open it again real quick +00:22:58.090 --> 00:23:01.160 +them now otherwise we can also jump in. -00:19:04.799 --> 00:19:08.480 -and or you can jump +00:23:01.160 --> 00:23:05.160 +Let's get them while they're fresh. Okay, sounds good. -00:19:08.480 --> 00:19:11.440 -jump into the to the pathing stuff now +00:23:05.160 --> 00:23:08.540 +So we'll probably shift to question and answer mode for up -00:19:11.440 --> 00:19:12.320 -or I can just +00:23:08.540 --> 00:23:12.490 +to 15 minutes here. So if you do have questions, maybe -00:19:12.320 --> 00:19:13.760 -throw up an IELM and we can start the +00:23:12.490 --> 00:23:15.740 +stack rank, go ahead and sort the questions a little for us -00:19:13.760 --> 00:19:15.440 -demos so +00:23:15.740 --> 00:23:18.880 +or comment on them to let us know which ones you want to -00:19:15.440 --> 00:19:18.880 -let me invite Amin or Sacha back in +00:23:18.880 --> 00:23:21.540 +see us get here if we start getting a little long winded or -00:19:18.880 --> 00:19:19.840 -if you guys +00:23:21.540 --> 00:23:23.160 +not just a long, we'll take direction. -00:19:19.840 --> 00:19:22.160 -or Leo if any of you want to join the +00:23:23.160 --> 00:23:26.160 +But thanks for your questions. -00:19:22.160 --> 00:19:22.960 -conversation +00:23:26.160 --> 00:23:30.050 +I'd like to see a demo as well we'll look at that with the -00:19:22.960 --> 00:19:25.840 -make a suggestion as to how we balance +00:23:30.050 --> 00:23:33.160 +remaining time after this question block. -00:19:25.840 --> 00:19:27.120 -between the remaining time +00:23:33.160 --> 00:23:38.000 +More about what the game is okay sure. So let's let's take -00:19:27.120 --> 00:19:29.840 -the rest of what we have left starts in +00:23:38.000 --> 00:23:42.510 +our one minute each swing at what the game is, you want to -00:19:29.840 --> 00:19:32.480 -on toward the technical so especially +00:23:42.510 --> 00:23:45.160 +go first, I called weapons. -00:19:32.480 --> 00:19:35.120 -if there would be questions +00:23:45.160 --> 00:23:47.160 +Okay. -00:19:35.120 --> 00:19:36.840 -about the game right now that would be +00:23:47.160 --> 00:23:52.180 +Dungeon is like role playing games, but you don't really do -00:19:36.840 --> 00:19:40.160 -awesome +00:23:52.180 --> 00:23:56.990 +role playing like the, for me the thing the core of being a -00:19:40.160 --> 00:19:48.720 -and I'm going to get seated again +00:23:56.990 --> 00:24:01.400 +role playing game is you take on the role of being your -00:19:48.720 --> 00:19:51.200 -I'm not sure if I talk over the stream +00:24:01.400 --> 00:24:06.500 +character and you play your character and dungeons not like -00:19:51.200 --> 00:19:53.200 -if you'll hear it because I'm just +00:24:06.500 --> 00:24:08.160 +that dungeon. -00:19:53.200 --> 00:19:54.720 -watching your stream +00:24:08.160 --> 00:24:11.160 +You can play. -00:19:54.720 --> 00:20:01.200 -but I can try writing an irc +00:24:11.160 --> 00:24:14.660 +So, the dungeon party always has eight characters in it. -00:20:01.200 --> 00:20:04.640 -sure yeah questions would be cool or +00:24:14.660 --> 00:24:17.890 +There's four in the front row and four in the back row and -00:20:04.640 --> 00:20:07.360 -yeah well Erik why don't you just go +00:24:17.890 --> 00:24:22.160 +you march through the dungeon, fighting, whatever you encounter. -00:20:07.360 --> 00:20:08.559 -ahead and start walking us through the +00:24:22.160 --> 00:24:25.700 +And if there's one player you play all eight characters. -00:20:09.120 --> 00:20:11.440 -hand-drawn SVG stuff just a little bit +00:24:25.700 --> 00:24:29.180 +And depending on how many players you have you split up the -00:20:11.440 --> 00:20:12.960 -because I think +00:24:29.180 --> 00:24:33.160 +party in whatever way seems fair and equitable to everybody. -00:20:12.960 --> 00:20:14.640 -if that isn't interesting to people we +00:24:33.160 --> 00:24:36.010 +And similarly I said the dungeon is kind of a simple game -00:20:14.640 --> 00:20:17.120 -can just preempt for a question +00:24:36.010 --> 00:24:38.720 +like there's only three races and there's only three -00:20:17.120 --> 00:20:21.120 -okay so historically when we +00:24:38.720 --> 00:24:42.160 +classes, all of your characters are either human elf dwarf. -00:20:21.120 --> 00:20:24.080 -decided to actually start writing +00:24:42.160 --> 00:24:45.680 +They're all a warrior, a priest or a wizard, and all of -00:20:24.080 --> 00:20:25.840 -code one of the very first things we +00:24:45.680 --> 00:24:49.400 +these characters have, you know, special properties and -00:20:25.840 --> 00:20:26.720 -wanted to do +00:24:49.400 --> 00:24:52.820 +special talents, that is why they come together in this -00:20:26.720 --> 00:20:30.080 -was the maps because initially it seemed +00:24:52.820 --> 00:24:54.160 +party of eight. -00:20:30.080 --> 00:20:31.919 -like the maps were going to be one of +00:24:54.160 --> 00:24:57.730 +So essentially dungeon is a game about making up all of -00:20:31.919 --> 00:20:33.840 -the biggest challenges +00:24:57.730 --> 00:25:01.530 +these eight characters and stomping through the dungeon -00:20:33.840 --> 00:20:35.760 -in terms of how do we get a text editor +00:25:01.530 --> 00:25:04.160 +killing things taking their stuff. -00:20:35.760 --> 00:20:38.000 -to draw pictures for us +00:25:04.160 --> 00:25:08.120 +Well you're way over but I don't know how much I have to -00:20:38.000 --> 00:20:42.159 -we pretty quickly decided we wanted +00:25:08.120 --> 00:25:12.160 +add to that. I will just add that if, if you're. -00:20:42.159 --> 00:20:45.280 -to work with svgs because it allowed us +00:25:12.160 --> 00:25:15.570 +If one's passion as a dungeon master is killing player -00:20:45.280 --> 00:20:48.559 -to leverage the power of Emacs as a text +00:25:15.570 --> 00:25:19.210 +characters this game is meant for you. You don't have to -00:20:48.559 --> 00:20:52.159 -editor and a text manipulator to write +00:25:19.210 --> 00:25:23.050 +build your game like that. But that's definitely a thing -00:20:52.159 --> 00:20:56.080 -text graphics with the SVG format +00:25:23.050 --> 00:25:25.160 +that people do with this game. -00:20:56.080 --> 00:20:59.520 -so we did some SVG graphics by hand +00:25:25.160 --> 00:25:28.430 +And then as Erik said, it just encourages you to put your -00:20:59.520 --> 00:21:01.440 -we went in and just started hand coding +00:25:28.430 --> 00:25:32.160 +creativity on the table to bring all the different elements. -00:21:01.440 --> 00:21:02.640 -things that looked +00:25:32.160 --> 00:25:35.830 +Hopefully, this may be clear in our slides since we were a -00:21:02.640 --> 00:21:05.440 -visually like the maps we used to draw +00:25:35.830 --> 00:25:39.430 +little fumbling for the first few minutes of the talk -00:21:05.440 --> 00:21:07.440 -by hand on graph paper when +00:25:39.431 --> 00:25:44.160 +but there's also a kind of a player's guide that I started a few years ago. -00:21:07.440 --> 00:21:08.960 -we were you know sitting around the +00:25:44.160 --> 00:25:47.950 +That's not super complete, but does cover some -00:21:08.960 --> 00:21:11.360 -table +00:25:47.950 --> 00:25:52.160 +of the high level basics of the game that Erik's been talking from. -00:21:11.360 --> 00:21:14.559 -yep absolutely what emerged from that +00:25:52.160 --> 00:25:55.800 +And I would add that some of the things that you know some -00:21:14.559 --> 00:21:17.840 -is as we started working on some of +00:25:55.800 --> 00:25:58.890 +of what makes dungeon great is that there's a lot of -00:21:17.840 --> 00:21:20.400 -these files this particular image is a +00:25:58.890 --> 00:26:02.950 +mystery about it, like the player's handbook doesn't tell -00:21:20.400 --> 00:21:24.000 -test of some 20 wide water +00:26:02.950 --> 00:26:07.020 +you all of the rules, or like any really mystery and like -00:21:24.000 --> 00:21:26.240 -with some beaches around it and a +00:26:07.020 --> 00:26:09.160 +there's mazes and there's puzzles, -00:21:26.240 --> 00:21:28.000 -special chamber kind of off to the side +00:26:09.160 --> 00:26:12.650 +and you have to figure out how things work, and like we've -00:21:28.000 --> 00:21:29.679 -called a clapper +00:26:12.650 --> 00:26:16.020 +got all of these treasure items in there that could help -00:21:29.679 --> 00:21:33.760 -and this was the way we would code is by +00:26:16.020 --> 00:26:20.160 +you deal with a particular monster if it occurs to you to use it. -00:21:33.760 --> 00:21:36.559 -sketching by hand all of these things to +00:26:20.160 --> 00:26:24.160 +And, you know, like that. There's a lot of. -00:21:36.559 --> 00:21:37.600 -look right +00:26:24.160 --> 00:26:27.450 +You don't know what's going on you're dropped in the middle -00:21:37.600 --> 00:21:39.440 -and then we would take that code and we +00:26:27.450 --> 00:26:30.680 +of this situation and you have to try and survive and level -00:21:39.440 --> 00:21:42.080 -noticed it became real repetitive +00:26:30.680 --> 00:26:33.750 +up and figure it out. And if you succeed in doing that for -00:21:42.080 --> 00:21:43.919 -as we would go like chunk of water chunk +00:26:33.750 --> 00:26:36.520 +a long enough eventually you start realizing that there are -00:21:43.919 --> 00:21:45.440 -of water chunk of water +00:26:36.520 --> 00:26:40.890 +big picture puzzles that there are, you know, there is more to this than just -00:21:45.440 --> 00:21:46.880 -and we're like okay so what we really +00:26:40.890 --> 00:26:43.160 +killing things and taking their stuff. -00:21:46.880 --> 00:21:48.559 -need is to define a +00:26:43.160 --> 00:26:46.190 +And that's where the joy of designing these games comes in -00:21:48.559 --> 00:21:52.000 -set of we called it tiles but like +00:26:46.190 --> 00:26:48.890 +for me is like designing the mazes and designing the -00:21:52.000 --> 00:21:53.600 -you could think of it as rubber stamps +00:26:48.890 --> 00:26:51.890 +puzzles and like, oh yeah and then they're going to come -00:21:53.600 --> 00:21:55.760 -where we write this graphics code +00:26:51.890 --> 00:26:51.890 +out of this room and you know what they're going to do. -00:21:55.760 --> 00:21:57.440 -and then we're able to repeat it in +00:26:51.891 --> 00:26:57.160 +They're wanting to go that way. -00:21:57.440 --> 00:22:00.400 -different places around the map +00:26:57.160 --> 00:27:00.160 +So I'm going to put the trap right there. -00:22:00.400 --> 00:22:03.039 -you want to flip over to code view +00:27:00.160 --> 00:27:00.160 +And I walk right into it every time. -00:22:03.039 --> 00:22:07.120 -and show that or do we want to move into +00:27:00.161 --> 00:27:00.161 +And then when the party does get in your map -00:22:07.120 --> 00:22:10.240 -tiles code +00:27:00.162 --> 00:27:00.162 +and they do exactly what you thought and they hit the trap -00:22:10.240 --> 00:22:12.720 -so you know you can see just really +00:27:00.163 --> 00:27:07.820 +it's just really satisfying -00:22:12.720 --> 00:22:14.320 -obviously here the only thing that's +00:27:07.820 --> 00:27:07.820 +to watch the look on their little faces -00:22:14.320 --> 00:22:15.200 -changing from +00:27:07.821 --> 00:27:12.160 +as they squirm and struggle to stay alive. -00:22:15.200 --> 00:22:18.240 -chunk of water to chunk of water is the +00:27:12.160 --> 00:27:14.580 +Yeah, that's, that's what I was trying to get at. Thanks. -00:22:18.240 --> 00:22:21.600 -x and y coordinates +00:27:14.580 --> 00:27:18.160 +All right, that was perfect for me. All right. -00:22:21.600 --> 00:22:24.640 -we're you know we can skip getting into +00:27:18.160 --> 00:27:21.360 +So so highlight your question for me if you think it's -00:22:24.640 --> 00:22:26.000 -the SVG directives +00:27:21.360 --> 00:27:24.800 +important we grab it here before we jump into demos, -00:22:26.000 --> 00:22:29.360 -and how all of the path statements +00:27:24.801 --> 00:27:28.160 +but otherwise I think it's time to try running some code. -00:22:29.360 --> 00:22:30.640 -actually work +00:27:28.160 --> 00:27:30.160 +Let's say. -00:22:30.640 --> 00:22:33.679 -but you can trust us +00:27:30.160 --> 00:27:37.160 +Okay, I say do it. Okay, so you less less camera more more emacs now. -00:22:33.679 --> 00:22:36.480 -all of these d equals and there's m's +00:27:37.160 --> 00:27:40.380 +And hopefully I could find the right emacs the right -00:22:36.480 --> 00:22:39.039 -and h's and v's that turns out to be +00:27:40.380 --> 00:27:43.160 +desktop. All right, there we are. -00:22:39.039 --> 00:22:41.039 -horizontal lines and vertical lines and +00:27:43.160 --> 00:27:49.160 +So we'll try to fire up -00:22:41.039 --> 00:22:42.480 -cursor moves and it's kind of like +00:27:49.160 --> 00:27:59.160 +a command right now. And I usually like to do the full path to emacs. -00:22:42.480 --> 00:22:44.159 -turtle graphics if anyone +00:27:59.160 --> 00:28:07.160 +When I'm going to run it under minus q. -00:22:44.159 --> 00:22:46.640 -remembers that far back and we're +00:28:07.160 --> 00:28:13.160 +All right. -00:22:46.640 --> 00:22:48.720 -picking up our pen and dropping it and +00:28:13.160 --> 00:28:17.160 +Let's have some IELM. -00:22:48.720 --> 00:22:54.720 -drawing lines around on our map +00:28:17.160 --> 00:28:23.270 +All right, and then I'm also going to do a load file on the -00:22:54.720 --> 00:22:56.240 -so we do have a few questions if you +00:28:23.270 --> 00:28:29.790 +net script that you can find in the repository in the emacs -00:22:56.240 --> 00:22:58.000 -want to take them now otherwise +00:28:29.790 --> 00:28:36.160 +user and it's init scripts -00:22:58.000 --> 00:23:01.200 -we can also jump in - -00:23:01.200 --> 00:23:03.120 -let's get them while they're fresh okay - -00:23:03.120 --> 00:23:04.559 -sounds good - -00:23:04.559 --> 00:23:07.520 -so we'll probably shift to question - -00:23:07.520 --> 00:23:08.000 -and answer - -00:23:08.000 --> 00:23:10.799 -mode for up to 15 minutes here so if you - -00:23:10.799 --> 00:23:11.919 -do have questions - -00:23:11.919 --> 00:23:14.480 -maybe stack rank go ahead and sort - -00:23:14.480 --> 00:23:15.679 -the questions - -00:23:15.679 --> 00:23:17.600 -a little for us or comment on them to - -00:23:17.600 --> 00:23:18.960 -let us know which ones you want to see - -00:23:18.960 --> 00:23:19.760 -us get here - -00:23:19.760 --> 00:23:21.280 -if we start getting a little long-winded - -00:23:21.280 --> 00:23:23.600 -or nudges along we'll take direction - -00:23:23.600 --> 00:23:26.960 -but thanks for your questions I'd - -00:23:26.960 --> 00:23:28.799 -like to see a demo as well we'll look at - -00:23:28.799 --> 00:23:30.720 -that with the remaining time after this - -00:23:30.720 --> 00:23:32.159 -question block - -NOTE Jas looked at things up to here - -00:23:32.159 --> 00:23:35.200 -more about what the game is - -00:23:35.200 --> 00:23:38.720 -okay sure so let's let's take our - -00:23:38.720 --> 00:23:40.720 -one minute each swing at what the - -00:23:40.720 --> 00:23:42.799 -game is you want to go first I called - -00:23:42.799 --> 00:23:45.120 -weapons - -00:23:45.120 --> 00:23:48.840 -okay Dungeon - -00:23:48.840 --> 00:23:52.720 -is like role-playing games - -00:23:52.720 --> 00:23:55.440 -but you don't really do role-playing - -00:23:55.440 --> 00:23:56.159 -like the - -00:23:56.159 --> 00:23:57.919 -for me the thing the core of being a - -00:23:57.919 --> 00:23:59.520 -role-playing game is you - -00:23:59.520 --> 00:24:02.080 -take on the role of being your character - -00:24:02.080 --> 00:24:03.039 -and you play - -00:24:03.039 --> 00:24:06.000 -your character and Dungeon's not like - -00:24:06.000 --> 00:24:06.400 -that - -00:24:06.400 --> 00:24:10.320 -Dungeon you can play - -00:24:10.320 --> 00:24:12.640 -so the Dungeon party always has eight - -00:24:12.640 --> 00:24:13.840 -characters in it - -00:24:13.840 --> 00:24:15.840 -there's four in the front row and four - -00:24:15.840 --> 00:24:17.679 -in the back row and you march through - -00:24:17.679 --> 00:24:18.720 -the Dungeon - -00:24:18.720 --> 00:24:22.159 -fighting whatever you encounter and if - -00:24:22.159 --> 00:24:24.000 -there's one player you play all eight - -00:24:24.000 --> 00:24:25.200 -characters - -00:24:25.200 --> 00:24:27.120 -and depending on how many players you - -00:24:27.120 --> 00:24:28.720 -have you split up the party - -00:24:28.720 --> 00:24:30.799 -in whatever way seems fair and equitable - -00:24:30.799 --> 00:24:32.960 -to everybody - -00:24:32.960 --> 00:24:34.880 -similarly I said the Dungeon is kind of - -00:24:34.880 --> 00:24:36.720 -a simple game like there's only - -00:24:36.720 --> 00:24:38.320 -three races and there's only three - -00:24:38.320 --> 00:24:40.080 -classes all of your characters are - -00:24:40.080 --> 00:24:41.760 -either human elf dwarf - -00:24:41.760 --> 00:24:44.080 -they're all a warrior a priest or a - -00:24:44.080 --> 00:24:44.880 -wizard - -00:24:44.880 --> 00:24:46.640 -and all of these characters have you - -00:24:46.640 --> 00:24:48.320 -know special properties - -00:24:48.320 --> 00:24:51.279 -and special talents that is why they - -00:24:51.279 --> 00:24:53.760 -come together in this party of eight - -00:24:53.760 --> 00:24:56.240 -but essentially Dungeon is a game about - -00:24:56.240 --> 00:24:57.600 -making up all of these - -00:24:57.600 --> 00:25:00.000 -eight characters and stomping through - -00:25:00.000 --> 00:25:01.679 -the Dungeon killing things taking their - -00:25:01.679 --> 00:25:03.840 -stuff - -00:25:03.840 --> 00:25:05.120 -well you're way over but I don't know - -00:25:05.120 --> 00:25:06.960 -how much I have to add to that - -00:25:06.960 --> 00:25:10.080 -I will just add that if if you're - -00:25:10.080 --> 00:25:14.159 -if if one's passion as a Dungeon - -00:25:14.159 --> 00:25:16.559 -master is killing player characters this - -00:25:16.559 --> 00:25:17.120 -game - -00:25:17.120 --> 00:25:19.600 -is meant for you you don't have to build - -00:25:19.600 --> 00:25:21.039 -your game like that - -00:25:21.039 --> 00:25:22.559 -but that's definitely a thing that - -00:25:22.559 --> 00:25:24.400 -people do with this game - -00:25:24.400 --> 00:25:27.360 -and then as Erik said it just - -00:25:27.360 --> 00:25:28.960 -encourages you to put your creativity on - -00:25:28.960 --> 00:25:30.320 -the table to bring all the different - -00:25:30.320 --> 00:25:31.039 -elements - -00:25:31.039 --> 00:25:33.760 -and this hopefully this may be clear - -00:25:33.760 --> 00:25:35.039 -in our slides since we were a little - -00:25:35.039 --> 00:25:36.400 -fumbling for the first few minutes of - -00:25:36.400 --> 00:25:36.960 -the talk - -00:25:36.960 --> 00:25:40.480 -but there's also a kind of a player's - -00:25:40.480 --> 00:25:41.200 -guide - -00:25:41.200 --> 00:25:43.760 -that that I started a few years ago - -00:25:43.760 --> 00:25:45.919 -that's that's not super complete - -00:25:45.919 --> 00:25:48.400 -but but does cover some of the high - -00:25:48.400 --> 00:25:50.159 -level basics of the game that Erik's - -00:25:50.159 --> 00:25:52.320 -been talking from - -00:25:52.320 --> 00:25:55.679 -and I would add that some of the things - -00:25:55.679 --> 00:25:56.960 -you know some of what makes Dungeon - -00:25:56.960 --> 00:25:58.480 -great is that there's a lot of mystery - -00:25:58.480 --> 00:25:59.360 -about it - -00:25:59.360 --> 00:26:01.120 -like the player's handbook doesn't tell - -00:26:01.120 --> 00:26:02.880 -you all of the rules - -00:26:02.880 --> 00:26:06.080 -or like really mystery - -00:26:06.080 --> 00:26:08.080 -and like there's mazes and there's - -00:26:08.080 --> 00:26:09.679 -puzzles and - -00:26:09.679 --> 00:26:12.240 -you have to figure out how things work - -00:26:12.240 --> 00:26:12.799 -and like - -00:26:12.799 --> 00:26:14.559 -we've got all of these treasure items in - -00:26:14.559 --> 00:26:16.640 -there that could help you deal with a - -00:26:16.640 --> 00:26:18.480 -particular monster if it occurs to you - -00:26:18.480 --> 00:26:19.919 -to use it - -00:26:19.919 --> 00:26:22.720 -and you know like that there's a lot - -00:26:22.720 --> 00:26:23.360 -of - -00:26:23.360 --> 00:26:25.279 -you don't know what's going on you're - -00:26:25.279 --> 00:26:27.039 -dropped in the middle of this situation - -00:26:27.039 --> 00:26:28.559 -and you have to try and survive - -00:26:28.559 --> 00:26:31.919 -and level up and figure it out and - -00:26:31.919 --> 00:26:33.840 -if you succeed in doing that for long - -00:26:33.840 --> 00:26:35.520 -enough eventually you start realizing - -00:26:35.520 --> 00:26:37.520 -that there are big picture puzzles - -00:26:37.520 --> 00:26:40.000 -that there are you know there is more to - -00:26:40.000 --> 00:26:41.760 -this than just killing things and taking - -00:26:41.760 --> 00:26:43.360 -their stuff - -00:26:43.360 --> 00:26:46.000 -and that's where the joy of designing - -00:26:46.000 --> 00:26:47.279 -these games comes in - -00:26:47.279 --> 00:26:49.679 -for me is like designing the mazes and - -00:26:49.679 --> 00:26:51.679 -designing the puzzles and like - -00:26:51.679 --> 00:26:53.200 -oh yeah and then they're going to come - -00:26:53.200 --> 00:26:54.240 -out of this room and you know what - -00:26:54.240 --> 00:26:55.919 -they're going to do they want to - -00:26:55.919 --> 00:26:58.240 -go that way so I'm going to put the trap - -00:26:58.240 --> 00:26:59.600 -right there - -00:26:59.600 --> 00:27:01.360 -and they'll walk right into it every - -00:27:01.360 --> 00:27:03.840 -time and then when the party does get in - -00:27:03.840 --> 00:27:05.440 -your map and they do exactly what you - -00:27:05.440 --> 00:27:07.200 -thought and they hit the trap it's just - -00:27:07.200 --> 00:27:09.279 -really satisfying to watch the look on - -00:27:09.279 --> 00:27:10.960 -their little faces as they squirm and - -00:27:10.960 --> 00:27:12.320 -struggle to stay alive - -00:27:12.320 --> 00:27:13.760 -yeah that's that's what I was trying to - -00:27:13.760 --> 00:27:15.520 -get at thanks all right that was perfect - -00:27:15.520 --> 00:27:16.320 -for me - -00:27:16.320 --> 00:27:19.200 -all right so so highlight your - -00:27:19.200 --> 00:27:20.320 -question for me if you think it's - -00:27:20.320 --> 00:27:21.840 -important we grab it here before we jump - -00:27:21.840 --> 00:27:22.960 -into demos - -00:27:22.960 --> 00:27:25.039 -but otherwise I think it's time to try - -00:27:25.039 --> 00:27:27.919 -running some code - -00:27:27.919 --> 00:27:31.279 -what say okay I say do it - -00:27:31.279 --> 00:27:33.840 -okay so you less less camera more more - -00:27:33.840 --> 00:27:36.480 -Emacs now - -00:27:36.480 --> 00:27:39.120 -and hopefully I could find the right e - -00:27:39.120 --> 00:27:39.840 -max - -00:27:39.840 --> 00:27:42.960 -the right desktop all right there we are - -00:27:42.960 --> 00:27:48.799 -so we'll try to fire up - -00:27:48.799 --> 00:27:54.000 -and right now and I usually like to do - -00:27:54.000 --> 00:27:59.120 -the full path to Emacs - -00:27:59.120 --> 00:28:07.279 -when I'm going to run it under minus q - -00:28:07.279 --> 00:28:13.120 -all right - -00:28:13.120 --> 00:28:16.720 -let's have some IELM - -00:28:16.720 --> 00:28:19.360 -all right and then I'm also going to do - -00:28:19.360 --> 00:28:20.000 -a - -00:28:20.000 --> 00:28:24.000 -load file on the init script that you - -00:28:24.000 --> 00:28:25.840 -can find in the repository - -00:28:25.840 --> 00:28:30.480 -in the Emacs user and it's - -00:28:30.480 --> 00:28:34.960 -init scripts - -00:28:34.960 --> 00:28:40.159 +00:28:36.160 --> 00:28:41.160 users folder -00:28:40.159 --> 00:28:48.080 -user folder nice - -00:28:48.080 --> 00:28:49.919 -and it's called init dm because that - -00:28:49.919 --> 00:28:51.840 -happened to fit with my naming scheme - -00:28:51.840 --> 00:28:55.360 -potentially terrible all right and with - -00:28:55.360 --> 00:28:56.320 -that loaded - -00:28:56.320 --> 00:28:58.320 -in theory some very basic stuff will - -00:28:58.320 --> 00:29:00.159 -work even without us doing anything in - -00:29:00.159 --> 00:29:02.159 -IELM so I think the the last thing Erik - -00:29:02.159 --> 00:29:04.399 -was talking about was the SVG code - -00:29:04.399 --> 00:29:06.000 -behind the maps - -00:29:06.000 --> 00:29:10.720 -there as kind of the technical thread - -00:29:10.720 --> 00:29:13.760 -so we'll just fire open the maps pick a - -00:29:13.760 --> 00:29:15.440 -Dungeon level - -00:29:15.440 --> 00:29:18.480 -let's pick a pretty one okay if I show - -00:29:18.480 --> 00:29:19.840 -this - -00:29:19.840 --> 00:29:23.440 -yeah whatever - -00:29:23.440 --> 00:29:27.679 -is that the surface yeah - -00:29:27.679 --> 00:29:30.799 -and let's scale it here I think if I - -00:29:30.799 --> 00:29:32.159 -wrap - -00:29:32.159 --> 00:29:34.960 -like once once we got the engine up and - -00:29:34.960 --> 00:29:36.399 -running a little bit - -00:29:36.399 --> 00:29:39.120 -we decided to do some experimentation - -00:29:39.120 --> 00:29:42.480 -about seeing what we could do to push - -00:29:42.480 --> 00:29:46.080 -the limits of our tile - -00:29:46.080 --> 00:29:49.360 -and gender so we more or less on the - -00:29:49.360 --> 00:29:50.080 -surface - -00:29:50.080 --> 00:29:53.120 -map I - -00:29:53.120 --> 00:29:56.399 -basically started with almost no - -00:29:56.399 --> 00:29:58.399 -tiles from below like the water and the - -00:29:58.399 --> 00:30:00.240 -beaches and the general store and the - -00:30:00.240 --> 00:30:01.279 -stairs - -00:30:01.279 --> 00:30:03.679 -were existing tiles but then we were - -00:30:03.679 --> 00:30:05.200 -like this is going to be a surface map - -00:30:05.200 --> 00:30:07.279 -so we're outdoors so I want hills and I - -00:30:07.279 --> 00:30:08.399 -want trees +00:28:41.160 --> 00:28:48.160 +nice. -00:30:08.399 --> 00:30:11.760 -and I want grass and it took a little +00:28:48.160 --> 00:28:51.530 +And it's called init-dm because that happened to fit with -00:30:11.760 --> 00:30:12.399 -while +00:28:51.531 --> 00:28:54.160 +my naming scheme, potentially terrible. -00:30:12.399 --> 00:30:15.039 -playing with SVG to come up with some +00:28:54.160 --> 00:28:54.160 +All right, and with that loaded in theory some very basic stuff will work -00:30:15.039 --> 00:30:16.320 -acceptable code +00:28:54.161 --> 00:28:54.161 +even without us doing anything in IELM -00:30:16.320 --> 00:30:18.480 -but once the like the grass gets tiled +00:28:54.162 --> 00:29:05.870 +so I think the last thing Erik was talking about -00:30:18.480 --> 00:30:19.840 -out it +00:29:05.871 --> 00:29:07.160 +was the SVG code behind the maps. -00:30:19.840 --> 00:30:21.600 -kind of you know gives the illusion of +00:29:07.160 --> 00:29:11.800 +There as kind of the technical thread so we'll just fire -00:30:21.600 --> 00:30:23.039 -grass and +00:29:11.800 --> 00:29:15.160 +open the maps, pick a dungeon level. -00:30:23.039 --> 00:30:24.880 -you know these are all in my estimation +00:29:15.160 --> 00:29:17.160 +Let's pick a pretty one. -00:30:24.880 --> 00:30:26.399 -kind of crude graphics +00:29:17.160 --> 00:29:19.160 +Okay, if I show this. -00:30:26.399 --> 00:30:28.640 -but we're at the proof of concept stage +00:29:19.160 --> 00:29:23.160 +Yeah, whatever. -00:30:28.640 --> 00:30:30.399 -and it definitely proves that we can use +00:29:23.160 --> 00:29:27.160 +Is that the surface. Yeah. -00:30:30.399 --> 00:30:31.679 -our graphics engine +00:29:27.160 --> 00:29:32.740 +And let's scale it here I think if I recall that fun like -00:30:31.679 --> 00:30:34.640 -to decide what we want our maps to look +00:29:32.740 --> 00:29:36.820 +once, once we got the engine up and running a little bit. -00:30:34.640 --> 00:30:35.279 -like +00:29:36.820 --> 00:29:40.870 +We decided to do some experimentation about seeing -00:30:35.279 --> 00:30:39.440 -and real quickly compose new map tiles +00:29:40.871 --> 00:29:47.160 +what we could do to push the limits of our tile engine. -00:30:39.440 --> 00:30:44.240 -and stamp out a bunch of new maps +00:29:47.160 --> 00:29:54.450 +So we more or less on the surface map, I basically started -00:30:44.240 --> 00:30:46.880 -so now I'll show off one of the other +00:29:54.450 --> 00:29:54.450 +with almost no tiles from below like the water -00:30:46.880 --> 00:30:48.640 -things so the next thing we did once we +00:29:54.451 --> 00:30:01.370 +and the beaches and the general store and the stairs were existing tiles -00:30:48.640 --> 00:30:50.559 -once we had the maps doing +00:30:01.371 --> 00:30:04.730 +but then we were like this is going to be surface maps. -00:30:50.559 --> 00:30:51.919 -and we haven't gotten into the features +00:30:04.731 --> 00:30:07.160 +We're outdoors so I want hills -00:30:51.919 --> 00:30:53.600 -of the maps we can we can appoint time +00:30:07.160 --> 00:30:11.150 +and I want trees, and I want grass, and it took a little -00:30:53.600 --> 00:30:54.960 -to that or not +00:30:11.150 --> 00:30:15.430 +while playing with SVG to come up with some acceptable code, -00:30:54.960 --> 00:30:58.960 -but there are a number of +00:30:15.430 --> 00:30:19.610 +but once the like the grass gets tiled out, it kind of, -00:30:58.960 --> 00:31:00.720 -featured features there that we can +00:30:19.610 --> 00:30:24.510 +you know, gives the illusion of grass, and, you know, these -00:31:00.720 --> 00:31:02.840 -look at the +00:30:24.510 --> 00:30:25.160 +are all in my estimation -00:31:02.840 --> 00:31:05.760 -we then wanted to +00:30:25.160 --> 00:30:29.970 +of crude graphics, but we're at the proof of concept stage, -00:31:05.760 --> 00:31:08.640 -try to see if that could make other +00:30:29.970 --> 00:30:34.130 +and it definitely proves that we can use our graphics -00:31:08.640 --> 00:31:10.399 -interfaces more appealing so we built +00:30:34.130 --> 00:30:38.490 +engine to decide what we want our maps to look like, and -00:31:10.399 --> 00:31:11.360 -stuff like +00:30:38.490 --> 00:30:42.970 +real quickly compose new map tiles and stamp out a bunch of -00:31:11.360 --> 00:31:14.320 -oop that's going to be the map again +00:30:42.970 --> 00:30:44.160 +new maps. -00:31:14.320 --> 00:31:15.919 -I'll just run it here through I +00:30:44.160 --> 00:30:48.050 +So now I'll show off one of the other things. So the next -00:31:15.919 --> 00:31:18.320 -am so it's more obvious what I'm doing +00:30:48.050 --> 00:30:51.680 +thing we did once we once we had the maps doing, and we -00:31:18.320 --> 00:31:20.080 +00:30:51.680 --> 00:30:56.040 +haven't gotten into the features of the maps we can we can +00:30:56.040 --> 00:30:59.200 +appoint time to that or not, but there are a number of -00:31:20.080 --> 00:31:21.679 -so let's look next to the character +00:30:59.200 --> 00:31:01.160 +features there that we can look at. -00:31:21.679 --> 00:31:26.080 -sheet oops +00:31:01.160 --> 00:31:06.310 +The, we then wanted to try to see if that could make other -00:31:26.080 --> 00:31:32.880 -back and alt p doesn't work okay +00:31:06.310 --> 00:31:11.550 +interfaces more appealing so we built stuff like, that's -00:31:32.880 --> 00:31:35.840 -that's a bummer that is not +00:31:11.550 --> 00:31:14.160 +going to be the map again. -00:31:35.840 --> 00:31:38.240 -autoloaded +00:31:14.160 --> 00:31:18.580 +I'll just run it here through I am so it's more obvious -00:31:38.240 --> 00:31:40.559 -so this this project is a bit of a mess +00:31:18.580 --> 00:31:20.160 +what I'm doing. -00:31:40.559 --> 00:31:41.600 -right now y'all +00:31:20.160 --> 00:31:23.160 +So let's look next to the character sheet. -00:31:41.600 --> 00:31:43.120 -it does some stuff that's really +00:31:23.160 --> 00:31:27.160 +Oops. -00:31:43.120 --> 00:31:45.120 -exciting to us but the code is terrible +00:31:27.160 --> 00:31:33.160 +And alt P doesn't work. Okay. -00:31:45.120 --> 00:31:47.039 -and we need all the help we can get +00:31:33.160 --> 00:31:35.160 +That's a bummer. -00:31:47.039 --> 00:31:48.399 -being told what our problems are and how +00:31:35.160 --> 00:31:38.160 +That is not auto loaded. -00:31:48.399 --> 00:31:49.279 -to fix them +00:31:38.160 --> 00:31:41.120 +So this, this project is a bit of a mess right now, y'all, -00:31:49.279 --> 00:31:51.360 -so that is if you take nothing away from +00:31:41.120 --> 00:31:43.800 +it does some stuff that's really exciting to us but the -00:31:51.360 --> 00:31:52.559 -this talk +00:31:43.800 --> 00:31:46.560 +code is terrible and we need all the help we can get being -00:31:52.559 --> 00:31:54.799 -take away from it that we could use +00:31:46.560 --> 00:31:49.160 +told what our problems are and how to fix them. -00:31:54.799 --> 00:32:00.480 -your help +00:31:49.160 --> 00:31:53.160 +So that is if you take nothing away from this talk. -00:32:00.480 --> 00:32:02.399 -yeah that doubles back to when we +00:31:53.160 --> 00:32:00.160 +Take away from it that we could use your help. -00:32:02.399 --> 00:32:04.640 -were talking about larry wall's cardinal +00:32:00.160 --> 00:32:03.692 +Yeah, that doubles back to when we were talking about -00:32:04.640 --> 00:32:06.320 -virtues of programming like we +00:32:03.693 --> 00:32:07.800 +Larry Wall's cardinal virtues of programming like we definitely -00:32:06.320 --> 00:32:07.440 -definitely +00:32:07.800 --> 00:32:11.160 +took on some hubris, thinking we could do this. -00:32:07.440 --> 00:32:09.760 -took on some hubris thinking we could do +00:32:11.160 --> 00:32:14.300 +We might not be wrong, but we could do it easier with more -00:32:09.760 --> 00:32:10.640 -this +00:32:14.300 --> 00:32:18.160 +hands, you know, many hands make light work. All right. -00:32:10.640 --> 00:32:13.519 -and we might not be wrong but we +00:32:18.160 --> 00:32:21.160 +I'll bite. -00:32:13.519 --> 00:32:14.799 -could do it easier with +00:32:21.160 --> 00:32:24.580 +Yeah, and the character she won't load for us today I had -00:32:14.799 --> 00:32:16.799 -more hands you know many hands make +00:32:24.580 --> 00:32:27.880 +some problems with my version control I had to revert my -00:32:16.799 --> 00:32:18.240 -light work all right +00:32:27.880 --> 00:32:31.290 +thing I threw all my local changes in a stash and it's it's -00:32:18.240 --> 00:32:21.760 -I'll bite yeah +00:32:31.290 --> 00:32:35.160 +a terrible mess let's look at stuff I tested already today. -00:32:21.760 --> 00:32:23.360 -and the character she won't load for us +00:32:35.160 --> 00:32:40.160 +Before you got the battle board available. -00:32:23.360 --> 00:32:24.799 -today I had some problems with my +00:32:40.160 --> 00:32:42.160 +Let's find out. -00:32:24.799 --> 00:32:26.960 -version control I had to revert my thing +00:32:42.160 --> 00:32:46.160 +First of all, the library. -00:32:26.960 --> 00:32:29.360 -I threw all my local changes in a stash +00:32:46.160 --> 00:32:57.160 +In fact, actually, your basic require should work. -00:32:29.360 --> 00:32:31.200 -and it's it's a terrible mess let's look +00:32:57.160 --> 00:32:59.160 +No. -00:32:31.200 --> 00:32:32.080 -at stuff I +00:32:59.160 --> 00:33:03.490 +You can try a load library. You know what, let's, I'm just -00:32:32.080 --> 00:32:37.519 -tested already today before +00:33:03.490 --> 00:33:07.350 +going to go ahead and give it to you as a lab beast, since -00:32:37.519 --> 00:32:40.559 -you got the battle board available +00:33:07.350 --> 00:33:10.160 +that's probably more fun to watch. -00:32:40.559 --> 00:32:43.760 -let's find out first we'll load library +00:33:10.160 --> 00:33:16.570 +So we'll take it from my own and this is more likely to be -00:32:43.760 --> 00:32:45.760 -it +00:33:16.570 --> 00:33:17.160 +healthy. -00:32:45.760 --> 00:32:48.000 -in fact actually your basic require +00:33:17.160 --> 00:33:19.160 +Since only some of the time. -00:32:48.000 --> 00:32:57.440 -should work +00:33:19.160 --> 00:33:25.160 +First we have to control x, all the IDM. -00:32:57.440 --> 00:33:00.480 -no I can try load library +00:33:25.160 --> 00:33:30.360 +All right, and having then loaded the net control you have -00:33:00.480 --> 00:33:02.640 -you know what let's forg I'm just +00:33:30.360 --> 00:33:35.550 +nine should give me the maps, and we can verify things work -00:33:02.640 --> 00:33:03.760 -going to go ahead and give it to you as a +00:33:35.550 --> 00:33:39.160 +in a basic way just by changing level. -00:33:03.760 --> 00:33:04.960 -lab beast +00:33:39.160 --> 00:33:44.160 +Let's look at something else. -00:33:04.960 --> 00:33:09.919 -since that's probably more fun to watch +00:33:44.160 --> 00:33:49.380 +I mentioned, there were a number of bindings, show them -00:33:09.919 --> 00:33:11.600 -we'll take it from my own inet +00:33:49.380 --> 00:33:50.160 +briefly. -00:33:11.600 --> 00:33:16.640 -this is more likely to be healthy +00:33:50.160 --> 00:33:55.820 +We wrote our own functions to handle movement. Some of -00:33:16.640 --> 00:33:19.840 -since only some of the time first we +00:33:55.820 --> 00:34:00.872 +those in SVG dot el the left, left and right movements -00:33:19.840 --> 00:33:20.880 -have to +00:34:00.873 --> 00:34:07.160 +didn't seem to work quite quite likely coding, of course. -00:33:20.880 --> 00:33:24.799 -ctrl x alt I d m +00:34:07.160 --> 00:34:10.160 +Um, all right, enough. -00:33:24.799 --> 00:33:28.559 -all right and having then loaded +00:34:10.160 --> 00:34:13.160 +So let's, let's see if battle board works now. -00:33:28.559 --> 00:33:31.760 -the init control u f9 +00:34:13.160 --> 00:34:16.160 +I really thought that was on F7. -00:33:31.760 --> 00:33:34.080 -should give me the maps and we can +00:34:16.160 --> 00:34:19.160 +Up that's the character sheet suite. -00:33:34.080 --> 00:33:35.200 -verify +00:34:19.160 --> 00:34:25.160 +Okay, how to use your bindings. -00:33:35.200 --> 00:33:37.200 -things work in a basic way just by +00:34:25.160 --> 00:34:28.160 +So that looks a little better. -00:33:37.200 --> 00:33:38.640 -changing level +00:34:28.160 --> 00:34:34.160 +So let's talk about the character sheet. -00:33:38.640 --> 00:33:43.200 -let's look at something else +00:34:34.160 --> 00:34:36.160 +Yeah. -00:33:43.200 --> 00:33:46.399 -I mentioned there were a number of +00:34:36.160 --> 00:34:40.570 +So the character sheet was our first big repurposing of the -00:33:46.399 --> 00:33:47.360 -bindings +00:34:40.570 --> 00:34:45.160 +engine that we couldn't do the battle board program that. -00:33:47.360 --> 00:33:51.600 -show them briefly we wrote our own +00:34:45.160 --> 00:34:54.160 +Let's see if that runs now to. -00:33:51.600 --> 00:33:54.080 -functions to handle movement some of +00:34:54.160 --> 00:35:01.160 +It's not interactive if it does. -00:33:54.080 --> 00:33:56.640 -those in SVG.el the left +00:35:01.160 --> 00:35:05.160 +Good. -00:33:56.640 --> 00:33:59.679 -left and right movements didn't +00:35:05.160 --> 00:35:09.160 +So, -00:33:59.679 --> 00:34:02.640 -didn't seem to work quite quite likely +00:35:09.160 --> 00:35:12.360 +try smex guess? No joy. All right, I'm not sure what's -00:34:02.640 --> 00:34:03.120 -coding +00:35:12.360 --> 00:35:14.160 +up with the battle board Erik. -00:34:03.120 --> 00:34:06.720 -of course +00:35:14.160 --> 00:35:17.190 +We haven't messed with that one for a while in fact we had -00:34:06.720 --> 00:34:09.760 -all right enough +00:35:17.190 --> 00:35:20.270 +discussed using its code as an example so maybe we'll debug -00:34:09.760 --> 00:34:11.760 -so let's let's see if battleboard works +00:35:20.270 --> 00:35:21.160 +it with you. -00:34:11.760 --> 00:34:13.040 -now +00:35:21.160 --> 00:35:24.160 +I'll certainly check for questions first. -00:34:13.040 --> 00:34:15.760 -I really thought that was on f7 up +00:35:24.160 --> 00:35:29.740 +Um, the. So the character sheet which is not scaling -00:34:15.760 --> 00:34:17.040 -that's the character sheet +00:35:29.740 --> 00:35:31.160 +ideally here. -00:34:17.040 --> 00:34:19.679 -sweet that's why you stay out of user +00:35:31.160 --> 00:35:36.160 +See if reloading it does anything. -00:34:19.679 --> 00:34:24.879 -bindings +00:35:36.160 --> 00:35:37.160 +Nope. -00:34:24.879 --> 00:34:28.079 -so that looks a little better +00:35:37.160 --> 00:35:40.660 +As far as I can tell, assuming you don't have this -00:34:28.079 --> 00:34:33.919 -so let's talk about the character sheet +00:35:40.660 --> 00:35:43.160 +implemented character sheet. -00:34:33.919 --> 00:34:35.919 -yeah +00:35:43.160 --> 00:35:49.800 +That's right, there's everything in scale, it take in order -00:34:35.919 --> 00:34:38.000 -so the character sheet was our first big +00:35:49.800 --> 00:35:54.160 +to get what you were looking at there. -00:34:38.000 --> 00:34:39.839 -repurposing +00:35:54.160 --> 00:35:56.160 +All right. -00:34:39.839 --> 00:34:42.560 -of the engine that we couldn't do the +00:35:56.160 --> 00:36:03.201 +This, this whole thing is hard coded, basically to the -00:34:42.560 --> 00:34:44.159 -battle board program +00:36:03.202 --> 00:36:08.160 +gills, except for things like this. -00:34:44.159 --> 00:34:53.599 -that let's see if that runs now too +00:36:08.160 --> 00:36:11.780 +This program represents a re implementation of the drawing -00:34:53.599 --> 00:35:00.880 -it's not interactive if it does +00:36:11.780 --> 00:36:17.420 +engine using all of the same things. Let's see that -00:35:00.880 --> 00:35:04.960 -good +00:36:17.420 --> 00:36:20.160 +selected so -00:35:04.960 --> 00:35:08.480 -no +00:36:20.160 --> 00:36:23.160 +we'll just try bringing up a map again. -00:35:08.480 --> 00:35:11.760 -try let cemex guess no joy all right I'm +00:36:23.160 --> 00:36:27.180 +There's one and you'll notice DM map doesn't know anything -00:35:11.760 --> 00:35:13.040 -not sure what's up with the battle board +00:36:27.180 --> 00:36:31.240 +about the new draw engine, and there are a couple of places -00:35:13.040 --> 00:35:14.079 -Erik +00:36:31.240 --> 00:36:35.160 +where the new draw engine is still hooked in to the. -00:35:14.079 --> 00:35:15.280 -we haven't messed with that one for a +00:36:35.160 --> 00:36:38.250 +For example, particularly the sizing of the graph paper -00:35:15.280 --> 00:35:17.119 -while in fact +00:36:38.250 --> 00:36:43.160 +background. So I've started the work in DM draw. -00:35:17.119 --> 00:35:18.880 -we had discussed using its code as an +00:36:44.160 --> 00:36:47.950 +Of trying to show how exactly we did this removing the, how -00:35:18.880 --> 00:35:21.040 -example so maybe we'll debug it with you +00:36:47.950 --> 00:36:51.040 +did we get data out of org mode that I talked about -00:35:21.040 --> 00:35:22.640 -I'll certainly check for questions +00:36:51.040 --> 00:36:56.410 +yesterday with our ETL flows, and just focusing on what how -00:35:22.640 --> 00:35:25.359 -first +00:36:56.410 --> 00:37:00.580 +did we solve the problem of predicated drawing, which I -00:35:25.359 --> 00:35:28.079 -the so the character sheet which is +00:37:00.580 --> 00:37:04.290 +realized we didn't really talk about so should I jump into -00:35:28.079 --> 00:35:31.280 -not scaling ideally here +00:37:04.290 --> 00:37:05.160 +that. -00:35:31.280 --> 00:35:35.680 -see if reloading it does anything +00:37:05.160 --> 00:37:06.160 +Yeah, I guess. -00:35:35.680 --> 00:35:39.440 -nope not as far as I can tell assuming +00:37:06.160 --> 00:37:09.160 +How are we on time, we have time for detours. -00:35:39.440 --> 00:35:40.960 -you don't have this scale implemented +00:37:09.160 --> 00:37:12.450 +Um, yeah, it looks like we could spend two or three minutes -00:35:40.960 --> 00:35:42.800 -for character sheet +00:37:12.450 --> 00:37:15.160 +on that and then come back for the questions. -00:35:42.800 --> 00:35:44.960 -that's right there's everything in scale +00:37:15.160 --> 00:37:18.160 +Cool. -00:35:44.960 --> 00:35:46.800 -it take in order to get what you were +00:37:18.160 --> 00:37:21.440 +And I'm just going to peek into my org mode into my chat -00:35:46.800 --> 00:35:54.079 -looking at there +00:37:21.440 --> 00:37:24.970 +conference and I don't see anybody talking to me from the -00:35:54.079 --> 00:35:58.640 -all right this +00:37:24.970 --> 00:37:29.160 +organizer channel, so I'm gonna assume that's a good guess. -00:35:58.640 --> 00:36:02.240 -this whole thing is hard-coded +00:37:29.160 --> 00:37:33.700 +All right, so let's go ahead and play with the map a -00:36:02.240 --> 00:36:05.440 -basically to the gills except +00:37:33.700 --> 00:37:38.170 +little then that is pretty fun and so much fun that we -00:36:05.440 --> 00:36:09.040 -for things like this this program +00:37:38.170 --> 00:37:42.640 +had to curtail play sessions in order to keep working on -00:36:09.040 --> 00:36:10.640 -represents a re-implementation of the +00:37:42.640 --> 00:37:44.160 +the project. -00:36:10.640 --> 00:36:11.040 -draw +00:37:44.160 --> 00:37:52.160 +So, I'll, I'll do the. -00:36:11.040 --> 00:36:14.880 -engine using all of the same things +00:37:52.160 --> 00:37:58.516 +Um, we'll try to find something different from any gift -00:36:14.880 --> 00:36:19.599 -let's see that's selected so +00:37:58.517 --> 00:38:01.160 +I've shared here right. -00:36:19.599 --> 00:36:21.680 -we'll just try bringing up a map +00:38:01.160 --> 00:38:06.160 +So here we are in a random. Go ahead, Erik, you feel. -00:36:21.680 --> 00:36:23.119 -again +00:38:06.160 --> 00:38:10.660 +Okay, so what we're, what Corwin is doing here is he's -00:36:23.119 --> 00:36:26.320 -there's one and you'll notice dm +00:38:10.660 --> 00:38:15.380 +about to put the map into play mode, which is going to turn -00:36:26.320 --> 00:36:28.560 -map doesn't know anything about the new +00:38:15.380 --> 00:38:17.160 +on the fog of war. -00:36:28.560 --> 00:36:29.839 -draw engine +00:38:17.160 --> 00:38:21.100 +And then we're going to use the fog of war and the, the -00:36:29.839 --> 00:36:31.599 -and there are a couple of places where +00:38:21.100 --> 00:38:25.230 +play mode to kind of reveal the map, one square at a time -00:36:31.599 --> 00:36:33.520 -the new draw engine is still +00:38:25.230 --> 00:38:28.160 +like we would during a play session. -00:36:33.520 --> 00:36:36.480 -hooked in to the s for example +00:38:28.160 --> 00:38:32.350 +So we'll just drop the party randomly somewhere onto this -00:36:36.480 --> 00:36:37.440 -particularly +00:38:32.350 --> 00:38:36.160 +map looks like we're on alpha maze level three here. -00:36:37.440 --> 00:36:39.680 -the sizing of the graph paper background +00:38:36.160 --> 00:38:46.160 +And then we'll walk around a little. -00:36:39.680 --> 00:36:41.119 -so I've started the work +00:38:46.160 --> 00:38:52.280 +Okay, so we're halfway there. I'll have to, I'll have to do -00:36:41.119 --> 00:36:44.240 -in dmdraw.el +00:38:52.280 --> 00:38:55.540 +a full redraw the sketch the sketching stuff has has has -00:36:44.240 --> 00:36:47.040 -of trying to show how exactly we did +00:38:55.540 --> 00:38:58.980 +broken things here like I said, the two aren't separated -00:36:47.040 --> 00:36:47.440 -this +00:38:58.980 --> 00:39:01.910 +once I run them in the same instance, they're not -00:36:47.440 --> 00:36:50.160 -removing the how did we get data out of +00:39:01.910 --> 00:39:03.160 +predictable. -00:36:50.160 --> 00:36:51.760 -org mode that I talked about yesterday +00:39:03.160 --> 00:39:08.060 +Okay, so let me elaborate here when he says the sketching -00:36:51.760 --> 00:36:53.280 -with our etl flows +00:39:08.060 --> 00:39:12.960 +stuff. The current focus of our work is to turn all of this -00:36:53.280 --> 00:36:56.480 -and just focusing on +00:39:12.960 --> 00:39:17.940 +map stuff we've got into a basically a WYSIWYG map editor, -00:36:56.480 --> 00:36:58.960 -how did we solve the problem of +00:39:17.940 --> 00:39:22.330 +where we can get into the tiles, and we'll be able to -00:36:58.960 --> 00:37:00.160 -predicated drawing - -00:37:00.160 --> 00:37:01.839 -which I realized we didn't really talk - -00:37:01.839 --> 00:37:05.200 -about so should I jump into that - -00:37:05.200 --> 00:37:07.760 -yeah I guess how are we on time we - -00:37:07.760 --> 00:37:09.280 -have time for detours - -00:37:09.280 --> 00:37:11.359 -yeah it looks like we could spend two - -00:37:11.359 --> 00:37:12.800 -or three minutes on that and then - -00:37:12.800 --> 00:37:15.599 -come back for the questions cool do - -00:37:15.599 --> 00:37:17.680 -it - -00:37:17.680 --> 00:37:20.480 -and I'm just going to peek into my org mode - -00:37:20.480 --> 00:37:20.800 -by - -00:37:20.800 --> 00:37:23.200 -into my chat conference and I don't see - -00:37:23.200 --> 00:37:24.960 -anybody talking to me from the organizer - -00:37:24.960 --> 00:37:25.520 -channel - -00:37:25.520 --> 00:37:26.560 -so I'm going to assume that's a good - -00:37:26.560 --> 00:37:28.800 -guess - -00:37:28.800 --> 00:37:32.079 -all right so let's let's go ahead and - -00:37:32.079 --> 00:37:34.160 -play with the map a little then that is - -00:37:34.160 --> 00:37:37.760 -pretty fun and and so much fun - -00:37:37.760 --> 00:37:39.440 -that we had to curtail play sessions in - -00:37:39.440 --> 00:37:41.760 -order to keep working on the project - -00:37:41.760 --> 00:37:45.119 - - -00:37:45.119 --> 00:37:48.480 -so I'll - -00:37:48.480 --> 00:37:51.839 -I'll do the - -00:37:51.839 --> 00:37:55.920 -we'll try to find something different - -00:37:55.920 --> 00:38:01.040 -from any gif I've shared here right - -00:38:01.040 --> 00:38:03.359 -so here we are in a random go ahead Erik - -00:38:03.359 --> 00:38:05.760 -you phil - -00:38:05.760 --> 00:38:08.240 -oh okay so what what what corwin is - -00:38:08.240 --> 00:38:10.000 -doing here is he's about to put the - -00:38:10.000 --> 00:38:13.359 -the map into play mode - -00:38:13.359 --> 00:38:16.800 -which is going to turn on the fog of war - -00:38:16.800 --> 00:38:19.920 -and then we're going to use - -00:38:19.920 --> 00:38:23.040 -the fog of war and the the play mode to - -00:38:23.040 --> 00:38:24.560 -kind of reveal the map - -00:38:24.560 --> 00:38:26.240 -one square at a time like we would - -00:38:26.240 --> 00:38:28.160 -during a play session - -00:38:28.160 --> 00:38:29.920 -so we'll just drop the party randomly - -00:38:29.920 --> 00:38:31.280 -somewhere onto this map - -00:38:31.280 --> 00:38:33.839 -looks like we're on alpha maze level - -00:38:33.839 --> 00:38:36.079 -three here - -00:38:36.079 --> 00:38:40.800 -and - -00:38:40.800 --> 00:38:46.320 --oh then we'll walk around a little - -00:38:46.320 --> 00:38:50.480 -okay there we go we're halfway there - -00:38:50.480 --> 00:38:52.160 -I'll have to I'll have to do a full - -00:38:52.160 --> 00:38:53.520 -redraw - -00:38:53.520 --> 00:38:55.920 -the sketch the sketching stuff has - -00:38:55.920 --> 00:38:58.480 -has has broken things here like I said - -00:38:58.480 --> 00:39:00.240 -the two aren't separated once I run them - -00:39:00.240 --> 00:39:01.599 -in the same instance they're not - -00:39:01.599 --> 00:39:03.520 -predictable - -00:39:03.520 --> 00:39:05.359 -okay so let me elaborate here when he - -00:39:05.359 --> 00:39:07.040 -says the sketching stuff - -00:39:07.040 --> 00:39:10.560 -the current focus of our work is to - -00:39:10.560 --> 00:39:13.520 -turn all of this map stuff we've got - -00:39:13.520 --> 00:39:14.320 -into - -00:39:14.320 --> 00:39:17.920 -a basically a wysiwyg map editor - -00:39:17.920 --> 00:39:20.880 -where we can get into the tiles and - -00:39:20.880 --> 00:39:22.160 -we'll be able to - -00:39:22.160 --> 00:39:24.480 +00:39:22.330 --> 00:39:24.160 select the tile and basically rubber -00:39:24.480 --> 00:39:26.560 -stamp it into a map - -00:39:26.560 --> 00:39:29.680 -graphically and then save the map file - -00:39:29.680 --> 00:39:30.000 -out - -00:39:30.000 --> 00:39:33.280 -and load it back in later so that - -00:39:33.280 --> 00:39:36.720 -we're able to you know just pound out - -00:39:36.720 --> 00:39:38.480 -these maps real fast - -00:39:38.480 --> 00:39:42.000 -using a graphical editor rather than - -00:39:42.000 --> 00:39:43.200 -having to hand code - -00:39:43.200 --> 00:39:45.440 -every symbol and every square of the - -00:39:45.440 --> 00:39:48.000 -tables - -00:39:48.000 --> 00:39:52.960 -so the process of doing that - -00:39:52.960 --> 00:39:54.800 -things are a mess we've got covers off - -00:39:54.800 --> 00:39:56.720 -there's wires hanging out - -00:39:56.720 --> 00:39:58.720 -different stuff works on different - -00:39:58.720 --> 00:40:03.119 -days - -00:40:03.119 --> 00:40:05.200 -well I will say in our defense this is - -00:40:05.200 --> 00:40:07.119 -exactly why we staged a complicated - -00:40:07.119 --> 00:40:07.520 -thing - -00:40:07.520 --> 00:40:09.680 -and probably we should have just gone - -00:40:09.680 --> 00:40:11.119 -with that instead of - -00:40:11.119 --> 00:40:14.160 -trying to give you the experience - -00:40:14.160 --> 00:40:17.760 -of of of what it's like to use Emacs - -00:40:17.760 --> 00:40:19.200 -to do this which is - -00:40:19.200 --> 00:40:21.359 -which is sort of the last minute thought - -00:40:21.359 --> 00:40:23.280 -there and my apologies for that - -00:40:23.280 --> 00:40:25.119 -if that's made it harder to follow the - -00:40:25.119 --> 00:40:27.200 -thread let's check back now for - -00:40:27.200 --> 00:40:28.240 -questions - -00:40:28.240 --> 00:40:30.000 -and see if anybody wants to redirect at - -00:40:30.000 --> 00:40:36.640 -all - -00:40:36.640 --> 00:40:39.599 -so yep this so what you're looking at - -00:40:39.599 --> 00:40:40.800 -all uses prog - -00:40:40.800 --> 00:40:44.880 -pragmatic SVG - -00:40:44.880 --> 00:40:47.760 -SVG generation for question number - -00:40:47.760 --> 00:40:49.119 -four there have you played with - -00:40:49.119 --> 00:40:52.000 -generating svgs pragmatically in Emacs - -00:40:52.000 --> 00:40:55.119 -that is what the maps are doing in - -00:40:55.119 --> 00:40:55.680 -terms - -00:40:55.680 --> 00:40:58.480 -of we should have been maybe more - -00:40:58.480 --> 00:41:00.400 -explicit about that we started hand - -00:41:00.400 --> 00:41:01.680 -coding things and - -00:41:01.680 --> 00:41:05.119 -once we got the idea of what the code - -00:41:05.119 --> 00:41:06.400 -was going to look like - -00:41:06.400 --> 00:41:09.359 -we switched to doing it programmatically - -00:41:09.359 --> 00:41:10.000 -so - -00:41:10.000 --> 00:41:12.880 -we were going to open up maybe now if - -00:41:12.880 --> 00:41:14.640 -we've got time we can get into the tile - -00:41:14.640 --> 00:41:15.839 -set real quick - -00:41:15.839 --> 00:41:18.640 -sure we definitely didn't do any of the - -00:41:18.640 --> 00:41:20.560 -pathing slides and so now we've skipped - -00:41:20.560 --> 00:41:23.040 -over some stuff we were going to present - -00:41:23.040 --> 00:41:25.040 -yeah that's right we skipped a whole - -00:41:25.040 --> 00:41:26.880 -bunch of slides and I can certainly - -00:41:26.880 --> 00:41:28.160 -go back to them they're open here - -00:41:28.160 --> 00:41:31.040 -obviously - -00:41:31.040 --> 00:41:33.599 -right I was just showing off the - -00:41:33.599 --> 00:41:34.480 -sketching - -00:41:34.480 --> 00:41:36.880 -tool briefly in that context but I - -00:41:36.880 --> 00:41:38.000 -think you're right let's - -00:41:38.000 --> 00:41:40.000 -we can jump over to the actually I - -00:41:40.000 --> 00:41:41.280 -should finish with this now having - -00:41:41.280 --> 00:41:42.000 -teased it - -00:41:42.000 --> 00:41:45.119 -so let's do the same thing here ctrl h m - -00:41:45.119 --> 00:41:47.119 -and you'll see in this case there are - -00:41:47.119 --> 00:41:48.560 -very few keyboard - -00:41:48.560 --> 00:41:52.160 -key bindings that are set up even - -00:41:52.160 --> 00:41:55.359 -this shift delete has a tera - -00:41:55.359 --> 00:41:59.280 -or shift with - -00:41:59.280 --> 00:42:02.560 -yeah control delete it would seem to be - -00:42:02.560 --> 00:42:05.680 -so that has couple obvious bugs with it - -00:42:05.680 --> 00:42:07.119 -right didn't pick it didn't pick up - -00:42:07.119 --> 00:42:09.280 -those control points until I reused them - -00:42:09.280 --> 00:42:11.280 -not clearing that stack - -00:42:11.280 --> 00:42:13.760 -and also should probably think about - -00:42:13.760 --> 00:42:14.480 -whether - -00:42:14.480 --> 00:42:16.720 -the origin should return and hey marking - -00:42:16.720 --> 00:42:18.400 -that origin would be nice - -00:42:18.400 --> 00:42:19.839 -so there's a tremendous amount to do - -00:42:19.839 --> 00:42:21.680 -here this is just - -00:42:21.680 --> 00:42:24.400 -showing that it is possible to use - -00:42:24.400 --> 00:42:26.079 -essentially like a touch input - -00:42:26.079 --> 00:42:31.680 -to - -00:42:31.680 --> 00:42:35.119 -yeah and then also we can switch over to - -00:42:35.119 --> 00:42:35.760 -our place - -00:42:35.760 --> 00:42:39.040 -tool and - -00:42:39.040 --> 00:42:43.040 -hopefully we can get a nice big menu - -00:42:43.040 --> 00:42:45.040 -of all the tiles that Erik prepared for - -00:42:45.040 --> 00:42:49.440 -the game maps - -00:42:49.440 --> 00:42:51.680 -that was probably a terrible choice - -00:42:51.680 --> 00:42:53.119 -but there you have just a bit of - -00:42:53.119 --> 00:42:56.800 -corridor right - -00:42:56.800 --> 00:43:00.480 -that looks - -00:43:00.480 --> 00:43:04.560 -and even the click yep and this this - -00:43:04.560 --> 00:43:06.160 -glitch action here is the last thing I - -00:43:06.160 --> 00:43:07.280 -was working on before I dropped - -00:43:07.280 --> 00:43:08.079 -everything to - -00:43:08.079 --> 00:43:10.079 -to build the decks that we will soon - -00:43:10.079 --> 00:43:14.240 -share for this conference - -00:43:14.240 --> 00:43:19.680 -so okay back to the tile sets - -00:43:19.680 --> 00:43:22.160 -right so the way we approached drawing - -00:43:22.160 --> 00:43:23.440 -it programmatically - -00:43:23.440 --> 00:43:25.200 -is we broke our code up into little - -00:43:25.200 --> 00:43:27.280 -snippets we called tiles - -00:43:27.280 --> 00:43:29.280 -corman's going to open up the tile - -00:43:29.280 --> 00:43:32.160 -set here basically each tile has a name - -00:43:32.160 --> 00:43:35.280 -and then with that name we place data - -00:43:35.280 --> 00:43:37.920 -into different layers of the image - -00:43:37.920 --> 00:43:40.640 -some of the layers are just SVG paths - -00:43:40.640 --> 00:43:41.280 -and - -00:43:41.280 --> 00:43:44.880 -the data is just SVG commands - -00:43:44.880 --> 00:43:47.920 -like we saw in that handwritten code and - -00:43:47.920 --> 00:43:50.960 -some of it is compositions of other - -00:43:50.960 --> 00:43:54.160 -tiles so a tile can be made up of other - -00:43:54.160 --> 00:43:56.160 -tiles - -00:43:56.160 --> 00:43:58.000 -furthermore some of these tiles have - -00:43:58.000 --> 00:43:59.599 -conditional code in it - -00:43:59.599 --> 00:44:02.319 -where like some of this stuff is talking - -00:44:02.319 --> 00:44:02.720 -about - -00:44:02.720 --> 00:44:06.560 -elf and bang elf so the map is going to - -00:44:06.560 --> 00:44:08.079 -be drawn differently depending - -00:44:08.079 --> 00:44:09.440 -on whether or not there's elves in the - -00:44:09.440 --> 00:44:11.200 -party - -00:44:11.200 --> 00:44:16.880 -so and that's the demo they broke - -00:44:16.880 --> 00:44:18.240 -the engine has to make all those - -00:44:18.240 --> 00:44:20.000 -decisions - -00:44:20.000 --> 00:44:21.599 -and that's what we're calling predicated - -00:44:21.599 --> 00:44:23.280 -drawing oh there's a - -00:44:23.280 --> 00:44:25.200 -special room here do you have any elves - -00:44:25.200 --> 00:44:26.480 -you do so I draw - -00:44:26.480 --> 00:44:32.880 -there is elf's way - -00:44:32.880 --> 00:44:35.839 -yeah so we built up the set of tiles and - -00:44:35.839 --> 00:44:36.319 -then - -00:44:36.319 --> 00:44:39.920 -we basically made map files which - -00:44:39.920 --> 00:44:43.760 -take our map and break it up into xy - -00:44:43.760 --> 00:44:47.839 -grids and then we drop these tiles into - -00:44:47.839 --> 00:44:50.240 -positions on the map so we can use the - -00:44:50.240 --> 00:44:52.000 -same tile square after square after - -00:44:52.000 --> 00:44:52.480 -square - -00:44:52.480 --> 00:44:54.720 -when there's a corridor north south it's - -00:44:54.720 --> 00:44:55.680 -the same tile - -00:44:55.680 --> 00:44:59.119 -over and over again and that makes it - -00:44:59.119 --> 00:45:02.400 -easy to reuse the code and then also - -00:45:02.400 --> 00:45:05.920 -when - -00:45:05.920 --> 00:45:10.560 -when we go to present the - -00:45:10.560 --> 00:45:13.520 -what am I trying to say the the drawing - -00:45:13.520 --> 00:45:15.839 -in in fog of war mode as we move down - -00:45:15.839 --> 00:45:18.000 -the corridor we can just add the - -00:45:18.000 --> 00:45:20.640 -necessary code one bit at a time to the - -00:45:20.640 --> 00:45:23.440 -visible image so that what we're - -00:45:23.440 --> 00:45:24.960 -displaying doesn't contain - -00:45:24.960 --> 00:45:27.359 -any data except what the party has - -00:45:27.359 --> 00:45:30.240 -already discovered - -00:45:30.240 --> 00:45:32.319 -and thus we have kind of spoiler rich - -00:45:32.319 --> 00:45:34.400 -documents sitting on the gm - -00:45:34.400 --> 00:45:37.359 -server and then less you know and - -00:45:37.359 --> 00:45:38.400 -spoiler-free - -00:45:38.400 --> 00:45:41.440 -data that flows down to the org mode - -00:45:41.440 --> 00:45:44.000 -files on the player system and the only - -00:45:44.000 --> 00:45:47.040 -real challenge is making sure that the - -00:45:47.040 --> 00:45:50.160 -the nothing that the game does can mess - -00:45:50.160 --> 00:45:50.960 -with the - -00:45:50.960 --> 00:45:54.480 -the the users the the players data file - -00:45:54.480 --> 00:45:55.280 -in case they - -00:45:55.280 --> 00:45:57.680 -might have their own notes and things in - -00:45:57.680 --> 00:46:00.160 -it that that would be the one - -00:46:00.160 --> 00:46:06.160 -you know number one thing to avoid - -00:46:06.160 --> 00:46:08.000 -another thing we can talk about here is - -00:46:08.000 --> 00:46:09.680 -that there are layers - -00:46:09.680 --> 00:46:11.839 -you can see this table at the bottom has - -00:46:11.839 --> 00:46:13.520 -tile and overlay - -00:46:13.520 --> 00:46:15.119 -the overlay column is just going to - -00:46:15.119 --> 00:46:17.040 -contain some actual SVG - -00:46:17.040 --> 00:46:20.800 -xml style tags so that's where we can - -00:46:20.800 --> 00:46:21.599 -add whatever - -00:46:21.599 --> 00:46:25.359 -text elements or other SVG like raw SVG - -00:46:25.359 --> 00:46:26.720 -tags we want - -00:46:26.720 --> 00:46:28.880 -whereas a lot of the other layers are - -00:46:28.880 --> 00:46:30.560 -going to be like path layers we've got - -00:46:30.560 --> 00:46:32.960 -water layers and beach layers - -00:46:32.960 --> 00:46:35.359 -and our plan was to have a style sheet - -00:46:35.359 --> 00:46:37.680 -that defines how each of those layers - -00:46:37.680 --> 00:46:38.720 -are represented - -00:46:38.720 --> 00:46:40.720 -so like when the water gets drawn blue - -00:46:40.720 --> 00:46:42.160 -and it's got arrows on it - -00:46:42.160 --> 00:46:45.520 -giving it direction all of that - -00:46:45.520 --> 00:46:47.680 -can be customized with a style sheet to - -00:46:47.680 --> 00:46:49.200 -change the water to be - -00:46:49.200 --> 00:46:51.200 -whatever you want and like we have - -00:46:51.200 --> 00:46:52.960 -beaches as yellow but maybe you like - -00:46:52.960 --> 00:46:54.319 -beaches as red or - -00:46:54.319 --> 00:46:57.359 -you know whatever so we also built - -00:46:57.359 --> 00:47:01.200 -some test programs - -00:47:01.200 --> 00:47:04.079 -and various of the I'm not not sure what - -00:47:04.079 --> 00:47:05.359 -kind of shape we're going to find these in - -00:47:05.359 --> 00:47:07.040 -but we can try running them - -00:47:07.040 --> 00:47:10.640 -here for example is just a - -00:47:10.640 --> 00:47:12.960 -very basic all of using a saint using - -00:47:12.960 --> 00:47:15.119 -the same file to define - -00:47:15.119 --> 00:47:18.560 -the tiles and and then - -00:47:18.560 --> 00:47:24.880 -the layout so to speak oh look at that - -00:47:24.880 --> 00:47:26.640 -there's the layout okay so that - -00:47:26.640 --> 00:47:28.960 -actually looks fine tile - -00:47:28.960 --> 00:47:30.960 -and it's pat so this is defining a tile - -00:47:30.960 --> 00:47:32.400 -named seas - -00:47:32.400 --> 00:47:35.440 -and it's going to have a list of tiles - -00:47:35.440 --> 00:47:38.720 -defined above and you'll notice also - -00:47:38.720 --> 00:47:41.839 -that we can just sort of freely define - -00:47:41.839 --> 00:47:44.559 -and redefine and it sort of figures out - -00:47:44.559 --> 00:47:46.160 -oh this must still be part of the b - -00:47:46.160 --> 00:47:50.839 -row we could also have done - -00:47:50.839 --> 00:48:00.000 -this - -00:48:00.000 --> 00:48:02.160 -okay so this would this would work as - -00:48:02.160 --> 00:48:08.480 -would this - -00:48:08.480 --> 00:48:11.599 -one of early on in development when - -00:48:11.599 --> 00:48:12.720 -we were talking about - -00:48:12.720 --> 00:48:14.400 -getting data in and out of these org - -00:48:14.400 --> 00:48:15.839 -tables it - -00:48:15.839 --> 00:48:19.440 -was kind of a priority to us to - -00:48:19.440 --> 00:48:22.319 -leave the way the data is organized open - -00:48:22.319 --> 00:48:23.040 -to - -00:48:23.040 --> 00:48:26.960 -the users and to the Dungeon masters so - -00:48:26.960 --> 00:48:30.720 -while we set our tile set apart from our - -00:48:30.720 --> 00:48:32.559 -map sets - -00:48:32.559 --> 00:48:35.440 -this clearly shows that you can cram a - -00:48:35.440 --> 00:48:38.319 -tile set and a map into a single file - -00:48:38.319 --> 00:48:41.040 -so in situations like the surface where - -00:48:41.040 --> 00:48:43.040 -we're using different tiles from other - -00:48:43.040 --> 00:48:43.760 -maps - -00:48:43.760 --> 00:48:46.559 -maybe it makes sense to move you know - -00:48:46.559 --> 00:48:48.079 -those tiles just into the file - -00:48:48.079 --> 00:48:50.559 -with your map or like it's hard for us - -00:48:50.559 --> 00:48:52.400 -to predict how other people are going to - -00:48:52.400 --> 00:48:54.319 -want to use this when they design their - -00:48:54.319 --> 00:48:55.119 -games - -00:48:55.119 --> 00:48:57.359 -so we wanted to leave it as versatile as - -00:48:57.359 --> 00:48:58.160 -possible - -00:48:58.160 --> 00:49:01.599 -about how you can use it where it - -00:49:01.599 --> 00:49:02.640 -matters right - -00:49:02.640 --> 00:49:04.319 -not support every feature in the world I - -00:49:04.319 --> 00:49:05.920 -can't count the number of times I said - -00:49:05.920 --> 00:49:07.280 -Erik Erik Erik - -00:49:07.280 --> 00:49:09.200 -hey if we do it like this people will be - -00:49:09.200 --> 00:49:10.800 -able and he just like - -00:49:10.800 --> 00:49:14.000 -does it have to do that do we do we does - -00:49:14.000 --> 00:49:14.480 -it like - -00:49:14.480 --> 00:49:17.920 -do we need it right away - -00:49:17.920 --> 00:49:19.599 -do you have to really rewrite everything - -00:49:19.599 --> 00:49:21.040 -so it can all do that - -00:49:21.040 --> 00:49:24.160 -and a lot of those - -00:49:24.160 --> 00:49:26.880 -a lot of those conversations too but the - -00:49:26.880 --> 00:49:28.240 -the key flexibilities - -00:49:28.240 --> 00:49:31.200 -are really there people might want to - -00:49:31.200 --> 00:49:32.559 -use a lot of different files they might - -00:49:32.559 --> 00:49:34.160 -want to lay the tables out however they - -00:49:34.160 --> 00:49:35.760 -want they have to be able to say hey - -00:49:35.760 --> 00:49:37.440 -this is a table that has - -00:49:37.440 --> 00:49:39.440 -data that's controlled by the game and - -00:49:39.440 --> 00:49:40.720 -everything else in the file - -00:49:40.720 --> 00:49:44.079 -is not the game's problem - -00:49:44.079 --> 00:49:45.920 -on our table some of our tables started - -00:49:45.920 --> 00:49:47.440 -getting really wide so we started - -00:49:47.440 --> 00:49:48.960 -striping the tables - -00:49:48.960 --> 00:49:51.119 -where we'll repeat the same table over - -00:49:51.119 --> 00:49:52.640 -and over and over again to - -00:49:52.640 --> 00:49:56.400 -get all of the columns in there without - -00:49:56.400 --> 00:49:59.119 -making it you know a million miles wide - -00:49:59.119 --> 00:49:59.599 -yeah - -00:49:59.599 --> 00:50:01.040 -do you want to should I go ahead and - -00:50:01.040 --> 00:50:02.640 -pull open like a level here - -00:50:02.640 --> 00:50:06.079 -do you think sure just to have shown it - -00:50:06.079 --> 00:50:08.319 -the aisle set's a great example of - -00:50:08.319 --> 00:50:09.680 -striped tables if you - -00:50:09.680 --> 00:50:11.119 -look down like in the level change - -00:50:11.119 --> 00:50:18.800 -feature oh sure - -00:50:18.800 --> 00:50:20.240 -sorry I'm not quite sitting well to my - -00:50:20.240 --> 00:50:22.400 -keyboard here I can just readjust things - -00:50:22.400 --> 00:50:30.079 -real quick - -00:50:30.079 --> 00:50:33.280 -so what you know you can see here - -00:50:33.280 --> 00:50:35.200 -like some of these tables got real wide - -00:50:35.200 --> 00:50:36.800 -when we're stuffing SVG - -00:50:36.800 --> 00:50:40.559 -tags into them and what we +00:39:24.160 --> 00:39:30.510 +stamp it into a map graphically, and then save the map file -00:50:40.559 --> 00:50:44.160 -oh maybe it's not in these +00:39:30.510 --> 00:39:36.470 +out and load it back in later, so that we're able to just -00:50:44.160 --> 00:50:50.079 -I thought it was +00:39:36.470 --> 00:39:40.160 +pound out these maps real fast. -00:50:50.079 --> 00:50:52.960 -special probably yeah no there it is +00:39:40.160 --> 00:39:44.480 +Using a graphical editor rather than having to hand code -00:50:52.960 --> 00:50:54.240 -yeah +00:39:44.480 --> 00:39:48.160 +every symbol and every square of the tables. -00:50:54.240 --> 00:50:56.000 -it was in level change it does the table +00:39:48.160 --> 00:39:51.160 +So the process of doing that. -00:50:56.000 --> 00:50:58.720 -can you repeat okay great +00:39:51.160 --> 00:39:56.190 +I hate them on things are a mess we've got covers off those -00:50:58.720 --> 00:51:00.640 -up and down so fast I didn't realize so +00:39:56.190 --> 00:40:03.160 +wires hanging out different stuff works on different days. -00:51:00.640 --> 00:51:01.920 -this first table +00:40:03.160 --> 00:40:06.860 +Well, I will say in our defense this is exactly why we -00:51:01.920 --> 00:51:05.680 -we've got path and what is that stairs +00:40:06.860 --> 00:40:10.880 +staged a complicated thing, and probably we should have -00:51:05.680 --> 00:51:08.800 -so the stairs level is one that draws in +00:40:10.880 --> 00:40:14.510 +just gone with that instead of trying to give you the -00:51:08.800 --> 00:51:10.079 -like a pink color +00:40:14.510 --> 00:40:18.460 +experience of, of what it's like to use Emacs to do this -00:51:10.079 --> 00:51:11.920 -to highlight the places where you can +00:40:18.460 --> 00:40:21.160 +which is sort of the last -00:51:11.920 --> 00:51:13.440 -change level +00:40:21.160 --> 00:40:26.450 +thought there and my apologies for that if that's made it -00:51:13.440 --> 00:51:15.200 -and then if we scroll down to the second +00:40:26.450 --> 00:40:31.650 +harder to follow the thread. Let's check back now for -00:51:15.200 --> 00:51:17.200 -half of this section +00:40:31.650 --> 00:40:37.160 +questions and see if anybody wants to redirect at all. -00:51:17.200 --> 00:51:19.359 -the second table is going to have all of +00:40:37.160 --> 00:40:41.438 +Oh yep, this. So what you're looking at all uses -00:51:19.359 --> 00:51:20.960 -these same tiles in it but +00:40:41.439 --> 00:40:46.860 +progrmamatic SVG generation for question number four there, -00:51:20.960 --> 00:51:22.800 -instead of path and stairs we're going +00:40:46.860 --> 00:40:52.160 +have you played with generating SVGs programmatically in Emacs. -00:51:22.800 --> 00:51:24.720 -to have other +00:40:52.160 --> 00:40:58.160 +That is what the maps are doing in terms of -00:51:24.720 --> 00:51:27.920 -columns can we +00:40:58.160 --> 00:41:01.860 +being more explicit about that we started hand coding -00:51:27.920 --> 00:51:31.680 -see the next table +00:41:01.860 --> 00:41:05.650 +things and once we got the, the idea of what the code was -00:51:31.680 --> 00:51:33.839 -there we go so the same tiles only here +00:41:05.650 --> 00:41:10.160 +going to look like we switched to doing it programmatically. -00:51:33.839 --> 00:51:35.359 -we've got overlay +00:41:10.160 --> 00:41:13.330 +So, we were going to open up maybe now we've got time we -00:51:35.359 --> 00:51:38.720 -documentation and behavior and I guess +00:41:13.330 --> 00:41:16.910 +can get into the tileset real quick. Sure, we definitely -00:51:38.720 --> 00:51:40.319 -we haven't talked about this at all the +00:41:16.910 --> 00:41:19.820 +didn't do any of the pathing slides and so now we've -00:51:40.319 --> 00:51:41.839 -behavior column +00:41:19.820 --> 00:41:23.160 +skipped over some stuff we were going to present. -00:51:41.839 --> 00:51:44.880 -was our concept of a way that we could +00:41:23.160 --> 00:41:27.030 +Yeah, that's right we skipped a whole bunch of slides and I -00:51:44.880 --> 00:51:47.520 -attach +00:41:27.030 --> 00:41:31.160 +can certainly go back to them they're open here obviously. -00:51:47.520 --> 00:51:49.680 -functions basically to these different +00:41:31.160 --> 00:41:34.110 +I'm right I was just showing off the sketching tool, -00:51:49.680 --> 00:51:51.359 -areas of the map +00:41:34.110 --> 00:41:37.530 +briefly in that context but I think you're right, let's, we -00:51:51.359 --> 00:51:54.720 -because sometimes when you enter an area +00:41:37.530 --> 00:41:40.800 +can jump over to the actually I should finish with this now -00:51:54.720 --> 00:51:57.760 -we want it to do something like +00:41:40.800 --> 00:41:42.160 +having teased it. -00:51:57.760 --> 00:51:59.920 -when you enter a stairs down maybe we +00:41:42.160 --> 00:41:46.970 +So let's do the same thing here Ctrl H M, and you'll see in -00:51:59.920 --> 00:52:02.319 -want it to change to the next level +00:41:46.970 --> 00:41:52.160 +this case there are very few key bindings that are set up. -00:52:02.319 --> 00:52:04.559 -and draw the stairs up behind you and +00:41:52.160 --> 00:41:57.320 +This shift delete has a terror or shift with a control -00:52:04.559 --> 00:52:06.160 -draw you where you are +00:41:57.320 --> 00:42:01.920 +delete, it would seem to be. So that has a couple obvious -00:52:06.160 --> 00:52:09.200 -on the next level so +00:42:01.920 --> 00:42:06.590 +bugs with it right didn't pick it didn't pick up those -00:52:09.200 --> 00:52:11.040 -these are like hooks where we could +00:42:06.590 --> 00:42:12.160 +control points until I reuse them not clearing that stack. -00:52:11.040 --> 00:52:12.240 -attach functions +00:42:12.160 --> 00:42:16.720 +I think we can also should probably think about whether the -00:52:12.240 --> 00:52:16.400 -or you know macros or whatever to +00:42:16.720 --> 00:42:21.060 +origin should return and hey marking that origin would be -00:52:16.400 --> 00:52:18.480 -make the map have these behaviors as we +00:42:21.060 --> 00:42:25.370 +nice. So there's a tremendous amount to do here this is -00:52:18.480 --> 00:52:23.440 -get further towards automation +00:42:25.370 --> 00:42:30.090 +just showing that it is possible to use, essentially like a -00:52:23.440 --> 00:52:26.559 -cool so that's that +00:42:30.090 --> 00:42:31.160 +touch input to, -00:52:26.559 --> 00:52:30.839 -should be pretty close to our time +00:42:31.160 --> 00:42:40.730 +yeah, and then also we can switch over to our place tool, -00:52:30.839 --> 00:52:33.920 -questions or just say goodbye +00:42:40.730 --> 00:42:46.830 +and hopefully we can get a nice big menu of all the tiles that -00:52:33.920 --> 00:52:36.880 -yeah so there's the I'm sorry we +00:42:46.830 --> 00:42:50.160 +Erik prepared for the game maps. -00:52:36.880 --> 00:52:38.559 -couldn't show it earlier there is the +00:42:50.160 --> 00:42:55.160 +That was probably a terrible choice but there you have just -00:52:38.559 --> 00:52:40.000 -battle board +00:42:55.160 --> 00:42:57.160 +a bit of corridor right. -00:52:40.000 --> 00:52:44.240 -and so this is used just to keep +00:42:57.160 --> 00:43:01.160 +That looks. -00:52:44.240 --> 00:52:48.079 -track of hit points so with this example +00:43:01.160 --> 00:43:03.160 +And even the click. -00:52:48.079 --> 00:52:49.319 -battle board +00:43:03.160 --> 00:43:06.870 +Yep, and this click action here is the last thing I -00:52:49.319 --> 00:52:51.680 -dmbattleboard.el there's there's a +00:43:06.870 --> 00:43:10.510 +was working on before I dropped everything to build the -00:52:51.680 --> 00:52:53.760 -complete example of not only +00:43:10.510 --> 00:43:14.160 +decks that we will soon share for this conference. -00:52:53.760 --> 00:52:57.200 -in a single file repub filling out the +00:43:14.160 --> 00:43:20.160 +So okay, back to the tile sets. -00:52:57.200 --> 00:53:00.480 -the cells and the tiles but then coming +00:43:20.160 --> 00:43:24.130 +So the way we approached drawing it programmatically is we -00:53:00.480 --> 00:53:00.960 -in +00:43:24.130 --> 00:43:28.160 +broke our code up into little snippets we called tiles. -00:53:00.960 --> 00:53:04.640 -and keeping the org mode file in sync +00:43:28.160 --> 00:43:31.240 +And so this is where I was going to open up the tiles out -00:53:04.640 --> 00:53:05.280 -with +00:43:31.240 --> 00:43:34.610 +here, basically each tile has a name, and then with that -00:53:05.280 --> 00:53:09.040 -with clicks so and I can press the star +00:43:34.610 --> 00:43:38.160 +name we place data into different layers of the image. -00:53:09.040 --> 00:53:12.319 -key and set my damage to -1 and +00:43:38.160 --> 00:43:43.290 +Some of the layers are just SVG paths, and the data is just -00:53:12.319 --> 00:53:15.359 -take the damage back off I just haven't +00:43:43.290 --> 00:43:48.430 +SVG commands, like we saw in that handwritten code, and -00:53:15.359 --> 00:53:16.400 -spent a lot of time +00:43:48.430 --> 00:43:53.560 +some of it is compositions of other tiles, so a tile can be -00:53:16.400 --> 00:53:18.079 -building up fancy bindings for this +00:43:53.560 --> 00:43:56.160 +made up of other tiles. -00:53:18.079 --> 00:53:20.800 -you'll also find that the crew +00:43:56.160 --> 00:44:00.270 +Furthermore, some of these tiles have conditional code in -00:53:20.800 --> 00:53:23.119 -probably find how I figure out what was +00:44:00.270 --> 00:44:04.460 +it, where like some of this stuff is talking about elf and -00:53:23.119 --> 00:53:23.839 -clicked on +00:44:04.460 --> 00:44:05.160 +bang elf. -00:53:23.839 --> 00:53:26.880 -in the code hard but if I just assign +00:44:05.160 --> 00:44:09.540 +So the map is going to be drawn differently depending on -00:53:26.880 --> 00:53:28.000 -something recognizable +00:44:09.540 --> 00:44:13.160 +whether or not there's elves in the party. -00:53:28.000 --> 00:53:33.520 -for damage and then come into +00:44:13.160 --> 00:44:17.160 +So, and that's the demo they broke. -00:53:33.520 --> 00:53:35.440 -it will now have opened the org mode +00:44:17.160 --> 00:44:20.160 +So the engine has to make all those decisions. -00:53:35.440 --> 00:53:37.040 -file behind the scenes because it's +00:44:20.160 --> 00:44:22.887 +And that's what we're calling predicated drawing. Oh, there's -00:53:37.040 --> 00:53:41.280 -changing it +00:44:22.888 --> 00:44:26.810 +a special room here. Do you have any elves? You do. So I -00:53:41.280 --> 00:53:44.640 -and we can then look at that file a +00:44:26.810 --> 00:44:33.160 +draw it the "there is elves" way. -00:53:44.640 --> 00:53:47.599 -little bit and hopefully +00:44:33.160 --> 00:44:37.440 +Yeah, so we built up the set of tiles, and then we -00:53:47.599 --> 00:53:51.040 -that is un +00:44:37.440 --> 00:44:42.450 +basically made map files, which take our map and break it -00:53:51.040 --> 00:53:53.440 -large enough you can kind of see +00:44:42.450 --> 00:44:46.840 +up into XY grids, and then we drop these tiles into -00:53:53.440 --> 00:53:55.520 -there's our 17 damage landed +00:44:46.840 --> 00:44:49.160 +positions on the map. -00:53:55.520 --> 00:53:59.119 -in armor the logic that sits behind that +00:44:49.160 --> 00:44:52.060 +So we can use the same tile square after square after -00:53:59.119 --> 00:54:01.200 -to figure out the part of the screen +00:44:52.060 --> 00:44:55.470 +square. When there's a corridor north-south, it's the same -00:54:01.200 --> 00:54:08.880 -is not necessarily our finest work +00:44:55.470 --> 00:44:59.980 +tile over and over again. And that makes it easy to reuse -00:54:08.880 --> 00:54:11.839 -but it but it does work and it's +00:44:59.980 --> 00:45:01.160 +the code. -00:54:11.839 --> 00:54:12.319 -one for +00:45:01.160 --> 00:45:12.370 +And also, when we go to present the -- what am I trying to -00:54:12.319 --> 00:54:14.000 -the stuff was used on the map a little +00:45:12.370 --> 00:45:16.180 +say -- the drawing in fog of war mode, as we move down the -00:54:14.000 --> 00:54:15.920 -bit too we didn't really need to show +00:45:16.180 --> 00:45:20.280 +corridor, we can just add the necessary code one bit at a -00:54:15.920 --> 00:54:17.520 -that in the demo but as you're scrolling +00:45:20.280 --> 00:45:24.160 +time to the visible image, so that what we're displaying -00:54:17.520 --> 00:54:19.680 -around there's like a highlighter +00:45:24.160 --> 00:45:28.160 +doesn't contain any data except what the party has already -00:54:19.680 --> 00:54:22.960 -that that you know we were drawing on +00:45:28.160 --> 00:45:30.160 +discovered. -00:54:22.960 --> 00:54:24.720 -shaft to show you which square you've +00:45:30.160 --> 00:45:34.720 +And thus we have kind of spoiler-rich documents sitting on -00:54:24.720 --> 00:54:26.160 -got selected +00:45:34.720 --> 00:45:39.120 +the GM server, and then less -- and spoiler-free data that -00:54:26.160 --> 00:54:28.800 -because we were having trouble with +00:45:39.120 --> 00:45:43.160 +flows down to the org mode files on the player system. -00:54:28.800 --> 00:54:29.839 -that code +00:45:43.160 --> 00:45:47.660 +And the only real challenge is making sure that nothing -00:54:29.839 --> 00:54:31.280 -initially and we were sometimes +00:45:47.660 --> 00:45:52.230 +that the game does can mess with the users -- the players' -00:54:31.280 --> 00:54:36.839 -revealing the wrong +00:45:52.230 --> 00:45:56.610 +data file, in case they might have their own notes and -00:54:36.839 --> 00:54:38.720 -okay +00:45:56.610 --> 00:46:03.800 +things in it. That would be the one, you know, number one -00:54:38.720 --> 00:54:40.480 -and I don't know how we're set for time +00:46:03.800 --> 00:46:06.160 +thing to avoid. -00:54:40.480 --> 00:54:42.160 -but I just saw a message +00:46:06.160 --> 00:46:09.200 +Another thing we can talk about here is that there are -00:54:42.160 --> 00:54:44.400 -from trixie that she could jump on if +00:46:09.200 --> 00:46:12.350 +layers. You can see this table at the bottom has tile and -00:54:44.400 --> 00:54:46.480 -we want her oh that would be amazing +00:46:12.350 --> 00:46:16.860 +overlay. The overlay column is just going to contain some -00:54:46.480 --> 00:54:47.920 -yeah go ahead and invite her in I'll +00:46:16.860 --> 00:46:19.160 +actual SVG XML style tags. -00:54:47.920 --> 00:54:51.680 -just cut to the scene as soon as she's +00:46:19.160 --> 00:46:23.100 +So that's where we can add whatever text elements or other -00:54:51.680 --> 00:54:56.160 -I in yeah so we're reaching the ask +00:46:23.100 --> 00:46:27.120 +SVG, like raw SVG tags we want. Whereas a lot of the other -00:54:56.160 --> 00:54:56.799 -me any +00:46:27.120 --> 00:46:30.980 +layers are going to be like path layers, we've got water -00:54:56.799 --> 00:54:58.960 -anything portion of the program here +00:46:30.980 --> 00:46:33.160 +layers and beach layers. -00:54:58.960 --> 00:55:01.200 -with what with what time we have left +00:46:33.160 --> 00:46:36.370 +And our plan was to have a style sheet that defines how -00:55:01.200 --> 00:55:02.559 -for your questions +00:46:36.370 --> 00:46:39.790 +each of those layers are represented. So like when the -00:55:02.559 --> 00:55:05.200 -please correct me if we're still like +00:46:39.790 --> 00:46:43.140 +water gets drawn blue and it's got arrows on it giving it -00:55:05.200 --> 00:55:06.160 -10 minutes +00:46:43.140 --> 00:46:47.140 +direction, all of that can be customized with a style sheet -00:55:06.160 --> 00:55:08.799 -you know if we're if we're more than +00:46:47.140 --> 00:46:50.160 +to change the water to be whatever you want. -00:55:08.799 --> 00:55:10.000 -like +00:46:50.160 --> 00:46:53.430 +And like we have beaches as yellow, but maybe you like -00:55:10.000 --> 00:55:12.640 -15 to 20 minutes from our time but I I +00:46:53.430 --> 00:46:56.160 +beaches as red or, you know, whatever. -00:55:12.640 --> 00:55:13.760 -suspect we've less weight +00:46:56.160 --> 00:47:03.570 +So we also built some test programs and various -- I'm not -00:55:13.760 --> 00:55:16.640 -left way less than that and out of +00:47:03.570 --> 00:47:05.900 +sure what kind of shape we're going to find these in, but -00:55:16.640 --> 00:55:17.440 -respect for +00:47:05.900 --> 00:47:07.160 +we can try running them. -00:55:17.440 --> 00:55:24.319 -all the other presenters +00:47:07.160 --> 00:47:13.950 +Here, for example, is just a very basic -- using the same -00:55:24.319 --> 00:55:28.720 -oh I don't want to close that actually +00:47:13.950 --> 00:47:21.160 +file to define the tiles and then the layout, so to speak. -00:55:28.720 --> 00:55:30.640 -I think I may have found an old version +00:47:21.160 --> 00:47:25.160 +Oh, look at that. -00:55:30.640 --> 00:55:32.839 -of my slides that could have some good +00:47:25.160 --> 00:47:29.160 +There's the layout. Okay, so that actually looks fine. Tile. -00:55:32.839 --> 00:55:35.200 -stuff +00:47:29.160 --> 00:47:33.430 +And it's path. So this is defining a tile named "seas" and -00:55:35.200 --> 00:55:36.799 -it's been an event for a couple of weeks +00:47:33.430 --> 00:47:37.160 +it's going to have a list of tiles defined above. -00:55:36.799 --> 00:55:38.799 -here I had a break in and +00:47:37.160 --> 00:47:41.120 +And you'll notice also that we can just sort of freely -00:55:38.799 --> 00:55:41.359 -my somebody got into our bank accounts +00:47:41.120 --> 00:47:44.750 +define and redefine and it sort of figures out, oh, this -00:55:41.359 --> 00:55:43.599 -and +00:47:44.750 --> 00:47:47.160 +must still be part of the B row. -00:55:43.599 --> 00:55:46.880 -nasty business just a lot going on over +00:47:47.160 --> 00:48:00.160 +We could also have done this. -00:55:46.880 --> 00:55:50.720 -over this whole year I think +00:48:00.160 --> 00:48:08.160 +Okay, so this would work as would this. -00:55:50.720 --> 00:55:53.040 -do we have more questions to shag or +00:48:08.160 --> 00:48:11.930 +>> Early on in development when we were talking about -00:55:53.040 --> 00:55:53.839 -where +00:48:11.930 --> 00:48:16.520 +getting data in and out of these org tables, it was kind of -00:55:53.839 --> 00:55:56.960 -sure so I think +00:48:16.520 --> 00:48:22.160 +a priority to us to leave the way the data is organized -00:55:56.960 --> 00:55:58.799 -there was at least one we deferred a +00:48:22.160 --> 00:48:25.160 +open to the users and to the dungeon masters. -00:55:58.799 --> 00:56:01.040 -little bit what the game +00:48:25.160 --> 00:48:30.860 +So while we set our tile set apart from our map sets, this -00:56:01.040 --> 00:56:05.040 -is +00:48:30.860 --> 00:48:36.430 +clearly shows that you can cram a tile set and a map into a -00:56:05.040 --> 00:56:06.799 -always eight characters that can be +00:48:36.430 --> 00:48:38.160 +single file. -00:56:06.799 --> 00:56:08.400 -divided right that's so always eight +00:48:38.160 --> 00:48:41.170 +So in situations like the surface where we're using -00:56:08.400 --> 00:56:10.000 -characters that can be divided between +00:48:41.170 --> 00:48:44.610 +different tiles from other maps, maybe it makes sense to -00:56:10.000 --> 00:56:12.160 -the party is the classic formula +00:48:44.610 --> 00:48:47.890 +move, you know, those tiles just into the file with your -00:56:12.160 --> 00:56:14.319 -it actually works pretty well for a +00:48:47.890 --> 00:48:49.160 +map. -00:56:14.319 --> 00:56:16.240 -conversational group remember that +00:48:49.160 --> 00:48:51.880 +But we also wanted to make sure, like, it's hard for us to -00:56:16.240 --> 00:56:17.760 -role-playing games are about talking to +00:48:51.880 --> 00:48:54.640 +predict how other people are going to want to use this when -00:56:17.760 --> 00:56:18.480 -each other +00:48:54.640 --> 00:48:56.160 +they design their games. -00:56:18.480 --> 00:56:20.000 -and being good at them is about taking +00:48:56.160 --> 00:49:00.780 +So we wanted to leave it as versatile as possible about how -00:56:20.000 --> 00:56:22.079 -excellent notes so +00:49:00.780 --> 00:49:02.160 +you can use it. -00:56:22.079 --> 00:56:23.200 -when you're sitting around with a group +00:49:02.160 --> 00:49:04.810 +>> Where it matters, right? Not support every feature in -00:56:23.200 --> 00:56:24.559 -of people and you're going to have to +00:49:04.810 --> 00:49:05.160 +the world. -00:56:24.559 --> 00:56:25.920 -wait for them while they dig through +00:49:05.160 --> 00:49:08.560 +I can't count the number of times I said, Erik, Erik, Erik, -00:56:25.920 --> 00:56:26.880 -their notes +00:49:08.560 --> 00:49:12.000 +hey, if we do it like this, people will be -- and he just, -00:56:26.880 --> 00:56:28.720 -and listen to all of the things they +00:49:12.000 --> 00:49:14.160 +like, does it have to do that? -00:56:28.720 --> 00:56:30.319 -find interesting to say +00:49:14.160 --> 00:49:19.090 +Like, do we need it right away? Do you have to really -00:56:30.319 --> 00:56:32.240 -and try to reach an imaginative place +00:49:19.090 --> 00:49:21.160 +rewrite everything so it can all do that? -00:56:32.240 --> 00:56:34.160 -that you can stay together +00:49:21.160 --> 00:49:26.160 +And a lot of those conversations, too. -00:56:34.160 --> 00:56:36.160 -while you're doing all that and working +00:49:26.160 --> 00:49:30.160 +But the key flexibilities are really there. -00:56:36.160 --> 00:56:38.319 -in dice and remembering the rules +00:49:30.160 --> 00:49:32.160 +People might want to use a lot of different files. -00:56:38.319 --> 00:56:40.880 -it's actually a complicated activity I +00:49:32.160 --> 00:49:34.160 +They might want to lay the tables out however they want. -00:56:40.880 --> 00:56:43.200 -liken it more to a bridge game +00:49:34.160 --> 00:49:37.590 +They have to be able to say, hey, this is a table that has -00:56:43.200 --> 00:56:46.240 -than to like +00:49:37.590 --> 00:49:40.950 +data that's controlled by the game, and everything else in -00:56:46.240 --> 00:56:48.960 -you know parcheesi or perhaps even like +00:49:40.950 --> 00:49:43.160 +the file is not the game's problem. -00:56:48.960 --> 00:56:51.359 -risk or access and allies or other games +00:49:43.160 --> 00:49:45.980 +>> And our table, some of our tables started getting really -00:56:51.359 --> 00:56:52.160 -that +00:49:45.980 --> 00:49:48.160 +wide, so we started striping the tables. -00:56:52.160 --> 00:56:54.319 -have have definitely the strategy to +00:49:48.160 --> 00:49:52.140 +We'll repeat the same table over and over and over again to -00:56:54.319 --> 00:56:56.160 -them but +00:49:52.140 --> 00:49:56.180 +get all of the columns in there without making it, you know, -00:56:56.160 --> 00:57:00.160 -I don't Erik your thoughts +00:49:56.180 --> 00:49:58.160 +a million miles wide. -00:57:00.160 --> 00:57:03.920 -yeah I mean I think that's fair +00:49:58.160 --> 00:49:59.160 +>> Yeah. -00:57:03.920 --> 00:57:06.640 -you know yes definitely the the +00:49:59.160 --> 00:50:02.450 +Do you want to -- should I go ahead and pull open, like, a -00:57:06.640 --> 00:57:08.160 -tradition is to always have eight +00:50:02.450 --> 00:50:04.160 +level here, do you think? -00:57:08.160 --> 00:57:09.440 -characters in the party +00:50:04.160 --> 00:50:05.160 +>> Sure. -00:57:09.440 --> 00:57:12.079 -and you know one of the great things +00:50:05.160 --> 00:50:06.160 +>> Just to have shown it. -00:57:12.079 --> 00:57:13.760 -about Dungeon is that everybody who +00:50:06.160 --> 00:50:08.750 +>> The file set's a great example of striped tables if you -00:57:13.760 --> 00:57:15.200 -writes their own Dungeon +00:50:08.750 --> 00:50:11.160 +look down, like, in the level change feature. -00:57:15.200 --> 00:57:18.000 -gets to write their own rules and is +00:50:11.160 --> 00:50:18.160 +>> Oh, sure. -00:57:18.000 --> 00:57:19.440 -free to change whatever +00:50:18.160 --> 00:50:21.160 +>> Sorry, I'm not quite sitting well to my keyboard here. -00:57:19.440 --> 00:57:21.760 -you want and that being said I've +00:50:21.160 --> 00:50:30.160 +I can just readjust things real quick. -00:57:21.760 --> 00:57:22.720 -certainly seen +00:50:30.160 --> 00:50:33.920 +So what, you know, you can see here, like, some of these -00:57:22.720 --> 00:57:25.839 -people try to take on challenging that +00:50:33.920 --> 00:50:38.160 +tables got real wide when we're stuffing SVG tags into them. -00:57:25.839 --> 00:57:28.079 -always eight characters in a party +00:50:38.160 --> 00:50:44.160 +And what we -- oh, maybe it's not in these. -00:57:28.079 --> 00:57:30.640 -thing I've seen people take +00:50:44.160 --> 00:50:50.160 +I thought it was. -00:57:30.640 --> 00:57:32.640 -approaches like every player gets two +00:50:50.160 --> 00:50:51.160 +It's special, probably. -00:57:32.640 --> 00:57:34.640 -characters and then you can have a party +00:50:51.160 --> 00:50:52.160 +>> Yeah. -00:57:34.640 --> 00:57:36.319 -ranging from two to ten +00:50:52.160 --> 00:50:54.160 +No, there it is, yeah. -00:57:36.319 --> 00:57:38.079 -or there's always going to be ten or +00:50:54.160 --> 00:50:55.160 +It was in level change. -00:57:38.079 --> 00:57:40.000 -there's you know this or that or people +00:50:55.160 --> 00:50:57.160 +It does the table key repeat. -00:57:40.000 --> 00:57:43.200 -have tried stuff and none of it has +00:50:57.160 --> 00:50:58.160 +>> Okay, great. -00:57:43.200 --> 00:57:45.280 -really worked out very satisfactorily we +00:50:58.160 --> 00:50:59.720 +>> You were just scrolling up and down so fast I didn't -00:57:45.280 --> 00:57:45.839 -always +00:50:59.720 --> 00:51:00.160 +realize. -00:57:45.839 --> 00:57:48.319 -seem to keep coming back to our party +00:51:00.160 --> 00:51:04.270 +So this first table, we've got path and what is that, -00:57:48.319 --> 00:57:49.680 -of eight +00:51:04.270 --> 00:51:05.160 +stairs? -00:57:49.680 --> 00:57:54.160 -yeah it's I I I I it's one of the things +00:51:05.160 --> 00:51:09.010 +So the stairs level is one that draws in, like, a pink -00:57:54.160 --> 00:57:55.839 -Dungeon that you can't change when you +00:51:09.010 --> 00:51:13.160 +color to highlight places where you can change level. -00:57:55.839 --> 00:57:57.359 -write your own Dungeon +00:51:13.160 --> 00:51:16.120 +And then if we scroll down to the second half of this -00:57:57.359 --> 00:57:58.720 -and that's the reason it's so +00:51:16.120 --> 00:51:19.380 +section, the second table is going to have all of these -00:57:58.720 --> 00:58:00.960 -complicated as a as a software +00:51:19.380 --> 00:51:24.000 +same tiles in it, but instead of path and stairs, we're -00:58:00.960 --> 00:58:03.119 -project why it's taken us decades +00:51:24.000 --> 00:51:27.160 +going to have other columns. -00:58:03.119 --> 00:58:04.559 -because +00:51:27.160 --> 00:51:31.160 +Can we see the next table? -00:58:04.559 --> 00:58:08.000 -trying to model the data for example or +00:51:31.160 --> 00:51:32.160 +There we go. -00:58:08.000 --> 00:58:11.280 -really any attempt to +00:51:32.160 --> 00:51:35.610 +So the same tiles, only here we've got overlay, -00:58:11.280 --> 00:58:14.160 -quantify it in specific terms always +00:51:35.610 --> 00:51:38.160 +documentation, and behavior. -00:58:14.160 --> 00:58:15.680 -falls to examples +00:51:38.160 --> 00:51:40.160 +And I guess we haven't talked about this at all. -00:58:15.680 --> 00:58:18.880 -well you know Dungeons usually have +00:51:40.160 --> 00:51:44.920 +The behavior column was our concept of a way that we could -00:58:18.880 --> 00:58:22.079 -elves dwarves and humans they have +00:51:44.920 --> 00:51:50.100 +attach functions, basically, to these different areas of -00:58:22.079 --> 00:58:25.280 -priests wizards and warriors they +00:51:50.100 --> 00:51:51.160 +the map. -00:58:25.280 --> 00:58:27.599 -have eight characters in the party +00:51:51.160 --> 00:51:55.920 +Because sometimes when you enter an area, we want it to do -00:58:27.599 --> 00:58:30.000 -the bell rocks are particularly nasty +00:51:55.920 --> 00:51:57.160 +something. -00:58:30.000 --> 00:58:31.680 -and live in a room of some +00:51:57.160 --> 00:52:00.880 +Like when you enter a stairs down, maybe we want it to -00:58:31.680 --> 00:58:35.119 -specific shape spoilers +00:52:00.880 --> 00:52:04.850 +change to the next level and draw the stairs up behind you -00:58:35.119 --> 00:58:38.319 -right and we don't tell you the rules +00:52:04.850 --> 00:52:08.160 +and draw you where you are on the next level. -00:58:38.319 --> 00:58:39.520 -and that's what you know +00:52:08.160 --> 00:52:13.470 +So these are like hooks where we could attach functions or, -00:58:39.520 --> 00:58:40.960 -and you sit down at the table and you +00:52:13.470 --> 00:52:18.390 +you know, macros or whatever to make the map have these -00:58:40.960 --> 00:58:42.640 -say what's your character name and +00:52:18.390 --> 00:52:23.160 +behaviors as we get further towards automation. -00:58:42.640 --> 00:58:44.480 -what's your special power +00:52:23.160 --> 00:52:25.160 +Cool. -00:58:44.480 --> 00:58:48.400 -and and then I say I +00:52:25.160 --> 00:52:31.160 +So that's that should be pretty close to our time. -00:58:48.400 --> 00:58:51.599 -I I'm zelda and +00:52:31.160 --> 00:52:34.160 +Questions or just say goodbye. -00:58:51.599 --> 00:58:53.839 -I I have this bridge that I can put down +00:52:34.160 --> 00:52:38.160 +Yeah, so there's the I'm sorry we couldn't show it earlier. -00:58:53.839 --> 00:58:56.000 -that always gets me across the river +00:52:38.160 --> 00:52:41.160 +There is the battle board. -00:58:56.000 --> 00:58:59.040 -so let's touch on special power real +00:52:41.160 --> 00:52:46.160 +And so this is used just to keep track of hit points. -00:58:59.040 --> 00:58:59.359 -quick +00:52:46.160 --> 00:52:50.540 +So with this example, battle board, dm battle board.el, -00:58:59.359 --> 00:59:01.119 -since that's one of the things that is +00:52:50.540 --> 00:52:54.590 +there's there's a complete example of not only in a single -00:59:01.119 --> 00:59:03.280 -kind of unique to Dungeon +00:52:54.590 --> 00:52:58.430 +file reaper, we filling out the tell the cells and the -00:59:03.280 --> 00:59:06.160 -and one of the things that is the +00:52:58.430 --> 00:53:03.720 +tiles, but then coming in and keeping the org mode file in -00:59:06.160 --> 00:59:06.720 -biggest +00:53:03.720 --> 00:53:06.160 +sync with with clicks. -00:59:06.720 --> 00:59:08.960 -challenge to us in trying to code a +00:53:06.160 --> 00:53:11.040 +So, and I can press the star key and set my damage to minus -00:59:08.960 --> 00:59:10.240 -system like this for +00:53:11.040 --> 00:53:14.160 +one and take the damage back off. -00:59:10.240 --> 00:59:13.200 -automated play and that's that every +00:53:14.160 --> 00:53:17.770 +I just haven't spent a lot of time building up fancy bind -00:59:13.200 --> 00:59:14.319 -character gets a +00:53:17.770 --> 00:53:21.620 +ings for this, you'll also find that the crew probably find -00:59:14.319 --> 00:59:17.119 -unique special power and traditionally +00:53:21.620 --> 00:53:25.270 +how I figure out what was clicked on in the code hard, but -00:59:17.119 --> 00:59:18.000 -you negotiate +00:53:25.270 --> 00:53:30.010 +if I just assign something recognizable for damage, and -00:59:18.000 --> 00:59:19.520 -your special power with the Dungeon +00:53:30.010 --> 00:53:33.160 +then come into. -00:59:19.520 --> 00:59:21.839 -master when you create your character +00:53:33.160 --> 00:53:39.030 +It will now have opened the org mode file behind the scenes -00:59:21.839 --> 00:59:24.079 -and occasionally throughout the course +00:53:39.030 --> 00:53:41.160 +because it's changing it. -00:59:24.079 --> 00:59:25.839 -of the character's life their special +00:53:41.160 --> 00:53:48.340 +And we can then look at that file a little bit and -00:59:25.839 --> 00:59:27.359 -power might change +00:53:48.340 --> 00:53:54.130 +hopefully that is on large enough you can kind of see there -00:59:27.359 --> 00:59:29.920 -due to game circumstances usually it +00:53:54.130 --> 00:53:57.160 +'s our 17 damage landed in armor. -00:59:29.920 --> 00:59:33.280 -improves but sometimes not +00:53:57.160 --> 00:54:04.200 +The logic that sits behind that to figure out the part of -00:59:33.280 --> 00:59:34.960 -and that's those are the most fun +00:54:04.200 --> 00:54:10.160 +the screen is not necessarily our finest work. -00:59:34.960 --> 00:59:36.960 -conversations right sometimes we have +00:54:10.160 --> 00:54:12.960 +But it does work and that's one kind of stuff was used on -00:59:36.960 --> 00:59:39.440 -fun gaming sessions where we barely get +00:54:12.960 --> 00:54:16.030 +the map a little bit too. We didn't really get to show that -00:59:39.440 --> 00:59:41.760 -all the characters created and started +00:54:16.030 --> 00:54:18.970 +in the demo but as you're scrolling around there's like a -00:59:41.760 --> 00:59:43.680 -because we get off into arguing about +00:54:18.970 --> 00:54:22.160 +highlighter that that, you know, we were drawing on. -00:59:43.680 --> 00:59:45.440 -the special powers no zelda special +00:54:22.160 --> 00:54:26.160 +Oh sure, show you which square you've got selected. -00:59:45.440 --> 00:59:48.319 -powers obviously the candle come on +00:54:26.160 --> 00:54:30.300 +We were having trouble with that code. Initially, and we -00:59:48.319 --> 00:59:53.359 -also that was link not zelda +00:54:30.300 --> 00:54:33.160 +were sometimes revealing the wrong. -00:59:53.359 --> 00:59:56.240 -I still have my t-shirt hey there she is +00:54:33.160 --> 00:54:38.160 +Okay. -00:59:56.240 --> 01:00:01.440 -let's cut scene +00:54:38.160 --> 00:54:41.320 +And I don't know how we're set for time but I just saw a -01:00:01.440 --> 01:00:05.839 -you get video fun filters today because +00:54:41.320 --> 00:54:45.240 +message from Trixie that she could jump on if we want her. -01:00:05.839 --> 01:00:07.359 -that's what we got going on over here +00:54:45.240 --> 00:54:48.290 +Oh, that would be amazing. Yeah, go ahead and invite her in -01:00:07.359 --> 01:00:08.799 -today all right I'm going to recut +00:54:48.290 --> 00:54:51.160 +I'll just cut to the scene as soon as she's in. -01:00:08.799 --> 01:00:18.079 -everybody hang on tight +00:54:51.160 --> 00:54:54.160 +I think. -01:00:18.079 --> 01:00:20.799 -all right there's Erik this is going to be +00:54:54.160 --> 00:54:58.080 +Yeah, so we're reaching the ask me anything portion of the -01:00:20.799 --> 01:00:23.200 -Erik for a second hope +00:54:58.080 --> 00:55:01.760 +program here with what, with what time we have left for -01:00:23.200 --> 01:00:25.200 -no worries. welcome to the welcome to +00:55:01.760 --> 00:55:03.160 +your questions. -01:00:25.200 --> 01:00:27.440 -the stream trixie horror +00:55:03.160 --> 00:55:09.170 +Please correct me if we're still like 10 minutes, you know, -01:00:27.440 --> 01:00:30.960 -who is +00:55:09.170 --> 00:55:15.450 +if we're, if we're more than like 15 to 20 minutes from our -01:00:30.960 --> 01:00:32.720 -one of our project team members +00:55:15.450 --> 00:55:20.560 +time but I suspect we've left way left way less than that -01:00:32.720 --> 01:00:34.559 -somebody who's learning Emacs as part of +00:55:20.560 --> 00:55:25.160 +and out of respect for all the other presenters. -01:00:34.559 --> 01:00:35.440 -the project +00:55:25.160 --> 00:55:29.160 +I don't want to close that actually. -01:00:35.440 --> 01:00:38.480 -and yeah I +00:55:29.160 --> 00:55:33.060 +I think I may have found an old version of my slides that -01:00:38.480 --> 01:00:40.720 -I I particularly wanted to invite you on +00:55:33.060 --> 00:55:35.160 +can have some good stuff. -01:00:40.720 --> 01:00:42.160 -to talk about your experience learning +00:55:35.160 --> 00:55:40.220 +It's been an event for a couple of weeks here I had a break -01:00:42.160 --> 01:00:42.640 -Emacs +00:55:40.220 --> 00:55:45.190 +in and my somebody got into our bank accounts and nasty -01:00:42.640 --> 01:00:44.640 -I think you have run into places +00:55:45.190 --> 00:55:51.160 +business, just a lot going on over, over this whole year I think. -01:00:44.640 --> 01:00:46.799 -where it's a pain in the butt to learn Emacs +00:55:51.160 --> 00:55:54.160 +Any more questions to share. -01:00:46.799 --> 01:00:47.839 -and that this is a safe +00:55:54.160 --> 00:56:02.240 +Sure. So, I think there was at least one we deferred a -01:00:47.839 --> 01:00:56.000 -space to talk about that +00:56:02.240 --> 00:56:06.160 +little bit with the game is -01:00:56.000 --> 01:01:00.640 -TRIXIE: I'll jump into that by saying the Emacs cheat sheet, +00:56:06.160 --> 00:56:08.990 +always eight characters that can be divided right that's so -01:01:00.640 --> 01:01:03.680 -I think it's the one that GNU puts out, +00:56:08.990 --> 00:56:11.660 +always eight characters that can be divided between the -01:01:03.680 --> 01:01:06.559 -is a lifesaver. +00:56:11.660 --> 00:56:14.540 +party is the classic formula, it actually works pretty well -01:01:06.559 --> 01:01:09.440 -A little bit of a vocabulary disconnect. +00:56:14.540 --> 00:56:16.160 +for a conversational group. -01:01:09.440 --> 01:01:13.359 -This actually kind of comes up a lot +00:56:16.160 --> 00:56:18.810 +I think the idea that role playing games are about talking -01:01:13.359 --> 01:01:15.200 -in conversation with Corwin and Erik and +00:56:18.810 --> 00:56:21.330 +to each other and being good at them is about taking -01:01:15.200 --> 01:01:18.000 -I but copy paste versus +00:56:21.330 --> 00:56:23.770 +excellent notes. So, when you're sitting around with a -01:01:18.000 --> 01:01:21.920 -what yank and w +00:56:23.770 --> 00:56:26.070 +group of people and you're going to have to wait for them -01:01:21.920 --> 01:01:27.920 -whatever w +00:56:26.070 --> 00:56:29.410 +while they dig through their notes and listen to all of the -01:01:27.920 --> 01:01:30.000 -why would you even do that to us right +00:56:29.410 --> 00:56:33.160 +things they find interesting to say, and try to reach an -01:01:30.000 --> 01:01:31.200 -where where were you +00:56:33.160 --> 00:56:35.160 +imaginative place that you can stay together. -01:01:31.200 --> 01:01:33.359 -when zero's park happened no I I +00:56:35.160 --> 00:56:38.800 +And when you're doing all that and working in dice and -01:01:33.359 --> 01:01:38.480 -understand that makes sense what else +00:56:38.800 --> 00:56:43.250 +remembering the rules. It's actually a complicated activity, -01:01:38.480 --> 01:01:39.520 -I mean you don't have to sit here and +00:56:43.250 --> 00:56:47.340 +I liken it more to a bridge game, then to like, you know, -01:01:39.520 --> 01:01:41.440 -rag on Emacs but we're here for that +00:56:47.340 --> 00:56:51.310 +part cheesy or perhaps even like risk or access and allies -01:01:41.440 --> 01:01:43.119 -that's all I'm saying +00:56:51.310 --> 00:56:55.620 +or other games that have have definitely the strategy to -01:01:43.119 --> 01:01:46.799 -TRIXIE: No, I'm like that's been the biggest thing. +00:56:55.620 --> 00:56:57.160 +them but I don't. -01:01:46.799 --> 01:01:52.799 -I'm used to the very binary nature, like, nope that didn't work. +00:56:57.160 --> 00:57:01.160 +Erik, your thoughts. -01:01:52.799 --> 01:01:53.839 -Try something else. +00:57:02.160 --> 00:57:05.160 +I think that's fair. -01:01:53.839 --> 01:01:59.200 -So as long as you're willing to try other stuff, +00:57:05.160 --> 00:57:08.880 +You know yes definitely. The, the tradition is to always -01:01:59.200 --> 01:02:02.880 -Emacs will be fine. +00:57:08.880 --> 00:57:12.600 +have eight characters in the party, and, you know, one of -01:02:02.880 --> 01:02:06.559 -it's a tough cookie I can take it +00:57:12.600 --> 00:57:16.320 +the great things about dungeon is that everybody who writes -01:02:06.559 --> 01:02:08.960 -worst thing that happens is you have to +00:57:16.320 --> 00:57:19.730 +their own dungeon gets to write their own rules, and is -01:02:08.960 --> 01:02:11.119 -really install it +00:57:19.730 --> 00:57:22.160 +free to change whatever you want. -01:02:11.119 --> 01:02:13.520 -throw your ignite file that you +00:57:22.160 --> 00:57:26.700 +I've definitely seen people try to take on challenging that -01:02:13.520 --> 01:02:19.920 -hopefully have a backup of +00:57:26.700 --> 00:57:30.160 +always eight characters in a party thing. -01:02:19.920 --> 01:02:21.520 -all right fine +00:57:30.160 --> 00:57:33.460 +I've seen people take approaches like every player gets two -01:02:21.520 --> 01:02:24.640 -ERIK: Are there more questions in the hopper? +00:57:33.460 --> 00:57:36.570 +characters and then you can have a party ranging from two -01:02:24.640 --> 01:02:26.480 -yeah if anybody does have any questions +00:57:36.570 --> 00:57:40.130 +to 10, or there's always going to be 10 or there's, you -01:02:26.480 --> 01:02:27.680 -up there +00:57:40.130 --> 00:57:43.340 +know, this or that or people have tried stuff, and none of -01:02:27.680 --> 01:02:29.839 -for hope for Erik or I so just to +00:57:43.340 --> 00:57:47.170 +it has really worked out very satisfactorily we always seem -01:02:29.839 --> 01:02:32.000 -summarize I've known Erik +00:57:47.170 --> 00:57:50.160 +to keep coming back to our party of eight. -01:02:32.000 --> 01:02:34.240 -I've known Erik my whole life I've known +00:57:50.160 --> 00:57:55.710 +It's, it's one of the things that dungeon that you can't -01:02:34.240 --> 01:02:36.160 -hope around a decade we +00:57:55.710 --> 00:57:59.290 +change when you write your own dungeon. And that's the -01:02:36.160 --> 01:02:39.599 -worked together on a project for +00:57:59.290 --> 00:58:03.900 +reason it's so complicated as a, as a software project why -01:02:39.599 --> 01:02:44.559 -for a science fiction convention yeah +00:58:03.900 --> 00:58:08.640 +it's taken us decades, because trying to model the data for -01:02:44.559 --> 01:02:46.880 -we got conventions and then I also +00:58:08.640 --> 00:58:13.820 +example or really any attempt, quantify it in specific -01:02:46.880 --> 01:02:48.960 -helped with I just wrote a bio +00:58:13.820 --> 00:58:16.160 +terms always falls to examples. -01:02:48.960 --> 01:02:50.799 -so this should like all theoretically be +00:58:16.160 --> 00:58:20.740 +You know dungeons usually have elves, elves, dwarves and -01:02:50.799 --> 01:02:53.599 -in my head right +00:58:20.740 --> 00:58:25.160 +humans. They have priests, wizards and warriors. -01:02:53.599 --> 01:02:58.079 -I want I refer to my own bio +00:58:25.160 --> 00:58:29.330 +They have eight characters in the party. The Balrogs are -01:02:58.079 --> 01:03:00.160 -I'm the project coordinator for Dungeon +00:58:29.330 --> 00:58:34.160 +particularly nasty and live in a room of some specific shape. -01:03:00.160 --> 01:03:10.799 -mode +00:58:34.160 --> 00:58:57.160 +And they have spoilers. -01:03:10.799 --> 01:03:14.000 -that's nice +00:58:57.160 --> 00:59:00.900 +So let's touch on special power real quick since that's one -01:03:14.000 --> 01:03:16.400 -we've gotten a ton of support from a lot +00:59:00.900 --> 00:59:04.820 +of the things that is kind of unique to dungeon. And one of -01:03:16.400 --> 01:03:18.000 -of our lifelong friends people +00:59:04.820 --> 00:59:08.710 +the things that is the biggest challenge to us and trying -01:03:18.000 --> 01:03:20.480 -and also people that we just met maybe +00:59:08.710 --> 00:59:12.160 +to code a system like this for automated play. -01:03:20.480 --> 01:03:22.319 -that's a that's a great segue +00:59:12.160 --> 00:59:15.680 +And that's that every character gets a unique special power -01:03:22.319 --> 01:03:25.039 -do throw your questions in there I'm +00:59:15.680 --> 00:59:19.300 +and traditionally you negotiate your special power with the -01:03:25.039 --> 01:03:26.400 -going to fill for just a second and then +00:59:19.300 --> 00:59:22.600 +dungeon master when you create your character, and -01:03:26.400 --> 01:03:27.839 -we'll probably cut away +00:59:22.600 --> 00:59:25.970 +occasionally throughout the course of the characters life -01:03:27.839 --> 01:03:32.319 -but +00:59:25.970 --> 00:59:29.160 +their special power might change due to game circumstances, -01:03:32.319 --> 01:03:34.960 -I mean thematically actually that's +00:59:29.160 --> 00:59:34.160 +usually it improves but sometimes not. -01:03:34.960 --> 01:03:36.319 -that's too abrupt so we need to go +00:59:34.160 --> 00:59:37.180 +So those are the most fun conversations right sometimes we -01:03:36.319 --> 01:03:37.200 -around the room +00:59:37.180 --> 00:59:39.820 +have fun gaming sessions where we barely get all the -01:03:37.200 --> 01:03:39.119 -Erik you had hours and hours to rehearse +00:59:39.820 --> 00:59:42.800 +characters created and started, because we get off into -01:03:39.119 --> 01:03:40.720 -hope kind of jumped in on the last +00:59:42.800 --> 00:59:45.780 +arguing about the special powers no Zelda special powers -01:03:40.720 --> 01:03:41.359 -minute +00:59:45.780 --> 00:59:49.160 +obviously the candle Come on. -01:03:41.359 --> 01:03:43.520 -so let's let's is it okay to pick on you +00:59:49.160 --> 00:59:54.160 +Also that was like, not so. -01:03:43.520 --> 01:03:46.319 -or do you want me to give mine +00:59:54.160 --> 01:00:02.160 +I still have my t shirt. Hey, there she is. Let's cut scene. -01:03:46.319 --> 01:03:48.880 -to what are you asking me to do what +01:00:02.160 --> 01:00:05.890 +I'm going to be working with fun filters today, because -01:03:48.880 --> 01:03:50.000 -do you what do you want people to take +01:00:05.890 --> 01:00:12.250 +that's what we got going on over here. All right, I'm going -01:03:50.000 --> 01:03:51.359 -away from this talk +01:00:12.250 --> 01:00:19.160 +to recut everybody hang on tight. -01:03:51.359 --> 01:03:54.240 -you know as we think about Dungeon and +01:00:19.160 --> 01:00:21.160 +All right, there's Erik. -01:03:54.240 --> 01:03:55.280 -sharing it's +01:00:21.160 --> 01:00:24.160 +This is going to be Erik for a second home. -01:03:55.280 --> 01:03:57.520 -sharing its tradition as we think about +01:00:24.160 --> 01:00:27.680 +No worries. And welcome to that welcome to the stream. Trix -01:03:57.520 --> 01:03:58.799 -learning Emacs +01:00:27.680 --> 01:00:29.160 +ie horror. -01:03:58.799 --> 01:04:02.799 -and like making that awesome +01:00:29.160 --> 01:00:33.410 +Who is one of our project team members somebody who's -01:04:02.799 --> 01:04:04.880 -and just you know generally what's up +01:00:33.410 --> 01:00:37.160 +learning Emacs as part of the project, and. -01:04:04.880 --> 01:04:07.599 -with free software and trying to make +01:00:37.160 --> 01:00:42.690 +Yeah, I particularly wanted to invite you on to talk about -01:04:07.599 --> 01:04:12.480 -computers a tool to make people freer +01:00:42.690 --> 01:00:47.700 +your experience learning Emacs I think you have run into -01:04:12.480 --> 01:04:15.200 -wow that's like five questions yeah so +01:00:47.700 --> 01:00:52.900 +places where it's a pain in the butt to learn Emacs and that -01:04:15.200 --> 01:04:15.920 -I'm going to start +01:00:52.900 --> 01:00:56.160 +this is a safe space to talk about that. -01:04:15.920 --> 01:04:18.960 -with jumping I think +01:00:56.160 --> 01:01:02.160 +I'll jump in by saying the Emacs cheat sheet. -01:04:18.960 --> 01:04:22.240 -that Dungeon is a lot of fun and +01:01:02.160 --> 01:01:07.160 +I think it's the one that can do puts out is a lifesaver. -01:04:22.240 --> 01:04:25.359 -you know I'm I've played many +01:01:07.160 --> 01:01:12.030 +I think there's a little bit of a vocabulary disconnect, -01:04:25.359 --> 01:04:27.599 -commercial role-playing games over the +01:01:12.030 --> 01:01:16.050 +like, and this actually kind of comes up a lot in -01:04:27.599 --> 01:04:28.480 -years +01:01:16.050 --> 01:01:21.080 +conversation with Corwin and Erik and I, but coffee paste -01:04:28.480 --> 01:04:31.680 -and I've enjoyed all of them and there +01:01:21.080 --> 01:01:25.160 +versus what yank and w, whatever w killing yank. -01:04:31.680 --> 01:04:32.000 -are +01:01:25.160 --> 01:01:28.160 +Yeah. -01:04:32.000 --> 01:04:34.720 -very few of them that I've had as many +01:01:28.160 --> 01:01:31.380 +Why would you even do that to us right where where were you -01:04:34.720 --> 01:04:36.319 -belly laughs and as much +01:01:31.380 --> 01:01:34.810 +when zeros park happened. No, I understand that makes sense. -01:04:36.319 --> 01:04:40.160 -just joy playing as from Dungeon +01:01:34.810 --> 01:01:39.160 +What else. -01:04:40.160 --> 01:04:42.799 -and I think you know the magic of it is +01:01:39.160 --> 01:01:41.920 +I mean you don't have to sit here and rag on Emacs but we're -01:04:42.799 --> 01:04:43.280 -you know +01:01:41.920 --> 01:01:44.160 +here for that. That's all I'm saying. -01:04:43.280 --> 01:04:45.520 -like any game like the real magic is the +01:01:44.160 --> 01:01:48.250 +I think that's the biggest thing, like, I'm, I'm used to, -01:04:45.520 --> 01:04:47.200 -people you play with and having fun with +01:01:48.250 --> 01:01:52.170 +like, just kind of the very binary nature of like, nope, -01:04:47.200 --> 01:04:49.599 -your friends +01:01:52.170 --> 01:01:55.160 +that didn't work, try something else. -01:04:49.599 --> 01:04:51.280 -and what I would hope that people can +01:01:55.160 --> 01:02:00.680 +So, as long as you're willing to try other stuff like Emacs -01:04:51.280 --> 01:04:53.440 -take away from is that Dungeon has the +01:02:00.680 --> 01:02:07.160 +will be fine. So, it's a tough cookie it can take it. -01:04:53.440 --> 01:04:55.920 -ability to be that magical thing +01:02:07.160 --> 01:02:14.430 +The only thing that happens is you have to install it -01:04:55.920 --> 01:04:59.280 -and hopefully we can get our project to +01:02:14.430 --> 01:02:21.160 +through your file that you hopefully have a backup of. -01:04:59.280 --> 01:05:00.000 -the point +01:02:21.160 --> 01:02:25.160 +Um, are there more questions in the hopper. -01:05:00.000 --> 01:05:02.160 -where it gets out of the way and lets +01:02:25.160 --> 01:02:29.500 +If anybody does have any questions up there for hope for -01:05:02.160 --> 01:05:04.960 -you have that fun with your friends +01:02:29.500 --> 01:02:34.210 +Erik or I so just to summarize, I've known Erik, I've known -01:05:04.960 --> 01:05:07.200 -but there's a lot of work to do we +01:02:34.210 --> 01:02:38.640 +Erik, my whole life, I've known hope around a decade we -01:05:07.200 --> 01:05:08.240 -could use some help +01:02:38.640 --> 01:02:41.760 +work together on a project for, for a science fiction -01:05:08.240 --> 01:05:10.880 -so if you're interested in having fun +01:02:41.760 --> 01:02:42.160 +convention. -01:05:10.880 --> 01:05:20.960 -come help us build this fun tool +01:02:42.160 --> 01:02:45.160 +Yeah. -01:05:20.960 --> 01:05:22.319 -all right so I just got the call that +01:02:45.160 --> 01:02:49.360 +I've written a few conventions and then I also helped with -01:05:22.319 --> 01:05:24.079 -we've got just about two to three +01:02:49.360 --> 01:02:53.710 +I just wrote a bio. So this should like all theoretically -01:05:24.079 --> 01:05:25.039 -minutes left +01:02:53.710 --> 01:02:55.160 +be in my head right. -01:05:25.039 --> 01:05:28.160 -and we should start our wrap-up +01:02:55.160 --> 01:03:01.660 +I want to refer to my own bio project coordinator for -01:05:28.160 --> 01:05:31.440 -okay wrap up so +01:03:01.660 --> 01:03:03.160 +dungeon mode. -01:05:31.440 --> 01:05:34.240 -yeah so I'll I'll see if I can charge +01:03:03.160 --> 01:03:07.160 +I was a bird assistant good credit. -01:05:34.240 --> 01:05:35.920 -the room with some energy unless you're +01:03:07.160 --> 01:03:13.160 +And family friend to the Bruce. Oh, -01:05:35.920 --> 01:05:38.480 -ready to have at it hope +01:03:13.160 --> 01:03:17.870 +yeah, we've gotten a ton of support from a lot of our -01:05:38.480 --> 01:05:40.720 -here here's here's what I want people to +01:03:17.870 --> 01:03:21.720 +lifelong friends people, and also people that we just met. -01:05:40.720 --> 01:05:42.799 -take away +01:03:21.720 --> 01:03:24.160 +Maybe that's a that's a great segue. -01:05:42.799 --> 01:05:47.039 -were you like no okay +01:03:24.160 --> 01:03:26.900 +Do throw your questions in there I'm going to fill for just -01:05:47.039 --> 01:05:53.599 -I'm not getting your audio hope +01:03:26.900 --> 01:03:29.160 +a second and then we'll probably cut away. -01:05:53.599 --> 01:05:55.839 -it's okay on my end maybe I just need to +01:03:29.160 --> 01:03:35.970 +But, I'm thinking thematically actually, that's that's too -01:05:55.839 --> 01:05:57.359 -speak up +01:03:35.970 --> 01:03:38.810 +abrupt so we need to go around the room, Erik you had hours -01:05:57.359 --> 01:05:58.880 -is this better let me know when I'm +01:03:38.810 --> 01:03:41.480 +and hours to rehearse hope kind of jumped in on the last -01:05:58.880 --> 01:06:00.640 -coming through yeah you're coming +01:03:41.480 --> 01:03:42.160 +minute. -01:06:00.640 --> 01:06:01.680 -through now +01:03:42.160 --> 01:03:47.050 +So let's let's, is it okay to pick on you or do you want me -01:06:01.680 --> 01:06:05.359 -okay cool oh no I +01:03:47.050 --> 01:03:48.160 +to get mine. -01:06:05.359 --> 01:06:08.799 -was going to say go ahead I didn't okay +01:03:48.160 --> 01:03:51.490 +What are you asking me to do what do you what do you want -01:06:08.799 --> 01:06:10.559 -I mean I I don't know that I know what I +01:03:51.490 --> 01:03:55.280 +people to take away from this talk, you know, as we think -01:06:10.559 --> 01:06:12.880 -want to say either except a whole ton of +01:03:55.280 --> 01:03:59.010 +about dungeon and sharing it's sharing its tradition, as we -01:06:12.880 --> 01:06:13.599 -thank yous +01:03:59.010 --> 01:04:03.160 +think about learning Emacs, and like making that awesome. -01:06:13.599 --> 01:06:16.480 -so I will I will save those for the for +01:04:03.160 --> 01:04:08.210 +And just, you know, generally what's up with free software -01:06:16.480 --> 01:06:17.200 -the literal +01:04:08.210 --> 01:04:13.160 +and trying to make computers a tool to make people freer. -01:06:17.200 --> 01:06:20.880 -end here and instead +01:04:13.160 --> 01:04:18.160 +Yeah, I'm going to ask like five questions. Yeah, so just -01:06:20.880 --> 01:06:24.160 -what I would say is as we build +01:04:18.160 --> 01:04:19.160 +jump in. -01:06:24.160 --> 01:06:27.839 -our amazing innovations and +01:04:19.160 --> 01:04:24.160 +I think that dungeon is a lot of fun. And, you know, I'm, I -01:06:27.839 --> 01:06:32.160 -explore our ideas in Emacs +01:04:24.160 --> 01:04:29.260 +'ve played many commercial role playing games over the years -01:06:32.160 --> 01:06:35.119 -we are fighting our own ego for the will +01:04:29.260 --> 01:04:32.160 +, and I've enjoyed all of them. -01:06:35.119 --> 01:06:36.079 -to get them done +01:04:32.160 --> 01:04:36.500 +But there's very few of them that I've had as many belly -01:06:36.079 --> 01:06:37.680 -it's hard and we're not sure if they're +01:04:36.500 --> 01:04:41.410 +laughs and as much just joy, playing as from dungeon. And I -01:06:37.680 --> 01:06:38.960 -going to be a good idea and will it +01:04:41.410 --> 01:04:44.500 +think, you know, the magic of it is, you know, like any -01:06:38.960 --> 01:06:40.000 -excite people and part of our +01:04:44.500 --> 01:04:47.400 +game like the real magic is the people you play with and -01:06:40.000 --> 01:06:41.680 -responsibility is to excite people so +01:04:47.400 --> 01:04:50.160 +having fun with your friends. -01:06:41.680 --> 01:06:43.440 -that they can feel good about liking +01:04:50.160 --> 01:04:53.780 +And what I would hope that people can take away from is -01:06:43.440 --> 01:06:44.240 -them +01:04:53.780 --> 01:04:57.900 +that dungeon has the ability to be that magical thing. And -01:06:44.240 --> 01:06:45.680 -if you come off and you're like hey this +01:04:57.900 --> 01:05:01.870 +hopefully we can get our project to the point where it gets -01:06:45.680 --> 01:06:47.359 -is a terrible idea it's really hard to +01:05:01.870 --> 01:05:06.160 +out of the way and lets you have that fun with your friends. -01:06:47.359 --> 01:06:47.920 -be like +01:05:06.160 --> 01:05:12.180 +So I think there's a lot of work to do we could use some -01:06:47.920 --> 01:06:49.760 -no I love that idea it works +01:05:12.180 --> 01:05:19.330 +help. So if you're interested in having fun. Come help us -01:06:49.760 --> 01:06:51.200 -theatrically but +01:05:19.330 --> 01:05:22.160 +build this fun tool. -01:06:51.200 --> 01:06:55.680 -in larger groups may not scale +01:05:22.160 --> 01:05:25.370 +Alright so I just got the call that we've got just about -01:06:55.680 --> 01:06:58.400 -so that's a crucible for ideas and a +01:05:25.370 --> 01:05:29.160 +two to three minutes left, and we should start our wrap up. -01:06:58.400 --> 01:07:00.400 -crucible for teams +01:05:29.160 --> 01:05:31.160 +Wrap up. -01:07:00.400 --> 01:07:03.280 -the first part is definitely healthy the +01:05:31.160 --> 01:05:35.090 +Yeah, so I'll see if I can charge the room with some energy -01:07:03.280 --> 01:07:04.240 -second part +01:05:35.090 --> 01:05:38.160 +unless you're ready to have that at home. -01:07:04.240 --> 01:07:07.440 -there's a lot we can we can do you know +01:05:38.160 --> 01:05:43.160 +Here, here's, here's what I want people to take away. -01:07:07.440 --> 01:07:08.640 -having upfront +01:05:43.160 --> 01:05:47.160 +Were you like, No, okay. -01:07:08.640 --> 01:07:10.880 -and and and good faith conversations on +01:05:47.160 --> 01:05:54.160 +I'm not getting your audio hope. -01:07:10.880 --> 01:07:15.440 -that subject +01:05:54.160 --> 01:05:57.160 +So my end, maybe I just need to speak up. -01:07:15.440 --> 01:07:17.520 -anybody else wanted I want to weigh it +01:05:57.160 --> 01:06:01.160 +Is this better, let me know when I'm coming through. -01:07:17.520 --> 01:07:19.119 -in after that sorry that that was more +01:06:01.160 --> 01:06:05.160 +Okay, cool. -01:07:19.119 --> 01:07:23.200 -of a calm down than a then a fire out +01:06:05.160 --> 01:06:07.160 +I was gonna say go ahead. -01:07:23.200 --> 01:07:27.280 -oh that's okay +01:06:07.160 --> 01:06:11.240 +I didn't. Okay. I mean I don't know that I know what I want -01:07:27.280 --> 01:07:29.280 -I mean the first part of this but I +01:06:11.240 --> 01:06:15.290 +to say either except a whole ton of thank you. So, I will, -01:07:29.280 --> 01:07:30.960 -think +01:06:15.290 --> 01:06:19.160 +I will save those for the, for the literal end here. -01:07:30.960 --> 01:07:32.960 -we would be remiss not to highlight org +01:06:19.160 --> 01:06:26.630 +And instead, what I would say is, as we build our amazing -01:07:32.960 --> 01:07:34.880 -mode a little bit +01:06:26.630 --> 01:06:32.160 +innovations and explore our ideas in Emacs. -01:07:34.880 --> 01:07:37.839 -yeah like that's that's our bread and +01:06:32.160 --> 01:06:34.980 +We are fighting our own ego for the will to get them done, -01:07:37.839 --> 01:07:38.480 -butter +01:06:34.980 --> 01:06:37.740 +it's hard and we're not sure if they're going to be a good -01:07:38.480 --> 01:07:40.240 -yeah our whole project is built on org +01:06:37.740 --> 01:06:39.960 +idea and will it excite people and part of our -01:07:40.240 --> 01:07:42.720 -mode right and I'm just really excited +01:06:39.960 --> 01:06:42.780 +responsibility is to excite people so that they can feel -01:07:42.720 --> 01:07:46.240 -because like I have I don't have adhd +01:06:42.780 --> 01:06:44.160 +good about liking them. -01:07:46.240 --> 01:07:49.680 -but I have like something similar and so +01:06:44.160 --> 01:06:47.930 +If you come off and you're like hey this is a terrible idea -01:07:49.680 --> 01:07:51.119 -like to know that there's something that +01:06:47.930 --> 01:06:51.470 +it's really hard to be like, no I love that idea works -01:07:51.119 --> 01:07:54.880 -exists that is like purely hierarchical +01:06:51.470 --> 01:06:55.160 +theatrically but in larger groups may not scale. -01:07:54.880 --> 01:07:57.760 -is incredible like I can just run a +01:06:55.160 --> 01:07:00.160 +So that's a crucible for ideas and a crucible for teams. -01:07:57.760 --> 01:07:58.559 -report +01:07:00.160 --> 01:07:05.280 +The first part is definitely healthy. The second part, -01:07:58.559 --> 01:08:01.839 -basically and get all of my like +01:07:05.280 --> 01:07:10.070 +there's a lot we can we can do, you know, having a front -01:08:01.839 --> 01:08:03.839 -to-do lists that I didn't have to put in +01:07:10.070 --> 01:07:15.160 +and and and good faith conversations on that subject. -01:08:03.839 --> 01:08:05.760 -one specific place +01:07:15.160 --> 01:07:19.600 +Anybody else want to want to wade in after that sorry that -01:08:05.760 --> 01:08:10.559 -and like that's kind of been +01:07:19.600 --> 01:07:23.160 +that was more of a calm down than a fire out. -01:08:10.559 --> 01:08:14.559 -a complex issue for me of like +01:07:23.160 --> 01:07:25.160 +Okay. -01:08:14.559 --> 01:08:16.480 -okay I have all these to-do lists like +01:07:25.160 --> 01:07:27.160 +I think. -01:08:16.480 --> 01:08:18.080 -in google keep or whatever like what do +01:07:27.160 --> 01:07:32.180 +The first part of this but I think we would be remiss not -01:08:18.080 --> 01:08:18.319 -I +01:07:32.180 --> 01:07:35.860 +to highlight org mode, a little bit. Yeah, like, that's, -01:08:18.319 --> 01:08:20.719 -do with them now so being able to like +01:07:35.860 --> 01:07:39.280 +that's our bread and butter. Yeah, our whole project is -01:08:20.719 --> 01:08:21.359 -pull them +01:07:39.280 --> 01:07:40.160 +built on org mode. -01:08:21.359 --> 01:08:24.400 -into one list and then just cycle +01:07:40.160 --> 01:07:44.580 +Right. And I'm just really excited because, like, I have, I -01:08:24.400 --> 01:08:26.640 -through them is really incredible +01:07:44.580 --> 01:07:48.670 +don't have ADHD, but I have like something similar. And so, -01:08:26.640 --> 01:08:30.239 -and I think taking a Dungeon and +01:07:48.670 --> 01:07:52.230 +like to know that there's something that exists, that is -01:08:30.239 --> 01:08:34.480 -like using it to +01:07:52.230 --> 01:07:54.160 +like purely hierarchical. -01:08:34.480 --> 01:08:35.839 -like combining it with org mode +01:07:54.160 --> 01:07:59.170 +It's incredible, like I can just run a report, basically -01:08:35.839 --> 01:08:37.759 -basically +01:07:59.170 --> 01:08:03.550 +and get all of my like to do lists that I didn't have to -01:08:37.759 --> 01:08:41.040 -really yeah I'm excited about it I'm +01:08:03.550 --> 01:08:06.160 +put in one specific place. -01:08:41.040 --> 01:08:42.560 -excited to see like what it can do for +01:08:06.160 --> 01:08:13.190 +And, like, that's kind of been a complex issue for me of -01:08:42.560 --> 01:08:44.159 -player groups +01:08:13.190 --> 01:08:16.680 +like, okay, I have all these to do lists, like in Google -01:08:44.159 --> 01:08:47.759 -yeah especially +01:08:16.680 --> 01:08:19.160 +Keep or whatever like what do I do with them now. -01:08:47.759 --> 01:08:50.319 -like I was excited about Dungeon mode +01:08:19.160 --> 01:08:24.160 +So being able to like pull them into one list. -01:08:50.319 --> 01:08:52.319 -before the pandemic and now like I'm +01:08:24.160 --> 01:08:27.160 +And then recycle through them is really incredible. -01:08:52.319 --> 01:08:53.920 -only more enthusiastic +01:08:27.160 --> 01:08:35.500 +And I think taking dungeon and like using it to like -01:08:53.920 --> 01:08:57.120 -so yeah definitely the pandemic has +01:08:35.500 --> 01:08:40.160 +combining it with org mode basically really. -01:08:57.120 --> 01:08:58.400 -been the greatest thing that happened to +01:08:40.160 --> 01:08:44.210 +I'm excited about it and I'm excited to see like what it -01:08:58.400 --> 01:08:59.120 -this game +01:08:44.210 --> 01:08:46.160 +can do for player groups. -01:08:59.120 --> 01:09:02.080 -terrible terrible as it is to say that +01:08:46.160 --> 01:08:49.190 +Especially now that quarantine like I was excited about -01:09:02.080 --> 01:09:02.640 -it +01:08:49.190 --> 01:08:50.160 +dungeon mode. -01:09:02.640 --> 01:09:05.120 -if we needed a hobby and it turns out +01:08:50.160 --> 01:08:54.040 +Before the pandemic and now like I'm only more enthusiastic. -01:09:05.120 --> 01:09:06.719 -role-playing games are +01:08:54.040 --> 01:08:57.940 +So, yeah, definitely the pandemic has been the greatest -01:09:06.719 --> 01:09:11.279 -a really good fit +01:08:57.940 --> 01:09:01.720 +thing that happened to this game, terrible terrible as it -01:09:11.279 --> 01:09:13.839 -so so I think that's probably about +01:09:01.720 --> 01:09:05.090 +is to say that it, if we needed a hobby and it turns out -01:09:13.839 --> 01:09:14.799 -our time +01:09:05.090 --> 01:09:11.160 +role playing games are are really good. -01:09:14.799 --> 01:09:18.560 -I'm guessing that's my call and +01:09:11.160 --> 01:09:16.610 +So, so I think that's probably about our time. I'm guessing -01:09:18.560 --> 01:09:21.759 -thank you very much thank you +01:09:16.610 --> 01:09:21.160 +that's my call. And thank you very much. -01:09:21.759 --> 01:09:23.120 -everybody +01:09:21.160 --> 01:09:24.970 +Thank you everybody will be around for discord and stuff -01:09:23.120 --> 01:09:25.679 -we'll be around for discord and stuff +01:09:24.970 --> 01:09:27.160 +later come catch us if you want to talk. -01:09:25.679 --> 01:09:31.759 -later come catch us if you want to talk +01:09:27.160 --> 01:09:30.160 +Okay. -- cgit v1.2.3