Entwicklung eines mobilen Kampfspiels mit Unity 6

FrostyBrawlerGo!

Fähigkeiten auswählen, die den Kampfstil der Figur verändern.

Ich war der einzige Unity-/C#-Entwickler der hier untersuchten Version von Frosty Brawler Go! Ich entwarf und programmierte den Spielcode: eine Reise über 60 Spieltage, automatische rundenbasierte Kämpfe und drei Fähigkeiten zur Auswahl bei jedem Stufenaufstieg. Diese Fähigkeiten ergänzen Angriffe, verändern vorhandene Angriffe oder verbessern die Kampfwerte der Figur.

Meine Rolle und der Beitrag des Teams

Ich habe das Spiel programmiert.
Das Team lieferte Grafik, Audio und Designbeiträge.

Ich war für die Unity-/C#-Programmierung verantwortlich. Das Team lieferte Grafik, Audio und Beiträge zum Spieldesign.

Meine Verantwortung

Unity-Gameplay und unterstützender Code

Ich entwickelte Reise, Kämpfe, Fähigkeiten, Angriffe, Statuseffekte, Gegner und Oberflächenverhalten. Außerdem entwickelte ich ein wiederverwendbares System, das Figurenanimation und Gameplay koordiniert, band die Spieldienste an, pflegte den Code während der Entwicklung und konfigurierte die Android-Versionen.

Teambeitrag

Beiträge zu Grafik, Audio & Spieldesign

Das Team lieferte Grafik, Audio und Beiträge zum Spieldesign. Ich programmierte ihre Arbeit in das Unity-Spiel ein und pflegte den Code während der Weiterentwicklung.

So schreitet die Reise voran

Eine funktionierende Fähigkeit kann den nächsten Kampf verändern.

Ereignisse der Reise, automatische Kämpfe und Fähigkeitsentscheidungen beeinflussen dieselbe Figur. Im Verlauf verändern die Entscheidungen des Spielers ihre Angriffe, Effekte und Werte.

  1. 01

    Reise

    Einen Tag weiter

    Jeder Tag bringt eine Geschichte, eine Werteänderung, Erfahrung, Heilung oder einen Kampf. Der Reiseverlauf hält das Ergebnis jedes Ereignisses fest.

  2. 02

    Kampf

    Den Kampf ausführen

    Die Angriffswarteschlangen von Spieler und Gegner werden in kontrollierten Runden ausgeführt. Schaden, Blockzustände, periodische Effekte, Tod und Wiederbelebung werden abgeschlossen, bevor die Reise weitergeht.

  3. 03

    Auswahl einer Fähigkeit

    Eine von drei Optionen wählen

    Bei jedem Stufenaufstieg wählt der Spieler aus drei Fähigkeiten. Die Optionen können einen Angriff ergänzen, einen passenden Schwertangriff verändern oder einen Kampfwert für die aktuelle Reise verbessern.

  4. 04

    Build

    Die neue Fähigkeit in späteren Kämpfen einsetzen

    Der neue Angriff, Effekt oder veränderte Wert wird Teil der aktuellen Fähigkeiten der Figur. Dadurch verändert sich ihr Kampfstil, während die Reise schwieriger wird.

Wie Fähigkeiten zusammenarbeiten

Umgesetzte Fähigkeiten verändern die aktuellen Angriffe und Werte des Charakters.

Das Spiel nutzt wiederverwendbare Vorlagen für Fähigkeiten. Die umgesetzten Verbesserungen ändern Kopien dieser Vorlagen für die aktuelle Reise. Das Kampfsystem führt ihre Aktionen der Reihe nach aus.

  1. 01

    Eine Fähigkeit auswählen

    Auswahl einer Fähigkeit

    Das Spiel wählt drei Optionen aus Fähigkeitsdefinitionen in Unity ScriptableObjects aus.

  2. 02

    Die Änderung anwenden

    Hinzufügen oder ändern

    Die umgesetzten Fähigkeiten fügen einen Angriff hinzu, ergänzen einen passenden Schwertangriff um einen Effekt oder ändern einen Charakterwert.

  3. 03

    Aktuelle Reise

    Eigene Kopien für jede Reise

    Das Spiel erstellt Kopien der Angriffs- und Effektvorlagen, die sich während der aktuellen Reise verändern können.

  4. 04

    Kampfergebnis

    Jede Aktion der Reihe nach ausführen

    Runden wickeln Angriffe, Zufall, Statusdauer, Blocken und Bereinigung in einer vorhersehbaren Reihenfolge ab.

03

Drei Wege, wie eine Fähigkeit die Figur verändert

Einen Angriff hinzufügen

Jeder Runde einen weiteren Angriff hinzufügen.

Feuer- und Gewitter-Upgrades ergänzen Angriffe nach den bereits vorhandenen Angriffen der Figur.

  • Schwertgrundlage
  • Feuerangriff
  • Gewitterangriff

Die Waffe verändern

Verändern, was das Schwert kann.

Upgrades für kritische Treffer, Gift und Einfrieren ergänzen ihre Effekte an passenden vorhandenen Schwertangriffen.

  • Kritische Trefferchance & kritischer Schaden
  • Giftschaden über Zeit
  • Einfrieren / übersprungener Angriff

Den Durchlauf verändern

Gesundheit, Angriff oder Verteidigung verbessern.

Verbesserungen von Lebenspunkten, maximalen Lebenspunkten, Angriff und Verteidigung fließen in dasselbe Parametermodell ein, das auch Reiseereignisse und Gegnerskalierung verwenden.

  • Lebenspunkte & maximale Lebenspunkte
  • Basisangriff
  • Verteidigung

Warum Fähigkeiten wiederverwendbaren Code nutzen

Fähigkeiten hinzufügen, ohne das Kampfsystem neu zu schreiben.

Jede Fähigkeit verändert etwas Bestimmtes: Sie ergänzt einen Angriff, fügt einen passenden Effekt hinzu oder verändert einen Wert. Der gemeinsame Kampfcode steuert weiterhin Zeitablauf, Ziele und das Ende jeder Aktion. So lassen sich Fähigkeiten leichter ergänzen und ihr Zusammenspiel besser verstehen.

Unterstützende Spielsysteme

Fähigkeiten sind mit dem Rest der Reise verbunden.

Reiseereignisse, Kämpfe und Spielerfortschritt halten fest, was passiert ist und was als Nächstes kommt. Ein separates wiederverwendbares System verwaltet Inventar und gespeicherte Daten.

Ereignisse der Reise

Eine Reise über 60 Spieltage.

Der geprüfte Build ordnet 21 Parameterereignisse, 13 Kämpfe, 13 Erfahrungsereignisse, 11 Erzählmeldungen und zwei Heilungsereignisse zu einer Reise an.

  • Tagesroute
  • Ereignisverlauf
  • Erfahrung & Stufen
  • Abschluss / Niederlage

Kampfsysteme

Runden, Gegner und vorübergehende Effekte verwalten.

Spieler- und Gegner-Coroutinen koordinieren Angriffswarteschlangen, Ziele, Schaden, aktive Effekte und Bereinigung für fünf Gegnerarchetypen mit tagesbasierter Skalierung.

  • Sechs konkrete Angriffe
  • Drei Statuseffekte
  • Tägliche Skalierung um 1,5 %
  • Wiederbelebungsablauf

Inventar & Spielstände

Ein separates System verwaltet Gegenstände und gespeicherte Daten.

Ein separates Inventarmodul unterstützt feste, dynamische und unbegrenzte Behälter, Stapeln und Sortieren sowie lokale JSON-Spielstände mit Sicherung und Integritätsprüfungen. Gegenstandsdaten enthalten Seltenheits- und Effektdefinitionen; Ausrüstungsboni sind nicht an den aktiven Kampfablauf angebunden.

  • Feste · dynamische · unbegrenzte Behälter
  • Stapeln & sortieren
  • Seltenheits- & Effektdefinitionen
  • Spielstandwiederherstellung

Mobile Dienste

Audio, Nutzungsanalyse, belohnte Werbung und Android-Versionen.

Zenject-Komposition, DOTween-Sequenzen, FMOD-Audiorouting, Firebase- und Meta-Analyseanbindungen, belohnte AdMob-Abläufe und Android-Build-Einstellungen verbinden das Gameplay zu einem testbaren Mobilprodukt.

  • Analyseereignisse
  • Erneute Auswahl gegen Werbebelohnung
  • Wiederbelebung gegen Werbebelohnung
  • Android-Versionscode 54

Projektcode und Inhalte

Das Projekt in Zahlen.

Diese Zahlen umfassen eigenen Code unter Assets/Scripts in der hier untersuchten Projektversion von Juli 2025. Sie beschreiben Code und konfigurierte Inhalte, nicht Spielerzahlen oder kommerzielle Ergebnisse.

234
Eigene C#-Dateien
10,600+
Nicht leere Zeilen eigenen Codes
60
Konfigurierte Reisetage
106
Artem zugeordnete Commits an eigenen Skripten, ohne Merge-Commits
Unity 6
Geprüfte Projektversion

Fähigkeitsdaten

Jede Reise hat eigene Fähigkeitsdaten.

ScriptableObject-Definitionen erzeugen für jeden Durchlauf Angriffs-, Effekt- und Parameterinstanzen, sodass Fähigkeiten den aktiven Build sicher verändern können, ohne gemeinsame Quell-Assets umzuschreiben.

Eigene Animationssteuerung

Die Figurenanimation folgt der Aktion.

Ich entwickelte eine wiederverwendbare Steuerungsschicht für Einheitenanimationen auf Unity Animator. Charakterspezifische ScriptableObject-Profile ordnen gemeinsame Zustände den jeweiligen Clips zu und konfigurieren Geschwindigkeit, Startversatz, Ebene, Treffermoment und Übergangsüberlappung. Überblendungen, Clip-Sequenzen, kurvenbasierte Positionsinterpolation und Callbacks koordinieren Bewegung, Angriffe, Treffer und Tod. Der gemeinsame Controller nutzt im geprüften Projektstand 10 Profile für 14 Charakterdarstellungen.

Schwierigkeitskurve

Spieler und Gegner werden stärker.

Spielerwerte und Fähigkeiten wachsen durch Ereignisse und Stufenaufstiege, während Lebenspunkte und Angriff der Gegner mit dem verstrichenen Tag skalieren. Die Begegnungsauswahl bevorzugt noch nicht verwendete geeignete Gegnertypen und nutzt eine Rückfallauswahl, wenn dieser Pool erschöpft ist.

Startablauf & Tests

Geordneter Startablauf und Inventartests.

Start-Szenen und Dependency Injection organisieren den Start, während gepoolte Schadensanzeigen wiederholte Speicherzuweisungen reduzieren. Das Repository enthält zehn Unity-Editor-Testmethoden für das Inventarverhalten; ihr aktueller Erfolgsstatus wurde nicht unabhängig überprüft.

Öffentliches Projektvideo

Sehen Sie, wie eine neue Fähigkeit den nächsten Kampf verändert.

Das öffentliche Gameplay-Video von 1:18 zeigt die Tagesroute, Erzähl- und Parameterereignisse, Kämpfe nach der Battle-Aufforderung, eine Auswahl aus drei Fähigkeiten, Freezing als Waffenergänzung und dessen Auslösung im Kampf sowie Niederlage und die Entscheidung zur Wiederbelebung.

Auf YouTube ansehen

Gameplay-Video und Vorschaubild wurden von Artem Shkabura am 27. Mai 2025 auf seinem öffentlichen YouTube-Kanal veröffentlicht.

Abgeschlossene Arbeit

Was ich für dieses Projekt entwickelt habe.

  • 01Unity-Programmierung für Reise, Kämpfe, Fähigkeiten, Gegner, Oberfläche und Spielerfortschritt
  • 02Eine konfigurierbare Reise über 60 Spieltage mit Kämpfen, Erfahrung, Werteänderungen, Geschichten und Heilung
  • 03Wiederverwendbare Angriffe und Effekte, mit denen Upgrades die Fähigkeiten innerhalb des bestehenden Kampfsystems verändern
  • 04Eigene Steuerung auf Basis von Unity Animator, die Figurenclips auswählt, Animationen flüssig überblendet und Bewegung und Angriffe mit dem Gameplay abstimmt
  • 05Ein separates Inventar-Speichersystem, Anbindungen an Nutzungsanalyse, Aktionen für belohnte Werbung, Audiointegration und Konfiguration der Android-Versionen

Diese Fallstudie dokumentiert meine Unity-/C#-Implementierung, den geprüften Projektstand vom Juli 2025 und öffentlich sichtbares Gameplay. Repository-Zahlen beziehen sich auf Assets/Scripts in diesem Stand. Sie beansprucht weder Urheberschaft an Grafik, Audio oder Spieldesign noch eine Store-Veröffentlichung, aktuelle Verfügbarkeit, Zielgruppengröße, Nutzerbindung, Umsatz oder Ergebnisse laufender Kampagnen. Experimentelle ECA- und Reflection-Schichten sind von den obigen Umsetzungsaussagen ausgenommen.

Wie ich Ihrem Projekt helfen kann

Sie planen ein Spiel mit verbesserbaren Kampffähigkeiten?

Testen wir, wie Ihre Fähigkeiten zusammenarbeiten.

Ich kann Ihr Kampfdesign in Unity programmieren, das Zusammenspiel bestehender Fähigkeiten prüfen oder eine spielbare Version mit den nächsten Funktionen entwickeln.

Begrenztes Budget? Nennen Sie mir Ihre Priorität und den Rahmen, mit dem Sie sich wohlfühlen. Ich sage klar, welcher erste Schritt realistisch ist.

Vertraulich ab dem ersten Gespräch

Ich zähle Kontaktaktionen nur zusammengefasst, ohne Besucher-IDs oder Nachrichteninhalte.

Zurück zu den Projekten