City Building Spiel mit Spielmechaniken aus Anno, Tropico und SimCity

  • Hey Leute,


    ich habe ein paar Ideen zu einem Spiel ähnlich wie Anno, mit Elementen aus SimCity.


    Also ein Spiel, in dem man eine Stadt aufbaut. Ich weiß - für einen Anfänger wie mich ist das vielleicht etwas viel auf einmal, trotzdem will ich mir der Herausforderung stellen und so zu sagen beim erstellen dieses Spiels noch was lernen.
    Naja, auf jeden Fall hab ich einige Fragen, denn zu einigen Sachen, die ich dafür bräuchte, finde ich echt nix im Internet.


    Also.. zuerst: Das Spiel soll vom Grundsatz her wie das Top Down Template in UE4 sein. Also, dass die Kamera von schräg oben auf die Welt schaut. Nun brauche ich aber keinen Charakter für diese Art von Spiel. Wie kann ich eine Kamera erstellen, die keinem Spieler/Charakter folgt, sondern in der Luft "fliegt" und man diese mit der Maus, den Pfeiltasten oder WASD steuern kann?


    Weitere Fragen würde ich stellen, wenn diese Grundlage geklärt ist. :)


    Vielen Dank schonmal im Vorraus
    Liebe Grüße, Timo

  • Wie kann ich eine Kamera erstellen, die keinem Spieler/Charakter folgt, sondern in der Luft "fliegt" und man diese mit der Maus, den Pfeiltasten oder WASD steuern kann?


    Ich glaube du kannst immer nur "Dinge" (deine geforderte Kamera) steuern, die einem PlayerController zugewiesen sind, weil der in der Regel die Eingaben des Spielers auswertet, z.B. einen PlayerCharacter.
    Korrigiert mich wenn ich da falsch liege, aber so sollte der normale Workaround sein. Alles andere wäre gebastelt und unschön.
    Ansonsten könnte man noch (gebastel) ein BP_Actor machen, der dann die Logik inne hat Player-Input-Event auszuwerten. Und der Spieler muss dann im Spiel diesen BP_Actor auswählen und aktivieren können, aber keine Ahnung ob das in dein Gameplay passt bzw. wie der aussehen soll.

  • Wie wäre es zb eine Kugel zu erstellen die du mit dem Maus steuern kannst ? Deine Kamera folgt diese Kugel, wenn du die Kamera drehst, rotierst du die Kamera um diese Kugel.
    Du könntest so zb auch ein Gebäude auswählen und die Kamera um dieses Gebäude drehen. Deine Rotationsachse ist da wo sich dein Pivot befindet.
    Ich denke mal du müsstest den Pivot deiner Kamera auf den Mittelpunkt der Kugel oder eines gebäudes setzen dann kannst du mit Y Rotation die Kamera um das Objekt drehen.
    Alles was du dann noch tun müsstest wäre es die Kugel unsichtbar zu machen.


    Das wäre zumindest mal mein Ansatz.

  • Erstmal danke für die schnellen Antworten, aber die Methode, dass ich eigene Klassen für den Actor und alles erstelle ist dann denke ich doch zu kompliziert..


    Ich finde die Idee gut, dass man einfach einen Charakter nimmt und diesen unsichtbar macht. Ich habe mir überlegt die Kamera dann einfach auf den unsichtbaren Charakter drauf gucken lässt und einen weiteren Actor hat, der immer der Mausposition folgt und dann an der Position in der Welt das Gebäude oder andere Sachen gespawnt werden.


    Also damit kommen wir auch gleich zu meiner nächsten wichtigen Frage.. Das wird vielleicht etwas schwieriger.. Also: Wie kann ich es erreichen, dass es ein Raster gibt, an dem sich diese Gebäude dann anordnen? Also wie bei Anno, dass eine Straße z.B. ein "Kästchen" im Raster groß ist und man das dann nicht zwischen die Kästchen setzen kann.. Versteht ihr was ich meine? ^^

  • Wie oben kann ich dir hier nur meine Herrangehenweise als Artist sagen bei der Technischen Umsetzung mit den Blueprints kann dir da bestimmt jemand anderst mehr dazu sagen.


    Ich bin der Meinung das so eine Umsetzung bereits im 3D Programm beginnt ich möchte auch gerne erklären wieso:


    Zunächst mal musst du alle deine Gebäude nach einem Raster Modellieren aber fangen wir ganz vorne an.
    Nehmen wir zunächst mal eine Strasse diese hat eine Größe von 1 * 1 in Anno wäre dies ein einzelnes Rechteck.
    Ein Gebäude besteht dann vielleicht aus 3 *3 Kästchen.


    Halten wir fest: Du erstellt im 3D Programm unterschiedliche Gebäude mit verschiedenen Größen 1m*1m für eine Strasse 3 *3m für ein Haus usw.
    Du baust dir alle Gebäude im 3D Programm nach festen Maßeinheiten.


    In der UE weißt du nun das dein Gebäude 3 *3 groß ist das bedeutet du dein Raster so einteilen das eine einzelne Strasse immer um 1*1 groß ist ein Gebäude besteht demnach aus 3+3 Flächen.
    Du musst ein Gebäude nun zb immer um 0.1 nach Links, Rechts, hoch, runter verrücken. Somit hast du ein Snap Grid von 0.1


    Welches größe dein Grid hat ist im Prinzip egal wichtig ist nur das alle deine Gebäude den selben Scale Factor haben.


    Wenn du dir das nur in der UE baust werden deine Gebäude nicht mit dem Grid zusammen passen deswegen würde ich die Größenverhältnisse bereits im 3D Programm berücksichtigen.


    Du kannst dir im Prinzip alles auf Planes bauen.


    Strasse = Plane 1 *1
    Kleiner Park mit Parkbank bäume = PLane 1*1
    Großer Park = 3*3 (So Lang/Breit wie ein Haus
    Haus = 3 *3
    Haus verwandelt sich in Wolkenkratzer = 3*3 (genau so groß wie ein Haus) Hier könntest im auch zwischen LOD hin und her switchen)


    Das Prinzip ist eigenlich sehr einfach.