Devblog 45

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

    • Devblog 45 – 30. Januar 2015

      [IMG:http://files.facepunch.com/garry/2015/January/30/2015-01-30_21-14-32.jpg]

      Das Update mit dem neuen User-Interface



      Neues User-Interface-System

      Wir sind auf Unitys User-Interface-System umgestiegen. Es hat auch seine Macken (an denen gearbeitet wird), doch es ist viel besser, als es einmal war.

      Ich habe fast alles übertragen, doch bitte vergesst nicht, dass es weniger als 2 Wochen Arbeit waren. Ich habe mich darauf konzentriert, die wichtigsten und kompliziertesten Funktionen zu übernehmen. Also fehlen einige Dinge – die ich noch reimplementieren werde.



      Menü-Bildschirm

      Wir wollen den Menü-Bildschirm weniger nutzlos machen. Wir möchten nicht, dass es ein Bildschirm ist, der genutzt wird, um zu einem anderen zu gelangen, wir wollen ihn nutzen, um euch auf dem Laufenden zu halten. Davon könnt ihr jetzt ein kleines Beispiel sehen, um an die drei letzten Devblogs anzuknüpfen.



      Server Browser

      [IMG:http://files.facepunch.com/garry/2015/January/30/2015-01-30_20-09-54.jpg]

      Der Server Browser ist jetzt etwas umfangreicher, als die letzte Version. Wir haben Listen für LAN-Server, Favoriten und einen Verlauf. Ihr könnt einen Server zu den Favoriten hinzufügen, indem ihr auf den Stern neben seinem Namen klickt.

      UnityUI ist im Moment (sie arbeiten daran) etwas langsam beim Verarbeiten von großen Listen, also habe ich sie limitiert, sodass sie nur 200 Server anzeigen. Ich werde später Filter und eine Suchfunktion hinzufügen.



      Verbindungsbildschirm

      Ein neuer Bildschirm. Der Verbindungsbildschirm zeigt den Verbindungsstatus an. Wenn die Verbindung zu einem Server getrennt wird, werdet ihr sehen, warum. Wenn ihr im Spiel die Escape-Taste drückt und ins Menü gelangt, werdet ihr es nutzen können, um die Verbindung zu trennen.

      [IMG:http://files.facepunch.com/garry/2015/January/28/2015-01-28_23-49-41.png]

      Dieser Bildschirm ist eine Art Platzhalter. Ich hoffe, mehr Funktionen hinzufügen zu können, sodass ihr mehr Interaktionsmöglichkeiten mit dem Server habt. Denkt an Logos, MOTDs, Admin-Listen, Verbindungsstatistiken (Ping etc.) und das Melden eines Spielers.



      Todesbildschirm

      Der Todesbildschirm wird jetzt überspringen, wenn ihr nie zuvor gelebt habt. Die linke Seite ist noch etwas leer.. doch das wird sich in den nächsten Wochen ändern.

      Die rechte Seite sollte Respawn-Optionen anzeigen. Ihr könnt jetzt wählen, bei welchem Schlafsack ihr spawnen möchtet. Wenn du wegen eines Cooldowns nicht an einem Schlafsack spawnen kannst, wird direkt auf der Schaltfläche angezeigt, wie lange du warten musst, um ihn wieder nutzen zu können.

      Ihr könnt eurem Schlafsack im Spiel einen schönen Namen geben.

      [IMG:http://files.facepunch.com/garry/2015/January/29/2015-01-29_11-51-35.png]


      Schlafbildschirm

      Der Schlafbildschirm hat keine Schaltfläche zum Aufwachen mehr. Stattdessen könnt ihr einfach eine beliebige Taste drücken, um aufzuwachen.



      Inventar

      [IMG:http://files.facepunch.com/garry/2015/January/30/2015-01-30_20-15-22.jpg]

      Das Inventar-Menü bedeckt jetzt den vollständigen Bildschirm und ist randlos. Das hat den Nachteil, dass das Geschehen im Hintergrund verdunkelt wird, doch dafür sieht es nicht wie Scheiße aus. Es könnte etwas zu groß bei höheren Auflösungen sein. Nächste Woche werde ich ein paar Skalierungsoptionen hinzufügen – sodass ihr es auf Wunsch verkleinern könnt.



      Gegenstände auswählen

      Ihr könnt einen Gegenstand auswählen, indem ihr ihn anklickt. Dies wird Informationen über den Gegenstand im oberen Bildschirmbereich anzeigen und mögliche Optionen ebenfalls (wie z.B. Essen verzehren). Dieser Bereich wird momentan kaum ausgenutzt – doch wir haben Pläne, die seine Existenz rechtfertigen.

      Mit dieser Methode lasst ihr auch Gegenstände fallen. Ich kann verstehen, dass das nervt, nächste Woche werde ich Optionen hinzufügen, die das Fallenlassen eines Gegenstands durch ein Hinausziehen aus dem Inventar ermöglichen.



      Aufteilen

      Aufteilen hat sich verändert und ist etwas, was ihr lernen solltet. Wenn ihr einen Stapel auswählt, wird ein Menü zum Aufteilen angezeigt. Zieht einfach die Leiste zu der Menge, die ihr nehmen möchtet, dann zieht das Symbol zur gewünschten Zielposition. Aber das ist nicht alles:

      • Die linke Maustaste wird verwendet, um alles zu nehmen
      • Die rechte Maustaste wird verwendet, um einen einzelnen Gegenstand zu nehmen
      • Die mittlere Maustaste wird verwendet, um die Hälfte zu nehmen

      Wir hoffen, dass die drei benötigten Klicks zum akkuraten Aufteilen durch die Tatsache ausgeglichen werden, dass ihr dies möglicherweise nie tun werdet und stattdessen auf die mittlere/rechte Maustaste zurückgreift. Doch wir werden sehen.



      Blaupausen

      [IMG:http://files.facepunch.com/garry/2015/January/30/2015-01-30_20-06-35.png]

      Die neue Blaupausen-Liste hat eine „Alle“-Kategorie. Es wird außerdem angezeigt, wie viele ihr freigeschaltet habt. Ihr könnt durch die Liste scrollen, indem ihr sie hoch- und runterzieht. Die Gegenstände, die ihr aus Mangel an Ressourcen nicht herstellen könnt, werden im unteren Bereich angezeigt, der Rest wird nach dem Titel sortiert. Wenn ihr etwas herstellt, wird ein Timer erscheinen, hinzu kommt eine Warteschlange. Durch einen Rechtsklick könnt ihr einen Gegenstand aus der Warteschlange entfernen. Dies ist deutlich vereinfacht im Vergleich zur vorherigen Version – und ihr verliert einen gewissen Grad an Kontrolle.. aber wir werden sehen, wie das weitergeht.



      Optimierungen

      [IMG:http://files.facepunch.com/garry/2015/January/30/2015-01-30_20-04-43.jpg]

      Das Optimierungsfenster hat ein neues Aussehen und ein paar neue Funktionen erhalten. Es zeigt auch die Framerate an und hat einen Framerate-Graphen im unteren Bildschirmbereich. Dadurch solltet ihr einfacher sehen können, ob sich durch das Ändern der Einstellungen hier eine Performance-Verbesserung ergibt.

      Ich bemerke jetzt, dass der graue Farbverlauf im Hintergrund schrecklich ist, also werde ich ihn nächste Woche optimieren. Teilt mir hier mit, welche anderen Optionen ihr euch wünscht.



      Chat

      [IMG:http://files.facepunch.com/garry/2015/January/30/2015-01-30_20-12-23.png]

      Der Chat hat nun Steam-Avatare und Admin- sowie Entwicklernamen werden in einer anderen Farbe angezeigt. Nächste Woche werde ich einen Verlauf hinzufügen und die weiße Linie am unteren Rand aller Avatare korrigieren müssen.



      Lebenswichtiges

      An den lebenswichtigen Werten hat sich nicht viel verändert. Manche zeigen präzisere Daten an. Das ist alles.



      Zufallsgenerierter Aufbau radioaktiver Zonen

      Wir testen derzeit ein System, um radioaktive Zonen und Wahrzeichen basierend auf dem Seed-Wert des Servers zufällig zu generieren. Ihr könnt euch das wie eine vereinfachte Version des AI Directors in Left 4 Dead vorstellen. Es kann beispielsweise Wände, Gebäude und andere Objekte entfernen oder hinzufügen, um den Leuten die Suche nach Loot zu erschweren. Das Ziel für die ferne Zukunft ist, dass Spieler immer auf alles vorbereitet sein müssen, wenn sie eine radioaktive Zone betreten, sogar wenn sie einen spezifischen Aufbau einer radioaktiven Zone bereits gesehen haben.

      Aktuell nutzen wir das System nur ein wenig, um festzustellen, dass alles funktioniert, wie es sollte. Im Moment ist es etwas mehr als ein Machbarkeitsbeweis, der zeigt, welche Arten von Zufallsgenerierung Sinn machen könnten, wenn wir in Zukunft radioaktive Zonen erstellen, doch erwartet, bestimmte Eingänge radioaktiver Zonen und Objekte zu sehen oder nicht zu sehen, je nachdem, auf welchem Server ihr spielt.



      Unzerstörbare Pilze

      Wir haben ein paar zufällige Pilze zu bestimmten Bäumen hinzugefügt. Ihr könnt sie noch nicht einsammeln, da sie lediglich zum Testen eines neuen Systems zum dynamischen Platzieren von Objekten vorgesehen sind. Nichtsdestotrotz planen wir, euch eventuell mit derartigen Details interagieren zu lassen. Spieler könnten ihren Stein für den Anfang dadurch erhalten, dass sie einen kleinen Stein vom Boden aufheben oder ihre erste Nacht durch den Verzehr von Pilzen oder Beeren überleben und ihr erstes Werkzeug aus kleinen Holzstücken herstellen.
      Mit freundlichen Grüßen
      KyZee
    • Wasser

      Unity 5 Beta 21 behob einen Fehler mit dynamischen Reflexionen, was uns ermöglichte, Wasserreflexionen auf OS X und Linux zu reaktivieren. Das bedeutet, dass ihr endlich Wasserfarben anstelle von grauen Flächen, die am Tag zu dunkel und in der Nacht zu hell sind, seht, sofern ihr auf einer der genannten Plattformen spielt. Es ist nach wie vor möglich, dass manche Software/Hardware-Kombinationen schwarze Pixel bei dynamischen Reflexionen verursachen, welche meistens auf Wasser oder glänzenden Objekten sichtbar sind.

      Wasser hat jetzt außerdem eine Strömung, die sich nach der Umgebung richtet. Das heißt, ihr werdet kein Wasser mehr sehen, das von der Küste wegströmt, sondern stattdessen immer in eine Richtung strömt, die wenigstens etwas Sinn macht. Diese Änderung ermöglicht es uns, in Zukunft 30 Wellentypen zu implementieren.



      Arbeitsspeicher-Nutzung

      Rust verwendet gerne RAM. Manchmal nutzt es RAM aus einem guten Grund, mit dem Ziel, Ausführungszeiten zu verkürzen, indem es einige Berechnungen nur einmal tätigt und das Ergebnis für eine spätere Verwendung aufbewahrt. Manchmal verwendet es RAM aus weniger vernünftigen Gründen.

      Wir haben einige Änderungen vorgenommen, welche die Arbeitsspeicher-Nutzung reduzieren sollen, indem Komponenten, die nur der Server benötigt, aus den Client-Builds entfernt wurden und sichergestellt wurde, dass prozessual generierte Texturen aus dem RAM gelöscht werden, nachdem die Grafikkarte sie erhalten hat. Wenn wir das gewährleisten können, werden sie nicht länger von der CPU benötigt.

      Diese Änderungen sind keine Silberkugel, die euch durch magische Weise erlauben wird, Rust auf eurem Toaster zu spielen, also haben wir eine neue Systeminformationssektion zum F1-Menü hinzugefügt, die zeigt, wie viel RAM eurem System zu Verfügung steht, welcher Arbeitsspeicher von Mono verwendet wird (sprich RAM, den wir in unseren Skripten verwenden) und wie viele Ausschussdaten das Spiel seit dem Start bereits sammeln musste. Unity selbst verwaltet Arbeitsspeicher für Dinge wie Meshes, Texturen und die, welche im Moment nicht im Statistikfenster sichtbar sind, was wir geplant haben, in Zukunft zu ändern. Es ist eine gute Idee, einen Screenshot des Systeminformationspanels zu machen, wenn ihr Probleme habt und im Forum oder auf Reddit nach Hilfe fragen wollt oder einen Fehlerbericht einsenden möchtet.



      Prüfsummen-Diskrepanz

      Da die Leute uns ständig fragen, was die „Checksum Mismatch“-Warnung in der Konsole bedeutet, möchte ich dies hier beantworten. Die Prüfsumme ist dafür gedacht, die Welt des Servers mit der eures PCs zu vergleichen. In Zukunft wird dies genutzt werden, um Clients zu kicken, deren Prüfsummen nicht mit denen des Servers übereinstimmen. Momentan handelt es sich nur um eine Warnung, die keine Konsequenzen für den Client hat. Wir schreiben es einfach in die Konsole und senden uns einige Informationen, um festzustellen, wie viele Spieler betroffen sind und um eventuelle Fehler, welche die Prüfsummen-Diskrepanz ausgelöst haben, auszumerzen.

      Diese Woche fanden und behoben wir einen Fehler, der eine Diskrepanz zur Folge haben konnte, also hoffen wir, in den nächsten Tagen deutlich weniger dieser Warnungen auftauchen zu sehen.



      Anti Cheat

      EAC wurde für die letzte Woche deaktiviert, während die Jungs das Problem behoben, wodurch Spieler scheinbar zufällig gekickt wurden. Sie sind jetzt fertig – also wurde EAC reaktiviert.

      Einige von euch haben herausgefunden, dass es möglich ist, mit einigen der großen Ressourcen-Dateien herumzuhantieren, um Cheats zu erschaffen. Ich hätte Zeit investieren können, um einen Code zu schreiben, der das unterbindet, doch die EAC-Jungs arbeiten bereits an einer besseren, globaleren Lösung, welche sehr bald fertiggestellt sein sollte.



      Linux

      Die Linux-Version sollte jetzt wieder funktionieren!



      Zusammenfassung

      Mann, das war eine Menge Arbeit für die letzten paar Wochen.. aber es fühlt sich großartig an, alles abgearbeitet zu haben. Ich werde die nächste Woche damit verbringen, alles zu optimieren, Bugs zu beheben, fehlende Funktionen zu reimplementieren und Feedback zu empfangen. Ich habe zudem den Raknet-Quellcode zu unserer dynamischen Programmbibliothek hinzugefügt – alles bereit, um verwendet zu werden.. also werde ich damit ebenfalls einen Versuch starten.. welcher manche der Netzwerk-Probleme beheben sollte, die wir mit Lidgren hatten.

      Lasst mich via @garrynewman oder das Forum jegliche Probleme/Ideen/Meinungen wissen, die ihr zum neuen User-Interface habt.


      Quelle: playrust.com
      Mit freundlichen Grüßen
      KyZee