Beiträge von JackHusky

    Hiho Community,


    ich habe die letzten Tage immer wieder mal auf meinem Server auf Namalsk gespielt und immer wieder das Problem, dass ich eine mysteriöse Krankheit bekomme, welche scheinbar nix bewirkt, sich aber auch nicht behandeln lässt. Die Körpertemperatur ist immer im Normbereich, ich bin nicht nass oder verwundet und dennoch werde ich krank. Dazu kommt noch, dass plötzlich auch andere Krankheiten auftreten können. Vielleicht ist es auch nur ein UI-Bug? Außerdem ist es so, mit dieser Krankheit heilt sich mein Leben nicht mehr voll auf, dass bleibt beim halben weißen Kreuz stehen. Vielleicht ist es durch die 1.10 gekommen oder Namalsk (Survival) oder es ist ein Feature worüber ich noch nix gelesen habe. Schlussendlich ist es nervig nicht zu wissen was los ist. Ggf. hat da jemand ebenfalls Erfahrung mit gemacht.


    LG,

    JackHusky

    Hiho Community,


    ich habe seit ein paar Tagen einen Server mit Mods im VLAN für mich und ein paar Freunde laufen und experimentiere ein wenig mit den Einstellungen und Mods. Zum Beispiel verwende ich den OP_BaseItems Mod wegen der Möglichkeit von Pflanzkästen. Ziel war es, da es in Namalsk zu kalt ist um Pflanzen groß zu ziehen, dass man sie Pflanzkästen ins warme stellt und dort seine Zucht betreibt. Es stellt sich mir aktuell aber das Problem auf, dass ich mit den Kästen nicht ordentlich interagieren kann. Entweder ist es ein Bug im Mod oder die Map verhindert irgendetwas. Vielleicht muss ich da selber noch etwas schreiben, was ich eigentlich aber vermeiden wollte...


    Um das Problem genauer zu beschreiben, wenn der Pflanzkasten leer ist, kann ich Samen in die Slots platzieren. Sind die Slots belegt, kann ich aber keine Erde mehr auffüllen. Umgedreht verhält es sich so, wenn die Slots leer sind, kann ich Erde auffüllen aber habe dann keine Möglichkeit mehr, die Samen einzupflanzen... Aber ich kann alles düngen und gießen. Prinzipiell als unbrauchbar.


    Hat damit schon jemand Erfahrung gemacht? Grundsätzlich möchte ich keine Beete wie sonst anlegen, sondern nur diese Pflanzkästen verwenden. Das die Umgebung die richtige Temperatur haben muss, wäre natürlich ein 'nice to have', ist aber kein Muss.


    LG,

    JackHusky

    Nach langem hin und her habe ich für mich eine Lösung gefunden, welche vielleicht nicht unbedingt die beste Wahl ist, wenn man viele Mods verwendet, aber sie funktioniert und ist relativ simpel. Kurz gesagt, ich erweite einfach die vorhandenen Rezepte und deren Verwaltung durch optionale Werte. Damit kann ich die Vorteile der normalen Rezepte weiterhin nutzen ohne Probleme mit bereits vorhandenen Rezepten zu haben und ich brauche die ganzen Prüfungen nicht erneut machen. Meine Einschätzung der Vor- & Nachteile dieser Lösung:


    + einfacher Aufbau

    + erweitert die Rezepte

    + man kann die Animationen mit ändern

    + beliebige Anzahl an "Zutaten" möglich

    + mehrere Rezepte pro Objekt möglich

    + Logik bleibt in den Rezepten

    - Wahrscheinlichkeit der Unverträglichkeit bei der Verwendung mehrerer Mods

    - Hauptklassen werden erweitert


    RecipeBase

    PluginRecipesManager

    ActionWorldCraft

    Mein Rezept zur Herstellung von Nägeln am Amboss mit Hilfe eines Hammers

    Um das Rezept kurz zu erklären:

    Die "Zutaten" sind ein Hammer und ein Amboss. Mit m_AnvilIngredient gebe ich den benötigten Barren an, welcher im Amboss als Attachment hinterlegt sein muss. Außerdem wird durch m_AnvilIngredientQuantity eine Restmenge des Barrens benötigt, wobei es in dem Fall unerheblich ist ob es ein Barren ist oder mehrere vorhanden sind. Der Amboss kann bis zu 5 Barren fassen. Die Variablen m_CommandUID und m_StanceMask sollten von den Actions bereits bekannt sein. Ich verwende hier die selben Namen um Rückschluss auf deren Bedeutung zu geben. Ein Name für alles ist sehr hilfreich. Neu ist m_HideItemInHands, wobei der Name schon sagt was es bedeutet, ob das Tool in den Händen bei der Animation angezeigt wird oder nicht. Die Animationen sind da manchmal sehr speziell und blockieren die gesamte Handlung, daher ist der Wert wichtig.


    Funktioniert soweit richtig gut. Die Grundlagen der Rezepte prüfen die Voraussetzungen selbstständig, ich habe sozusagen diese Prüfungen nur erweitert. Die Klasse des Amboss habe ich jetzt erstmal außen vor gelassen, da dort nur Prüfungen vorgenommen und ein paar Werte geliefert werden.


    Mit dem ganzen kann ich jetzt multiple Rezepte an Objekte binden, mehr Zutaten zulassen und die Animationen ändern, ohne weitere Klassen anlegen zu müssen. Ist nur ein funktionierender Prototyp, muss noch umfangreich getestet werden. Sicherlich fehlen noch einige Sicherungen, z.B. das blockieren der Attachments im Amboss, ansonsten kann man diese einfach während der Animation entfernen. Auch kann es sein das man ggf. noch Variablen synchronisieren muss. Lokal funktioniert dies so aber erstmal.


    Was meint ihr dazu? Ideen, Ergänzungen, Kritik? :)

    Damit könnte man beinahe ein 100% Grafik Overhaul realisieren oder schier unglaubliche Funktionen beisteuern wie z.B einen Game Boy fast ohne Prozessorcode (Der aber schon echte Gameboy Roms laden kann) xD - Nen Chip8 habe ich bereits in GLSL realisiert.

    Gut nur weil man es möglich machen kann (oder nicht) heißt nicht das es etwas positives dem Game beiträgt^^ Klar kann man da einige interessante Dinge realisieren^^

    Alle warten sie auf Bohemia.

    Im Osten nix neues, sagt man doch so gerne :P

    Google Translate ist dein Bester Freund bei Bohemia Code. xD Aber der Skriptteil von DayZ ist definitiv Wildwuchs, weshalb da immer wieder was kaputt geht. Nachdem ich den Code halbwegs durch habe, ist es auch kein Wunder.

    Mit dem Inherit Problem hast du recht. Lieber was eigenes schreiben, dann hast du später weniger Kummer, wenn Bohemia was modifiziert. Ich mache nur Inherits von Base Klassen, die ich nicht weiter selbst modifizieren kann.

    z.B ItemBase oder Car.

    Das ist auch der Grund warum ich eigene Klassen schreibe, die ändere nur ich, nicht die. Wenn Basisklassen verändert werden, muss man so oder so ran, aber bei dem weis man zumindest was man gemacht hat. Ist zwar erstmal ein Aufwand aber es heißt nicht, dass man dies nicht noch irgendwo anders verwenden kann.


    Also wenn du Fragen hast, einfach stellen. Wir mussten uns auch gegenseitig auf die Beine helfen.

    Danke, ich werde darauf zurück kommen und mich sicher noch das ein oder andere mal melden. Wenn ich was gutes habe, stelle ich es auch zur Verfügung :)

    Natürlich kannst du auch deine Gegenstände selber als neuen Gegenstand definieren. Aber das macht kaum jemand weil es einfach zu aufwendig ist alles dafür zu scripten. Besonders bei größeren Projekten.

    Also deine Objekte auf der Base Class anderer schon basierenden Objekten abzuwickeln ist keine Schande und spart dir ein wenig Zeit.

    Dies mag korrekt sein, aber wenn ich dort weiter mache wo die gewütet haben, bekommt man nie Clean Code in das gesamte Projekt :) Ich finde es schon traurig wie viel Code aufgebaut ist, offenbar schreibt dort jeder wie er mag, nicht mal grundlegende Regeln gibt es. Dann hat man man Kommentare in Englisch, dann wieder in Tschechisch. Ich als Entwicker könnte mich da ewig drüber aufregen:rolleyes:


    Aber bedenke bitte das es zwischen Arma 3 und DayZ SA Unterschiede gibt. Nicht alle LODs sind auch in DayZ SA notwendig.

    Geometry Phys ist in SA nicht notwendig. Wird komplett von der Geometry Lod übernommen. Und das ist auch in vielen anderen Bereichen der Fall.

    Das konnte ich mir denken, zwischen den Games wird es natürlich Unterschiede geben. Zumindest haben eure Tips sehr geholfen, danke :)

    - PlayerBase modifizeren, dann das Ergebis posten :)

    Gut es in die PlayerBase zu verschieben hat den Vorteil, dass es übersichtlicher wird und man Redunanzen vermeidet aber ansonsten ändert dies nix am Objekt. Hatte hier noch den falschen Namen drinnen btw, ist mir mit aufgefallen.


    Ja müssen mal schauen, es ist schwer in solche Tools rein zu kommen wenn man a) keine Ahnung von dem Gebiet an sich hat und b) keine ordentlichen Tutorials existieren welche genau auf dieses Thema eingehen.


    Oder komme heute Abend ins TS "ts.germandayz.de" dann können wir zusammen Modden und ich kann dir Schritt für Schritt eine Einleitung geben. Ich schätze dich so ein, dass du dich doch recht schnell zurecht finden wirst, sobald du einmal siehst wie es geht.

    Dies kann man gerne machen, es muss nur irgendwie hier ersichtlich werden was passiert ist, es wird sicher auch andere mit dem Problem geben. Man muss es dokumentieren :)


    Nachtrag:

    Ich habe mir jetzt ein Tutorial von Arma3 angesehen, ist ja im Prinzip das selbe. Man muss erstmal wissen was es für Layer gibt und wozu diese gut sind. Macht natürlich irgendwo Sinn das ganze. Zumindest habe ich jetzt die Hitbox, kann damit interagieren und es gibt eine Collision Detection :) Funktioniert noch nicht perfekt aber ein Großteil der Probleme sind damit behoben!

    Gut alles was 3D-Modelle bearbeiten angeht, da bin ich raus. Habe so schon Probleme mit dem Object Builder, da importierte Modell oft ewig groß sind, weswegen ich sie skalieren muss...

    Rennen mit Schweren Item:

    4_world skript erstellen und folgendes rein:

    Dies habe ich im Objekt direkt gemacht:


    Hitbox ist die Größe, wo man z.B. gegen ein Objekt läuft, wo man geschützt ist, etc. Beim Fass ist dies z.B. deutlich, man kann nicht durch laufen und drauf klettern. Ansonsten habe ich schon in anderen Beiträgen keine Ahnung was mit "OB" und "Geometry lod" gemeint ist, 3D-Modelle sind nicht so mein Gebiet, bin froh das ich die überhaupt einbinden kann.


    Der Amboss ist ja kein Objekt vom Typ Cargo, deswegen haben ich auch nicht von Barrel_ColorBase abgeleitet. Es muss ja irgendwo eine Eigenschaft geben, welche jetzt sagt, du bist schwer z.B. (was ja heavyItem=1 bewirkt).

    Ich habe jetzt mal wieder etwas getüftelt, schaffe es aber nicht heraus zu finden, an welcher Einstellung es liegt, dass dieses Objekt keine Hitbox besitzt.


    Objekt nach Spawn: https://www.directupload.net/file/d/5709/ge6inyhs_jpg.htm

    Objekt nach Platzierung: https://www.directupload.net/file/d/5709/xw2x4r27_jpg.htm

    Objekt aus Sicht des Inventares: https://www.directupload.net/file/d/5709/5ssuhvg2_jpg.htm


    Config:

    Ich sehe das Objekt als solches, kann aber nicht direkt damit interagieren. Durch die fehlende Hitbox kann man auch einfach durchlaufen. Wenn ich es platziere versinkt es außerdem zum Teil im Boden. Als Grundlage habe ich den Generator genommen, später die Fässer.


    Das ist irgendwie richtig nervig?(

    Kein Mod.


    Nee ich weis nicht warum aber alle Aktionen mit solchen Gegenständen haben nicht geklappt, irgendwie wurde das im UI nicht angezeigt. Habe nochmal Auflösung und sonstige Einstellungen verändert, dann war es wieder da. Sehr mysteriös... Hatte was ähnliches schon mal nur das dann das gesamte Bild schwarz war außer alle Lichtquellen, was lustig aussah.

    Hiho,


    ist es seit dem letzten Update nicht mehr möglich nach Würmern zu graben? Ich bekomme die Option nicht mehr angezeigt... Haben das in der Gruppe versucht, kein Tool bietet auf irgendeiner Oberfläche die Möglichkeit an. Wir wollten das Angeln testen was ja ohne Würmer ein wenig sinnlos ist:/


    VG

    Fällt dir was auf? Du versuchst die Munition als Attachment der Waffe hinzuzufügen :) Soweit ich weis ich Ammo kein Attachment an sich sondern eine andere Eigenschaft einer Waffe. Davon abgesehen wird immer vom Init-Wert des Items ausgegangen, ich würde sagen in dem Fall x20.


    Ob das nun genau der Grund des Absturzes ist kann ich natürlich nicht sagen, dafür müsste ich den Log des Servers sehen. Zumindest ist es mir gleich ins Auge gesprungen. Nebenbei, in Case 1 gibt es immer noch fehlende Zuordnungen ;)

    Das kann ich dir sagen:

    Code
    itemEnt = player.GetHumanInventory().CreateInHands("AK101");
        
        player.GetInventory().CreateInInventory("Mag_AK101_30Rnd");itemBs = ItemBase.Cast(itemEnt);

    Du legst hier das Mag_AK101_30Rnd an, führst es aber nie aus. An der Stelle musst du natürlich eine Zuweisung machen wie bei der AK101. Du musst auch aufpassen wann du ItemBase.Cast(itemEnt); ausführst. Eigentlich hast du ja alle Beispiele schon bei mir oben.


    In die Hand:

    Code
    itemEnt = player.GetHumanInventory().CreateInHands("AKM");
    ItemBase.Cast(itemEnt);


    Ins Inventar:

    Code
    itemEnt = player.GetInventory().CreateInInventory("AK_Bayonet");
    ItemBase.Cast(itemEnt);

    In die Hand mit Attachment:

    Code
    itemEnt = player.GetHumanInventory().CreateInHands("AKM");
    itemAtt = itemEnt.GetInventory().CreateAttachment("AK_PlasticBttstck");
    ItemBase.Cast(itemEnt);

    Eigentlich ganz einfach :)

    Das funktioniert. Aber ich weiss jetzt halt nicht wie ich mehrere Start Ausrüstungen erstelle die random an die Spieler verteilt werden. Oder wie ich die da hinzufügen soll?

    Du hast in deinem Beispiel ja switch (Math.RandomInt(0, 9)) was im Grunde deinen Zufallsgenerator darstellt. Dort hast du dann eine Zahl von 0 bis 9, deswegen case 0: bis case 9:. Innerhalb dieser legst du dann das Equippment fest. Beendet wird jedes case mit break;, ansonsten würde es in das Nächste springen.

    Ok danke schonmal dafür, aber wollte gerade nur zum testen deine init.c Datei ausprobieren nun kann ich nicht mehr meinen Server beitreten.

    Ist die init.c vilt schon bissel veraltet das die nicht mehr geht?

    Ich habe nur einen Auszug genommen, dass ist nur eine Klasse nicht die gesamte Datei! Da musst du drauf achten ;) Ging ja auch nur darum, wie man Items mit Attachments einfügt.

    Pass auf das alle Items in der init.c Datei auch auf deinem Server sind...zum Teil gehören die zu custom Mods !!!

    Gut darauf sollte man immer achten, wobei ich nie Items aus Mods verwendet habe. Das war glaube 1.03 oder so, was halt damals im Juli 19 die Stable-Version war.

    Diese Problematik tritt häufiger auf, wenn man mehr Gegenstände an einem Ort hat und viel bewegt wurde. Scheint ein Problem des Clients zu sein, denn wenn man sich einmal aus- und wieder einloggt, klappt es wieder. Zumindest bis man wieder zu viel bewegt hat:| Ist besonders nervig, wenn man ein ganzes Fass voll Fleisch braten möchte und man nix mehr aus den Topf bekommt... Heute gibt's Kohle!^^