Kursmal
Den fulle Frogger: Fra scene til polering
Lær frameCraft med Frogger: Bevegelse, kollisjoner, HUD, restartlogikk og grafisk design – trinn for trinn som en fullstendig undervisningsmal.

Didaktisk mål
Et fullstendig spill som en strukturert læringsserie
Denne kursmalen leder gjennom utviklingen av et enkelt Frogger-spill med Game-DSL frameCraft. Fokuset er på systematisk å bygge sentrale spillmekanismer som bevegelse, kollisjoner, tilstandshåndtering og brukergrensesnitt.
Modellering
Eleverne oppdager hvordan spillfigurer, fiender, nivåstriper og spilltilstander modelleres som klare programmeringsstrukturer.
Implementering
Spillmekanismer vokser trinn for trinn: Scene, Regler, Inputs, Bevegelse, Kollisjoner, Poeng, Liv, HUD og Restartlogikk.
Refleksjon
I slutten vil koden bli revurdert: struktur, navn og kommentarer gjør det tydelig hvordan et prosjekt kan vedlikeholdes.

Kompetansebygging
Fra første objekt til spilltilstand
Malen viser ikke bare at et spill funker. Den gjør det tydelig hvordan interaktive systemer bygges: gjennom scener, gjentatte regler, hendelser, objektsmerker og tilstandsvariabler.
- Grundlag for spilstruktur med scene, byggefasen og regler
- Bevegelseslogikk og inputbehandling gjennom handlinger
- Rasterbasert kontroll av spillfigurer med skjermbegrensninger
- Tidsbasert fjendelserbevegelse med delta-tid
- Kollisjonshåndtering, liv, poeng og spilltilstand
- HUD, grafiske former og ren kodeorganisasjon
Struktur av byggeblokker
Tolv trinn fra scene til polering
Byggeblokkene er designet slik at læringen kan utvide spillet kontinuerlig. Hver enhet legger til en tydelig gjenkjennelig funksjon og styrker et spesifikt informatisk konsept.

Scene & Regel: Frog beveger seg automatisk
Introduksjon til grunnleggende struktur i et frameCraft-spill med scene, objekt og automatisk utført regel.

Frogger: Rasterkontroll og skjermbegrensninger
Implementering av rasterbasert kontroll gjennom handlinger, samt begrensning av spillfiguren til synlige spillobjekt.

Touch-Buttoner: samme Frog-kontroll via VKNO
Alternativ inngangsmåte gjennom virtuelle knapper som utløser samme handlinger som tastaturkontroll.

Nivåoppsett: Veikantmerker og skilt
Bygging av spill landskap ved hjelp av hjelpefunksjoner og løkker for gjentatte nivåstrukturer.

Frogger: Biler med dt & wrap-around
Tidbasert bevegelse for fiendtlige objekter og kontinuerlig bevegelse over skjermbegrensninger.

Frogger: Biler data-drevet generering
Automatisert skapelse av flere fiender gjennom data-drevne strukturer og systematisk navngivningskonvensjoner.

Kollisjoner & Liv: Frogger-logikk
Implementering av kollisjonsevner og spilltilstandshåndtering gjennom liv, genopprettinger og spillevne.

Frogger: Vinningsbetingelse, poeng & Spilltilstand
Utvidelse med poengfordeling, vinningsbetingelse og tydelige spilltilstander gjennom et nivå.

HUD & Sluttekster med frameCraftUI
Utvikling av en brukergrensesnitt for å vise liv, poeng og spillslutning.

Stabil gjenstart med lås og knapp
Stabilt nulstillingslogikk med låsemekanisme samt en innebygd gjenstartknapp etter spillslutning.

Frogger: Grafikkformer & Koordinater
Design av spillfigurer og fiender gjennom programmerede grafiske former i det lokale koordinatsystemet.

Frogger-Refaktorisering: Struktur & Navngivning
Gjennomgang av koden gjennom tydelig strukturering, konsekvent navngivning og forklarende kommentarer.
Eksempel fra kurset
Kollisjoner og liv vil være synlige som spilltilstand
I modulen "Kollisjoner & Liv" er den sentrale Frogger-logikken implementert: Når groven treffer en bil, trekkes et liv. Deretter avgjør spillets tilstand om figuren skal gjenopprettes eller spillet avsluttes.
def kollision_auto(ctx, frosch_e, auto_e):
if ctx.vars.get("tot"):
return
ctx.vars["leben"] -= 1
frog_ent = ctx.E("frosch")
if ctx.vars["leben"] <= 0:
ctx.vars["tot"] = True
if frog_ent is not None:
frog_ent.alive = False
else:
if frog_ent is not None:
frog_ent.x = FROG_START_X
frog_ent.y = FROG_START_Y
BEI_KOLLISION(“frosch”, “auto”, kollision_auto)
Bruk i undervisning
Direkte brukbar og lett å tilpasse
De tydelig strukturerte modulene gjør det enkelt å planlegge gjennomganger og integrere dem i eksisterende datalogikkurser. Lærere kan bruke malen umiddelbart, og tilpasse den etter gruppe, tidsramme og undervisningsmiljø.
For begynnere
Kursen starter med synlige bevegelser og enkle regler. Dette skaper rask suksessopplevelse og en klar innføring i frameCraft.
For prosjektarbeid
Modulene kan kobles sammen til å danne en lengre gjennomgangsserie, et prosjektdag eller en differensiert utvidelsestasker.
For egne varianter
Fra Frogger-basen kan nye nivåer, fiender, regler, grafikk, poengsystemer eller dine egne spillideer kunne oppstå.
Prøv nå
Bruk Frogger som mal for dine egne spillprosjekter
Denne malen støtter strukturert utvikling av et enkelt spill og illustrerer sentrale prinsipper for modellering og implementering av interaktive systemer.