Øv din Python-programmering med noget simpel tekstbehandling og beslutningshåndtering for at skabe et spilbart spil.
Et teksteventyrspil er et sjovt projekt, du kan tage på, hvis du lærer at programmere. Du kan lave et teksteventyrspil ved hjælp af Python, køre det på en kommandolinje og ændre historien baseret på den tekst, som spilleren indtaster.
Python-scriptet vil dække flere slags grundlæggende programmeringskoncepter. Dette inkluderer print-erklæringer, if-sætninger og funktioner.
Sådan opretter du Python-scriptet og tilføjer historieindhold
Du kan oprette et script ved hjælp af en standardtekstfil med filtypenavnet .py. Hvis du ikke er bekendt med Python-syntaks, så tag et kig på nogle grundlæggende Python-eksempler, der kan hjælpe dig med at lære det hurtigere. Du kan også se på andre nyttige Python one-liners at udføre bestemte opgaver.
I hovedfunktionen i Python-filen skal du konfigurere din historie og velkomstbesked.
- Opret en ny fil kaldet "AdventureGame.py".
- Tilføj hovedstartfunktionen i filen. Funktionen vil omfatte en kort åbningshistorie for at byde spilleren velkommen til eventyrspillet. Det vil derefter kalde en anden funktion kaldet introScene().
hvis __navn__ == "__hoved__":
mensRigtigt:
Print("Velkommen til eventyrspillet!")
Print("Som en ivrig rejsende, har du besluttet at besøge katakomberne i Paris.")
Print("Men under din udforskning finder du dig selv fortabt.")
Print("Du kan vælge at gå i flere retninger for at finde en vej ud.")
print("Lad os Startmed din navn: ")
navn = input()
Print("Held og lykke, " +navn+ ".")
introScene()
Sådan opretter du flere scener og muligheder i historien
Din historie vil indeholde flere scener eller "rum". Du kan oprette en funktion for hver scene, så du kan genbruge den senere, hvis afspilleren ender med at komme ind i samme rum igen.
Hver scene vil også have forskellige valg af, hvor de skal hen. Det er en god idé at kortlægge din historie, før du koder scenarierne, for at sikre dig, at din historie er godt organiseret.
Hver scene vil have en liste over gyldige retninger og en hvis-erklæring for de mange veje, som spilleren kan tage. Afhængigt af den vej, afspilleren tager, vil programmet kalde den næste scene.
Opret funktioner til de scener, der vil forekomme i historien.
- Opret introScene() funktion over hovedfunktionen. Tilføj en besked og de anvisninger, som spilleren kan gå i.
defintroScene():
rutevejledning = ["venstre","ret","frem"]
Print("Du står ved en skillevej, og du kan vælge at gå ned ad en hvilken som helst af de fire gange. Hvor vil du gerne hen?")
brugerinput = ""
mens brugerinput ikke i retninger:
Print("Valgmuligheder: venstre/højre/tilbage/frem")
brugerinput = input()
hvis brugerinput == "venstre":
showShadowFigure()
elif brugerinput == "ret":
vis Skeletter()
elif brugerinput == "frem":
hjemsøgt Room()
elif brugerinput == "baglæns":
Print("Du opdager, at denne dør åbner ind i en væg.")
andet:
Print("Indtast venligst en gyldig mulighed.") - Afhængigt af brugerens input vil programmet kalde en anden scene. For eksempel, hvis afspilleren skriver "venstre", vil programmet vise scenen showShadowFigure() til spilleren. Fra dette rum, hvis spilleren går baglæns, vil spillet tage dem tilbage til introscenen. Hvis de går til venstre eller højre, vil de enten gå ind i et andet rum eller ramme en blindgyde.
defvisShadowFigure():
rutevejledning = ["ret","baglæns"]
Print("Du ser en mørk skyggefuld figur vises i det fjerne. Du er krybende ud. Hvor vil du gerne hen?")
brugerinput = ""
mens brugerinput ikke i retninger:
Print("Valgmuligheder: højre/venstre/baglæns")
brugerinput = input()
hvis brugerinput == "ret":
cameraScene()
elif brugerinput == "venstre":
Print("Du opdager, at denne dør åbner ind i en væg.")
elif brugerinput == "baglæns":
introScene()
andet:
Print("Indtast venligst en gyldig mulighed.") - Tilføj kamerascenen, hvis de drejer til højre. Det er her spilleren kan finde en af udgangene. Ring til Afslut() funktion for at afslutte spillet. Spilleren kan også stadig vælge at gå tilbage til den forrige scene.
defkameraScene():
rutevejledning = ["frem","baglæns"]
Print("Du ser et kamera, der er blevet tabt på jorden. Nogen har været her for nylig. Hvor vil du gerne hen?")
brugerinput = ""
mens brugerinput ikke i retninger:
Print("Valgmuligheder: frem/tilbage")
brugerinput = input()
hvis brugerinput == "frem":
Print("Du gjorde det! Du'har fundet en udgang.")
Afslut()
elif brugerinput == "baglæns":
showShadowFigure()
andet:
Print("Indtast venligst en gyldig mulighed.") - Tilbage til begyndelsen af eventyrspillet skal du stadig tilføje funktionerne for de resterende scener. Tilføj hjemsøgt Room() scene for, hvis spilleren vælger at bevæge sig fremad. Dette vil også afslutte spillet afhængigt af spillerens valg.
defhjemsøgt Værelse():
rutevejledning = ["ret","venstre","baglæns"]
Print("Du hører mærkelige stemmer. Du tror, du har vækket nogle af de døde. Hvor vil du gerne hen?")
brugerinput = ""
mens brugerinput ikke i retninger:
Print("Valgmuligheder: højre/venstre/baglæns")
brugerinput = input()
hvis brugerinput == "ret":
print("Flere goul-lignende væsner Start dukker op som du kommer ind i rummet. Du er dræbt.")
Afslut()
elif brugerinput == "venstre":
Print("Du gjorde det! Du'har fundet en udgang.")
Afslut()
elif brugerinput == "baglæns":
introScene()
andet:
Print("Indtast venligst en gyldig mulighed.") - Du kan også tilføje mere interessant indhold til spillet. Opret en global variabel, helt øverst i filen, kaldet "våben". Det vil enten være sandt eller falsk afhængigt af, om spilleren finder det.
våben = Falsk
- I et af rummene skal du indstille våbenvariablen til sand, hvis spilleren finder den. Spilleren kan bruge den i det næste rum, hvis det er nødvendigt.
defvis Skeletter():
rutevejledning = ["baglæns","frem"]
global våben
Print("Du ser en mur af skeletter som du går ind i rummet. Nogen holder øje med dig. Hvor vil du gerne hen?")
brugerinput = ""
mens brugerinput ikke i retninger:
Print("Valgmuligheder: venstre/tilbage/frem")
brugerinput = input()
hvis brugerinput == "venstre":
Print("Du opdager, at denne dør åbner ind i en væg. Du åbner noget af gipsvæggen for at opdage en kniv.")
våben = Rigtigt
elif brugerinput == "baglæns":
introScene()
elif brugerinput == "frem":
strangeCreature()
andet:
Print("Indtast venligst en gyldig mulighed.") - Hvis spilleren finder våbnet, kan de dræbe fjenden i det næste rum og finde en anden udgang. Ellers vil fjenden dræbe dem.
defmærkeligt væsen():
handlinger = ["kæmpe","flygte"]
global våben
Print("Et mærkeligt goul-lignende væsen er dukket op. Du kan enten løbe eller bekæmpe den. Hvad vil du gerne gør?")
brugerinput = ""
mens brugerinput ikke i handlinger:
Print("Muligheder: flygte/kæmp")
brugerinput = input()
hvis brugerinput == "kæmpe":
hvis våben:
print("Du dræbe goulen med kniven dig fundet tidligere. Efter fremad, finder du en af udgangene. Tillykke!")
andet:
Print("Det goul-lignende væsen har dræbt dig.")
Afslut()
elif brugerinput == "flygte":
vis Skeletter()
andet:
Print("Indtast venligst en gyldig mulighed.")
Sådan kører du Python-scriptet
Du kan køre scriptet ved hjælp af en terminal eller kommandoprompt. Når du indtaster input i terminalen, vil historien fortsætte med at bevæge sig fremad til næste scene.
- Brug en terminal eller kommandoprompt til at navigere til det sted, hvor du gemte filen.
cd C:\Users\Sharl\Desktop\Python
- Kør scriptet.
pythonEventyrspil.py
- Åbningsmeddelelsen byder dig velkommen til at begynde at spille spillet.
- Indtast fra de tilgængelige indstillinger på listen, såsom "venstre", "højre" eller "tilbage". Hvis du indtaster et ugyldigt input, vil spillet bede dig om et gyldigt.
- Du kan også afspille spillet igen for at vælge en anden vej.
Du kan downloade den fulde kildekode til projektet fra denne GitHub depot.
Opret et simpelt spil med kun ét Python-script
Du kan oprette et teksteventyrspil ved hjælp af et Python-script og køre det i en terminal eller kommandolinje. Inde i Python-filen kan du præsentere spilleren for en indbydende besked og indledende historie. Spilleren kan derefter indtaste deres handlinger baseret på de muligheder, du præsenterer.
Hvis du ønsker at blive en mere velafrundet Python-udvikler, kan du tage et kig på nogle af de nyttige værktøjer, som du kan bruge eller integrere med Python.