Posts by Devidian

    Man müsste einfach eine sogenannte heightmap und eine passende Landschaft importieren können, so machen das auch andere Spiele. Gibt auch Landschaft Generatoren die dann die entsprechenden Dateien ausspucken. Und dann könnte man in einem Editor Feintuning machen.

    Interessant, für eine Analyse des Problems wäre es vielleicht gut wenn man das Szenario auf verschiedenen Servern versucht nachzustellen. Sprich man müsste mal 1-2 andere Server nehmen und dort mit 10+ connecten und vergleichen, ob dort die selben Probleme auftauchen. So würde ich jetzt erst einmal an das Problem heran gehen. Auf meinem Server waren bisher max ~ 8 gleichzeitig eingelogt und es hat noch keiner einen "Durchfall" durch die Welt gemeldet, zumindest nicht was Spieler betrifft. Pferde landen schon mal auf dem Dach, sind wohl auch schon mal verschunden, Spieler aber nicht.


    Die Peaks mit 2k ping für sehr kurze Zeit sind mir aber auch schon 1-2 mal unter gekommen, obwohl mein Server sich zur selben Zeit gelangweilt hat (habe meisst htop auf meinem zweiten Monitor mit laufen, wenn ich spiele)

    So 0.6.1 ist raus. Habe nicht viel Geändert, wer 0.6.0 hat braucht nicht wirklich updaten. Das Projekt ist jetzt auch ein Maven Projekt damit ich es mit vs.code weiterentwickeln kann zukünftig. Das Jar file hat einen anderen Namen daher beim update aufpassen ;).


    Da die Nachfrage aktuell eher gering ist, habe ich erstmal beschlossen an meinem 3. Plugin zu arbeiten, statt weitere features einzubauen. Sobald das irgendwie ansatzweise bereit ist, gibt es dazu auch ein entsprechendes Thema. Und sollte die Nachfrage steigen, gibts auch mehr features ;) (Direkt-Nachrichten, Offline-Nachrichten, Kanäle speichern in denen man beigetreten ist, ...z.B.)

    Mir sind auch schon Dinge verschwunden während ich sie aus meiner Truhe geholt habe. Ich glaube ich habe jetzt einen Weg gefunden dies zu reproduzieren.
    Ich hatte dabei einen Knopf gesucht (alt,strg,shift) um einen Stapel zu teilen, beim wilden hin und her sind mir Dinge abhanden gekommen. Ich habe das dann mal "langsam" gemacht und konnte jetzt folgendes feststellen:


    Normalerweise nutze ich SHIFT um schnell dinge in oder aus Kisten ins Inventar zu schieben. Wenn ich aber jetzt einen Gegenstand per Maus vom Inventar in die Kiste lege und dann direkt versuche mit SHIFT diesen Gegenstand wieder ins Inventar zu schieben, ist er weg. Kann das jemand verifizieren?

    Das Projekt im Github ist jetzt auf version 0.8.3, es hat sich aber nichts funktionales getan daher habe ich kein build zum download hinzugefügt. Ich habe das Projekt lediglich in ein Maven Projekt konvertiert, so das ich jetzt statt NetBeans in VSCode weiterentwickeln kann. (Hab's jetzt endlich zum laufen bekommen) Werde meine anderen Projekte auch noch konvertieren und zukünftige dann gleich als Maven Projekt starten.


    Das ganze ist dann auch für interessierte (weiter)-Entwickler gut, da die Abhängigkeiten nicht noch irgendwo konfiguriert werden müssen.

    So Nachtrag: (war vorhin nur kurz am Handy, war den ganzen Tag unterwegs...) wäre damit schon längst fertig geworden aber Weihnachten rum ist einfach stressig. Hatte kaum Zeit die Tage :D meine kleine Tanzt hier auch noch rum, morgen wird ihr 1. gefeiert (war am 25.) ... werde mir gleich noch etwas von der Nacht gönnen um am Plugin weiter zu basteln ;)


    Gerstern war ich zumindest soweit das ich das Plugin per WebSocket mit meinem NodeJS WebSocket Server verbinden konnte (nachdem ich socket.io rausgeworfen und das ws package stattdessen genommen habe,... arbeite bisher sonst nur mit socket.io auf der Arbeit aber da scheint irgendwas nicht zu funktionieren mit dem Java Websocket zusammen)


    Bezürlcih des Direktnachrichten Formats dachte ich da an

    Code
    #@SpielerName [Text]

    dazu muss der Spieler dann aber mindestens einmal dem System bekannt gewesen sein um die Nachricht richtig zu adressieren. Und für Direktnachrichten werde ich wieder 2 neue Textfarben einführen die sich von den anderen Unterscheiden.

    Huhu,


    für ein etwas größeres Projekt würde ich gerne die Karten-Daten der Spieler sammeln während sie diese erkunden. Deshalb wäre es cool wenn man per API den Client nach den Kartendaten (Bilder) des aktuellen chunks befragen könnte (könnte man dann triggern wenn der Spieler einen neuen chunk betritt) Auf dem Client könnte man in den Optionen ja sowas wie "Server erlauben Karten-Daten zu erfragen" einfügen mit denen man als Client bestimmen kann ob diese gesendet werden dürfen oder nicht.
    Red hatte mir bereits gesagt das die Karten nur clientseitig erstellt werden, daher müßte man da irgendwie ran ;)


    // -------------
    Hello,


    for a litte bigger sized project i would like to collect all that ingame-map data while players discover new lands. For this reason i would like to have an API call that requests those (image) files from the client (for example when he runs into a new chunk). On the clientside there could be an option to turn this on or off like "Allow server to request ingame-map". Red has already told me that those maps are only generated on the client, so there must be some way to fetch these ;)

    Ich stöber gerade durch die API Threads und bin auf diesen hier gestoßen. Ich hatte ja bereits eine Ähnliche Idee und dazu folgende Gedanken:


    A) Es wäre cool per API eine art Server-wechsel durchführen zu können. (player.warpTo(Host,endpoint?) [endpoint würde eine koordinate zum spawnen auf dem Zielserver sein]
    Erweitert könnte dann an einem "Portal" als Beispiel (Als Admin) Adressen hinterlegt werden zu denen man dann wechseln kann, ala Stargate.
    Darauf aufbauend, wäre dann natürlich gut wenn man an einem Portal auf der Gegenseite raus käme.
    Zum Schluss müsste man dann noch sein Inventar zwischen den Welten mitnehmen können. Letzteres Würde aber eine art Middleware Server verlangen wo die Charakterdaten gespeichert wären.


    B) Um mehrere Server zu verbinden könnte man auch die selbe Datenbank für Charakterdaten nutzen, die müsste dann aber die Spielerposition pro Server speichern.


    C) Mit einer generell anderen Datenbank wie z.B. MongoDB könnte man auch eine art server cluster realisieren (denke ich) Sollten sich 2 Spieler A und B auf unterschiedlichen Servern befinden aber am selben Ort, würde der eine Server den chunk speichern, und der andere über changestream sofort über die Änderung informiert werden. Einzig die Spieler/NSC Synchro wäre denke ich etwas aufwendiger.

    Ich werde mal versuchen die direkte Datenbankanbindung durch WebSockets zu ersetzen als nächstes.
    Damit kann ich dann auch private chat-Räume, Mail Postfächer oder ähnliches realisieren. Zum Beispiel das man die Räume speichern kann, denen man beigetreten ist oder die Anzahl der user die sich im Raum befinden.
    Hoffe es bleibt dann genau so Echtzeit wie aktuell ;)

    ok ich hab die datenbank neu aufgesetzt und dabei den port auch vom standardport auf 47017 geändert. Der kleine Fix kann im ersten Beitrag auch heruntergeladen werden. Sollte dann jetzt aber funktionieren.


    Werde demnächst noch einen Befehl einbauen der den Verbindungsstatus zurück gibt falls der Server keine Verbindung zur DB hat