Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions HANDBUCH.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ Eine vollständige, minimale Vorlage mit jeder Übungsart liegt in [`tooling/fix

1. **Lehrplan entwerfen.** Schreibe zuerst die Liste der Module auf: 10–16 Module in 2–4 Tracks, vom Einstieg bis zum Profi-Niveau. Frage dich bei jedem Modul: *Was kann ich danach, was ich vorher nicht konnte?* Und: *Würde ein Arbeitgeber das erwarten?*
2. **Ordner anlegen:** `content/<bereich>/` mit `area.yaml` (Abschnitt 4). Die Ordner-ID ist kurz, klein und kebab-case, zum Beispiel `go`, `typescript`, `devops`.
3. **Farbe wählen.** Eine kräftige Farbe, auf der schwarzer Text gut lesbar ist (Kontrast ≥ 4,5 : 1 zu `#0B0B0B`). Vorhandene Farben nicht wiederholen: `#A98BFF` Kotlin, `#FF6A3D` Rust, `#FFD400` Linux, `#4D8BFF` Python, `#2BD97C` Automation, `#FF5CA8` Git, `#22D3EE` Data Analysis, `#C6F432` Testing, `#FF9F1C` PostgreSQL, `#F4A3FF` Erzählhandwerk. Gute freie Kandidaten: `#FFC6A8` (Apricot), `#B5E3FF` (Eisblau).
3. **Farbe wählen.** Eine kräftige Farbe, auf der schwarzer Text gut lesbar ist (Kontrast ≥ 4,5 : 1 zu `#0B0B0B`). Vorhandene Farben nicht wiederholen: `#A98BFF` Kotlin, `#FF6A3D` Rust, `#FFD400` Linux, `#4D8BFF` Python, `#2BD97C` Automation, `#FF5CA8` Git, `#22D3EE` Data Analysis, `#C6F432` Testing, `#FF9F1C` PostgreSQL, `#F4A3FF` Erzählhandwerk, `#FF4D6D` Combat Design. Gute freie Kandidaten: `#FFC6A8` (Apricot), `#B5E3FF` (Eisblau).
4. **Module schreiben** (Abschnitte 5–7). Ein Modul pro Datei, Dateiname = Modul-ID.
5. **Karten, Projekte, Glossar, Spickzettel, Berufsseite** ergänzen (Abschnitt 8).
6. **Prüfen:** `pnpm content:check <bereich>`, dann `pnpm verify <bereich>`, dann `pnpm test` und `pnpm build`.
Expand Down Expand Up @@ -188,7 +188,7 @@ Richtwert: 3–6 Callouts pro Lektion, davon mindestens ein `INTERVIEW` und ein

### Codeblöcke

Codeblöcke immer mit Sprache angeben. Unterstützt werden `kotlin`, `rust`, `python`, `bash`/`sh`, `console`, `yaml`, `toml`, `json`, `sql`, `postgres` (auch `postgresql`, `pgsql`), `xml`, `dockerfile`, `ini` (auch für systemd-Units), `diff`, `excel` (Formeln), `powerquery` (Power Query M, auch `m`), `csv`, `typescript` (auch `ts`, `tsx`), `javascript` (auch `js`, `jsx`) und `text`.
Codeblöcke immer mit Sprache angeben. Unterstützt werden `kotlin`, `rust`, `python`, `bash`/`sh`, `console`, `yaml`, `toml`, `json`, `sql`, `postgres` (auch `postgresql`, `pgsql`), `xml`, `dockerfile`, `ini` (auch für systemd-Units), `diff`, `excel` (Formeln), `powerquery` (Power Query M, auch `m`), `csv`, `typescript` (auch `ts`, `tsx`), `javascript` (auch `js`, `jsx`), `gdscript` (auch `gd`) und `text`. GDScript wird nur hervorgehoben und läuft nirgends, wie Kotlin; in Lücken und Korrekturen wird es wie Python verglichen (`'a'` = `"a"`).

| Info-String | Wirkung |
| --- | --- |
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# learn.kiumu.app

Private Lernplattform für Kotlin & Android, Rust, Linux, Python, Automation mit Python, Git, Data Analysis mit Excel, SQL und Python, Testing & Softwarequalität sowie SQL & PostgreSQL für Anwendungsentwickler. Live: [learn.kiumu.app](https://learn.kiumu.app) · Öffentliches Repository: [hernstev97/learning-platform](https://github.com/hernstev97/learning-platform)
Private Lernplattform für Kotlin & Android, Rust, Linux, Python, Automation mit Python, Git, Data Analysis mit Excel, SQL und Python, Testing & Softwarequalität, SQL & PostgreSQL für Anwendungsentwickler sowie Combat Design & Game Feel mit Godot 4. Live: [learn.kiumu.app](https://learn.kiumu.app) · Öffentliches Repository: [hernstev97/learning-platform](https://github.com/hernstev97/learning-platform)

Die Plattform ist kein Nachschlagewerk. Jedes Modul besteht aus einer Lektion, die ein Denkmodell aufbaut und auf die offizielle Dokumentation verweist, und aus 10–14 Übungen in fester Reihenfolge: verstehen → vorhersagen → schreiben → Fehler finden → erklären → anwenden. Jeder Bereich hat Interview-Karteikarten mit Wiederholung, Projekte und ein Abschlussprojekt, das wie eine Take-Home-Aufgabe im Bewerbungsprozess geschnitten ist.

Expand Down
35 changes: 35 additions & 0 deletions content/combat/area.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
id: combat
title: Combat Design & Game Feel
short: Combat
tagline: Kampfgefühl in Frames messen, begründen und selbst abstimmen.
description: >
Eingabe und Puffer, Wind-up, aktive Phase und Erholung, Hit- und Hurtboxen,
Ausweichen, Gegnermuster, große Gegner und Trefferfeedback – erklärt an
veröffentlichten Spielen und kurzen Clips, die du unterwegs am Handy
analysierst. Am PC stimmst du eine kleine Top-down-Testszene in Godot 4 ab:
Hypothese, eine Größe ändern, vergleichen. Jede Designentscheidung triffst du
selbst; Code und technisches Gerüst darf eine KI liefern. Module mit der Marke
„Unterwegs“ gehen ganz am Handy, nur die verlinkten Clips brauchen Netz. „Am PC“
braucht Godot 4 am Rechner; lesen kannst du diese Lektionen auch unterwegs.
color: "#FF4D6D"
order: 11
outcomes:
- Du beschreibst einen Angriff in **Frames** – Wind-up, aktive Phase, Erholung, Abbruchfenster, Puffer – und rechnest sie in Millisekunden um.
- Du erklärst, warum ein Treffer **fair oder unfair** wirkt, und trennst Schwierigkeit, mangelnde Lesbarkeit und technische Fehler wie verschobene Hitboxen oder verlorene Eingaben.
- Du analysierst **Ausweichen, Risiko und Belohnung** sowie Gegner- und Bossmuster veröffentlichter Spiele an kurzen Clips.
- Du setzt **Trefferfeedback** – Hitstop, Screenshake, Flash, Knockback, Sound – gezielt ein und kennst seine Kosten.
- Du richtest eine **Godot-4-Testszene** in der Draufsicht ein, mit bewegter Figur, `AnimationPlayer` mit Hitbox-Timing, Input Map und Pixel-perfect-Einstellungen.
- Du stimmst Kampfwerte als **Experiment** ab – Hypothese, eine Größe, Vergleichstest, Protokoll – und schreibst daraus eine Vorgabe, die ein Coding-Agent umsetzen kann.
tracks:
- title: Kampf verstehen
description: Spielgefühl, Eingabe und Puffer, die Phasen eines Angriffs, Reichweite und Trefferzonen.
modules: [spielgefuehl, eingabe, angriffsphasen, hitboxen]
- title: Ausweichen und Gegner
description: Ausweichen mit Risiko und Belohnung, Gegnermuster und Telegraphing, große Kreaturen als Bosse.
modules: [ausweichen, gegnermuster, grosse-gegner]
- title: Rückmeldung und Diagnose
description: Trefferfeedback, die Frage „schwer, unfair oder kaputt?“ und Vorgaben, nach denen ein Coding-Agent baut.
modules: [trefferfeedback, frust-diagnose, vorgaben]
- title: Testszene in Godot
description: Am PC mit Godot 4. Ein kurzer Godot-Start, dann eine Top-down-Testszene mit Angriff, Ausweichen und Trainingsgegnern, die du in Runden abstimmst.
modules: [godot-start, testszene-angriff, testszene-ausweichen, tuning]
101 changes: 101 additions & 0 deletions content/combat/career.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
## Combat Design im Beruf

Combat Design ist die Arbeit an dem, was in einem Kampf Sekunde für Sekunde passiert: wie schnell ein Angriff kommt, wie lange er trifft, wann der Gegner verwundbar ist, wie sich ein Treffer anfühlt und warum ein Spieler verloren hat. In größeren Studios ist das eine eigene Rolle neben Level-, System- und Technical Design. In kleinen Teams und bei Solo-Projekten macht es dieselbe Person, die auch den Rest des Spiels entwirft.

Für dich ist der Anlass dein eigenes Spiel. Diese Seite zeigt trotzdem, wie die Arbeit in Studios aussieht. Sie zeigt aber auch, welche Fähigkeiten dort gefragt sind und wie man sie belegt. Das hilft auch ohne Bewerbung: Wer weiß, woran Studios einen Combat Designer messen, weiß, worauf er beim eigenen Prototyp achten sollte. Die Stellenzitate stammen aus Anzeigen, die im Oktober 2026 online waren oder ausdrücklich als abgelaufen gekennzeichnet sind. Diese Seite ist keine Arbeitsmarktstudie.

## Rollen und Jobtitel

Titel bedeuten in jedem Studio etwas anderes. Lies die Aufgaben, nicht nur die Überschrift.

| Rolle | Typische Titel | Alltag | Beispiel aus einer Anzeige |
| --- | --- | --- | --- |
| Combat Design | Combat Designer, Combat Game Designer | Angriffe, Gegner und Begegnungen entwerfen, bauen und abstimmen | Larian (Quebec): „Devise & take ownership of tactical, engaging combat encounters“ |
| Gameplay Design | Gameplay Designer, Game Designer | Spielmechaniken als Ganzes, oft mit Kampf als Teil | Ubisoft Montpellier: „Prototyper régulièrement et tester manette en main“, mit Blick auf „game feel“ |
| Technical Design | Technical Designer, Technical Game Designer | Mechaniken selbst im Editor bauen, Skripte, Werkzeuge, KI-Verhalten | Naughty Dog: „Prototyping, implementing, and owning gameplay scenarios … AI behaviors“ |
| KI- und Gegnerdesign | AI Game Designer, Enemy Designer | Verhalten von Gegnern mit Zustandsautomaten oder Behavior Trees | Massive (Malmö): „Implementing and refining high-quality combat NPC behaviors using node graphs and behavior trees“ |
| Kamera und Steuerung | Camera Designer, 3Cs Designer (Character, Camera, Controls) | Kamera, Steuerung, Bildschirmrückmeldung | People Can Fly: „camera shake and feedback that support the action without getting in the way“ |
| System- und Balancing-Design | System Designer, Balancing Designer | Werte, Schwierigkeitsstufen, Tabellen und Simulationen | Ubisoft Paris: Systeme für „enemies and bosses … difficulty tiers“, Werkzeuge „excel tables and simulators“ |

Quellen: [Larian](https://jobs.lever.co/larian/ace7bbeb-31ff-44ea-991d-223ef9685284), [Ubisoft Montpellier](https://jobs.smartrecruiters.com/Ubisoft2/744000155797846-senior-game-designer-beyond-good-evil-2-h-f-nb), [Naughty Dog](https://job-boards.greenhouse.io/sonyinteractiveentertainmentglobal/jobs/5983976004), [Massive](https://jobs.smartrecruiters.com/Ubisoft2/744000127417779-senior-ai-game-designer-tom-clancy-s-the-division-3-), [People Can Fly](https://jobs.smartrecruiters.com/PeopleCanFly/744000153500485-concepteur-trice-de-jeu-senior-camera-et-3c-senior-game-designer-camera-and-3cs-remote), [Ubisoft Paris](https://jobs.smartrecruiters.com/Ubisoft2/744000155803319-system-designer-w-m-nb).

Das Wort „Frame-Daten“ steht selten so in einer Anzeige. Am deutlichsten war eine inzwischen beendete Ausschreibung von CI Games für einen Senior Combat Designer: „Tune the combat experience at the micro level: animation lengths, I-frames, Hit boxes, and frame-data polish“ ([Remote Game Jobs, abgelaufen](https://remotegamejobs.com/jobs/ci-games-senior-combat-designer-remote-job-0081090d-9e28-452c-a2c4-8ba347942fbe)). Genau das übst du in diesem Bereich.

## Was Studios erwarten

Die Anzeigen wiederholen sich in sechs Punkten:

- **Selbst im Editor bauen.** Fast jede Anzeige verlangt, dass du Mechaniken in der Engine umsetzt: Unreal mit Blueprints, Unity, eigene Engines wie Snowdrop. Mihir Sheth (Santa Monica Studio) sagte auf einem Devcom-Panel: „Implementation is extremely highly valued“, dazu Erfahrung mit Zustandsautomaten, KI-Systemen und Behavior Trees ([GamesIndustry.biz](https://www.gamesindustry.biz/articles/2020-08-21-how-do-you-make-hitting-something-fun)).
- **Zustandsautomaten und Behavior Trees.** Gegner werden fast überall so gebaut. Der Zustandsautomat deiner Testszene ist die einfachste Form davon.
- **Abstimmen in kleinen Schritten.** Jason de Heras (Respawn) sagte auf demselben Panel, man könne eine Woche lang Variablen einer Figur abstimmen.
- **Prototyp, Playtest, Iteration.** Massive verlangt „Continuously iterate on NPCs based on playtest feedback“, Scopely will Ergebnisse aus Daten, Spielerfeedback und eigenen Playtests ([Scopely](https://job-boards.greenhouse.io/scopely/jobs/5442575008)).
- **Dokumentation.** Larian nennt „a track record of effectively conveying design through clear documentation“. Eine Vorgabe, nach der ein anderer bauen kann, ist dieselbe Fähigkeit wie im Modul [Vorgaben für einen Coding-Agenten](/combat/vorgaben).
- **Zusammenarbeit.** Animation, VFX, Audio, Art und Programmierung kommen in fast jeder Anzeige vor. Ein Treffer fühlt sich erst gut an, wenn alle Gewerke zusammenpassen.

Für Einsteiger ist die Lage eng. Sheth erklärte auf dem Panel, dass Neue meist mit Gegnerdesign und -umsetzung beginnen und nicht gleich das ganze Kampfsystem neu entwerfen. Die meisten Anzeigen verlangen mindestens ein veröffentlichtes Spiel; Larian etwa „3 years experience in a design position“.

## Die Branche in Deutschland

Laut Jahresreport 2026 des Verbands game arbeiten in Deutschland 12 235 Menschen bei Entwicklern und Publishern, drei Prozent weniger als im Vorjahr (Stichtag 31. März 2026). Es gibt 956 Unternehmen, davon 474 reine Entwicklungsstudios. Eine im Report zitierte Goldmedia-Studie zählt über drei Viertel der Unternehmen mit weniger als zehn Beschäftigten. Die größten Arbeitgeber sind Nintendo of Europe, Ubisoft, Stillfront, InnoGames und Crytek ([game – Jahresreport 2026, PDF](https://www.game.de/wp-content/uploads/2026/08/Jahresreport-der-deutschen-Games-Branche-2026-1-1.pdf), [Übersicht](https://www.game.de/publikationen/jahresreport-2026/)).

Für Combat Design heißt das: Eigene Stellen mit diesem Titel sind in Deutschland selten. Bei der Recherche im Oktober 2026 war keine offen; frühere Ausschreibungen von Deck13 und Crytek sind beendet. Kampfnahe Arbeit steckt hier häufiger in Gameplay-, Technical- oder System-Design-Stellen, etwa bei InnoGames in Hamburg mit „combat balancing“ und „squad combat“ ([Games-Career](https://www.games-career.com/Joboffer/33798_Senior-Game-Designer_InnoGames-GmbH)). Viele Combat-Stellen gibt es im europäischen Ausland und remote.

Wege in die Branche, die nicht über eine Stellenanzeige laufen:

- **Eigene Spiele.** Ein kleines, veröffentlichtes Spiel zählt in Bewerbungen wie ein ausgeliefertes Projekt. Der Bund fördert Spieleentwicklung über die [Games-Förderung](https://www.bmftr.bund.de/DE/Technologie/Games/Games_node.html) mit einer Mindestprojektgröße von 300 000 Euro; für Solo-Projekte passen eher Landesförderungen und Wettbewerbe.
- **Veranstaltungen.** Die Entwicklerkonferenz der gamescom heißt seit Herbst 2025 [gamescom dev](https://dev.gamescom.global/) (früher devcom) und findet im August in Köln statt.
- **Jobbörsen.** [Games-Career](https://www.games-career.com/) ist auf die deutschsprachige Branche spezialisiert, international listen [Hitmarker](https://hitmarker.net/) und [Work With Indies](https://www.workwithindies.com/) viele Stellen.

## Designtests und Gespräche

Viele Studios lassen Design-Bewerber eine Aufgabe lösen. Peter Buchardt (Studio Gobo, früher Playdead) beschrieb 2018, dass Designtests in vielen Firmen zum Standard der Auswahl geworden sind ([GDC 2018: Design Tests and What to Expect from Them](https://gdcvault.com/play/1024935/Design-Tests-and-What-to)). CD Projekt Red und Remedy nennen eine praktische Aufgabe ausdrücklich in ihrem Bewerbungsablauf.

Wie solche Aufgaben aussehen, zeigt Richard Carrillo (Ubisoft Toronto) in seinen Folien: Ein Panzer soll als Gegnerbegegnung für Far Cry entworfen werden, und jede Spielweise, vom Schleicher mit Bogen bis zum Sprengmeister, muss ihn schlagen können. Schwache Antworten umgehen die Begegnung oder bestehen nur aus Verweisen auf andere Spiele ([GDC 2017: Interviewing for Game Design](https://gdcvault.com/play/1024436/Interviewing-for-Game)). Ein Erfahrungsbericht zu einem Level-Design-Test bei Ubisoft Reflections nennt 48 Stunden Arbeitszeit in zehn Tagen, mit Layouts, Dokument und Präsentation als Abgabe ([Game Developer](https://gamedeveloper.com/business/my-first-experience-performing-a-level-design-test)).

### Designtest: so gehst du vor

1. **Frage, was bewertet wird.** Idee, Umsetzung im Editor, Dokument oder alles. Halte dich an die Zeitvorgabe.
2. **Schreib das Ziel in einem Satz.** Was soll der Spieler in diesem Kampf lernen oder erleben?
3. **Leg Zahlen fest.** Wind-up, aktive Phase, Erholung, Telegraph, Punish-Fenster, in Frames. Eine Tabelle zeigt, dass du über Timing nachgedacht hast.
4. **Zeig, wie es scheitern kann.** Was passiert, wenn der Spieler dauernd drückt? Wenn er nur ausweicht? Wenn er außerhalb des Bildes steht?
5. **Beleg eine Iteration.** Eine Änderung mit Hypothese, Messung und Entscheidung wiegt mehr als zehn Ideen ohne Test.
6. **Denk laut.** Carrillos Rat an Bewerber: „Think Out Loud“ und „Game Design Isn't About Your Ideas“.

## Portfolio: was zählt

Kate Killick (Mojiworks) rät Design-Absolventen: Fallstudien schlagen jede andere Form, Qualität vor Menge, und schreib „ich“, nicht „wir“, damit klar ist, was deine Arbeit war ([PocketGamer.biz](https://www.pocketgamer.biz/11-portfolio-tips-for-game-design-graduates/)). Für Combat Design heißt eine Fallstudie:

- **Ein spielbarer Prototyp**, der eine Sache gut macht, etwa ein Gegner mit drei lesbaren Angriffen.
- **Ein kurzes Video mit Debug-Anzeige**, auf dem man Zustand, Frame und Hitboxen sieht. Das zeigt, dass du misst.
- **Eine Frame-Tabelle** aller Angriffe und des Ausweichens.
- **Ein Iterationsprotokoll** mit drei bis fünf Runden: Hypothese, Änderung, Messung, Entscheidung. Das Abschlussprojekt dieses Bereichs liefert genau das.
- **Eine Analyse eines veröffentlichten Kampfes**, Bild für Bild, mit eigener Begründung, warum er fair wirkt.

Studios wissen, dass vieles unter Verschwiegenheitsvereinbarungen steht. People Can Fly schreibt bei einer Kamera-Stelle ausdrücklich, ein Portfolio sei deshalb nicht Pflicht. Ein eigener Prototyp ist umso wertvoller.

## Lernplan in Wochen

Der Plan geht von etwa vier Stunden pro Woche aus: kurze Einheiten unterwegs, eine längere am PC.

| Woche | Unterwegs | Am PC |
| --- | --- | --- |
| 1 | [Spielgefühl](/combat/spielgefuehl) | [Godot-Start](/combat/godot-start) |
| 2 | [Eingabe und Puffer](/combat/eingabe) | Startszene messen |
| 3 | [Angriffsphasen](/combat/angriffsphasen) | [Testszene: Angriff](/combat/testszene-angriff) |
| 4 | [Hitboxen](/combat/hitboxen) | Testszene: Dummy, Log, Hitstop |
| 5 | [Ausweichen](/combat/ausweichen) | [Testszene: Ausweichen](/combat/testszene-ausweichen) |
| 6 | [Gegnermuster](/combat/gegnermuster) | Trainingsgegner mit Muster |
| 7 | [Große Gegner](/combat/grosse-gegner) | Großer Trainingsgegner |
| 8 | [Trefferfeedback](/combat/trefferfeedback) | [Tuning als Experiment](/combat/tuning) |
| 9 | [Schwer, unfair oder kaputt?](/combat/frust-diagnose) | Tuning-Runden mit Protokoll |
| 10 | [Vorgaben](/combat/vorgaben) | Abschlussprojekt beginnen |
| 11–14 | Clips analysieren, Karten wiederholen | Abschlussprojekt |

## Ressourcen

- Steve Swink: *Game Feel. A Game Designer's Guide to Virtual Sensation*, CRC Press 2009 ([Verlag](https://www.routledge.com/Game-Feel-A-Game-Designers-Guide-to-Virtual-Sensation/Swink/p/book/9780123743282)).
- Jesse Schell: *The Art of Game Design. A Book of Lenses*, 3. Auflage 2020 ([Verlag](https://www.routledge.com/The-Art-of-Game-Design-A-Book-of-Lenses-Third-Edition/Schell/p/book/9781138632059)).
- Tynan Sylvester: *Designing Games* ([Website des Autors](https://tynansylvester.com/book/)).
- Raph Koster: *A Theory of Fun for Game Design* ([Website des Buchs](https://www.theoryoffun.com/)).
- GDC Vault, freie Vorträge: [Evolving Combat in God of War](https://gdcvault.com/play/1026423/Evolving-Combat-in-God-of), [Embracing Push Forward Combat in DOOM](https://gdcvault.com/play/1024940/Embracing-Push-Forward-Combat-in), [Creating Conflict: Combat Design for AAA Action Games](https://gdcvault.com/play/1023860/Creating-Conflict-Combat-Design-for), [alle freien Inhalte](https://gdcvault.com/free).
- Kurze Clips: [Masahiro Sakurai on Creating Games](https://www.youtube.com/@sora_sakurai_en), [Juice it or lose it](https://www.youtube.com/watch?v=Fy0aCDmgnxg), [The art of screenshake](https://www.youtube.com/watch?v=AJdEqssNZ-U).
Loading
Loading