Kursmall

Flappy Färgflyg

Lärarna utvecklar i 12 steg som bygger på varandra ett enkelt flappy-bird-liknande spel med frameCraft. Här skapas spelets fönster, fågel, input, gravitation, hinder, kollisioner, poäng, ökande svårighetsgrad, Game Over och omstart.

Kategori: Spelutveckling med frameCraft Språk: Python Byggstenar: 12 Se färdigt spel
Förhandsvisning: Flappy Färgflyg

Didaktiska mål

Denna mall introducerar steg för steg utvecklingen av ett enkelt flappy-bird-liknande spel med frameCraft och kopplar samtidigt synliga spelsobjekt till input, rörelse och spelstatus. Centralt ligger uppbyggnaden av ett spelfönster, modelleringen av entiteter med colliders och GFX-former samt strukturerad implementering av regler för kontroll, gravitation, hinder och kollisioner. Kompetensutvecklingen går från **scenuppbyggnad** via **tidbaserad rörelse** till **spelmekanik** med poäng, ökande svårighetsgrad, game over och omstart. Professionellt hör denna mall till spelutveckling med frameCraft och stödjer särskilt förståelsen för modellering, statushantering och stegvis implementering.

Kompetensfokus

Mallen sammanför både yrkesmässiga och metodiska fokusområden inom frameCraft-baserad spelutveckling i en tydlig progression.

  • Modellera spelsstruktur: Spelfönster, scen, scenuppbyggnad, himmel, mark och dekoration skapas som grundläggande frameCraft-struktur.
  • Klassificera entiteter yrkesmässigt: Fågel, mark, tak och hinder implementeras via entity, collider, tags och GFX-former som spelsobjekt.
  • Abstrahera input: Tangentbords- och touch-input sammanförs via åtgärder och skyddas mot kontinuerliga pulser med en blockerare.
  • Implementera rörelse på ett tidbaserat sätt: Fågelphysik och hinderrörelse använder hastighet, gravitation och ctx.dt för uppdatering som är oberoende av ramfrekvens.
  • Styra kollisioner och tillstånd: Trigger-Collider, Tags och kollisionshanterare leder till Game Over och stoppar spelets logik genom att spara spelstatus.
  • Återanvända objekt: Hinder hanteras som numrerade Entity-pooler, synkroniserat rörs och återpositioneras efter att ha lämnat skärmen.
  • Utveckla spelelement: Poäng, en gång per hinder, ökande svårighetsgrad, synlig feedback och omstart slutför spelets flöde.

Byggnadens struktur

De byggda delarna utvecklar prototypen från den statiska scenen via spelobjektet och dess fysik till hinderlogik, poängräkning, balansering och slutlig omstart.

Förhandsvisning: Grundstruktur med himmel och mark

Grundstruktur med himmel och mark

Den byggda delen ställer upp SPIEL, SZENE, konstanter, himmel, mark, rektangulära GFX och tom regel som strukturell grund för den senare spelvärlden.

⏱️ 30 min 🧩 1 uppgift
Förhandsvisning: Fågeln visas

Fågeln visas

Den byggda delen introducerar fågeln som centrumfigur och kopplar ihop Entity, Collider, mittpunktslogik, konstanter och förberedda grafiska funktioner.

⏱️ 35 min 🧩 1 uppgift
Förhandsvisning: Fladdra med åtgärder

Fladdra med åtgärder

Den byggda delen abstraherar tangentbords- och touch-ingångar till en flap-åtgärd och introducerar ett blockeringsmekanism för enskilda hopphopp.

⏱️ 25 min 🧩 1 uppgift
Uppskattning: Fågelfysik med gravitation

Fågelfysik med gravitation

Blocket kompletterar tidsbaserad fysik genom att spara fågel_vy i ctx.vars, ändra den med gravitation och uppdatera y-positionen med ctx.dt.

⏱️ 35 min 🧩 1 uppgift
Uppskattning: Kollision och Game Over

Kollision och Game Over

Blocket kopplar ihop taggar, trigger-colliders, krockhanterare och spel_status så att kontakt med farliga objekt aktiverar Game-Over-tillståndet.

⏱️ 25 min 🧩 1 uppgift
Uppskattning: Första hinderpar

Första hinderpar

Blocket utvidgar spelvärlden med ett statiskt rörpar och gör beräkningen av övre rör, undre rör och gemensam lucka förutsägbar.

⏱️ 35 min 🧩 1 Aufgaben
Uppskattning: Hindrar rör sig

Hindrar rör sig

Blocket omvandlar hinderparet till en synkroniserad vänsterriktad rörelse och använder tempo samt ctx.dt för en tidsbaserad rörelse endast i läget spelar.

⏱️ 25 min 🧩 1 Aufgaben
Uppskattning: Hindrar återanvänds

Hindrar återanvänds

Blocket introducerar återanvändning genom att, när hinderparet lämnar skärmen till höger, återskapa det med en ny lucka.

⏱️ 25 min 🧩 1 Aufgaben
Förhandsgranskning: Flera rörpar

Flera rörpar

Komponenten skalar hinderlogiken till ett entitetspool med numrerade rörpar, loopar, stabila avstånd och återanvändning bakom det mest fjärran röret.

⏱️ 35 min 🧩 1 uppgift
Förhandsgranskning: Poäng räknas endast en gång

Poäng räknas endast en gång

Komponenten kompletterar ett robust poängsystem där varje hinderpar över pipe_gezaehlt räknas bara en gång efter att fågeln har passerat det helt.

⏱️ 25 min 🧩 1 uppgift
Förhandsgranskning: Öka svårighetsgraden

Öka svårighetsgraden

Komponenten kopplar poäng till spelbalans genom att kontrollera tempo och mellanrumsgrodd via konstanter, clamp och HUD-visning.

⏱️ 25 min 🧩 1 Aufgaben
Förhandsgranskning: Slutför Flappy Color Flight

Slutför Flappy Color Flight

Komponenten sammanfogar färg- och mellanrumsmönster, hinderkollisioner, Game Over UI och omstart med blockerad återgång till ett komplett spelflöde.

⏱️ 35 min 🧩 1 Aufgaben
Använd denna mall som en anpassbar utgångspunkt för spelutveckling med frameCraft i undervisning. Testa mallen
Denna mall leder strukturerat från spelets scen till fullständig frameCraft-implementation med tillstånd, hinder och omstart.

De tydligt relaterade byggnadselementen gör lärandemål, tekniska koncept och spelmekaniker genomskinliga. På så sätt kan mallen enkelt integreras i undervisningsserier om spelutveckling med frameCraft.

Genom en demo-tillgång kan du testa mallen och anpassa byggnadselementen efter dina elevgrupp. På så sätt behålls den didaktiska strukturen, samtidigt som fokus och omfattning blir flexibla.