Posts by red51

A new update (0.9.2) is available now!
Latest Hotfix: 0.9.2.1 (2026-05-13)

    EN: Basically it's up to the plugin creator if he wants to share his source code or not. There is a "License" field in the plugin.yml file which can be used to set up a proper licsense. Personally I'd recommend to use a permissive free license like the MIT or BSD license. Releasing the source code is basically always helpful, but as said, it's up to the plugin creator. I understand if someone does not want to share his code. "Stealing" someones code is definitely a no-no. Unfortunately there is no reliable way to protect Java code, but you could use an obfuscator (e.g. ProGuard) which makes the code a lot harder to read. Rising World itself is mostly obfuscated, although this does not affect to the whole code (for various reasons).


    I'm not sure if the legal situation is really helpful in this case, since it seems to be overkill if someone really decides to sue another user just because he checked out the plugin source code. If someone finds out that his plugin code was "stolen" by another user, I'd recommend to contact us, since we won't tolerate that. But if someone just checked out the plugin code to see what happens there or to find an error maybe, it's ok in my personal opinion. As mentioned, if you don't want this, set up a restrictive license and use an obfuscator, this prevents most users from reading the plugin source code ;)



    DE: Im Grunde liegt die Entscheidung beim Plugin-Ersteller, ob er seinen Sourcecode freilegen will oder nicht. In der plugin.yml Datei gibts ein "License" Feld in welchem eine entsprechende Lizenz festgelegt werden kann. Persönlich würde ich dort eine eher freizügige Lizenz wie die MIT-Lizenz oder BSD-Lizenz empfehlen. Den Sourcecode zu veröffentlichen ist grundsätzlich immer hilfreich, aber wie gesagt, letztenendes ist das die Entscheidung des Plugin-Erstellers. Ich verstehe es, wenn jemand seinen Code nicht freigeben möchte. Jemandes Code "stehlen" geht zumindest absolut gar nicht. Leider gibt es keinen zuverlässigen Weg, Java Code zu schützen, aber man kann einen Obfuscator benutzen (zB ProGuard) um die Lesbarkeit des Source Codes drastisch zu erschweren. Rising World selbst ist größtenteils obfuscated, allerdings betrifft das nicht den gesamten Code (aus verschiedenen Gründen).


    Ich weiß nicht, ob die rechtliche Situation der Sache wirklich hilfreich ist, da es schon ziemlich extrem ist, wenn jemand einen anderen User verklagen möchte nur weil er Einblick in den Sourcecode des Plugins genommen hat. Wenn jemand herausfindet, dass sein Plugin Code tatsächlich von einem anderen Nutzer "gestohlen" wurde, würde ich empfehlen, uns zu kontaktieren, denn wir würden sowas nicht tolerieren. Aber wenn jemand nur kurz ins Plugin geschaut hat nur um zu sehen was dort eigentlich gemacht wird oder um evtl. einen Fehler zu finden, ist das ok meiner persönlichen Meinung nach. Wie gesagt, wenn man das nicht möchte, sollte man einer eher restriktive Lizenz festlegen und einen Obfuscator verwenden, das hält die allermeisten User davon ab, Einblick in den Source Code zu nehmen ;)

    Das ist leider ein Bug, das wird im nächsten Update behoben :) Bis dahin kannst du das Fadenkreuz manuell wieder zurücksetzen, indem du im Spielverzeichnis die "config.properties" Datei mit einem Texteditor öffnest (das Spiel darf währenddessen nicht laufen) und den Wert hinter "game_crosshair_type" entfernst (also auch kein Leerzeichen zurücklässt oder so), sodass da nur noch steht game_crosshair_type= (oder altenativ kannst du die ganze Zeile löschen). Speichere die Datei, und starte das Spiel erneut, jetzt dürfte wieder das alte Fadenkreuz an Ort und Stelle sein ;)

    Sorry for the late response! =O


    The world generation speed mainly depends on your hardware. Usually reducing the view distance (and especially detail distance) improves the situation. If the world loads extremely slow even if you have a good CPU, this might be related to the hard drive - the game constantly reads/writes to the hard drive, and if this takes too long, it slows down the game (or mor precisely, the world generation speed).


    Maybe you can create a log file, to do that, go to your game directory, open the config.properties file with a text editor and set "game_debug_console" to true. Now start the game and play until the issue occurs a few times. Quit the game and go into the "Logs" folder in your game directory. Please upload the latest logfile here (or send it via PM) :)

    Danke für den Log! Es scheint so, als wenn ein Tier mit ungültiger Variation gespawnt wurde... ich werde das Problem mit dem nächsten Update beheben, bis dahin könntest du deine Welt evtl. reparieren, indem du die letzten Tiere einfach aus der Weltdatenbank löschst (möglicherweise ist da das Tier dabei, welches die ungültige Variation hat) ;)

    Tatsächlich wäre die sinnvollste Lösung, eine neue Welt mit dem gleichen Seed zu erstellen ;) Diese müsste dann (sofern es sich nicht um eine sehr alte Welt handelt) genauso wie die vorherige Welt aussehen (nur ohne die Eingriffe des Spielers) ;)

    Tatsächlich gibt es - wie @lenko schon sagt - zwei verschiedene Nebelsorten: Ein "normaler" Nebel sowie ein extrem dichter Nebel (wie auf den Bildern). Der dichte Nebel entsteht allerdings sehr selten und ist meist auch nur von kurzer Dauer.


    Dass Nebel in Gebäuden auftritt ist ungewollt aber leider technisch bedingt. Das zu verhindern ohne die Gesamtperformance merklich zu schmälern zieht leider einen Rattenschwanz hinter sich her. Es ist aber auf jeden Fall auf unserer "Todo-Liste", leider kann ich noch nicht sagen, wann genau das behoben wird...

    The only issue when spawning a new process from within the JVM is that it's treated as a child process. This means if the JVM is closed, all child processes will be killed as well :/ You can add shutdown hooks to the JVM though (and start a new process there), but they're still affected by the death of the JVM (it kinda works on Windows but becomes very awkward on Linux)...

    Es gibt leider keine 100% akkurate Antwort, da die Erzvorkommen nochmal leicht durchmischt werden bei der Welterstellung, wodurch es passieren kann, dass tieferliegende Erze etwas nach oben wandern und umgekehrt. Grundsätzlich sind aber folgende Tiefen für einzelne Erzsorten festgelegt:


    Kohle / Coal-704 ⇹ +64
    Eisen / Iron-640 ⇹ 128
    Kupfer / Copper-256 ⇹ 256
    Silber / Silver-576 ⇹ 0
    Gold-704 ⇹ -192
    Wolfram / Tungsten-512 ⇹ -0
    Aluminium / Aluminum-64 ⇹ 256
    Schwefel / Sulfur-768 ⇹ -448
    Mithril-768 ⇹ -512

    Sättel werden quasi als Kleidungsstück behandelt, leider gibts noch keinen Weg, die Kleidung eines Spielers oder Npc zu ändern... es ist aber auf unserer Liste ;)


    Wie bekomme ich den Eigentümer eines gesattelten Pferdes heraus? ^^

    Es gibt keinen "Eigentümer" in dem Sinne, zumindest wird das Reittier keinem Spieler zugewiesen (nach Aufsetzen eines Sattels kann jeder das Pferd reiten). Du könntest allerdings anhand des PlayerMountNpcEvent prüfen, welcher Spieler sich zuerst auf ein Pferd setzt und ihn einfach als Eigentümer ansehen. Die Logik dahinter muss dann allerdings vom Plugin kommen... es ist zwar vom Spiel her pro Npc ein "Owner" vorgesehen, dieser Wert wird aber noch nicht verwendet^^


    Falls du allerdings nur prüfen möchtest, wer momentan auf dem Pferd sitzt, könntest du das über Npc.getRider() machen (die Funktion liefert ein universelles "Object" zurück welches dann zu einem "Player" gecasted werden muss).

    The setting "settings_deadnpc_despawntime" only determines when the dead horse body despawns (in seconds). Once a mount dies, you can get the saddle (and saddle bags) back from his dead body. If there were items in the saddle bags, you find these items also in his dead body. But once the body despawns, there is unfortunately no chance to get the items back.


    If you set the despawntime to -1, the body will never despawn (unless the server restarts). However, this affects all dead animals, so this might clutter the server over time. It's recommendable to use a value like 300 (5 minutes) or 600 (10 minutes) etc ;)

    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

    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.