Posts by red51

A new update is now available, introducing "Points of interest" and many more changes!
Latest hotfix: 0.9 (2025-11-05)

    Thanks for the log files! Since you're able to join multiplayer servers, it's probably not related to the graphics card or memory or something like that... according to the log, there are some Lua scripts in use apparently? Although it seems like they were not loaded properly... please try to remove the "scripts" folder from your game directory (or rename it to "_scripts") and try to load/create a world again. Does it work then?

    Andere NPC habe ich noch nicht getestet aber ich dachte das die NPC Abstand von Wasser nehmen.

    NPCs (also sowohl der Dummy als auch Tiere) halten sich zwar tendenziell vom Wasser fern, allerdings hält sie nichts explizit davon ab, ins Wasser zu gehen... das wird sich erst im Zuge dessen ändern, wenn die KI generalüberholt wird ;)


    1. Doppelt einfügt (siehe Bild)

    Handelt es sich dabei evtl. um einen alten Blueprint? Damals wurden aufgrund eines Fehlers manche Objekte in einem Blueprint doppelt gespeichert, allerdings dürfte dieser Fehler mittlerweile eigentlich behoben sein (jedoch betrifft das nicht alte Blueprints)... durch die doppelt platzierten Elemente kommt das Spiel leider an manchen Stellen durcheinander, daher das Kollisionsproblem, aber auch die (harmlose) Meldung im Log.


    Und zum Schluss: Ich habe auch einen Fehler erhalten:

    Die Meldung "Connection reset by peer" besagt im Grunde nur, dass die Gegenseite die Verbindung geschlossen hat. Wenn du diese Meldung im Serverlog gesehen hast bedeutet das, dass der Server ein RST Packet vom Client erhalten hat, bzw. wenn die Meldung beim Client auftrat, kam das RST Packet vom Server. Generell ist das nicht besorgniserregend, das kann viele Ursachen haben, bspw. wenn der Client das Spiel beendet oder den Prozess killt. In manchen Fällen haben sich auch Firewalls oder Antivirenprogramme als Übeltäter erwiesen.

    Leider gibts derzeit keine Möglichkeit, das Logging des Servers umzustellen :/ Aber über die Plugin API ist es möglich, besimmte Events abzufangen und entsprechende Log-Ausgaben auszugeben. Ich habe da noch so ein altes Logging Plugin rumfliegen, welches zumindest Zerstörungen ausgibt (wenn also ein Spieler Blöcke zerstört oder Erde abbaut). Das deckt wirklich nur einen Bruchteil der möglichen Events ab und ist vmtl. nur ein Tropfen auf dem heißen Stein, bei Interesse kann das aber erweitert werden. Ich hab das Plugin mal hier hochgeladen mit Sourcecode (zur Installation einfach die "Logging.zip" herunterladen und den darin befindlichen Ordner in den "plugins" Ordner im Serververzeichnis entpacken) ;)

    Files

    • Logging.zip

      (2.25 kB, downloaded 474 times, last: )
    • Logging_Source.zip

      (2.53 kB, downloaded 419 times, last: )

    Hmm... du hast recht, im Singleplayer wird kein PlayerConnectEvent getriggert =O Was zwar einerseits logisch ist, andererseits aber auch kontraproduktiv :D Wir werden das auf jeden Fall mit dem nächsten Update ändern (bei "rp" funktionierts übrigens, weil dort das PlayerConnectEvent zwangsweise manuell getriggert wird)


    Als Lösung könntest du entweder tatsächlich das PlayerSpawnEvent verwenden (das ist genauso gut wie das PlayerConnectEvent), oder du lädst deine Welt über den roten LAN Button (bzw. der grüne P2P Button müsste es eigentlich auch tun) ;)

    Hmm... also im zweiten Log scheint der Seed das Problem zu sein: Der Apostroph bringt die Weltdatenbank durcheinander, wodurch der Seed nicht korrekt gespeichert wird. Dummerweise wird trotzdem beim erstmaligen Laden der problematische Seed verwendet, d.h. die Welt wird erstmal nach diesem Seed generiert. Alle Chunks, die du bearbeitest, werden also in ihrer aktuellen Form auch so in der Datenbank gespeichert. Lädst du nun die Welt erneut, kann der gespeicherte Seed nicht ausgelesen werden, d.h. es wird standardmäßig ein leerer Seed (bzw. 0) verwendet. Dadurch allerdings werden alle Teile der Welt, die das Spiel neu generiert (d.h. alle Chunks, die noch nicht bearbeitet wurden), nach diesem neuen Seed generiert, was dann zu den Unterschieden bzw. den Lücken zwischen den Chunks führt (also zw. neuen Chunks und alten Chunks, die bereits beim ersten Mal gespeichert wurden)... :(


    Wir werden das Problem beheben, also insofern dass Sonderzeichen nicht akzeptiert oder automatisch entfernt werden (leider können die alten Welten aber nicht bzw. nur mit viel Aufwand repariert werden - das würde sich also nur lohnen, wenn die Welt bpsw. viele Bauwerke enthält. In dem Fall kann ich dir sagen, wie du vorgehen musst).


    Ansonsten verwende beim Erstellen der Welt beim Seed am besten keine Sonderzeichen bis das Problem behoben ist.

    Momentan spawnen nur Tiere in der Welt ;) Mit dem vorletzten Update kamen zwar "Dummy-NPCs" rein, diese sind aber derzeit nur per Command spawnbar, d.h. die findest du noch nicht in der Welt. Um einen NPC zu spawnen, musst du spawnnpc dummy in die Konsole eingeben (er trägt dann die selbe Kleidung wie du). Mit dem Befehl editnpc (während du den NPC anguckst) kannst du sein Aussehen editieren, und mit locknpc kannst du dafür sorgen, dass er nicht davonläuft.


    "Richtige" NPCs (welche also natürlicherweise in der Welt spawnen) sowie Monster (nach derzeitigem Stand voraussichtlich aber wohl nur in Dungeons und der Hölle) werden künftig aber noch dazu kommen :)

    dieses Licht (siehe Bild) kann man in einer bestimmten Richtung nicht an die Wand platzieren.

    Eigentlich dachte ich wäre dieses lästige Problem behoben =O Ich prüfe das mal nach!


    Verschiedende Spieler können anfragen senden und annehmen, ABER sie bekommen danach keine Gruppenmitglieder angezeigt... weder den Ring noch den MapPunkt

    Das ist merkwürdig... der Ring wird aber nur angezeigt, wenn man sich etwas weiter weg bewegt vom Spieler. Ich prüfe aber mal nach, was da los ist. Passiert das nur, wenn mehrere Spieler in die Gruppe gehen, oder ist das auch bereits bei 2 Spielern der Fall?


    Da fehlt ein Bild in der Mitte

    Stimmt, in der dt. Übersetzung fehlt leider die Beschreibung. Das wird im nächsten Update behoben ;)


    Bei mir lässt sich das Crosshair, wenn ich es im Spiel zu ändern versuche, nicht speichern.
    Ich muss es jedes Mal von neuem ändern.

    Ich prüfe das mal nach!


    Ob die Einstellung bows_hide mit dem Bauen etwas zu tun hat, weiß ich nicht, ich lasse die Config jetzt erst einmal so stehen.

    Die Einstellung besagt nur, ob das Fadenkreuz bei der Verwendung von Pfeil&Bogen sichtbar sein soll oder nicht ;)


    mir ist aufgefallen, dass die Schwimmanimation seit dem letzten Update nicht mehr richtig funktioniert (Charakter taucht immer wieder ein). Ist das bei andern Spieler genauso? Oder nur bei mir?

    Ich glaube, es war zuvor keine Schwimmanimation drin, und mit dem letzten Update ist sie wieder reingerutscht... das müssen wir noch korrigieren.

    Well, I'm not sure if adding support for Metal is a good thing at this stage :( There are only few Mac players, so instead of adding support for metal (which requires a lot of work), it probably makes more sense to work on Vulkan support (far more players benfit from Vulkan support than from Metal support).


    However, even Vulkan support isn't planned at this stage (it's only supported by newer hardware, and probably we won't see huge fps improvements in most cases), especially since it also requires a lot of work (and I'm afraid most people won't be happy if we spend 2 months implementing Vulkan support, which gives a performance boost of 5 fps at the end of the day) =O

    The main point I initially wanted to raise was that such a totally generic player renaming method would be very easy to abuse; I for one would be very upset if I find my character renamed on a server; not to mention that it could be renamed to something offensive (or that I consider offensive) or rude or...

    Hmm... good point! That's indeed an issue... although I don't know if a plugin (or a server) is really going to abuse it (probably players will leave a server anyway if it's messing around with their names, especially in an abusive way). On the other hand, there might be some valid cases where a name change makes sense, e.g. a "reallife server", which assigns a real name to the player (i.e. first name + last name)...
    But I'm not sure if the advantages really outweigh the possible risks :|


    tbh I would prefer the suggested version of player.trimName()

    I'm not sure about that... it feels like a workaround for an issue that needs to be addressed anyway :D Instead of removing whitepaces, I'd prefer to replace them by underlines anyway (replacing "I am a rw player" by "I_am_a_rw_player" looks better than "Iamarwplayer")^^


    Maybe we have to look for other solutions. If changing the player name isn't a good idea, maybe it makes sense to restrict whitespaces by the game again (so they will be replaced by underlines or something like that automatically). Or maybe a new function for the PlayerCommandEvent which returns the individual arguments of the command (so you don't have to use "split()" anymore), but takes characters like " or ' into account (so you could use sth like "/command 'I am a rw player' param1 param2").

    Die Beschreibung ist leider etwas irreführend (die stammt aber aus Google Translator, oder gibts iwo eine inoffizielle dt. Übersetzung?) ;) Grundsätzlich gibt minDistance an, dass innerhalb dieses Umkreises der Sound nicht mehr lauter wird, wenn man sich der Soundquelle weiter nähert. D.h. von der Soundquelle ausgehend bleibt der Sound bis zu minDistance gleich laut. Ab maxDistance wird der Sound nicht mehr leiser, d.h. ab diesem Punkt bleibt das Lautstärkeniveau gleich, auch wenn man sich weiter entfernt.


    Wir haben das "Rolloff Model" aber zwischenzeitlich geändert. Ursprünglich war es so, dass der Lautstärkeabfall einem global festen Wert gefolgt ist, sodass es sinnvoll war, maxDistance auf einen sehr hohen Wert zu setzen (zB 10000). Darauf bezieht sich auch das Javadoc. Hier hat man lediglich über minDistance Einfluss nehmen können. Wir verwenden nun aber einen linearen Rolloff, sodass die Lautstärke zwischen minDistance (max. Lautstärke) und maxDistance (stumm) interpoliert wird. Wir müssen die Dokumentation noch dahingehend anpassen (bei der Sache ist mir auch ein Fehler bei stopSound() aufgefallen, der im nächsten Update gefixed wird) ;)


    Lange Rede kurzer Sinn: Ignoriere die Dokumentation an der Stelle und betrachte "minDistance" als den Umkreis, bei welchem der Sound gleichbleibend die Lautstärke hält, und "maxDistance" als den Umkreis, ab welchem der Sound nicht mehr hörbar ist. Dazwischen wird die Lautstärke interpoliert.

    Normalerweise wird die Gruppe automatisch erstellt, sobald du jemanden einlädst und dieser die Einladung annimmt ;) Wenn du also jmd. in eine Gruppe einlädst, erhält dieser eine Meldung ob er beitreten möchte. Diese muss er mit Y bestätigen, danach seid ihr beide eigentlich in einer Gruppe (was relativ unscheinbar ist, der andere Spieler ist dadurch lediglich auf der Karte [M] markiert und auch wenn man sich ein paar Meter voneinander entfernt, zeigt ein 3D Marker die Position des anderen Spielers an)

    Danke für das Video! :) Das ist tatsächlich ein merkwürdiges Phänomen... ist das eine alte Welt, oder hast du sie ganz neu erstellt (oder ggf. aus alten Weltdaten rekonstruiert)? Passiert das nur mit dieser einen Welt, oder auch mit anderen Welten? Auffällig ist, dass zu der Welt offenbar kein Seed gesetzt ist (oder der Seed evtl. nur aus einem Leerzeichen besteht) oO Hast du schonmal was an der Welt-Datenbank geändert?


    Evtl. könntest du probieren, den "cache" Ordner im Spielverzeichnis zu löschen. Passiert das ganze auch bei anderen Welten? Leider kann ich den Log nicht öffnen (der dürfte in dem Fall tatsächlich von Interesse sein), kannst du ihn ggf. nochmal hochladen?

    Es felt leider doch noch eine Methode:
    event.setLineColor(int line, int color)

    Wird im nächsten Update hinzugefügt :thumbup:


    Wird bei event.setText() die Farbe aller Zeilen geändert, wenn ich einen Farbcode davor schreibe?

    Ja, bei setText() wird der gesamte Textinhalt geändert. D.h. du musst hier sämtliche Farbcodes und Zeilenumbrüche berücksichtigen und ggf. manuell wieder einfügen :/ Um den ursprünglichen Text im "Rohformat" zu sehen (also mit Zeilenumbrüchen und Farbcodes), kannst du getRawText() verwenden.

    Sorry for the late response! I put that on my list, but I have to check out first if name changes on the fly really do not cause any trouble for the server. Since the hive update in February, the user name no longer matters (although most game commands still use it, but that shouldn't matter), so basically that should work.


    Unless I find some serious issues with the name changes, a player.setName(String) method will be available with the next update :)


    In the medium run, we will probably also add another way to execute certain commands. Maybe by rightclicking on the player name in the scoreboard or something like that^^

    As @Minotorious said, there is basically no way to change the object status unfortunately. Although this isn't entirely true: almost everything can be done through the plugin API by using Reflection (at least as long as the game already supports this). By using Reflection, you get access to all game classes so you could change something there manually. However, it's quite tricky to do that, since you have to examine the source code of the game/server for this and understand how things work.


    Nevertheless, we will add a changeObjectStatus() method to the World class in the next update :)

    A new hotfix (0.9.3.3) is now available! It's necessary to update multiplayer servers accordingly. We also updated the plugin API, please find the latest changelog here: API Changelog 0.9.3.3
    If you still experience any issues, please let us know :)


    Hotfix 2018-06-04 (0.9.3.3):

    • [New] Added setting to change crosshair ("view settings")
    • [Change] Head lamp (L) can now be turned on/off while riding on a mount
    • [Change] Reduced storage slots of barrels (number of slots was increased accidentally with last update)
    • [Change] Changed warhammer and miningdrill sound
    • [Change] Whitelist/blacklist for multiplayer servers now also support format "name:uuid"
    • [Bugfix] Fixed collision of doors (you can open/close them correctly now)
    • [Bugfix] Fixed signs not being saved correctly if the text was set by a plugin
    • [Bugfix] Fixed wrong zoom in first person view
    • [Bugfix] Fixed some missing sounds
    • [Bugfix] Fixed horse idle/hurt sound range