"Magic Defense" / work in progress

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • "Magic Defense" / work in progress

      Hallo Leute!

      Mittlerweile bin ich weit genug, um mich zu trauen, mein aktuelles Solo-Projekt mal vorzustellen.

      Worum geht es?

      Wie der Name schon sagt, handelt es sich um ein Towerdefense-Spiel. Das Spiel soll allerdings aus der First-Person-Perspektive gespielt werden und kleinere Rollenspiel- und Action-Elemente beinhalten. Ich denke, das Spiel ist am ehesten mit der Orcs Must Die!-Serie vergleichbar, allerdings möchte ich einen deutlich stärkeren Fokus auf Strategie legen.

      Aktueller Stand:

      Ich habe einen Prototypen in dem die wichtigsten Mechaniken funktionieren. Man kann mit WASD herumlaufen, ein Spawner spawnt stärker werdende Wellen aus Creeps, die einem Weg zum Ziel folgen und dem Spieler - wenn sie das Ziel erreichen - Leben abziehen. Entlang des Weges gibt es Bauplätze, auf denen der Spieler mit von getöteten Monstern gedroppten Münzen Türme errichten kann. Die Münzen muss er von Hand einsammeln, sich also über die Map bewegen.

      Ich zeige hier mal ein Bild. Sämtliche Grafik (UI, Level, interface) sind alles erstmal nur vorläufig und daher mit Vorsicht zu genießen!



      Wie ihr seht, gibt es aktuell bereits zwei Arten von Türmen. "Feuertürme", die einfach nur Schaden machen und "Tesla-Türme" (der mit dem blauen Ball) der Gegner unter Schock setzt und damit (auf Kosten von weniger Schaden) für ein paar Sekunden verlangsamt. Ich habe sowohl Türme als auch Geschosse als child actors einer Basis-Klasse angelegt, sodass ich jetzt verhältnismäßig schnell neue Turm- und Geschosstypen erstellen kann.

      Grundsätzlich möchte ich den Spieler dazu anregen, nicht einfach wahllos alles mit irgendwelchen Türmen vollzuklatschen, sondern Synergien zwischen verschiedenen Türmen sinnvoll zu nutzen.

      Es gibt auch bereits eine rudimentäre "Upgrade"-Mechanik, das heißt man kann in einem Shop auf der Map Upgrades für verschiedene Türme erwerben um so verschiedene Spielstile mit Fokus auf verschiedenen Türmen zu realisieren. Die verfügbaren Upgrades bzw. das Shop-Inventar sind dabei zufällig, sodass man bei jedem Spiel ein wenig gezwungen ist, primär mit den Türmen zu arbeiten, für die man Updates bekommt. So soll jede Runde ein bisschen anders sein.

      Was ist noch geplant?

      Bufftürme

      Wie gesagt, Spieler sollen darüber nachdenken welchen Turm sie strategisch wo am besten platzieren. Dazu soll es einen oder mehrere Bufftürme geben, die anderen Türmen im Umkreis Boni oder zusätzliche Effekte verleihen.

      Verschiedene Gegner und zufällige Waves

      Aktuell gibt es nur einen Gegnertyp. Hier möchte ich auch verschiedene Typen mit verschiedenen Fähigkeiten erstellen, also schnellere und langsamere, Mobs mit Resistenz gegen Feuer uvm. Außerdem würde ich Waves gerne bis zu einem gewissen Grad randomisieren, sodass man auf alles vorbereitet sein muss. Das soll aber nicht zu frustrierend werden, da bräuchte ich ein System, um dem Spieler zu zeigen, was für Mobs die nächsten Waves beinhalten.

      Verschiedene Maps

      Natürlich soll es auch verschiedene Maps geben, die man nacheinander freischalten kann. In diesem Zusammenhang evtl. auch eine simple "Rette die Prinzessin"-Story oder sowas.

      Highscore-Liste

      Für jede Map soll ein Highscore gespeichert werden und vom Hauptmenü aus einsehbar sein.

      Spielübergreifender Fortschritt

      Ich würde gerne einen Spiel-übergreifenden Fortschritt einbauen. Also einen Skilltree, auf den man aus dem Hauptmenü zugreifen kann, der einem erlaubt, seinen Charakter noch weiter auf einen individuellen Spielstil auszubauen.


      Zukunft

      Das hier ist wie gesagt mein Freizeit-Solo-Projekt. Ich hege keine großen finanziellen Ambitionen oder sowas. Es ist hauptsächlich zum lernen gedacht, vor allem auch, weil ich mit Blueprints zwar relativ gut klar komme, mit Grafik und 3D aber meine Probleme habe. Hier möchte ich mich endlich mal vernünftig in Blender einarbeiten um eigene Models erstellen zu können.
    • Also ich habe soeben tatsächlich meine ersten zwei Meshes aus Blender exportiert! :thumbsup:

      Ich dachte mir, ich fange mit was Simplem an und habe es kombiniert mit ein bisschen herumspielen mit dem Partikel-System. Also eine "Flamme" und eine "Rauchwolke" modelliert und daraus ein optisches Upgrade für die Feuertürme gebastelt.

      Meine Flamme:




      Hier mal der neue Turm in Action im neuen Startmenü:




      Dafür, dass es die erste Arbeit mit sowohl Blender als auch Partikel-System ist, bin ich eigentlich ganz zufrieden.

      @Nyother

      Also ich fände es geil, nen COOP zu haben, aber ich traue mir Multiplayer im Moment einfach noch nicht zu. Mal schauen, wie das Projekt so läuft, gerne später. Im Moment will ich erstmal den Singleplayer-Teil einigermaßen rund laufen haben, bevor ich an Multiplayer denke. Ich neige dazu, mir zu viel vorzunehmen und dann frustriert zu sein...
    • Ist Vernünftig, lieber klein Anfangen und sich in Ruhe mit der Thematik auseinandersetzen. Das wichtigste ist es finde ich dass man Spaß hat mit dem was man tut, denn dann ist es wirklich erst ein Hobby :)
      Wenn du dich später dann an einen Multiplayer wagen möchtest, kannst mich alles gerne Fragen, was du wissen möchtest. Hab mich die letzten Monate sehr stark
      damit auseinandergesetzt und werkel jetzt auch gerade an etwas, das dürfte aber noch ne Weile dauern bis ich das Zeigen kann/möchte :)
    • Sooo heute habe ich mich ein wenig weiter in Blender vertieft.

      Erstmal habe ich in Blender einen "Blitz" gebaut. Bisschen mit dem "Extrude"-Tool üben um dann dem Tesla-Turm einen Particle-Effect verpassen zu können.



      Danach wollte ich den Turm selber bauen, hab lange gebraucht um die Funktionsweise des "verbiegen"/bending einigermaßen zu raffen. Naja, lange Rede, kurzer Sinn: Ein paar verbogene Metallstangen, ein neuer "Elektro-Effekt" und fertig ist mein Tesla-Turm.



      Die Türme haben jetzt auch eigene Lichtquellen, sollte gut aussehen auf einer dunkleren Map. Leider wirkt das Ganze durch die vielen Lichtquellen jetzt zu hell, irgendwie überbelichtet. Ich vermute, das hat was mit dem "Augen Helligkeitseffekt" zu tun, da muss ich nochmal drüber gucken, ansonsten halt am post processing was drehen.
    • Kurzes Update. Ich habe des Problem mit der Farbe/Überbelichtung gelöst. Nur für das Protokoll:

      Im Character BP in der Kamera unter Lens → Exposure, Min brightness und Max brightness beides auf 1 setzen. Keine Ahnung, warum dieses Feature überhaupt standardmäßig an ist. Nun ja, egal, Problem gelöst.

      Dann habe ich tatsächlich mein erstes Model animiert und importiert. Es sieht natürlich dementsprechend aus. :P



      Die Animation ist eine 4-Frame-Katastrophe, aber immerhin funktioniert sie.

      Auf der "haben"-Seite steht, dass ich jetzt weiß, wie riggen und animieren und vor allem importieren funktioniert, also den Workflow einigermaßen kenne, und dementsprechend jetzt detaillierter und konzentrierter an Details arbeiten kann.

      Es war wirklich ein Akt, hatte gefühlt jede Fehlermeldung, die es gibt. X/
    • Ich habe ein Tutorial auf Youtube verfolgt bzw. abgewandelt, aber ich finde es grade nicht wieder.

      Ich habe im wesentlichen per TypeData → New Mesh Data den Mesh als zu spawnenden Particle gesetzt und dann über Location → Sphere das ganze kreisförmig auf der Surface spawnen lassen. Bei Mesh gibt es ne Checkbox "Overwrite Material", die hab ich angemacht, dann kann man die Farbe wie üblich ganz normal anstatt des deafult Material einstellen.


      Ich hab heute ne Pause vom animieren gemacht und nen weiteren Turm gebaut, einen "Gift Turm". Es sollte aussehen, als wenn Gift herunter tropft. Reicht für den Moment.



      Damit habe ich aktuell 3 komplett implementierte und funktionierende Türme:

      Feuer

      Mittlere Geschwindigkeit, einmalig hoher Schaden (Aktuell 25 Damage)

      Gift

      Mittlere Geschwindigkeit, kein Schaden beim Treffer, aber vergiftet und verursacht dann Schaden über Zeit (aktuell 30 Damage über 30 Sekunden). Insgesamt den höchsten Schaden der Türme, aber braucht eben Zeit zu "wirken". Eigentlich nur sinnvoll, ihn möglichst weit vorne auf der Lane zu bauen, damit der Schaden voll zur Geltung kommt. Der Gift Effekt stapelt sich nicht, aber jeder weitere Treffer verlängert die Vergiftung bzw. setzt den Timer auf 30 Sekunden zurück.

      Tesla

      Langsame Geschwindigkeit, niedrigster Schaden (Aktuell 15 Damage), aber verlangsamt Gegner (aktuell -50% Speed über 5 Sekunden). Die Monster haben aktuell keine Kollision mehr miteinander, da es Probleme gab... bei vielen Monstern auf der Lane haben 2 oder 3 verlangsamte alle anderen dahinter aufgehalten/aufgestaut, dadurch waren die Slow-Türme viel zu overpowered. Also jetzt laufen die Monster durch einander hindurch, ist zwar nicht so schön, aber ich weiß keine bessere Lösung bis ich evtl. Lust habe nen intelligenteres pathfinding zu zaubern.


      Mein Plan für die nächsten Tage ist:

      • Ein Menü zum auswählen der Map bauen (wie ihr seht, hab ich angefangen eine zweite Map zu basteln)
      • Ein bisschen Leveldesign, ich möchte ein paar Bäume und Gras auf dem Boden haben, damit es nicht ganz so "kahl" ist
      • Ich möchte einen "Vergiftet"-Effekt, sodass vergiftete Gegner irgendwie grün leuchten oder grüne Wolken hinterlassen oder sowas
    • Neu

      Ich habe jetzt ein Menü zum auswählen der Level (aktuell 2 verschiedene) komplett fertig gemacht.

      Abgesehen davon habe ich viel Zeit damit verbracht, mir im Zuge von Bäumen und Gras Gedanken über Optik und Grafik zu machen. Ich hab mit verschiedenen Formen von CellShading und PostProcessing herumexperimentiert, diverse Models gebaut und importiert und am Ende - etwas ernüchtert - feststellen müssen, dass mir eigentlich nur LowPoly-Modelle und eine mehr doer weniger "Comic"-ähnliche Grafik übrig bleiben.

      Obwohl ich immer besser mit Blender zurecht komme, macht mir das Models bauen, geschweige denn Texturieren/Animieren, einfach nicht so viel Spaß und ich merke halt überdeutlich: ich habe einfach noch einen langen Weg vor mir, bis irgendetwas dabei heraus kommt, was man "realistisch" nennen könnte.

      Ich habe hier probehalber mal "realistisch" und "lowPoly" gegenüber gestellt, und die Low Poly Bäume gefallen mir einfach viel viel besser und sind näher an dem, was ich mir vorgestellt habe (die sind aus einem frei verfügbaren LowPoly Pack, die anderen habe ich mit Tree It gebaut).

    • Neu

      Ich denke das ist auch Geschmacks Sache, persönlich ziehe ich Stylized, Low Poly immer Realen Zeug vor, einfach weil es
      mir besser gefällt. Was schwerer bzw leichter ist kann ich nicht einschätzen, da ich keine Erfahrung in dem Bereich habe. Wenn
      dir aber Low Poly in die Richtung besser gefällt, dann solltest du das machen, um den Spaß bei der Sache nicht zu verlieren.
    • Neu

      Ich habe die letzten Tage nochmal viel herumgespielt, unter anderem mit dem Foliage-Tool.

      Ich habe mir in Blender eigene Bäume sowie Gras und eine Blume gebaut. Dann habe ich ewig an einem Material gebaut, dass dem Gras-Mesh eine zufällige Farbe gibt. Drei unnötige komplizierte Stunden mit Youtube-Tutorials später habe ich dann festgestellt, dass es die Funktion SpeedTreeColorVariation gibt, die das automatisch übernimmt. Aber ich schätze mal, das gehört zum Lernprozess dazu, etwas super kompliziert zu machen und dann festzustellen, dass es auch einfach geht.

    • Neu

      Das Gras und die Blumen finde ich gar nicht mal schlecht, aber die Bäume gefallen mir persönlich weniger. Sieht ein wenig so aus, als würden sie leuchten.
      Auch diese harte Abstufung zwischen dem Hellgrün und dem Dunkelgrün zum unteren Teil der Krone hin, finde ich etwas unpassend.
      Und am Stamm der Bäume sieht es etwas so aus, als wären einige Normals nicht richtig gesetzt oder die Lightmap ist an der Stelle fehlerhaft. Kann mich aber auch täuschen ^^
    Unreal®, Unreal Engine, the circle-U logo and the Powered by Unreal Engine logo are trademarks or registered trademarks of Epic Games, Inc. in the United States and elsewhere.