
Dieses Projekt entstand als Teil von Game Production 1.
Die Einschränkung war es, ein One-Button-Game zu entwickeln. Also ein Spiel, welches nur über einen Button zu steuern ist.
Genre: One-Button-Game, Clicker, Morse, Combat
Plattform: Windows, Web: Itch.io, Newgrounds, Android
Du spielst als Mecha und musst die Welt vor angreifenden Monstern verteidigen. Zur Auswahl hast du verschiedene Angriffe, welche du mittels Morse-Codes einsetzen kannst. Wählst du den korrekten Angriff, wird das aktuelle Monster besiegt und du sammelst Punkte. Mit jedem besiegten Monster wird das Spiel schneller und schwieriger. Kannst du den High Score knacken?
Das Spiel wird nur mithilfe von Morse-Codes gesteuert, welche du mit einer beliebigen Taste eingeben kannst. Mit diesen Morse-Codes musst du den passenden Angriff auswählen. Z.B.: Das aktuelle Monster ist ein Pflanzen-Monster, das bedeutet die korrekte Eingabe ist nun: ..- (kurz, kurz, lang) für den Feuer-Angriff, welche dann das Pflanzen-Monster besiegt.
Es gibt drei Elementare Angriffe und jeweils ein dazugehöriges Monster, welches durch den Angriff besiegt werden kann: Feuer (besiegt Pflanzen-Monster), Wasser (besiegt Feuer-Monster) und Pflanze (besiegt Wasser-Monster).
- kurzes oder langes Drücken eines beliebigen Buttons -> erzeugt . oder -
- drei Zeichen -> Morse-Code
- richtiger Morse-Code -> einer von drei möglichen Angriffen
- richtiger Angriff passend zum aktuellen Monster -> Monster besiegt
- Monster besiegt -> ein Punkt
Du verteidigst deine Position vor entgegenkommenden Monstern.
Durch das kurze oder lange Drücken eines beliebigen Buttons, löst du einen Dot oder einen Dash als Eingabe aus. Drei dieser Eingaben ergeben zusammen ein Befehl welches eine von drei möglichen Angriffen auswählt. Der Angriff wird ausgelöst und falls er passend zum entgegenkommenden Monster ist, besiegt er dieses und du bekommst einen Punkt für deinen Highscore.
Mit besiegten Monstern nimmt die Spielgeschwindigkeit Stück für Stück zu, was den Schwierigkeitsgrad auf Dauer enorm erhöht.
Yannis Gräbert |
Jaron Rieger |
Joshua Behrens |
Conrad Addamo |
Programming |
Programming |
Design |
Design |
Overview |
Kanban |
Communication |
Version Control |
Miro |
Trello |
Discord |
GitHub |
Beim ersten Meeting haben wir Ideen gesammelt, wie wir die One-Button-Mechanik umsetzen könnten.
Beim zweiten Meeting haben wir eine Idee genauer definiert und erste Designentscheidungen getroffen.
- simple Morsezeichen als Eingabe
- elementare Gegnertypen und Angriffe
- First-Person-Perspektive mit Roboter-Mech-Armen, welche das Eingeben der Morse-Codes visualisiert
- Monster, welche von japanischen Kaiju inspiriert sind
Overview |
|
Setting |
Kaiju / Sci-Fi-Fantasy |
Theme |
Mechas vs Monsters |
Goal |
Survive as long as possible |
Rules |
Endless running / enemies spawn faster over time / one-hit-death |
Gameplay Loop |
1. Enemies come at you one at a time, based on a timer 2. Perform the right attack to defeat the enemy |
Actions |
Choose the right attack corresponding to the element of the enemy |
Challenges |
You have to learn and remember which morse code to use for which enemy |
Rewards |
Points for kills and potentially a High Score |
Must Have |
Should Have |
Could Have |
Won’t Have |
drei Angriffe und drei Gegner |
Hände |
Mehr Angriffe (Combos) |
Spieler Movement |
Morsesystem |
Intervall wird schneller |
Mehr Gegner (Rüstungen) |
Story |
Schere/Stein/Papier System |
Environment |
Lebenspunkte (für Gegner und Spieler) |
|
Gegner spawnen in einem Intervall |
Gegnerdesign ist angepasst auf die Mechanik |
Verschiedene Level / Schwierigkeit Stufen |
|
Gegner haben eine Zeit … sonst verliert man |
Gegner bewegen sich auf den Spieler zu |
Power-Up |
|
Interface |
Animationen für Angriffe |
Combo-Meter |
|
SFX für Angriffe und Gegner |
Angriff Design ist angepasst auf die Mechanik |
|
|
|
Animationen für Gegner |
|
|
|
Score |
|
|
|
Tutorial |
|
|
|
Musik |
|
|
- Elemente des Monsters klarer erkennbar
- mehr visuelles Feedback bei Eingaben
- Indikator für Timing der Eingaben
- Bei Eingabe dot oder dash direkt anzeigen bei Button-Down und bei Wechsel von dot zu dash
- Feuer-Partikeleffekt kleiner für bessere Übersicht
- High Score ausblenden und nur bei Game Over anzeigen
- Tutorial-Text-Einblendung sequenziell, nicht gleichzeitig und versetzt
- UI-Style wie Helm von Metroid oder Lethal Company
- Element-Icons reagieren auf Eingabe
- Alle Textelemente reagieren auf Eingaben, werden bspw. grün und größer oder bewegen sich
- High Score belohnen mit besonderem Sound, Effekt, Text etc.
- Initial commit
- project setup
- Basic Morse Setup
- added basic morse mechanic
- Merge branch
- Combined Base Mechanics
- add particle effects for each element and corrected their input
- add max length for words
- added enemy spawning and the option to defeat them with the correct morse input
- added Post Processing
- add basic main menu
- add morse commands for main menu
- add test sounds for beeps and music
- FX
- add mock up sounds for fire and water attacks
- Particles Plant Fire Water Rain, UI, Beach, Tutorial Text
- Added adaptive performance for Android + Changed Inputsystem from both to New only (needed for android)
- DisableOnClick Tutorial Text
- Changed Main Menu Button
- Updated Mech Arms
- Added Elemental Icons
- enemies now move towards the player, game over is now tracked, added new prefabs for enemies and the player
- Merge branch 'main'
- fixed some bugs
- add some sfx
- add score counting
- add game over screen
- add decreaseing spawn interval over time
- fix typo
- updated music
- add kill speed based respawn timer
- Animations Done
- beep sound now plays immediately when pressing and not after pressing, fixed a bug where the game crashed when going back to the main menu after game over, changed main menu morse characters to make starting the game easier and quitting the game harder, morse code now stays on screen for a bit instead of disappearing immediately after receiving third input
- Added Carbon Textures for Arms
- Added Water Shader
- Added Skybox
- Added 3D Kaiju
- Added Camera Shake
- Improved UI
- add functionality to game over buttons
- Implemented Kaiju Models with Animation
- Kaijus now Walk
- fix menu/timescale bug, changed ui elements
- fixed a bug where one wrong input would break the game
- Merge branch 'main' of github.com:JaronRieger/MorseGame
- changed some spawn time values
- fontSize, playtest difficulty
- Implemented Environment
- game over sound/music and screen shake
- short fix
- another one
- Added HighScore
- Added Shaders
- Merge branch 'main'
- UI, Attack Anim, Blue Kaiju
- enemies now stop moving infront of player and are getting destroyed on game over
- add portal mechanic
- Portal Shader, Removed Buttons, Implemented Indicator
- fixed an error that occurred when the same spell was repeated after an enemy was killed before a new one spawned, added a check to prevent the same type of enemy spawning more than two times in a row, enemies can now die when they spawn while the correct particle effect is still playing, the morse input now only resets when no button is being pressed
- Merge branch 'main'
- fix random game over at higher scores
- Added Indicator to Main Menu
- fix 1st enemy game over
- add volume slider functionality
- add new menu music
- rest
- add Renderings to MainMenu + add newest blue Texture for Kaiju
- Removed Renderings from Main Menu but added blue glow
- Itch.io Feedback
- Added MMFeel for UI Feedbacks
- add highscore blending in on game over, fix some nullref error
- add singular wording for the end screen
- Improved Lighting
- Logo Dashes
- add thunder sounds and additonal flicker stuff
- add some juice to the thunder
- UI
- add win screen
- add ranking text
- balancing adjustments
- add some game over flavour
- add portal time bar
- adjusted spawn indicator, add little kaiju head
- change kaijuUi color and dynamic rank letter color
- small fixes
- change end screen adjustments
- Added Highscore BG and other UI stuff
- added newgrounds scoreboard
- Merge branch 'main'
- MonsterMorseLogo + Arm Texture Materials
- change beep in main menu
- add more responsive beep sound
- Leaderboard UI Change
- Added HoneyComb to Settings Menu
- defaultScreenWidthWeb1920
- In Zukunft werde ich erst die Musik für das Spiel schreiben, wenn die ersten Art assets, oder zumindest Konzepte bestehen.
Sonst wirken die Musik und die Spielwelt nicht ganz stimmig
- Die Beschränkung auf eine Taste zum Spielen hat mich dazu inspiriert, anders über Spielsteuerungen nachzudenken,
insbesondere im Hinblick auf Effizienz und Vereinfachung.
- Hybride Meetings haben sich teilweise als schwierig erwiesen, da das HAW-WLAN keine Discord-Anrufe zulässt. Daher sollten Logistik und Technik der Meetings im Vorfeld getestet werden."
- klarere Aufgabenteilung verhindert früh Missverständnisse
- kleiner Scope und wenig Mechaniken erlauben sehr frühes Testen und iterieren
- jedoch sorgen wenige und sehr simple Mechaniken für nicht viele Möglichkeiten zum Erweitern dieser
- für Projekte mit überschaubarem Umfang braucht es nicht sonderlich viele Tools zur Organisation
- Nur weil etwas in Blender geht, heißt es noch lange nicht, dass es in Unity funktioniert: Erstelle Machbarkeitsproben in der ausgewählten Engine
- Planungs- und Kommunikationstools mit langem oder kompliziertem Zugriff haben nicht gut funktioniert: Halte es so einfach wie möglich
- Eine gute Struktur im Discord kann viele Tools ersetzten
- Eine Rollenverteilung im Team vereinfacht Entscheidungen
- Wenn man mal nicht weiter weiß, helfen die 3.+ Semester gerne weiter
-
Der Fokus blieb konsequent auf dem MVP.
-
Der bewusst kleine Scope ermöglichte eine realistische Umsetzung.
-
Git und Unity liefen stabil und problemlos.
-
Trello war nicht ganz ideal, weil man nach Abschließen der Aufgaben nicht mehr drauf geschaut hat.
-
Teilweise fehlte Abstimmung im Team, besonders bei technischen Details.
-
Unterschiedliche Shader und fehlende Material-Absprachen führten zu visuellem Chaos, das erst spät gelöst wurde.
-
Erste Brainstormings waren unstrukturiert. Design Thinking Methoden brachte klare Verbesserungen.
-
Kurz vor Abgabe wurden neue Ideen eingebracht, für die keine Zeit mehr war. Diese späten Änderungen schafften es oft nicht sinnvoll ins Spiel.
-
Künftig müssen solche Änderungswünsche frühzeitig kommuniziert werden.
-
Ein wöchentliches Meeting reicht nicht aus. Ein zusätzliches kurzes Check-in-Meeting pro Woche hätte viele Missverständnisse frühzeitig verhindert.