Jump to content
Unity Insider Forum

Borderless


Recommended Posts

Guten Abend liebe Insider! :)

Vor einem Jahr habe ich mit meinem Spiel "Borderless" angefangen und möchte nun mein Projekt endlich mal vorstellen. Ich denke mal, dass jetzt der richtige Zeitpunkt ist. Borderless ist mein bisher größtes Projekt, in dem ich mit Abstand am meisten Arbeit und schweiß gesteckt habe. Allerdings befindet sich das Spiel noch in den Kinderschuhen und ich werde bis zur Fertigstellung auch noch einige Zeit brauchen. 

Doch kommen wir nun zum eigentlichen Spiel: 

Borderless ist ein Open-World Sandbox Spiel, in welchem der Spieler in eine eigene Welt eintauchen kann. Genauer gesagt ist es ein Aufbauspiel, welches vom Gameplay stark an Minecraft erinnert. Dabei handelt es sich aber NICHT um einen Minecraft-Klon. Der Fokus des Spiels liegt dabei hauptsächlich auf das erbauen und erschaffen von technologischen Dingen. Angefangen mit einem simplen Holzhaus, bis hin zur einer großen Fabrik, einer Bahnstation, einem Flughafen oder was auch immer... der Fantasie sind keine Grenzen gesetzt! Dabei kann der Spieler komplexe Computersysteme selbst erbauen und vernetzen um z.B. ein eigenes Hochregallager zu bauen. Allerdings brauchen große Anlagen auch eine menge Strom! Somit muss man sich ebenso um die Energieversorgung seiner Anlagen kümmern und und und... Ich denke mal, man kann erkennen in welche Richtung sich Borderless entwickeln soll. Auch ein Multiplayer exisiert, um mit Freunden gemeinsam zu spielen. 

Da ich ein großer Fan von solchen Spielen bin, hat mich die Motivation bei diesem Mammutsprojekt (Ja, für mich als Alleinentwickler ist das in der Tat ein Mammutprojekt) nie verlassen, weswegen ich den Ergeiz habe, das Spiel bis zum Ende durchzuziehen. 

Das Spiel ist grafisch nicht sehr anspruchsvoll, da ich weder gut um Texturieren geschweige denn im Modellieren bin. Deswegen versuche ich einen eher einfachen aber stimmigen Stil zu folgen und konzentriere mich auf das was ich besser kann, nämlich Scripten. :)  Somit kann ich mich auch besser auf Performance konzentrieren und mein Spiel auch für Spieler zugänglich machen, die eine eher schwache Hardware in ihrem Rechner verbaut haben. 

 

Ich habe auf meinem Youtube-Kanal Helishcoffe einige DevLogs zu Borderless hochgeladen, falls sich jemand mein Spiel etwas genau ansehen möchte. In diesem kleinen Walkthrough, sind bisher (fast) alle Funktionen die ich bisjetzt implementiert habe vorhanden: 

 

Wölfe etc. existieren auch schon, sind aber noch nicht im Video zu sehen. Da ich nun den Levelgenerator fertig habe wird sich die Entwicklungsgeschwindigkeit meines Spiels vorraussichtlich verschnellern da der Levelgenerator bisher sehr viel Zeit eingenommen hat. Deswegen werde ich in Zukunft öfters mal weitere Devlogs posten. 

Wer mein Spiel jedoch selbst mal spielen möchte, kann sich den aktuellen build herunterladen

-> Borderless Dev. Build Herunterladen

Steuerung:

  • W, A, S, D oder Pfeiltasten: Laufen
  • Leertaste: Springen
  • B: Buildmenu öffnen
  • I: Inventar öffnen
  • T: Chat
  • Linke Maustaste: Dinge aufheben bzw. zerstören
  • Rechte Maustaste: Dinge platzieren
  • Esc: Pause

Wer ein bisschen blödsinn machen will, kann ein bisschen mit den Chatcommands rumspielen die ich bisher integriert habe: 

  • /give [Id] Man erhält einen Stack von dem Item mit der angegebenen Id. Beispiel: /give 1 für 4x Holz
  • /itemlist Zeigt eine Liste mit allen Items und der dazugehörigen Id an.
  • /settime [ticks] Setzt die Spielzeit auf die angegeben Tickzeit (0 bis 1999).
  • /summon [Id] erschafft ein Entity mit der angegebenen Id. Beispiel /summon 3 um einen Wolf zu erschaffen
  • /debug zeigt den Debugscreen für den Terraingenerator an
  • /seed zeigt den Seed des Terraingenerator an
  • /god aktiviert den Godmode. Man ist unverwundbar und kann sehr schnell laufen. Achtung: man kann ihn zwar wieder mit /god ausschalten, aber die Laufgeschwindigkeit wird dabei nicht zurückgesetzt, weil ich irgendwie nie dazu gekommen bin diesen Bug zu entfernen :D 
  • /thingmanager zeigt sämtliche Informationen
  • /time zeigt die Spielzeit an
  • /realtime zeigt die echte Uhrzeit an
  • /players zeigt die Liste der Spieler 
  • /invstat zeigt alle Informationen über das Spielerinventar
  • /entitylist zeigt alle Entitys mit der dazugehörigen Id an
  • /clearinv leert das komplette inventar

Achtung: Der Multiplayer ist zwar schon spielbar, allerdings noch nicht ausgibig getestet und es existieren noch ein paar Bugs. Wer trotzdem auch den Multiplayer spielen möchte, der kann das gerne tun. Beim Starten einer Welt mit "Play World" startet man automatisch einen Server. Andere Spieler können nun über "Join World" im Hauptmenü unter angabe der IP-Adresse des Hosts direkt joinen. Allerdings muss der Port 2204 freigeschaltet sein wenn man nicht im LAN spielt (oder man benutzt ein VPN). 

Wichtig: Wie bereits erwähnt bin ich mit meinem Spiel noch lange von dem entfernt, was ich oben beschrieben. Der Umfang ist noch recht gering im Vergleich zu meinen Plänen, allerdings möchte ich euch schonmal zeigen woran ich zurzeit arbeite und würde mir gerne ein paar Meinungen und Anregungen von euch einholen :)

 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich benutze bei jedem Objekt welches ich platziere Boxcollider. Bei dem Objekt, welches ich platziere schieße ich nun von einer Wand zur anderen innerhalb des Boxcolliders einen Raycast. Also macht dies 6 Raycasts die von einer Seite zur gegenüberliegenden Seite gehen. Außerdem benutze ich einen Raycast aus dem Viewport der Kamera in die Spielwelt hinein um die Position zu kriegen, auf welche der Spieler zeigt. Das Objekt wird nun an diese Stelle platziert (rechnerisch). Dann werden die Raycasts innerhalb des Colliders ausgewertet, um zu schauen ob das Objekt überhaupt an die vom Spieler gezeigte Stelle hinpasst. Die Raycasts bestimmen nun, wie weit und in welche Richtung das Objekt verschoben werden muss, damit es sich nicht mit einem anderen Objekt überschneidet. Das kann man gut ab Minute 7:30 im Video oben erkennen: Die einzelnen Holzplatten werden direkt aneinander gelegt, obwohl der Spieler hier nur die Position grob anzeigt. Das eigentliche Raster welches du meintest ist jetzt nur noch dafür da, damit dem Spieler es leichter fällt, dinge Symetrisch zu bauen und um einheitliche Abstände zu erzeugen damit alles schön stimmig ist. Dies erreiche ich indem ich einfach nur die Koordinaten der Position wo ein Objekt plaziert werden soll, aufrunde auf 0,2 Einheiten. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 month later...
  • 11 months later...

Soo mal nach fast einem Jahr mal wieder ein Kleines Update

Die UI und das ganzen System dahinter habe ich nochmal komplett neu gemacht und funktioniert nun viel besser (und sieht auch viel besser aus ;) )

1.jpg


2.jpg


4.jpg

 

Außerdem wurden 3 neue Objekte hinzugefügt. Links Solar Panels mit denen man später Strom erzeugen kann, rechts 2 Türen und vorne ein Stromkabel :)


5.jpg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...