Posts by noci

    Looks like there is no such constructor in target class, at least for these arguments. Usage of reflections is also not a very good way, is it possible to avoid them for your case?


    Also der Konstrukter ist definitiv da, sogar in einer Seperaten Datei

    ---

    So the constructor is definitely there, even in a separate file


    Ja eigendlich wollte ich mit den Fields Arbeiten

    ---

    Actually, I wanted to work with the Fields

    Code
    public Object reload(Object config, JSONObject loadConfig){
    Class<?> configClass = config.getClass();
    Field[] fields = configClass.getDeclaredFields();
        ...
    }


    Ich Lade die vorkonfiegurirte Variable und überschreibe die Vorhandenen Daten, das geht auch so weit ohne große Probleme.

    Nur wenn ich einen neuwn Datensatz hinzufüge, brauche ich eine Vorlage
    Nehme ich eine der vorhandenen, da es "nur" Zeiger sind , bekomme ich das Orginal der Vorlage und habe eine Identische Kopie
    Hier muss ich eine dan die Class erstellen mit neuem Zeiger, aber hier gibt es auch sein Java8 eine umstellung und Chaos

    Und selbst wenn ich mit den Metoden arbeite muss ich ja wenn etwas hinzu kommt auch einen "Unbekannten Type" inizialiesieren
    Das bauche ich auf jeden fall noch, um zwischen dem Orginal-Type der Klasse und dem JSON-Typen zu Konvertieren

    ---

    I load the preconfigured variable and overwrite the existing data, that goes so far without any major problems.

    Only when I add a new record do I need a template
    If I take one of the existing ones, since they are "only" pointers, I get the original of the template and have an identical copy
    Here I have to create a dan the class with a new pointer, but here there is also a Java8 conversion and chaos

    And even if I work with the methods, I have to initialize an "unknown type" if something is added
    In any case, I still need that to convert between the original type of the class and the JSON type



    Wenn du einen anderen ansatz hast, große Konfigurationen Überlichtlich zu Schreiben und dabei noch Dynamisch beim Laden zu halten, lass es mich wissen ^^

    Das ist gedacht um soviel wie möglich an Einstellungen und anpassung für den Serverbetreiber zur verfügung zu stellen.

    z.b das ein Serverbetreiber mit einer Config ein eigenes Rezept (Konfiguration, Bilder) mit Item (3D Daten) mit Event auswahl selber definieren kann, und das ebend soviel er Konfigurieren kann8)

    ---

    If you have another approach to overlighting large configs while still keeping dynamic while loading, let me know ^^

    This is meant to provide as much settings and customization as possible for the server operator.

    e.g. that a server operator can define his own recipe (configuration, images) with item (3D data) with event selection with a config, and that as much as he can configure8)


    Schöner als uhrConfigRecipe.yml.txt und mehr:saint:

    Ich habe noch ein Problem, ich versuche eine neue Insctance zu erstellen(so im Netzt gefunden):


    Java
    Class<?> clazz = Class.forName(componentType.getName());
    System.out.println("("+i+":> "+" NewClass["+componentType.getName()+"] ");
    System.out.println("("+i+":> "+" NewClass["+clazz.getClass()+"] ");
    // Get the private constructor.
    Constructor<?> cons = clazz.getDeclaredConstructor(componentType);
    // Since it is private, make it accessible.
    cons.setAccessible(true);
    // Create new object.
    Object obj = cons.newInstance();

    Allerdings komme ich nicht an der net.jiw.unity.runtime.PluginLoader.loadPlugins(PluginLoader.java:71) vorbei, das Netz liefert keine andere Lösung, die ClassASBConfig ist public und constructor ist auch vorhanden.

    Code
    Apr. 20, 2023 1:20:53 AM de.chaoswg.JSONManagerASB reload
    SCHWERWIEGEND: null
    java.lang.NoSuchMethodException: de.chaoswg.ClassASBConfig$ClassSeite.<init>(de.chaoswg.ClassASBConfig$ClassSeite)
    at java.base/java.lang.Class.getConstructor0(Class.java:3685)
    at java.base/java.lang.Class.getDeclaredConstructor(Class.java:2854)
    at de.chaoswg.JSONManagerASB.reload(JSONManagerASB.java:304)
    at de.chaoswg.JSONManagerASB.update(JSONManagerASB.java:472)
    at de.chaoswg.ASB.onEnable(ASB.java:119)
    at net.jiw.unity.runtime.PluginLoader.loadPlugins(PluginLoader.java:71)

    Ich hoffe ja das es mit dem Update beim Classloader Funktioniert, vieleicht kannst du ja schon sehen ob sich das geben wird
    Oder muss ich noch etwas berücksichtiegen?

    Wie bekomme ich die ServerOptionen herraus?
    Normal sollte das ja mit Server.getOptiongehen.

    Ich bekomme bei allen Varianten NULL zurück:

    System.out.println("SRV Option: "+Server.getOption("Permissions_DefaultNewPlayerPermissionGroup"));

    System.out.println("SRV Option: "+Server.getOption("Permissions DefaultNewPlayerPermissionGroup"));

    System.out.println("SRV Option: "+Server.getOption("DefaultNewPlayerPermissionGroup"));

    Also ich arbeite derzeit nur für Server und habe in der Sub-Class:

    ---

    So I'm currently only working for servers and have in the sub-class:

    Code
    public MyListener(Plugin plugin){
        this.plugin = plugin;
        plugin.registerEventListener(this);
    }

    Das klappt ohne Fehler

    ---

    This works without errors


    Dann aber auch ohne diese Zeile

    ---

    But then also without this line

    Code
    @Override
    public void onEnable() {
        MyListener lt = new MyListener(plugin);
        registerEventListener(lt);
    }

    Aber ob das nicht auch so gehen soll wie du das gemacht hast, weiß ich nicht, vieleicht ist das doch ein fehler

    ---

    But I don't know whether it shouldn't work the way you did it, maybe that's a mistake

    :saint:Ja, vieleicht war ich etwas zu Müde und zu Ungeduldig
    Die Seite mit IStyle habe ich neben bei offen, nur Blind gewesen
    Zeilenumbruch klappt einbanfrei:thumbup:

    Nur der clickable hat die Runde Ecke nicht erkannt


    Wenn ich hier nix gemacht haben um das Abzuschalten
    Klappt das noch nicht richtig


    panelHG ist mit Fester Größe, deswegen kann ich die Rundung so berechnen


    Also wenn das mit den Rundungen klappt reicht das ja schon:thumbup:müssen ja nicht übertreiben:saint:

    Ich versuche gerade Text schön zu gestallten ^^
    Irgendwie bekomme ich den Automatischen Zeilenumbruch nicht hin

    Bin ich hier Richtig bei flexWarp

    Kann vieleicht noch für den Clickable Event eine Maske einfügen, damit bei Runden oder Transparenten Bildern auch nur im Richtiegen Bereich der Event ausgelöst wird. Mit OverflowClipBox.ContentBox kann ich auch nichts Steuern, selbst innerhalb vom Ramen bringt nix
    Oder ich bin da auf dem Holzweg^^

    Wehre es möglich eine JSON.jar mit in den RisingWorldDedicatedServer\Data\Java\Libs Ordner zu Packen?
    Allerdings bin ich selber etwas überfordert, welche die richtige ist, zumindestens habe ich keine Version gefunden die unter NetBeans JDK 20 funktioniert

    Ich finde das JSON-File-Format schöner als das fon snakeyaml^^

    ###
    Also json-simple-1.1.1.jar fäuft jetzt, aber ich hatte mir das anders vorgestellt, mit Writer, Reader und Pharser:dizzy:

    Asset ta = TextureAsset.loadFromURL("https://images.rising-world.net/media/update/api/plugin_api3.jpg");

    Das klappt soweit

    Verwende am besten das neue ColorRGBA

    :thumbup:Dan klappts auch, mit dem ...

    möglicherweise funktioniert das sonst nicht richtig

    Ich kann mal mein Eigenen Res Loader Probieren


    System.out.println("Plugin: " + getPluginByName("ConfigManager"));

    Ja, hier kommt etwas zurück de.chaoswg.ToolsAPI@4b4523f8
    Das liegt dan doch am ClassLoader, ich/mann kann keine Klasse erstellen
    Bei mir dann ToolsAPI toolsAPI = (ToolsAPI)plugin.getPluginByName("ToolsAPI"); hier bei der Definierung

    musst du das auf style.backgroundImage setzen

    Das ahbe ich mal gemacht:


    Laut Log wird das Bild Richtig Geladen

    REGISTER ASSET TEXTURE (2) FROM FILE: /resources/assets/style/papyrus/papyrus.00.png (EXT: png, CH: 85a372b10c83c9e1dbadffa959788073)

    [Java] Load from resources: 4565c413f43d19773e08937facc3d570_85a372b10c83c9e1dbadffa959788073 85a372b10c83c9e1dbadffa959788073


    Auch die Kontrolle Liefert mir Werte zurück [Java] Spawn Image Info: Texture png File

    Nur weil ich kein bild angezeigt bekommen habe, hatte ich mal die Borders hinzugefüt und dabei ist mir aufgefallen

    Das da keine Bild infos sind, ich habe dann mal eine Größe definiert

    Aber das Element bleibt Leer


    Und bild.style.borderTopColor.set(col.getRGB()); will auch nicht klappen:thinking:


    :lol:was habe ich noch Übersehen?

    Oke, ich habe mich etwas eingefunden:dizzy:

    Ich habe schon TextureAsset.loadFromPlugin gefunden, aber wie bekomme ich das in ein UIElement
    Geht das nur über .addStyleSheet(StyleSheetAsset.loadFromAssetBundle(bundle, path));

    Ich glaube da muss ich wol doch auf ein Turorial warten ^^

    Hi, red51 ###Erledigt

    Ich verzweifel gerade an mir:dizzy:


    Den onEnable Event bekomme ich [Java] Hallo
    Aber die anderen beiden Events bleiben Still, mache ich was falch bei der Inizialiesierung?

    OKe, das sieht eigendlich ziemlich entspannt aus, ja Lichter sind echt einige da, aber an denen Arbeitet Red ja auch noch etwas, hast du viele Lagerferuer/Signalfeuer verbaut, Oder mehr Kerzen/Glübirnen?


    Das einziege was mir sonst noch aufgefallen ist, sind die (Pending)Ausstehenden Bytes, aber da weiß ich nicht wo her die kommen können
    Bei mir ist nicht ganz so viel gebaut, aber ich bekomme da nicht ein Byte zusammen
    Ich weiß das nicht zubeurteilen aber 81Mb in knapp 2,5min. an Ausstehenden Daten ist vieleicht der Ansatz wo Red was dazu sagen kann
    Werden die Über die Zeit mehr?

    Im Grunde sind das fast die gleichen Lags wie in der Java-Version.

    Da unterstell ich dir mal, im Grunde das du die gleichen Blueprints aus der Java Version benutzt und Fleizig weiter Gebäude baust und das in kleinster Feinarbeit


    Ich weiß nicht genau wie du Baust und wie da deine Vorstellungen sind was so ein Spiel zu leisten hat, OKe du hast Dicke Hardware, obwohl die Wichtigste Schnitstelle das Mainboard noch ein Geheimnis ist. Aber auch in Modernen Systemem gibt es Flachenhälse für die verschiedenen Componenten an so einem Mainboard, sei es drum

    Vieleicht wehre es interessant zu sehen was deine Hardware alles leistem muss wenn du dich umschaust.
    Dazu schau doch mal unter [F3]

    Die Object Pool und derLigths währen Interessant
    Ich vermute mal das Objects bei dir Locker im Mittleren 5-Stelliegen bereich Liegen und die Ligths auch sehr hoch sind, bei jeder Bewegung

    Ich denke du hast das mit der Detail fielfalt Übertrieben und kommst einfach jedesmal an die Teschnischen Grenzen des Machbaren (Deiner Hardware und Programiertechnischen Notwendigkeiten)
    Ist RW auf einer SSD? Hast du die Auslagerungsdatei von Windows auf einer SSD? Ist die Größe selbst definiert oder macht das Windows Automatisch? Liegt RW auf der gleichen Physikalischen Festplatte wie die Auslagerungsdatei? Wie ist der Defragmentierungsgrad deiner Festplatte(n)?

    Aber sei doch Froh, unser Entwickler bleibt im Rahmen des Möglichen
    Nich wie die Jungs von "Star Citizen" die müssen mit ihren Ansprüchen erst auf ein Quanten Verschränktes Netwerk warten