Posts by Devidian

    I too am looking for someone to create some plug ins. I am using ChatGPT to create the code but I just need it compiled. I downloaded Java JDK 17 like it said, but it just went into the Java file with no instructions on how to execute it to copy/paste the code. I will dig a little deeper tomorrow but maybe someone knows better. I also tried "NetBeans" but looking at that to me is like looking at a chalk board of Einstein's calculations. I will do some you tubing on the matter and see if I can learn by the end of this year.

    Just a notice from my side, for RW you should use Java 20 as the unity api version uses 20. It also has a shipped version of Java 20.

    I'm not a Java developer per se but i've used NetBeans at university while the "real" Java developer used Eclipse. I never liked Eclipse and i was familiar with NetBeans that time because i privately coded PHP in NetBeans. Nowadays i only use VSCode for everything, even for RW Plugins.


    Feel free to have a look at my Plugins on GitHub they are public and you can see the code. I have a template like repository too, that i use for new Plugins, but it forces everyone using it to also require to use my tools plugin (unless you remove everything related to tools) , feel free to start with it as a base if you like. if you use GPT anyways it might know what to do and how to implement your code.
    You find it here: https://github.com/Devidian/rw-plugin-maven-template

    I have recently updated it to work with agents, as i currently have to learn how to work with agents :D

    ok bugs gefunden:

    player.getCurrentArea();


    ist scheinbar null wenn man eine zone gerade erstellt hat (oder erweitert, selbes prinzip) man muss sich erst ein stück bewegen damit man wieder in der zone steht. Aktuell sort das dafür das man nicht ins richtige Menü zurück kommt nach dem erweitern. Ich habe das jetzt in 0.7.2 gefixt.
    Sonderzonen zählen jetzt auch nicht mehr als claim. Vorhandene sonderzonen müssen einmal erweitert werden, dann wird der claim gelöscht und die anzahl der claims sollte wieder stimmen (auch wenn ein admin vielleicht eh keins hat, einfach aus prinzip)

    Ein paar Viseuelle bugs gibt es noch, ich mächte aber nicht wieder Server.getAllAreas verwenden da das beim letzten mal Probleme machte (dafür war immer alles wie es sein sollte :D :D) Ich hoffe das red das evtl auch mit fixt oder gefixt hat im nächsten update.

    red51 mir ist gerade aufgefallen das player.getCurrentArea auch keine area zurück liefert wenn diese gerade erstellt wurde, erst wenn ich mich kurz bewege stimmt es wieder. Das hat zu einem bug geführt wenn man bei meinem plugin seinen claim erweitert hat kam man nicht mehr in das menü zurück um sofort weiter zu erweitern. Vorher als alles über Server.getAllAreas lief gab es das problem nicht. Ich habe jetzt einen workaround zumindest für das Menü gemacht und gebe die erweiterte zone wieder über den callback zurück. Wenn die zone als parameter gesetzt ist nimmt er diese statt player.getCurrentArea

    Mir sind noch ein paar Bugs aufgefallen die mit meinem fix von 6.1 zu tun haben können. Wenn man zonen erweitert (zumindest beim admin) ist man immer ausserhalb der zone danach (oben steht kann geclaimed werden...) und mir ist aufgefallen das er die sonderzone auf mein claim limit gecounted hat, zumindest während der session. Werde mir beides näher ansehen die tage.

    Version 0.7.0 is live!

    Main feature: set permissions for offline players!

    Offline players now appear in the permission list, the admin can set the time when the player must have been online last to appear in the list (default 24h) can be set in plugin settings as always


    Changelog


    ## [0.7.0] - 2026-03-11 | Area permission activity list

    - docs: standardize agent prompts, PR checklist, and runtime smoke-test guidance
    - build: add API verification helper and stricter CI/release validation flow
    - feat: include recently online players in the area permission list via configurable Players-DB lookup
    - feat: show online or offline status in the area permission table
    - build: package only `README.md` and `HISTORY.md` into release artifacts

    - refactor: used `player.getCurrentArea();` where possible [0.6.1]
      - this will reduce Server.getAllAreas calls
    - fix: impossible to claim because `null` area results in false for singleChunkCheck [0.6.2]
    - fix: wrong area used for claim method (`null` area from `uiPlayer.getCurrentArea();`)

    BREAKING: this release requires OZTools `>= 0.17.0`

    A new version has appeared! v0.20.0 has only small changes but i included some AI agent configs for my development - as i am forced to use ai at work to develop new stuff i will use it for my hobby developments too, so i can earn more xp in using them - that doesnt mean i let them code everything :D

    Besides that the default chat prefix and discord chat syntax have changed. They now have a the new placeholder **PH_LANGUAGE** included. If you dont like to see the players system language just remove it from your settings.

    I thought it would be helpful to see the players system language in chat so everyone can react in the users native language if hes able to do so.

    Changelog


    ## [
    0.20.0] - 2026-03-10 | Player-System-Language in Chat

    - feat: new placeholder for chat to discord `**PH_LANGUAGE**`
    - feat: new placeholder for chat-prefix ingame `**PH_LANGUAGE**`
      - replaced with the players system language
    - feat: new setting `useShutdownNotRestart` executes shutdown not restart if true (default=true)
    - fix: aligned `en` and `ru` translation files with the German source texts
    - feat: added French translation file `fr.properties`
    - build: copy only `README.md` and `HISTORY.md` into `dist`
    - fix: aligned `settings.default.properties` with all active plugin settings and code defaults

    Hey, den Fehler hab ich auch schon weitergeleitet in gewisser weise, red hat ihn glaube ich auch schon gefixt und sollte mit nächstem Update weg sein.

    Okay soweit ich das herausgefunden habe ist die *.biomes ein 256x256 bild wie dieses:


    und die *.tile ein 1024x1024 wie dieses.



    Aber ehrlich gesagt hab ich keinen Schimmer wie ich daraus jetzt ein Bild für ne Karte mache 😅

    Also das was SonoBionda meint, fällt mir immer nur wieder auf, wenn ich in einer Area stehe und diese lösche, sagen wir mal "Devidian's Home" dann laufe ich in die Area "SonoBionda's Home" und bin in ihrer Area mit den dortigen Rechten, wenn ich aber wieder raus laufe bin ich nicht in "Wildnis" sondern wieder in "Devidian's Home". Wildnis gibt es quasi nicht mehr für mich, bis ich neu einlogge. Vielleicht muss ich mal ein YT Video dazu machen.

    Hey red51,

    der Einfachheit halber in deutsch ;).
    Aktuell stellen wir die Frontend-Entwicklung in unserer Firma etwas um und lassen das Frontend von einer KI entwickeln. Um mit der KI ein wenig zu testen wollte ich einen kleinen Server-Manager für RW bauen, bei dem man die Query url also z.b. http://gs1.omega-zirkel.de:4254/ (http://82.165.51.138:4254/) in meinem Fall, hinzufügen kann um dann den Serverstatus und mehr zu sehen.

    Dabei ist mir aufgefallen das keine CORS header gesetzt sind, wäre das möglich diese zu setzen? gerne als server property. Cool wäre auch wenn man optional ein ssl Zertifikat hinterlegen könnte, klar kann ich einen nginx davor schalten der beides handhabt aber vielleicht wird der manager ja mal zu einem richtigen Projekt auch für andere (mit online map z.b.) daher wäre es gut wenn der "normale" server owner so wenig wie möglich zusätzlichen Aufwand betreiben müsste.

    PS: Sind die routen unter /game eigentlich schon implementiert? Gibt es dazu irgendwo eine info? Ich bekomme nur 403 mit dem Error WrongPasswordException 😅

    Hey, would it be possible to somehow implement a new category in the permissions for plugins? For example


    Code
    {
    "plugins":{
    "allowgps": true
    }
    }

    I know it could be complicated when it comes to type checking but maybe there could be a workaround like prefixes, for example b_allowgps or i_privatemarkerlimit


    I think this could be awesome for some plugins to define stuff for different permission groups or areas.
    For example i could imagine a market plugin that only works in a desired market area(s) on one server but is allowed everywhere on another server but not for default-permission players. Sure the plugin could come with its own area logic but then every plugin has to manage this on its own.

    I was thinking about using area_create permission to determine if players can use my landclaim plugin to claim a chunk but i dont know if this will one time allow players to create some sort of vanilla area without area tools from creative. I want to prevent this and so i thought it would be nice to have permissions for plugins.

    Ja das mit den Permissions der Areas stimmt. Wenn man eine Area löscht in der man sich gerade befindet, bleiben die aktuellen permissions bestehen. Auch wenn man respawned hat man noch die permissions aus der zone in der man gestorben ist, ist mir zumindest öfter mal aufgefallen.

    Hmm also eigentlich war das hauptsächlich dafür gedacht beim erstellen zu prüfen ob eine existierende area, z.b. eine über F9 erstellte oder von einem anderen Plugin erstellte bereits den aktuellen chunk berührt oder im Fall das man einen claim erweitert wird der chunk geprüft in dem die area erweitert werden soll. Und wenn dem so ist sollte das erstellen oder erweitern unterbunden werden. Ja man kann Areas wieder löschen, die Methode verwendet aber dann diese Methode nicht, allerdings glaube ich das ich weiss worauf du hinaus willst, wenn jemand eine area löscht während getAllAreas ausgeführt wird dann könnte es eine null ref geben. Das aber so oft zur gleichen Zeit erstellt und gelöscht wird ist eher unwahrscheinlich, also wird ein Methode wohl wirklich zu oft diesen call machen.

    Es gab aber auch noch andere Stellen wo ich das aufgerufen habe, ich werde mal sehen ob ich die calls dort reduzieren kann, ich glaube an mindestens einer Stelle kann ich es definitiv anders lösen.

    Ah okay, dann geht es wohl um diese Methode hier


    Aber was daran genau problematisch ist kann nur red51 beantworten befürchte ich 😅