Attachment 'building-class-4-log-cleaned.txt'

Download

   1 BunnyHugger goes up to the board and writes, "I. Doors, II. Rooms, III. MUFs for atmosphere!"
   2 BunnyHugger has to hop up on a chair whenever she wants to write on the board.
   3 Beltrami gives thumbs up and swiftly sits.
   4 Claude shuts up and watches.
   5 BunnyHugger says, "That's our lesson plan for today.  Although, if anyone has homework to show off, we can do that first."
   6 J.P. steps off of the floating disk that carried him up.
   7 J.P. has arrived.
   8 BunnyHugger says, "Hi there, J.P."
   9 You say, "Well... kind of..."
  10 BunnyHugger says, "I was just saying that if anyone wanted to show off any homework assignments, we can slate that first."
  11 Beltrami waves to J.P.!
  12 BunnyHugger says, "What have you got, Claude?  I know you said you'd already built a zombie in the past."
  13 Beltrami holds up a finger.
  14 Claude nodnods, and looks at Beltrami.
  15 BunnyHugger says, "OK, that's great.  Claude first, then Beltrami?"
  16 Dropped.
  17 BunnyHugger says, "Aha!  I think I've seen him before."
  18 BunnyHugger says, "Can you tell us how he's controlled?"
  19 Claude ta-daa! Proceeds to wind up Clanky. "I guess! He's been around for a while."
  20 Joshua drops Terrence.
  21 Clanky whirrs to life and waves, looking around cutely.
  22 You say, "Well, I have an action on me, with a little MPI on @succ."
  23 BunnyHugger says, "What's the MPI look like?"
  24 Claude quotes: {null:{force:#20219,{&arg}}}
  25 BunnyHugger says, "Yes, that's really similar to the action I have on my quick and dirty zombies.  Null just tells MPI not to print anything out, which can end up being important if you're using certain MPI primitives which like to blurt whatever you just did to the room for no good reason."
  26 BunnyHugger says, "This is part of why MPI seems like some weird moon man language to me."
  27 BunnyHugger winks.
  28 You say, "I see!"
  29 BunnyHugger says, "But Joshua is going to tell everyone more about MPI after this course finishes.  I've only just gotten my feet wet in it a tiny bit."
  30 Terrence blinks as he tumbles out of a yote's pocket, despite being bigger than the yote.
  31  
  32      Terrence is a young, growing foxkit.  Standing about 5' tall on digigrade 
  33 hindpaws, he peers out at the world with big, cute blue eyes which threaten to 
  34 be overtaken by his unruly blonde headhair.  The front of his torso and cheeks 
  35 area nice white fluff, as is the tip of his tail.  His primary coloration is a 
  36 nice fox orange, and his "gloves" and "socks" are a charcoal black.  He 
  37 appears to be about 14 years old.
  38      The foxkit is attired in a dark grey t-shirt and camo cargo pants, both 
  39 of which look well worn from days of playing outside.  The pant pockets seem 
  40 to have some items in them, but it's hard to tell what.  He looks friendly 
  41 enough, usually grinning with a tail swishing as he looks about.
  42  
  43 Carrying: Nerf Bat of Doom
  44 Joshua tells Terrence to go sit down until it's his turn.
  45 Beltrami grins.
  46 Terrence complies, and goes to sit, watching to see what Beltrami's cooked up!
  47 BunnyHugger says, "Now, last time, Joshua was saying he puts his control function on a @fail, with the philosophy that it's better not to run do-nothing.muf unnecessarily (though of course you must still link to it to avoid your action being stolen by someone else).  Personally, this is just a difference of philosophy between us.  I think there's no serious harm in running do-nothing, since we run programs all the darned time, like every time we use 'say' on this MUF.  Probably 'pose' too for that matter."
  48 Austin says, "Yes, pose is another program."
  49 BunnyHugger says, "And because at least for beginners, it's more intuitive to run stuff on a success than on a fail."
  50 BunnyHugger says, "But, in any case, either 'works' -- it's a matter of philosophy and what you think 'best practice' is."
  51 Claude nodnods.
  52 BunnyHugger giggles, "I said 'on this MUF,' I meant 'MUCK,' but you can see how my brain went in that direction."  >:)
  53 BunnyHugger says, "MUF MUF MUF YAY"
  54 Chitter pokes BunnyHugger!
  55 BunnyHugger ahems.
  56 BunnyHugger says, "Beltrami, what have you got?"
  57 Beltrami's ears wiggle and she nods...she takes the You Are Here map and sets it down in front of BunnyHugger.
  58 BunnyHugger says, "Aw, great!"
  59 Beltrami pats it...she winds her hand counterclockwise and looks shyly down.
  60 Beltrami (touch)es the You Are Here map to examine New Town.
  61 BunnyHugger says, "Right, it's your previous week's homework."
  62 Beltrami nods.
  63 BunnyHugger looks around.  "Where did you set it?  I don't see it."
  64 Beltrami blinks.
  65 Beltrami drops You Are Here Map.
  66 BunnyHugger says, "Ah, there it is."
  67 BunnyHugger (touch)es the You Are Here map to examine New Town.
  68 Austin (touch)es the You Are Here map to examine New Town.
  69 BunnyHugger says, "Oh, wow."
  70      The map base is half an ellipsoid, skinny like a football, with the tall end poking into the air.  The surface is a powder-blue matted surface, with several silvery patches, reflectie, and inviting a touch. 
  71 New Town Map
  72      
  73 +----+          +---+          +---+          +-----+          +---+
  74 |    |----------|   |----------|   |----------|     |- - - - - |   |
  75 +----+          +---+          +---+          +-----+          +---+
  76 Newspaper       200 Beck       100 Beck       New Town         Under
  77   Office        | St           | St           | Center           Construction
  78                 |              |              |
  79                 Candor         Allegheny      Pavilion
  80                   Terrace        Bistro
  81                                Lunastar 
  82                                  Juice
  83                                Shapeshifters
  84                                  Club
  85 You say, "Cool!"
  86 Beltrami touches her chin.
  87 BunnyHugger says, "I see my rowhouses!"
  88 Joshua (touch)es the You Are Here map to examine New Town.
  89 BunnyHugger says, "Now, I'd guess you'll want to lock your map when you put it in New Town so people can't pick it up and run off with it, say, on Hallowe'en night."
  90 Beltrami nods!
  91 BunnyHugger says, "When you 'touch' it, does it work by calling a {list:}?"
  92 Beltrami nods.
  93 BunnyHugger says, "Cool.  I wanted to talk about {list:} a little bit today.  I'd guess most folks here have used it in some fashion.  It's the best way to write a description that's more than one line long."
  94 Joshua nods.
  95 BunnyHugger says, "To enter the list editor, you use 'lsedit' -- and the command syntax is: 'lsedit <thing you want to put the list on>=<name of list>'"
  96 You say, "Right!"
  97 BunnyHugger says, "Then the most basic way to call the list is with the little bit of MPI: {list:<name of list>}  When I'm writing something quick and dirty, I often just do: lsedit thing=desc and then @desc thing={list:desc}  Of course, if you want to switch between different descs on a thing, you probably want to use something more descriptive than 'desc'.  Meliora Park has 'falldesc' 'winterdesc' etc."
  98 You say, "Ooh!"
  99 BunnyHugger says, "You have to be careful though, because if something up the environment tree also has 'desc' stored on it, and you forget to actually put a 'desc' list on the item, when you look at it, you're going to see the desc of whatever's closest on the tree that has a list named that."
 100 Claude writes that down!
 101 BunnyHugger says, "It'll look up the tree for the property if it doesn't find it on the item.  I've had that result in weird stuff sometimes.  n.n"
 102 BunnyHugger says, "We'll talk more about the environment tree a little later, so don't worry if you don't know about that yet."
 103 Beltrami nodnods.
 104 BunnyHugger says, "Good job, Beltrami."
 105 BunnyHugger says, "OK, Joshua, you brought something, er, someone too?"
 106 Joshua nods, and scritches behind Terrence's ears.
 107 Terrence nuzzles into the scritches.
 108 BunnyHugger says, "Hi there!"
 109 Clanky wobbles over to Terrence and hugs.
 110 Joshua ruffs, "This is Terrence. He's currently a part of an ongoing plot here. I figured I'd bring him along and count him as my homework, since I fashioned him in the traditional way."
 111 Terrence hugs Clanky!
 112 BunnyHugger says, "I remember from last time that your zombie action is much more sophisticated than what Claude and I were showing.  You accounted for a possible failure if someone doesn't enter an argument after the command."
 113 Skyler has teleported in.
 114 Skyler has arrived.
 115 Skyler raises his nose high in the air, sniffing, and falls backward.
 116 Skyler waves!
 117 Joshua waves
 118 BunnyHugger looks at Skyler, flummoxed.
 119 You say, "Hello!"
 120 Joshua nods, "I did, let me grab that..."
 121 Austin says, "Ah ... hi, Skyler?"
 122 Joshua {with:puppet,$kel,{if:{&arg},{force:{&puppet}, {&arg}},You must enter something for {name:{&puppet}} to do.}}
 123 Joshua ruffs, "He's registered as $kel on me, as his name was previously Kelketek'. Also part of the current plot :)"
 124 Skyler doesn't mean to interrupt! PLease go on.
 125 BunnyHugger says, "I can sort of read, or guess, at that MPI, but I don't know how to write it well yet.  I'll learn that soon.  n.n"
 126 Joshua nodnods.
 127 Austin says, "It's not so bad as it might look.  Mostly the nested { marks make it look harder."
 128 BunnyHugger says, "All right, if no one else has homework to show today, we'll get back to building."
 129 Joshua must now idle, because his plumbing is now filling with the neighbor's waste.
 130 BunnyHugger says, "YIKES."
 131 BunnyHugger says, "Er, good luck."
 132 Austin eeps.
 133 You say, "Take care!"
 134 BunnyHugger says, "First topic is doors.  Doors is just what I'm calling 'exits between two rooms.'"
 135 Claude earperks.
 136 BunnyHugger says, "As you all probably remember, an exit is really just an action that is linked to a room.  So you can create and then link it the usual way, by using @action east=here and @link here=#2341 (just an example, assuming #2341 is the destination room).  But, in the special case of actions linked to rooms, in other words exits, there's a simpler syntax that can be used.  As I told Claude last week, it amounts to the same thing, but is more convenient for the purposes of building."
 137 BunnyHugger corrects, '@link east=#2341' that should say.
 138 BunnyHugger says, "But the easier way to do this when building rooms and doors is to use '@open'."
 139 BunnyHugger says, "If you ever need to remember this, of course, 'help @open' will tell you all the syntax."
 140 BunnyHugger says, "'@open East;e' would create an action in this room called 'East;e' but not link it to anything.  The first name is the one that gets used by the obvious exits program, and the other is an alias."
 141 BunnyHugger says, "Obviously, though, you don't want an unlinked exit around, so you can do '@open east;e=#2341' and in one fell swoop, create the action, attach it to the current room, and link it to #2341."
 142 BunnyHugger says, "By the way, you can do this to link local actions to programs too.  It doesn't know the difference of whether the linked thing is another room or not.  It just always creates an action in the current room and links it to whatever.  So you could do '@open push button=$nothing' and it would create an action in the current room called 'push button' and link it to do-nothing."
 143 BunnyHugger says, "Keep in mind that if you don't want an action or exit in a room to show up in the obvious exits list, you can @set push button=D to set it dark.  That stops it from showing up.  obv-exits.muf doesn't know the difference between a door and a program-running action so it'll list them all."
 144 Beltrami nods.
 145 BunnyHugger says, "The building code here on SpinDizzy says that exits should be left obvious unless there's a good reason to have them dark, like it's a maze or puzzle or something."
 146 Terrence keeps listening intently, and takes notes.
 147 BunnyHugger says, "But that's for door type exits.  Actions of other kinds are often set dark because it would be silly to have them in the obvious exits list."
 148 BunnyHugger says, "OK.  One last thing -- last time Joshua told you about reg names.  I should note that when you use @open, you can also assign a reg name to your exit.  The syntax for that is: @open East;e=#2341=eastexit would also assign the name $eastexit for your personal use, at the same time."
 149 Claude nodnods.
 150 BunnyHugger says, "Don't forget about setting @succ/@osucc/@drop/@odrop, as we talked about before.  It's good building practice."
 151 BunnyHugger says, "And also, actions can be described!  People forget to do this."
 152 Joshua raises a paw.
 153 BunnyHugger says, "@desc east=That direction looks misty and forboding."
 154 BunnyHugger says, "Yes?"
 155 Joshua ruffs, "How can we check to see if we've set all of the messages we should?"
 156 BunnyHugger says, "Good question!"
 157 BunnyHugger says, "There's an awesome command for that!"
 158 BunnyHugger says, "IT's called '@check'."
 159 You say, "There is?"
 160 Type  @check  and it will report on little missing parts of descriptions -- such as exits with no @succ message.
 161 BunnyHugger says, "Yes!  I guess that's not well advertised.  STand in a room you own and just enter '@check' and you'll get a whole list of what you forgot."
 162 BunnyHugger says, "It tells you what exits in the room are missing any of the success/drop messages or a description."
 163 Claude writes that down too. "What an useful invention."
 164 BunnyHugger says, "Descriptions can be very useful.  A desc on an action can tell people how to use it (and often that's how it works here with globals)."
 165 BunnyHugger says, "A desc on an exit will tell people what to expect over there, and adds color to things."
 166 BunnyHugger says, "I often look at exits and am disappointed by their not having descs."
 167 BunnyHugger says, "Also, we have a global here called 'sge' that I think I've mentioned before."
 168 You say, "Indeed."
 169 BunnyHugger says, "If you can't be bothered to write a unique message for all that stuff, 'sge <exit name>' sets it all for you using a generic template."
 170 BunnyHugger says, "It stands for 'set generic exit (messages)'."
 171 You say, "And then you can customize as inspiration strikes."
 172 BunnyHugger says, "Right."
 173 Joshua nods, "I always use sge. Even if I could do more detailed exits, I feel it makes the least assumptions on the player. Seeing that it says 'You walk over to x' when you're, say, a floating balloon, might be distracting."
 174 Joshua ruffs, "Sge just says that you 'go there'"
 175 Joshua ruffs, "Or similar."
 176 BunnyHugger says, "It says 'you leave for' I think."
 177 BunnyHugger says, "I do like to override its exit descriptions sometimes, though."
 178 BunnyHugger says, "It describes exits by saying 'In that direction you see...' and giving the room desc.  I don't always necessarily want that if I'm going for something atmospheric.  But, it's personal taste."
 179 Joshua nodnods.
 180 BunnyHugger says, "Another last couple of things: when you open an exit to a room, obviously you must own the room you're creating the exit in.  You must either own the room that you're linking to, or else it must be set L, in which case anyone can make exits to it.  Most grid squares are L; they're supposed to be L by default but sometimes people turn that off because no one can stop them.  >;)"
 181 BunnyHugger says, "L is Link_OK, of course."
 182 BunnyHugger says, "Remember that an unlinked exit can be chowned by anyone.  Furthermore, any exit on a room you own can be @chowned by you regardless of whether it is set C."
 183 BunnyHugger says, "So if you end up owning a room that used to be someone else's, and all their exits are still on it, you can (and probably should) then @chown all those exits to yourself also."
 184 You say, "Ah, so that's why I couldn't fix an exit once. It's not automatic, I still have to @chown it."
 185 BunnyHugger says, "Right!"
 186 BunnyHugger says, "Now, I've just presented my magic @claim program to the wizcorps."
 187 Garrison steps off of the floating disk that carried her up.
 188 Garrison has arrived.
 189 You say, "Hello, Garrison!"
 190 BunnyHugger says, "No word yet on whether they'll allow it.  It requires the big W flag so it's a tough sell."
 191 Garrison waves
 192 Beltrami waves to Garrison!
 193 BunnyHugger says, "But if they accept it, one thing it'll do is go through and @chown all the exits of something you're taking possession of, for you."
 194 Garrison waves back. 
 195 BunnyHugger says, "Hi!"
 196 Garrison says, "Sorry I'm late, had a few rl things to get through"
 197 BunnyHugger says, "All right, that's my talk about doors.  Now, of course, doors are no good without ROOMS to put 'em in."
 198 Austin says, "I don't know.  There's something kind of pure about a room-less door."
 199 Austin says, "Or, a Scary Door."
 200 You say, "A door in the middle of nowhere?"
 201 BunnyHugger says, "To create a room, you use '@dig'.  If you just '@dig Funhouse' you will create a room called Funhouse, and it will report to you the DBREF of the room and tell you it's been made.  You can then start linking it somewhere by @open-ing exits on it.  But, an important thing a lot of people don't know or understand about rooms, is that they have a 'parent'.  If you examine any room you own it'll show its parent up at the top."
 202 BunnyHugger says, "Does anyone know what it means to talk about a room's 'parent'?"
 203 BunnyHugger looks at the class, smiling.
 204 Skyler nods. "I do...in a way I can /try/ to describe. ;)"
 205 Claude tilts his head.
 206 Beltrami nods?
 207 Austin says, "I do too.  It's something wizards keep running up against."
 208 Joshua certainly can.
 209 BunnyHugger says, "Skyler, want to explain it?"
 210 Skyler says, "Well, the idea of a parent room is, if you @dig your own room, it will always have a parent. That parent room's properties 'pass down' to your own room. It saves you from having to set a bunch of stuff on 'every single similar room'. So like..."
 211 Skyler says, "We have an 'outdoors environment room' you can put your own rooms in, so they show the sky."
 212 Skyler says, "That."
 213 BunnyHugger says, "Right."
 214 BunnyHugger says, "Let me put it this way -- here's a fascinating metaphysical fact about the structure of the MUCK that takes a while for a new player to get used to."
 215 BunnyHugger says, "Everything in the MUCK is inside something else, with the exception of the primal room, #0."
 216 BunnyHugger says, "Did I just blow your mind?"
 217 Mel steps off of the floating disk that carried her up.
 218 Mel has arrived.
 219 You say, "Hello!"
 220 Beltrami grins.
 221 Mel waves.
 222 Beltrami waves to Mel!
 223 Joshua waves to mel.
 224 Joshua Mel, even
 225 BunnyHugger says, "When the MUCK is brand new and just installed, it has two objects in it, #0 and #1, the first room and the first player ("God")."
 226 Mel cows Mel!  Her spots become cowy again.
 227 Austin says, "The mind-blowing thing is the primal room is 'Kansas'."
 228 Claude grins.
 229 BunnyHugger says, "Yes, on this MUCK it's "Kansas" so if you see something that says its origin is 'Kansas' you know it's something on Room Zero."
 230 BunnyHugger says, "On my personal MUCK it's 'The Noumenon.'"
 231 Mel drawls, "Instead of, say, Kolob?"
 232 You say, "More interestingly, the parent room is by default the one you were in when you gave the @dig command."
 233 BunnyHugger says, "That's right, Claude, I was going to get to that.  Exactly so."
 234 Mel drawls, "The Noumenon. Doot doo, do do do."
 235 Joshua ruffs, "It is (theoretically, I've never done it) possible to fragment a MUCK and have a second root room."
 236 BunnyHugger says, "Wow, that's weird."
 237 BunnyHugger says, "Actually let me correct that slightly Claude -- it'll default to the first room that's set to be an environment room, from the room you @dig from.  For a lot of people, that'll be the Outdoors Environment Room or whatever."
 238 BunnyHugger says, "A lot of times, in other words, it'll be 'whatever the parent of the room you just dug from is.'"
 239 Joshua ruffs, "It would be easier to do it in ProtoMUCK, as ProtoMUCK has the ability to change database entries directly. You would do it by setting a room's location to #-1. Then you would fix the 'next' attribute from its previous parent room to the item that was its 'next' field, and then set the new root's next field to #-1"
 240 You say, "Oh, all right. *scribble scribble*"
 241 BunnyHugger says, "But back to structure: normally, anyway, everything in the MUCK is either inside Room Zero or inside something that's inside something that's.... inside Room Zero.  Except, of course, Zero itself."
 242 Joshua ruffs, "If you don't have that power, you can edit the DB by paw."
 243 BunnyHugger says, "This includes rooms: every room is 'inside' another room, which is ultimately what is meant by 'parent'.  The parent is really the room your room is 'in.'  If you examine a parent room, you'll see all the rooms that are its children listed in its 'contents'!  Weird stuff!"
 244 BunnyHugger says, "And, a room will 'inherit' things from not just its parent, but its grandparent (the room its parent is in), great-grandparent, etc.  Ultimately the big grandparent of all rooms is #0.  This is why we can use global actions that are actually attached to #0.  'sing' for instance is a fun little global we have.  'Sing' is actually an action attached to #0."
 245 BunnyHugger says, "Likewise, the global exits we have, such as 'rose', are exits that are on #0, so every room has access to them."
 246 Claude nodnods.
 247 BunnyHugger says, "So let's say you have a forest area, and you want to make a shortcut that will always take people in the forest to a campfire in the middle of it, no matter where in the forest they are.  What you would want to do is create your own environment room, call it something that will make sense to you like 'Claude's Forest Environment Room', and have it be the parent of all of your forest.  Then you could put an exit on the environment room called 'campfire' that would always take forest hikers to the fire."
 248 Claude writes that down too.
 249 BunnyHugger says, "You could also have local commands like a 'map' that always shows people in the forest a map of it.  All that good stuff, you could put on your environment room!"
 250 BunnyHugger says, "Now, MUF programs can take advantage of what's called the 'environment tree' too.  For instance, I have a program I've written elsemuck that serves as a 'smell' global, and if you smell a room that doesn't have a local smell property set, it goes up the environment tree until it finds one, so you could have a whole area smell the same by setting a prop on the environment room.  Whether a program does this or not will depend on the programmer."
 251 BunnyHugger says, "And this brings back the discussion of using the list editor to make descriptions and stuff, earlier."
 252 Beltrami nods?
 253 BunnyHugger says, "Because {list:} will, if not specified otherwise, find that list on whatever's the 'closest' environment room where a list of that name exists.  That's why if you set {list:desc} on something but forget to actually edit a desc onto it, looking at that item is going to show the closest thing in the tree that DOES have a list called 'desc' on it."
 254 BunnyHugger says, "This can be a useful feature!"
 255 BunnyHugger says, "In the apartments I just built, all the apartments have a default description that the new owner can change."
 256 You say, "So that's how it's done."
 257 BunnyHugger says, "I put the description in a list on the environment room that I created for the apartment complex, so when the rooms are created by the apartment manager program, it puts {list:newapartmentdesc} or something like that as the description, and that list is actually on the environment room."
 258 BunnyHugger says, "Now, to allow others to use your room as an environment room, you can flag it A, 'Abode.'"
 259 Austin says, "Couldn't really have a large, thematically linked area without environment room lists, really."
 260 You say, "Oh? I thought abode was just so you can make your home in somebody's room."
 261 J.P. has disconnected.
 262 BunnyHugger says, "An environment room also has to be set L."
 263 BunnyHugger says, "This is another example of contextual flags, which comes up a lot.  n.n"
 264 You say, "Everything has a context. :)"
 265 BunnyHugger says, "But as Austin says, environment rooms allow for large areas to be built more easily.  When I first went to build Edgeworld Park, I was a doofus and didn't make an environment room for it, which I later realized was important."
 266 BunnyHugger says, "Partly because Jaxen bopped me on the head about it."
 267 Joshua ruffs, "Context is the greatest bane of anyone who has to try to understand the MUCK source code -.-"
 268 BunnyHugger says, "Now, if you do create one, you'll want to make sure you choose *its* parent wisely.  The parent of my row houses environment room is the MUCK's environment room called 'Indoors'."
 269 BunnyHugger says, "Because 'Outdoors' shows the weather and sky and I don't want that in a row house's interior!"
 270 You say, "Right!"
 271 [OOC] Claude says, "Or Perl, Joshua. :P"
 272 BunnyHugger says, "So who knows HOW to set the parent of a room, after it's already been built?  If you want to change its current parent?"
 273 [OOC] Joshua cries.
 274 Claude raises a paw.
 275 BunnyHugger says, "Claude?"
 276 Austin grins.
 277 You say, "There is an @parent command."
 278 Austin says, "There is?"
 279 Joshua ruffs, "There is?"
 280 BunnyHugger says, "There is?!"
 281 BunnyHugger looks dumbfounded.
 282 I don't see that here.
 283 Joshua ruffs, "I don't see it"
 284 ?FILE NOT FOUND  ERROR (Type "help" or "globals" for help.)
 285 BunnyHugger says, "Me either.  I'm not sure we have that here!"
 286 Joshua ruffs, "Is that a MUX thing?"
 287 You say, "Huh... I'm sure it's called *something*..."
 288 BunnyHugger says, "Well, there may be global ways that some MUCKs do it..."
 289 Joshua ruffs, "I promise you the answer is much more obtuse."
 290 Joshua :)
 291 Austin says, "I'd be a good idea to have one, sure."
 292 BunnyHugger says, "But the basic way to do it on MUCK is to teleport.  Because after all, the parent of a room is the room it's IN."
 293 You say, "Because I remember not being able to move an exit between rooms without it."
 294 You say, "Ah, right! Teleport!"
 295 BunnyHugger says, "So @tel <# of room>=<# of parent>"
 296 Claude facepaws. "One day, you'd think I'll remember it..."
 297 BunnyHugger says, "And this goes for the environment rooms too.  To put my Edgeworld Park Outdoor Environment Room into the Outdoor Environment Room, I teleported it there, so that rooms in Edgeworld would have the Outdoor Environment Room as their 'grandparent.'"
 298 BunnyHugger says, "By the way, the outdoor/indoor basic environment rooms, which are the grandparents of most rooms here on SD, have the reg names '$outdoors' and '$indoors'."
 299 BunnyHugger says, "So if you want your stuff to show the sky, use $outdoors.  If you don't, use $indoors.  >:)  And $outdoors/$indoors have #0 as their own parent, so inherit all the stuff that's global across the MUCK."
 300 You say, "Do we have other general-purpose environment rooms?"
 301 BunnyHugger says, "I know there's a Sky Environment Room for the sky grid... I'm not sure what others there are.  Do you know of any more, Austin or Skyler?"
 302 BunnyHugger says, "Oh, there are ones for the different 'regions' of SD."
 303 Joshua ruffs, "@reg will give you a listing of all sorts of crazy things you could play with."
 304 BunnyHugger says, "E.g. 'New Territories Environment Room'.  They determine which chaotic scenes get shown in unclaimed rooms."
 305 BunnyHugger says, "Those scenes are called with MPI that uses lists stored on the environment room."
 306 Joshua ruffs, "We have leash?"
 307 Joshua squints at it.
 308 BunnyHugger hehs.
 309 BunnyHugger says, "Now, as mentioned earlier, one thing that often drives new players crazy, is that when you @dig a room, its parent defaults to the first environment room up the tree from the room you dug from, so it's generally going to have the same parent as the room you were standing in when you entered @dig."
 310 Austin says, "I'm not positive.  Unfortunately we don't have a central registry and it's not like there's a distinctive marker flag.  Most people list environment rooms with 'Environment Room' in the name, though.  THere's 74 of those, but a lot of them are local in intent."
 311 BunnyHugger says, "But you can override that, and often should.  One thing that frustrates people who don't know about parents, is that when they dig their house from their grid square, it ends up showing the weather indoors."
 312 Austin huhs.  Yeah, we do have leash.
 313 Joshua ruffs, "I think editroom has some built in envrionment room manager thing. But I'm not sure how all that works."
 314 Joshua ruffs, "I doubt it works properly with M1."
 315 Joshua ruffs, "Not that..."
 316 Joshua ruffs, "I would know how it works..."
 317 Joshua ruffs, "Or anything..."
 318 BunnyHugger says, "So!  @dig Funhouse=$edgeworldenv (provided I have reg'd my room with that name) or @dig Funhouse=<dbref of the edgeworld environment room> would dig the room AND set its immediate parent at the same time!  Yay!"
 319 Claude scribbles that!
 320 BunnyHugger says, "Of course, once I have the first room in my area with that parent, digging the rest of them will also default to it, provided I'm standing in the newly parented room when I do it.  >:D"
 321 BunnyHugger says, "And it's been set A."
 322 BunnyHugger says, "Finally, as usual, you can set the regname when you @dig a room.  So, to dig, set the parent, and set the regname at the same time: @dig Funhouse=$edgeworldenv=funhouse would dig it, set its environment room to the Edgeworld Environment, and give it the regname $funhouse."
 323 BunnyHugger bounces.
 324 Joshua yips!
 325 BunnyHugger says, "I advise you all to make an environment room whenever you build a large area, even if you don't have an idea of what to put on it yet."
 326 BunnyHugger says, "It'll come in handy later."
 327 Claude nods. Hmm.
 328 Joshua agreeeez.
 329 BunnyHugger says, "And that's my talk about building Rooms!  You all now know pretty much all the basics, and next time I'm just going to talk to you a little bit about using the public MUF library for special effects.  Next time should be our last class.  I'll be giving you a practical final exam at that time to take home, and then we'll meet once more to do the written exam, but that might be at a different time than usual since the Sunday after we'll be at Furfright."
 330 Beltrami nods.
 331 BunnyHugger says, "I can just kind of make appointments with everyone who wants to take it, probably, if people can't make the rescheduled time I choose."
 332 Claude yay!
 333 BunnyHugger says, "And those who pass both will receive a certificate of building competence and be ready to move on to MPI class."
 334 Joshua ruffs, "Right, and I should start on the curriculum on that. x.x"
 335 Mel has disconnected.
 336 BunnyHugger says, "I don't have any specific homework for next time, except to finish any of the previous assignments you haven't gotten to yet.  >:)"
 337 Beltrami nods.
 338 BunnyHugger says, "And class is dismissed!"
 339 

New Attachment

File to upload
Rename to
Overwrite existing attachment of same name
What is the Admin password?

Attached Files

To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.
  • [get | view] (2021-02-19 01:04:17, 41.9 KB) [[attachment:building-class-1-log-cleaned.txt]]
  • [get | view] (2021-02-19 01:04:41, 55.2 KB) [[attachment:building-class-2-log-cleaned.txt]]
  • [get | view] (2021-02-19 01:04:46, 36.2 KB) [[attachment:building-class-3-log-cleaned.txt]]
  • [get | view] (2021-02-19 01:04:51, 29.4 KB) [[attachment:building-class-4-log-cleaned.txt]]
  • [get | view] (2021-02-19 01:04:57, 49.7 KB) [[attachment:building-class-5-log-cleaned.txt]]
 All files | Selected Files: delete move to page copy to page