CASTLE.C av Offe I ditt bibliotek har du en fil som heter castle.c. Det var slottet som du släppte för att bli magiker. Det är ett objekt och kan byggas om till vad som helst, men i första hand är det till för att ladda in dina rum och klona fram dina monster och prylar varje gång spelet har bootat om. Om du klonar ett av dina monster eller en av dina prylar, kommer de inte att stanna i spelet permanent. Det kommer inte ett nytt monster automatiskt om någon dödar det. Det måste du själv se till. Ska monstret eller prylen klonas fram i ett av dina egna rum, skriver du in det i reset() i rummets fil. (Se /doc/exempel/) Om du inte har ett eget rum, eller om du vill att monstret eller prylen ska klonas fram i någon annans rum, skriver du in det i reset() i din fil castle.c. Den är den enda av dina filer som du kan vara säker på alltid finns i spelet. Dina rum laddas inte förrän någon går in i dem och de förstörs när de stått tomma ett tag, för att spara plats i minnet. (Se clean_up() i /doc/build/rum/funktioner) Om du vill använda dig av reset() i castle.c måste du dock ta bort den kod som förstör slottet när det väl har laddats in. Om du har byggt ett rum, vill du också att någon ska kunna komma in i det. Det finns tre sätt att göra detta på: 1) Tala med den magiker som har byggt rummet som du vill bygga ihop ditt rum med. Be dem att lägga in ditt rum i sin 'dest_dir' och att anpassa sitt rums beskrivning efter den nya utgången. Detta är det snyggaste sättet att göra det på. Ibland går det inte att använda den metoden. Rum som ligger i /rum/ ska inte ha nya permanenta utgångar, för att det ska vara lätt att kopiera bara den centrala delen av världen om någon skulle vilja starta ett nytt Svensk-MUD på annat håll. 2) Näst bästa sättet är att själv lägga till en utgång i det rum du vill bygga ihop med. Det gör du i create() i castle.c med hjälp av funktionen add_dest_dir(). Läs "man" för den funktionen. 3) Tredje sättet fungerar så att du lägger ett objekt i rummet som reagerar på t.ex. "norr" och flyttar spelaren till ditt rum. Det är ett väldigt fult sätt att göra en utgång på, om det inte finns speciella skäl för det. Ett sådant skäl kan vara att utgången inte ska vara uppenbar, eller att spelaren ska teleporteras till ett ställe utanför den vanliga världen om de gör något speciellt med objektet. Om det inte är nödvändigt, ska objektet inte vara synligt. Objektet laddas in i create() i castle.c och flyttas till rätt rum i create() i objektet. (För att ladda en förlaga skriver du "/spelare/dittnamn/objekt"->teleledningsanka(); där teleledningsanka() är en funktion som inte finns.) Objektet kan också vara ditt castle.c.