Indholdsfortegnelse:

Generiske værelser i garn med sukkerterning: 11 trin
Generiske værelser i garn med sukkerterning: 11 trin

Video: Generiske værelser i garn med sukkerterning: 11 trin

Video: Generiske værelser i garn med sukkerterning: 11 trin
Video: 8 reasons to learn knitting 2024, November
Anonim
Generiske værelser i garn med sukkerterning
Generiske værelser i garn med sukkerterning

Hej hej og velkommen til min tutorial om at bygge Wumpus Hunt i garn med Sugarcube!

Twine er et meget enkelt værktøj, der er designet til at skabe teksteventyrspil! Min yndlings lille fætter har valgt at lave et spil med Twine til sit seniorprojekt, og jeg får hjælp, så jeg opretter denne serie af tutorials!

Denne serie er mindre beregnet som et projekt i sig selv, og mere som en reference til spildesign med garn. Jeg vil vise nogle af Twines funktioner, og hvordan du kan bruge dem som en del af dit spil.

Hvis du vil følge med, mens jeg bygger Hunt the Wumpus, opfordrer jeg dig til at ændre ting, mens vi går. Prøv at tilføje funktioner eller bruge ting på nye måder. På den måde kan du lave dit eget spil, i stedet for bare at følge mit.

Nu har vi en Wumpus at jage!

Trin 1: For skyldens skyld …

For skyldhedens skyld …
For skyldhedens skyld …

Denne vejledning antager, at du er bekendt med nogle grundlæggende. Normalt kan jeg lide at gøre mine tutorials så tilgængelige som muligt, men denne gang skal jeg til kødet og kartoflerne af hensyn til min yndige widdle fætter.

Jeg går ud fra, at du er forbigående fortrolig med Twine; at du ved, hvordan du downloader det (eller bruger onlineversionen), og at du ved, hvordan du laver nye passager og forbinder dem. Jeg går også ud fra, at du er fortrolig med nogle grundlæggende programmeringskoncepter, nemlig variabler og funktioner, og hvordan de bruges i Sugarcube.

Jeg må antage, at du kender spillet Hunt the Wumpus. Det er et svært koncept at beskrive med ord, og at forklare med billeder ville tage evigt. Jeg forsøgte at finde en video eller noget, der forklarede det, men jeg kunne ikke finde nogen, der bare var fortælleløst spil. Jeg gætter på, at det er en af de ting, der bare går i arv i generation, og alle antager bare, at du ved om det. Jeg tror ikke, jeg hjælper med det.

Trin 2: Idéen

Ideen
Ideen

Ideen bag dette projekt er, at vi kan bruge Twines passager som individuelle rum. Spilleren kan krydse disse rum gennem linkene, og koden ændrer rummets tekst afhængigt af om Wumpus er der eller ej.

Dette koncept endte med at være mere udfordrende, end jeg havde regnet med, men i det hele taget tror jeg, at det mest passede inden for Twines styrehus.

Trin 3: Opret nogle rum

Opret nogle værelser
Opret nogle værelser
Opret nogle værelser
Opret nogle værelser
Opret nogle værelser
Opret nogle værelser
Opret nogle værelser
Opret nogle værelser

Som du kan se ovenfor, startede jeg med at oprette et 3x3 gitter med værelser. Jeg har også en introduktionspassage, hvor spilleren starter, og som linker til et rum på nettet. Koden til disse er meget grundlæggende, bare lidt tekst og links. Jeg lavede lidt formatering for at arrangere linkene i hvert værelse (som du kan se på det tredje billede), men jeg holdt det minimalt.

Nøglen til dette trin er minimalisme. Du får lyst til at omarbejde de fleste af disse ting med jævne mellemrum, så du ikke vil skulle gentage en hel masse arbejde. Hold dig til mindre end 10 værelser i alt, hold rumbeskrivelser korte, gør ikke tingene smukke endnu. De skal kun være funktionelle.

Når du får koden til at fungere, kan den være smuk.

Trin 4: Tilføj en Wumpus

Tilføj en Wumpus
Tilføj en Wumpus

For at tilføje vores Wumpus skal vi oprette en StoryInit -passage.

Denne passage er unik for SugarCube og køres, før spilleren ser startpassagen. Det bruges til at konfigurere variabler og objekter, der skal oprettes, før spillet begynder. Det er meget vigtigt, at afsnittet får titlen "StoryInit", og det er store og små bogstaver.

Vi erklærer vores Wumpus -variabel som en streng og tildeler den et tilfældigt rums titel. Vi kan bruge enten () -funktionen til at tildele den en tilfældig streng fra en liste med strenge. På den måde starter Wumpus altid i et tilfældigt rum.

Trin 5: Kontroller, om der er en Wumpus

Check efter en Wumpus
Check efter en Wumpus

Til hvert værelse tilføjer vi en "" erklæring, der kontrollerer, om Wumpus er i det aktuelle rum. Hvis det er det, udskriver det en kort streng. Hvis det ikke er det, dukker der ikke noget op.

Fordi vi bygger dette, tilføjer vi også nogle fejlfindingsoplysninger. Vi vil gerne på forhånd vide, hvor vores Wumpus er, og at den fungerer korrekt.

Du bliver nødt til at kopiere og indsætte denne kode individuelt i hvert værelse for nu. Det er derfor, jeg fortalte dig at holde dig til kun et par værelser.

Trin 6: Test

Prøve
Prøve
Prøve
Prøve

Vi tester vores kode ved at spille den. Nok kan vi se, hvor Wumpus er placeret øverst på skærmen. Hvis vi ikke er i det rum, er "A Wumpus her!" tekst vises ikke.

Ved at navigere til det korrekte rum kan vi få teksten til at blive vist. Sådan tildeler vi vores Wumpus et tilfældigt rum for hvert spil!

Trin 7: Tilføjelse af generisk rumkode

Tilføjelse af generisk værelseskode
Tilføjelse af generisk værelseskode
Tilføjelse af generisk værelseskode
Tilføjelse af generisk værelseskode

Alt det der kopierer og indsætter for at få hvert værelse til at kontrollere Wumpus er tedius. Når vi udvikler dette spil, vil vi meget gerne ændre denne kode. Vi får brug for en bedre måde at gøre det på. Lad os oprette en generisk rumkode.

Lav en passage, og tit den til noget særligt. Jeg kalder bare mit "værelse" med alle små bogstaver. Du vil måske bruge specialtegn eller alle kasketter til at gøre dit unikt, så det ikke ligner nogen af dine rigtige rumnavne.

Vi klipper og indsætter vores "" erklæring i denne generiske rumkode. Brug derefter en "" erklæring i hvert af dine rigtige lokaler. Dette vil bogstaveligt talt kopiere og indsætte indholdet af vores "rum" -passage i den del af hvert værelse. På den måde kan vi lade maskinen håndtere de kedelige bits, mens vi fokuserer på kode!

Du kan læse mere om "" og andre udsagn på Sugarcube 2 -dokumentationssiden.

Trin 8: Test

Prøve
Prøve
Prøve
Prøve

At teste dette giver naturligvis de samme resultater som før, men det er vigtigt at teste ofte. Tilfredsstillende også.

Det peger imidlertid på en uheldig bivirkning af al vores kodning, som vi nu mere korrekt kan adressere. Du vil måske bemærke, at efterhånden som vi tilføjer mere kode til hver passage, får vi mere og mere tom plads i vores spil. Vi tager os af dem næste gang.

Trin 9: Hvorfor er der tomme linjer?

Hvorfor er der tomme linjer?
Hvorfor er der tomme linjer?
Hvorfor er der tomme linjer?
Hvorfor er der tomme linjer?

Du kan se ovenfor, hvordan jeg har tilføjet omvendte skråstreger til enderne på bestemte kodelinjer. Hvor og hvornår jeg bruger dem er meget bevidst, og for at forstå, at du bliver nødt til at forstå, hvorfor vi får mærkelige liniebrud i første omgang.

Det er karakteren af kode i Twine at blande sig med almindelig tekst. Vinkelbeslagene (disse ting:) fortæller Twine, at det, der er indeholdt, er kode og ikke tekst. Lad mig illustrere problemet med dette. Lad os sige, at du har følgende kode:

<> Normal tekst vises i spillet … <> Mere spiltekst …

Mange tekstbehandlere har en mulighed, der lader dig se tegn i mellemrum; ting som mellemrum, faner og liniebrud. Twine gør det ikke, men hvis det gjorde det, ville det se sådan ud:

Normal˙tekst˙ vises˙i˙spil … ¶ ¶ Mere˙spil˙tekst …

Kan du se disse afsnitsmærker? (¶) Disse er ikke inde i vinkelbeslagene. Det betyder, at Twine synes, de er normal tekst og sætter dem ind i dit spil. Derfor ser det sådan ud, når du spiller spillet:

Normal tekst vises i spillet …

Mere spiltekst …

For at slippe af med dem kan vi bruge en omvendt skråstreg til at fortælle Twine, at vi ikke vil have den liniebryd der. I din kode vil det se sådan ud:

Normal˙tekst˙ vises˙i˙spil … ¶ / ¶ Mere˙spil˙tekst …

Dette vises som du ville forvente i dit spil:

Normal tekst vises i spillet …

Mere spiltekst …

Husk, at kun liniebrud uden for vinkelbeslag har brug for dette. For eksempel, hvis vi havde følgende kode:

Vi ville kun have brug for den ene omvendte skråstreg, fordi den første linieskift (¶) er inde i vinkelbeslagene ().

For det andet er backslashes () forskellige fra skråstreger (/), og du skal være forsigtig med, hvilken du bruger hvor, fordi de gør forskellige ting.

Trin 10: Test

Prøve
Prøve

Din test skulle afsløre, at du har elimineret det fejlagtige tomme rum! Glimrende!

Trin 11: Det er alt for nu

Det er alt for nu
Det er alt for nu

Det er al den tid, jeg har for nu. Indtil videre er alt temmelig grundlæggende Twine -ting. Generisk værelseskode er et nyttigt trick til at reducere den kopi og indsæt, du skal gøre, og disse skråstreger er absolut nødvendige for at holde dine passager rene og din kode læsbar.

Tingene kommer til at tage fart hurtigt herfra!

God jagt!

Anbefalede: