Hur man gör ett flashspel: 4 steg (med bilder)

Innehållsförteckning:

Hur man gör ett flashspel: 4 steg (med bilder)
Hur man gör ett flashspel: 4 steg (med bilder)
Anonim

Flash är ett populärt format för webbläsarbaserade videospel som ses på webbplatser som Newgrounds och Kongregate. Medan Flash-formatet sakta blir mindre utnyttjat inför växande mobilappar, görs det fortfarande många kvalitetsspel med det. Flash använder ActionScript, ett lättläst språk som ger dig kontroll över objekten på skärmen. Denna wikiHow -artikel kommer att lära dig hur du lär dig att skapa ett grundläggande Flash -spel.

Steg

Del 1 av 3: Starta processen

381698 1
381698 1

Steg 1. Designa ditt spel

Innan du börjar koda hjälper det att ha en grov uppfattning om vad du vill att ditt spel ska göra. Flash passar bäst för enkla spel, så fokusera på att skapa ett spel som bara har några få mekaniker för spelaren att oroa sig för. Försök att ha en grundläggande genre och lite mekanik i åtanke innan du börjar med prototyper. Se den här guiden för mer information om planeringsfaserna för utvecklingen av videospel. Vanliga Flash -spel inkluderar:

  • Oändliga löpare: Dessa spel flyttar automatiskt karaktären, och spelaren är ansvarig för att hoppa över hinder eller på annat sätt interagera med spelet. Spelaren har vanligtvis bara ett eller två alternativ när det gäller kontroller.
  • Brawlers: Dessa är vanligtvis sidrullning och uppdrar spelaren med att besegra fiender att gå vidare. Spelarens karaktär har ofta flera drag som de kan utföra för att besegra fiender.
  • Pussel: Dessa spel ber spelaren att lösa pussel för att slå varje nivå. Dessa kan sträcka sig från Match-3-stil som Bejeweled till mer komplexa pussellösningar som vanligtvis finns i äventyrsspel.
  • Rollspel: Dessa spel fokuserar på karaktärsutveckling och progression, och får spelaren att röra sig genom flera miljöer med olika fiendetyper. Stridsmekanik varierar enormt från RPG till RPG, men många är turbaserade. Rollspel kan vara betydligt svårare att koda än ett enkelt actionspel.
381698 2
381698 2

Steg 2. Lär dig vad Flash utmärker sig

Flash är bäst lämpad för 2D-spel. Det är möjligt att skapa 3D -spel i Flash, men det är mycket avancerat och kräver betydande kunskaper i språket. Nästan varje framgångsrikt Flash -spel har varit 2D.

Flash -spel är också bäst lämpade för snabba sessioner. Detta beror på att de flesta Flash -spelare spelar när de har lite ledig tid, till exempel på raster, vilket innebär att spelsessioner vanligtvis är 15 minuter eller mindre

381698 3
381698 3

Steg 3. Bekanta dig med ActionScript3 (AS3) -språket

Flash -spel är programmerade i AS3, och du måste ha en grundläggande förståelse för hur det fungerar för att lyckas skapa ett spel. Du kan skapa ett enkelt spel med en rudimentär förståelse för hur man kodar i AS3.

Det finns flera böcker om ActionScript tillgängliga på Amazon och andra butiker, tillsammans med ett stort antal självstudier och exempel online

381698 4
381698 4

Steg 4. Ladda ner Flash Professional

Detta program kostar pengar, men är det bästa sättet att snabbt skapa Flash -program. Det finns andra alternativ, inklusive alternativ med öppen källkod, men de saknar ofta kompatibilitet eller tar längre tid att utföra samma uppgifter.

Flash Professional är det enda programmet du behöver för att börja skapa spel

Del 2 av 3: Skriva ett grundläggande spel

381698 5
381698 5

Steg 1. Förstå de grundläggande byggstenarna i AS3 -koden

När du skapar ett grundläggande spel finns det flera olika kodstrukturer som du kommer att använda. Det finns tre huvuddelar i en AS3 -kod:

  • Variabler - Så här lagras dina data. Data kan vara tal, ord (strängar), objekt och mer. Variabler definieras av koden var och måste vara ett ord.

    var playerHealth: Antal = 100; // "var" anger att du definierar en variabel. // "playerHealth" är variabelnamnet. // "Number" är typen av data. // "100" är värdet som tilldelas variabeln. // Alla actionscript -rader slutar med ";"

  • Eventhanterare - Eventhanterare letar efter specifika saker som ska inträffa och berättar sedan resten av programmet. Detta är viktigt för spelarens inmatning och upprepning av kod. Eventhanterare brukar använda funktioner.

    addEventListener (MouseEvent. CLICK, swingSword); // "addEventListener ()" definierar händelsehanteraren. // "MouseEvent" är kategorin av inmatningar som man lyssnar efter. // ". CLICK" är den specifika händelsen i kategorin MouseEvent. // "swingSword" är den funktion som kallas när händelsen inträffar.

  • Funktion - Kodavsnitt tilldelade ett nyckelord som kan användas senare. Funktioner hanterar huvuddelen av ditt spels programmering, och komplexa spel kan ha hundratals funktioner medan enklare spel bara kan ha några få. De kan vara i vilken ordning som helst eftersom de bara fungerar när de uppmanas.

    function swingSword (e: MouseEvent): void; {// Din kod går här} // "funktion" är nyckelordet som visas i början av varje funktion. // "swingSword" är namnet på funktionen. // "e: MouseEvent" är en tillagd parameter som visar att funktionen // anropas från händelselyssaren. // ": void" är värdet som returneras av funktionen. Om inget värde // returneras, använd: void.

381698 6
381698 6

Steg 2. Skapa ett objekt

ActionScript används för att påverka objekt i Flash. För att skapa ett spel måste du skapa objekt som spelaren kommer att interagera med. Beroende på guiderna du läser kan objekt kallas sprites, skådespelare eller filmklipp. För detta enkla spel kommer du att skapa en rektangel.

  • Öppna Flash Professional om du inte redan har gjort det. Skapa ett nytt ActionScript 3 -projekt.
  • Klicka på verktyget Rektangelritning från verktygspanelen. Den här panelen kan finnas på olika platser beroende på konfigurationen av Flash Professional. Rita en rektangel i ditt scenfönster.
  • Välj rektangeln med markeringsverktyget.
381698 7
381698 7

Steg 3. Tilldela objektet egenskaper

Med din nyskapade rektangel markerad, öppna menyn Ändra och välj "Konvertera till symbol". Du kan också trycka på F8 som en genväg. I fönstret "Konvertera till symbol", ge objektet ett lätt igenkänt namn, till exempel "fiende".

  • Hitta fönstret Egenskaper. Högst upp i fönstret finns ett tomt textfält märkt "Instansnamn" när du håller muspekaren över det. Ge den samma namn som du gjorde när du konverterade den till en symbol ("fiende"). Detta skapar ett unikt namn som kan interageras med via AS3 -kod.
  • Varje "instans" är ett separat objekt som kan påverkas av kod. Du kan kopiera den redan skapade instansen flera gånger genom att klicka på fliken Bibliotek och dra instansen till scenen. Varje gång du lägger till ett, kommer namnet att ändras för att ange att det är ett separat objekt ("fiende", "fiende1", "fiende2", etc.).
  • När du hänvisar till objekten i koden behöver du helt enkelt använda instansnamnet, i detta fall "fiende".
381698 8
381698 8

Steg 4. Lär dig hur du kan ändra egenskaperna för en instans

När du har gjort en instans kan du justera egenskaperna via AS3. Detta kan låta dig flytta objektet runt skärmen, ändra storlek på det och så vidare. Du kan justera egenskaper genom att skriva förekomsten, följt av en punkt ".", Följt av egenskapen, följt av värdet:

  • fiende.x = 150; Detta påverkar fiendens objekt på X-axeln.
  • fiende.y = 150; Detta påverkar fiendens objekt på Y-axeln. Y-axeln beräknas från toppen av scenen.
  • fiende.rotation = 45; Roterar fiendens föremål 45 ° medurs.
  • fiende.skalaX = 3; Sträcker fiendens föremåls bredd med en faktor 3. Ett (-) tal vänder objektet.
  • fiende.skalaY = 0,5; Klämmer föremålet till hälften av höjden.
381698 9
381698 9

Steg 5. Undersök kommandot trace ()

Det här kommandot returnerar de aktuella värdena för specifika objekt och är användbart för att avgöra om allt fungerar som det ska. Du kanske inte vill inkludera Trace -kommandot i din slutliga kod, men det är användbart för felsökning.

381698 10
381698 10

Steg 6. Bygg ett grundspel med ovanstående information

Nu när du har en grundläggande förståelse för kärnfunktionerna kan du skapa ett spel där fienden ändrar storlek varje gång du klickar på det, tills det tar slut på hälsan.

var fiendeHP: Antal = 100; // sätter fiendens HP (hälsa) till 100 i början. var playerAttack: Number = 10; // ställer in spelarens attackstyrka när de klickar. fiende.addEventListener (MouseEvent. CLICK, attackEnemy); // Genom att lägga till den här funktionen direkt till fiendens objekt, // sker funktionen bara när själva objektet är // klickat, i motsats till att klicka var som helst på skärmen. setEnemyLocation (); // Detta kallar följande funktion för att placera fienden // på skärmen. Detta inträffar när spelet startar. function setEnemyLocation (): void {fiende.x = 200; // flyttar fienden till 200 pixlar från vänster om skärmen fiende. y = 150; // flyttar fienden ner 150 pixlar från toppen av skärmen fiende.rotation = 45; // roterar fienden 45 grader medurs ("fiendens x-värde är", fiende.x, "och fiendens y-värde är", fiende.y); // Visar fiendens nuvarande position för felsökning} funktion attackEnemy (e: MouseEvent): void // Detta skapar attackfunktionen för när fienden klickas på {fiendeHP = fiendeHP - playerAttack; // subtraherar attackvärdet från HP -värdet, // resulterar i det nya HP -värdet. fiende.scaleX = fiendeHP / 100; // Ändrar bredden baserat på det nya HP -värdet. // Den delas med 100 för att göra den till en decimal. fiende.skalaY = fiendeHP / 100; // Ändrar höjden baserat på det nya HP -värdespåret ("Fienden har", fiendeHP, "HP kvar"); // Skriv ut hur mycket HP fienden har kvar}

381698 11
381698 11

Steg 7. Prova det

När du har skapat koden kan du testa ditt nya spel. Klicka på Kontroll -menyn och välj Testa film. Ditt spel börjar och du kan klicka på fiendens objekt för att ändra dess storlek. Dina Trace -utgångar visas i fönstret Output.

Del 3 av 3: Lär dig avancerade tekniker

381698 12
381698 12

Steg 1. Lär dig hur paket fungerar

ActionScript är baserat på Java och använder ett mycket liknande paketsystem. Med paket kan du lagra variabler, konstanter, funktioner och annan information i separata filer och sedan importera dessa filer till ditt program. Dessa är särskilt användbara om du vill använda ett paket som någon annan har utvecklat som gör ditt spel enklare att skapa.

Se den här guiden för mer information om hur paket fungerar i Java

381698 13
381698 13

Steg 2. Bygg dina projektmappar

Om du skapar ett spel med flera bilder och ljudklipp vill du skapa en mappstruktur för ditt spel. Detta gör att du enkelt kan lagra dina olika element, samt lagra olika paket att ringa till.

  • Skapa en basmapp för ditt projekt. I basmappen bör du ha en "img" -mapp för alla dina konsttillgångar, en "snd" -mapp för alla dina ljudtillgångar och en "src" -mapp för alla dina spelpaket och kod.
  • Skapa en "Spel" -mapp i mappen "src" för att lagra din Constants -fil.
  • Denna speciella struktur är inte nödvändig, men är ett enkelt sätt att organisera ditt arbete och material, särskilt för större projekt. För det enkla spelet som förklaras ovan behöver du inte skapa några kataloger.
381698 14
381698 14

Steg 3. Lägg till ljud i ditt spel

Ett spel utan ljud eller musik blir snabbt tråkigt för spelaren. Du kan lägga till ljud till objekt i Flash med verktyget Lager. Se den här guiden för mer information.

381698 15
381698 15

Steg 4. Skapa en Constants -fil

Om ditt spel har många värden som kommer att förbli desamma under hela spelet kan du skapa en Constants -fil för att lagra dem alla på ett ställe så att du enkelt kan ringa till dem. Konstanter kan innehålla värden som tyngdkraft, spelarens hastighet och alla andra värden som du kan behöva anropa upprepade gånger.

  • Om du skapar en Constants -fil måste den placeras i en mapp i ditt projekt och sedan importeras som ett paket. Låt oss till exempel säga att du skapar en Constants.as -fil och placerar den i din spelkatalog. För att importera den använder du följande kod:

    paket {import Game.*; }

381698 16
381698 16

Steg 5. Titta på andras spel

Även om många utvecklare inte avslöjar koden för sina spel, finns det en mängd olika projekthandledning och andra öppna projekt som gör att du kan se koden och hur den interagerar med spelobjekt. Detta är ett bra sätt att lära sig några avancerade tekniker som kan hjälpa ditt spel att sticka ut.

Rekommenderad: