Innehållsförteckning:

KODA ett SPEL MED PYTHON (FÖR DUMMIER!): 14 steg
KODA ett SPEL MED PYTHON (FÖR DUMMIER!): 14 steg

Video: KODA ett SPEL MED PYTHON (FÖR DUMMIER!): 14 steg

Video: KODA ett SPEL MED PYTHON (FÖR DUMMIER!): 14 steg
Video: Lär dig C# del 1 - Intro, skapa & starta program 2024, Juli
Anonim
KODA ett SPEL MED PYTHON (FÖR DUMMIER!)
KODA ett SPEL MED PYTHON (FÖR DUMMIER!)

Välkommen till Python, det tredje mest populära programmeringsspråket i världen! … och utan tvekan det enklaste! Visste du att Youtube och Google båda har Python som huvudspråk för sina genomförda appar och webbplatser du ser? Tja … Nu vet du; och du bör också förstå varför Python är extremt viktigt för framtiden för The 4.0 Modern Technology Era också!

Du kanske också är medveten om att spelkodningsindustrin trivs mer än någonsin, eftersom fler och fler människor äger smartphones idag. Och Python är ett ganska idealiskt kodningsspråk som kan användas för enkla … men om det är välprogrammerade, beroendeframkallande spel! Nu kan det låta som en jäkligt skrämmande uppgift när ordet "spelkodning" slår dig … men oroa dig inte! Genom denna Instructable kommer du att sätta mig in på denna resa med mig om hur du helt kodar ett enkelt spel, från A till Z, för alla, snabbt och kort, utan att betala!

Om du inte har haft Python än, klicka HÄR för att ladda ner detta fantastiska språk (och djur också! Jag antar …). Det är helt gratis. När du är klar, dags för lite kul!

Steg 1: Förstå vilket spel du ska göra

Förstå vilket spel du ska göra!
Förstå vilket spel du ska göra!

Det är avgörande att du sitter framför ett Python -program och vet exakt vad du ska koda.

Kom ihåg att denna instruerbara är för ALLA! Och du skulle inte vilja välja någon hårdnackad idé som Asphalt 8 eller FIFA Mobile; Naturligtvis är den Python kapabel till alla, men det kommer att ta dig lite tid att bekänna dig i Python (förmodligen 2 år! Kunde inte passa denna instruerbara *urgh *). Istället skulle du vilja bekämpa traditionella idéer som Tic-Tac-Toe (som jag valde att vara ett exempel för dig!), Hangman, etc. Saker som inte kräver grafik (grafik tar dig till en annan … ohhhh … ahh en annan värld, du kan prova! Men inte här för igen, det tar verkligen tid). Tänk på vad som inspirerar dig, ett spel som du kan ha några speciella bilagor till, eller ett spel som du vet exakt hur det fungerar.

Steg 2: Analysera ditt spel

Analysera ditt spel!
Analysera ditt spel!

Efter att ha bestämt vad du kommer att ägna dig åt för möjligen nästa vecka av kodning, dags att skriva ner vad spelet kräver så att du har en bättre bild av hur spelet är upplagt!

Till exempel skulle min 3x3 Tic-Tac-Toe behöva 9 tomma blanksteg där användarna kan skriva ut antingen "X" eller "O". Då skulle vi behöva ytterligare 9 ämnen för att motsvara och spara användarnas drag. Jag måste göra något för att växla fram och tillbaka mellan "X" och "O" varje gång en spelare avslutar sin period. Jag skulle också behöva slinga processen med att byta och spara drag tills det finns en vinnare senare, genom att överväga 3 exakt samma symboler i följd i horisontell, vertikal eller diagonal riktning.

I grund och botten är det det! Du behöver inte göra mer än så … ännu, förutsatt att du inte har någon tidigare erfarenhet till mycket lite kunskap om Python! Nu … nästa steg kommer att kräva att du ifrågasätter dig själv mycket om hur du konverterar det du analyserade … till kod!

Steg 3: Forma din analys till "dator" grammatik

Forma din analys till
Forma din analys till

Vid det här laget bör du förstå vart spelet går, i ditt huvud, på ditt språk, med din logik! Tja … datorn kommer inte att förstå det; och eftersom vi har så mycket mer intelligens, borde vi göra det första steget att prata på sitt språk.

Tillbaka till min Tic-Tac-Toe som ett exempel, med hänvisning till steg 2, att det jag behöver först är några 9 tomma utrymmen för att lagra användarnas rörelser. Ett sätt kan vara att berätta för Python att göra en lista som innehåller de 9 mellanslag! Och när användarna skriver in sina drag, ersätter du just det mellanslaget med antingen "X" eller "O" i tur och ordning. Jag kan använda några slags loop -funktioner i Python för att upprepa processen många gånger tills det blir oavgjort eller … en vinnare! Sättet jag bestämmer vinnaren är att använda ett villkor, att spelet kommer att fortsätta i sin loop om inget händer, eller om alla nio platser är upptagna eller om det finns en vinnare, slingan snaps och spelet slutar!

Detta steg är, utan att behöva argumentera, det svåraste steget i hela denna instruerbara! Du måste nu använda mänsklig logik för att se hur du kan konvertera det du skrev till Python. Du behöver inte oroa dig för om Python kan hantera all din fantasi, det har tillräckligt med kodningsmaterial för att du ska kunna tillfredsställa det! Om du inte kan hitta vägen (vilket vanligtvis skulle vara fallet), är en sökmotor som jag rekommenderar super Stack Overflow, det är ett litet samhälle där människor vanligtvis undrar de mest absurda frågorna jag någonsin sett, och även där det finns är några av de mest lysande svaren som alla kan vinna på det!

STICKA MED MIG HÄR! De kommande sju stegen kommer jag att visa dig 7 metoder för Python som jag ansåg att de var alla nödvändiga i alla de enklaste spelbara spel! Låt kraschkursen börja!

Steg 4: Skriva ut uttalanden, siffror eller objekt - Skriv ut ()

Skriva ut uttalanden, siffror eller objekt - Skriv ut ()
Skriva ut uttalanden, siffror eller objekt - Skriv ut ()

Detta är förmodligen det mest grundläggande i Python någonsin! Om du inte kan skriva ut någonting, oavsett hur fantastiskt ditt program är, är det värdelöst för världen. Så fungerar det: skriv ut ([skriv något här]). Till exempel, skriv ut ('Du är smart') får Python att skriva ut "Du är smart" (VARNING: Det spelar ingen roll om du använder enstaka citat eller dubbla citattecken, du måste använda en av dem och du måste starta och avsluta sträng med samma citatart!). Fortsätt spela med funktionen print (), få Python att skriva ut vad som än får dig att må bra (det är vad jag skulle göra!). Tills du känner att du kan gå vidare till nästa steg kan du göra ytterligare forskning om print () för djupare förståelse om så önskas via Google eller Stack Overflow.

print ("Yayyyy jag är här!")

print ('I am so good omg')

P/S: Du kan lägga dubbla citat inuti enstaka citatbarriär och vice versa, men lägg inte samma sak i varandra eller … du förstår vad jag menar!

Mitt Tic-Tac-Toe-projekt … kräver naturligtvis mycket tryck, från att skriva ut kortet och användargränssnittet för att bekräfta spelets status.

Steg 5: Skapa en lista som innehåller olika objekt -

Skapa en lista som innehåller olika objekt -
Skapa en lista som innehåller olika objekt -

En lista innehåller alla variabler du vill lägga in, det är verkligen en gåva som Python gör! Allt du behöver för att upprätta en är att ge den ett namn, sätta hakparenteser, separera variabler med kommatecken eller så kan du också lämna den tom (så att du kan lägga till dem senare) och du är redo att gå! VARNING: Du vill inte namnge det efter några metoder, annars kommer det att finnas ett syntaxfel. Om namnet visas i andra färger än svart bör din klocka sättas på direkt!

dalist = [5, 7, "jag är stilig", 12 + 1, 3.141592657]

eller…

dalist =

dalist.append (5) #now dalist har [5] som element!

Kommer du ihåg 9-mellankortet som jag berättade om? Det är här det ska användas! Det kommer att lagra alla "-" först; och när spelaren snedstreckar i rörelsen kommer deras symbol att ersätta "-". Alla element i en lista börjar från 0, så 0 hänvisar till det första elementet, 1 refererar till det andra elementet och så vidare. Ett idealiskt exempel skulle vara: snälla arbeta hårt med att föreställa dig den här här, att de 3 platserna 0, 1, 2 är den första raden i 3x3 -kortet. Om dalist [0] och dalist [1] och dalist [3] alla hänvisar till samma symbol, så har vi en vinnare! Se, listan kan vara extremt användbar och enklare än du tror! Mer kunskap om Python -listan finns via Google eller Stack Overflow.

Steg 6: Upprätta villkor för kommandon - If, Elif & Else

Upprätta villkor för kommandon - If, Elif & Else
Upprätta villkor för kommandon - If, Elif & Else

Livet händer inte alltid som du vill att det ska vara, och ibland gör du bara detta om scenariot uppfyller dina krav. Samma sak med Python! Du skulle inte vilja att det skulle gå igenom allt och alla situationer, för det är en riktig smärta! Det är därför if -villkoret är så användbart. Det fungerar precis som hur det tolkas, kommandot (erna) inuti att om blocket bara kommer att utföras om det bara uppfyller vad du ber om. Till exempel kommer du bara att skriva ut uttalandet "Yessss" OM ditt lyckliga läge är sant (förutsatt att identifieraren redan har deklarerats på förhand):

glad = sant

om glad == sant:

print ("Yessss")

Om det finns ett IF kommer det vanligtvis att finnas ett annat för övriga scenarier som inte matchar villkoret som tidigare lagts ut. Säg att när du är ledsen kommer du istället att skriva ut "Noooo" (fortsättning på if -uttalandet ovan):

annan:

print ("Noooo") #Men det kommer inte att skriva ut det här ändå, oroa dig inte!

Det finns en speciell typ av if i Python som vi kallar det ELIF. Från själva namnet kan du förmodligen ta reda på att det är kombinationen av om och annat. Så om du har två eller flera villkor är elif killen du skulle ringa (antaget poäng tilldelas några slumpmässiga nummer innan det):

poäng = 65

om poäng> = 90:

print ("Bra jobbat!")

elif 80 <= poäng <90:

print ("Bra ansträngning!")

elif 70 <= poäng <80:

print ("Kunde ha varit bättre!")

annan:

print ("Tja …")

VARNING: Inryckning spelar roll här! Det kommer att avgöra vilka kommandon som tillhör if, elif eller annars uttalande. Så var försiktig när du utformar din kod! Du kan också häcka om uttalanden tillsammans ska ett villkor endast skulle övervägas BARA när det yttersta om är sant först. Och igen … Inryckning!

I mitt Tic-Tac-Toe-projekt använde jag bokstavligen ton av dessa. 3x3 -spelet kan låta tillräckligt enkelt, men du måste överväga massor av scenarier som kan äga rum. I det här fallet måste jag överväga om det finns en vinnare eller inte genom att kontrollera de tre på varandra följande märkena åt alla håll. Ja … bli inte förvirrad eftersom det inte heller är så komplicerat, det är bara en serie redundanta koder, och allt du behöver göra är att ändra dess kontrollområde och göra det! Mer information om detta ämne klickar du på Stack Overflow.

Steg 7: Fler villkor - och & Eller

Fler villkor - och & Eller
Fler villkor - och & Eller

Vem sa att ett villkor alltid kan vara endast villkor? Ett enda villkor kan också ha flera kriterier. Medan kapslat om uttalande kan vara en kortsiktig lösning, gör det koden betydligt längre. Så det finns OCH & ELLER -metoderna. Där används alla för att kombinera förhållandena till ett stort fördrag. Den enda skillnaden mellan dem är att och kräver att alla villkor i den ena if -satsen är korrekta innan vi går vidare; medan eller bara behöver en av dem för att vara korrekt. Båda kan vara mycket användbara om de används rätt, var kloka eller dessa två kan faktiskt röra med din hjärnlogik!

n = 5

a = 7

om n == 5 och a == 6:

print ("Nej, det här ska inte skrivas ut")

om n == 3 eller a == 7:

print ("Yupp ska skriva ut detta")

Jag använde på allvar och & eller för att dramatiskt förkorta min Tic-Tac-Toe, eftersom det ibland är upp till 3 villkor på en gång, när jag måste överväga alla tre positioner i märket för att avgöra om det finns en vinnare eller inte. Och & eller skulle komma super praktiskt! Mer information finns på Stack Overflow.

Steg 8: En loop som upprepar kommandon tills kriterierna uppfylls - medan

En slinga som upprepar kommandon tills kriterierna uppfylls - medan
En slinga som upprepar kommandon tills kriterierna uppfylls - medan

Vi har täckt igenom hur man skriver ut, bearbetar saker bara när villkoret är sant. Så vad sägs om … att upprepa det blocket många gånger, ända tills villkoret är uppfyllt? Ja, det är därför Python ger dig en WILE!

n = 1

medan n = 1:

print ("hooooo") #Ja, det här kommer att skriva ut "hooooo" för alltid … och någonsin … faktiskt … för alltid … och någonsin …

Detta kan vara ett problem, eftersom du inte vill att dina kommandon ska loopas på obestämd tid. Så vanligtvis när du använder medan finns det en teknik som du ändrar värdet på villkoret varje gång det slingas, så villkoret uppdateras, och tills någon gång när det behöver kriterierna slutar det så småningom. Till exempel kan du lägga till värdet till sig själv en enhet i taget och sedan ställa in tiden så att den fungerar tills någon form av värden som siffran slutligen kommer att nå:

n = 1

medan n <5:

print ("Jag har" + n + "öl boiiiii!")

n = n + 1 #eller du kan också skriva n + = 1

Hur detta kommer att fungera är att n fortsätter att lägga sig till 1 i slutet av varje kodblock. While loop kommer att loopa så länge som n fortfarande är mindre än 5. Nu tills ett ögonblick (specifikt 4 gånger looping) kommer n att nå värdet 5 och slingan kommer att sluta!

glad = sant

medan du är glad:

print ("Yayyy jag gjorde det!") # Gör faktiskt inte detta, men du förtjänade att veta att du alltid kommer dit!

Även om det kan vara särskilt användbart i spel som Tic-Tac-Toe, det för felkontroll. Ibland måste du ha råd med busiga användare och om de fortsätter att röra sig, kommer while -slingan att hålla dem på avstånd tills de faktiskt beter sig och matar in några faktiska giltiga inmatningar! Mer information på Stack Overflow

Steg 9: While Loop Version 2.0 - For

While Loop Version 2.0 - För
While Loop Version 2.0 - För

Det finns säkert vissa situationer som FOR kommer att avkronas med medan, men för gör något annat för dig som inte kan … Det håller det värde som det kommer att loopa, kräver att användaren anger gränsen för looping (Ja, för loop aldrig loop för alltid och någonsin … faktiskt …), och bära loopvärdet varje gång det omvandlas också! Nu kan jag vara för ordrik, men ta det här exemplet i åtanke, säg tm är det värde du vill fortsätta med för -slingan:

för tm i intervall (1, 5):

print ("Jag har redan druckit" + tm + "öl urghhh") # Detta kommer att skriva ut "Jag har redan haft 1….5 öl urghhh"

Se, det sparar dig en rad kod, men kommer att göra livet mycket enklare för spelkodning (lita på mig, jag lärde mig detta på det hårda sättet, och du vill inte veta om det)! Vanligtvis bör du gå efter FOR loop om du har definierat starkt i ditt sinne hur många gånger du vill att ett kodblock ska upprepas. VARNING: Variabeln som fördes tillsammans med for -slingan kommer bara att existera inom själva for -slingan, om du hänvisar till den någonstans utanför for -slingan börjar Python bita dig och fråga "Vad fan syftar du på ???"

Tic-Tac-Toe använder mycket för loop. Du har inte råd att kontrollera allt med varje gång en variabel ändras (en riktig smärta argh). Men det jag gjorde var att upptäcka regeln för Tic-Tac-Toe-anatomi, ändra värdet inom for-slingan, kontrollera alla tre kolumner med symboler med att jag bara måste lära Python hur man kontrollerar en! Se till att kolla in Stack Overflow för fler frågor.

Steg 10: Be om användarnas ingångar - Inmatning ()

Be om användares ingångar - ingång ()
Be om användares ingångar - ingång ()

Sist men inte minst är du spelskaparen och någon kommer att spela ditt spel! Och du kan aldrig gissa vad de håller på med. Så det du kan göra är att göra vad de sa till ditt program att göra, låt dem direkt mata in saker! Tillsammans kan INPUT och PRINT förmodligen vara de mest grundläggande metoderna alla i Python, du kommer att behöva den för att överleva (De finns i varje spelkod, jag kan 100,00% garanti)! Detta är tillräckligt enkelt, tilldela bara en variabel och låt den vara vad användaren vill att den ska vara:

alo = input ("Skriv in ditt lyckonummer!")

VARNING: Det finns många typer av ingångar, mer om Stack Overflow. De kommer alltid att fungera om du lämnar det bara input () så. Men ibland kanske du vill att den ska vara specifik som en heltalsinmatning eller floatingång (standard är sträng).

lucky_day = int (input ("Yessss your lucky day! Skriv ett nummer här:") #Skriv inte bokstäver nu, du vill inte #att röra med Python!

Tic-Tac-Toe behöver en massa av det här! Jag är säker på att du kan göra det själv, från hur jag vet vart användarna går och vad de siktar på (Du har rätt, jag vet inte … men jag använde input ()!).

Steg 11: Gör ytterligare forskning för alla metoder du behöver

Gör ytterligare forskning för alla metoder du behöver!
Gör ytterligare forskning för alla metoder du behöver!

Ja, du behöver inte veta allt om Python för att skapa ett spel, du behöver faktiskt bara veta tillräckligt, från och med Ultimate 7 (steg 4-10, jag är säker på att du på något sätt måste röra dem alla för en spel), och annars om du inte tror att alla dessa 7 kan tillfredsställa det du gör. Python har mycket överraskning, och ibland finns det några terminologimetoder som är för just den specifika användningen, man vet aldrig. Så se till att söka efter dem med Google eller Stack Overflow!

Min Tic-Tac-Toe använde alla "Big Seven" och lite till, men inte mycket. Jag är säker på att vem som helst kan göra det!

Var noga med att skriva ner dem på pappret och spela med allt du behöver för att spela, förstå problemet innan du hänger dig på det. Känner du dig tillräckligt förberedd? Låt oss gå vidare till … det sista steget !!! STICK MED MIG HÄR, du är nästan där!

Steg 12: Bygg en skelettram för din kod som fungerar

Bygg en skelettram för din kod som fungerar!
Bygg en skelettram för din kod som fungerar!

Jag vill inte avskräcka dig överhuvudtaget, men om du vill skapa ett spel som fungerar för alla, måste det legitimt fungera först, börja med dig! Samla allt material du behöver, sätt upp ramverket. Jag vet att det är lättare sagt än gjort, men med alla papper redo (Om du gjorde något som jag sa åt dig), bör du vara bra att gå.

Bry dig inte om syntaxfelen i första hand. Det är viktigt att du avslutar din kod utan avbrott, bara när du når en återvändsgränd som du bör stoppa. Vi människor, är känsliga för tankeströmmar, jag har stött på en situation då allt flödade så smidigt och flytande än jag gick på toaletten … Nästa sak jag visste, jag tappade tanken. Så ja, upprepa inte efter mig! Lägg ner allt i huvudet medan det fortfarande är där och fräscht först.

Tic-Tac-Toe-processen inkluderar att be om användarinmatning, med input (), använd medan för att endast rena de giltiga ingångarna. Sedan läggs en uppsättning om elif annat, för och medan ut för att kontrollera varje gång om det finns en vinnare. Ingen vinner, och medan loop kommer att få spelet att fortsätta tills det finns en eller alla nio platser upptagna, vilket resulterar i oavgjort.

Efter att du har säkerställt att detta ÄR spelet, börjar du köra programmet och letar efter syntax eller semantiska fel senare. Och igen, bygg ett spel för dig själv först, gå INTE allt ballistiskt kreativt innan din ursprungliga ram var där ännu. Gör det nu klart och fortsätt! Ditt spel är där, vad väntar du på ???

Steg 13: Ta dig ut, testa och gör dig själv till ett SPEL

Ta dig ut, testa och gör dig själv till ett SPEL!
Ta dig ut, testa och gör dig själv till ett SPEL!

Det är allt! Allt du behöver göra nu är att inte slösa bort alla dina i förväg ansträngningar, lägg dig själv där ute! Jag tror att om du följer alla dessa steg kommer du absolut att räcka för att skapa ett spel. Om du inte gör det, ge inte upp, försök; Denna instruerbara är att hjälpa alla, men bara du kan bestämma ödet för ditt SPEL! Kom ihåg, ge inte upp, bygg skelettramarna först. Om det finns några konstiga syntaxfel som du inte kan se, sök hjälp genom Stack Overflow, det här har fastnat för mig i tjockt och tunt!

Hur som helst, avslutningsvis, lycka till på din Python -resa, programmera ett spel, gör mig stolt, för VI ÄR PROGRAMMERZZZZZZZ !!!!!

P/S: Steg 14 för kreativ uppmuntran!

Steg 14: * EXTRA! * När din version 1.0 fungerar, siktar på kreativitet

* EXTRA!* När din version 1.0 fungerar, syftar till kreativitet!
* EXTRA!* När din version 1.0 fungerar, syftar till kreativitet!

Om du fortfarande läser detta, bra! Du behöver inte, men jag vill bara meddela dig när allt fungerar smidigt för dig, ENDAST än du kan redigera så att andra också kan använda ditt program; dekorera om den för spelarvänlighet; eller uppgradera ditt spel (jag uppgraderade min Tic-Tac-Toe genom att programmera en AI! Nu tog det mig en vecka (eller 7/8 av min tid för det) att slutföra!). Var noga med att använda och utnyttja Stack Overflow om det uppstår några frågor. Jag önskade dig lycka till, slutför ditt spel, dela det i kommentaren nedan och sprid kodningsrörelsen !!!

VI ÄR PROGRAMMERZZZZ !!!!!

Rekommenderad: