Beiträge von Heady

    was steht denn im Hilfefenster wegen der wartezeit? bitte genauer text.


    Spielstand speichern, Text von der Wartezeit im Hilfefenster hier reinschreiben und bgaSilo.xml sowie careerSavegame.xml aus dem Savegameordner hier hochladen.

    Der Bunker nimmt nun auch Ballen von der Ultima an. Dazu muss man beim node Trigger_Bunker die Collision Mask auf 1001000 ändern, bzw. ich habe die bga-objekte.rar aktuallisiert, sowie die neue Version der MapBGA.zip








    Desweiteren gibt es jetzt die BGA Objekte als Kaufbare Version - bga-objekte-buyable.rar
    Das ganze läuft über die MapBuyableObject.zip von Bluebaby210.

    Ich starte hiermit die Beta Phase meiner BGA Scripte für LS15.


    In der bga-objekte.rar ist die I3D mit den Objekten zum einfügen in die Map.
    Die entsprechenden Trigger für mein Script habe ich folgende Modelle eingebaut die in der Vergangenheit von den jeweiligen Moddern bereits veröffentlicht wurden:


    Credits:


    Alligator:
    Modell: Roman@k
    Textur: Katsuo


    Güllegrube:
    Modell & Textur: Fatian


    Mistgrube:
    Modell & Textur: Giants



    MapBGA.zip und zzz_Tablet.zip kommen in den Modsordner.
    Credits:


    MapBGA.zip:
    Script: Heady


    zzz_Tablet.zip:
    Script: Heady
    GUI Script (rafftnixGUI.lua): rafftnix




    Features:


    - beliebig viele Inputtrigger möglich: Man kann mehrer Behälter für verschiedene Inputstoffe verwenden, z.b. Mais, Gülle, etc.. Jeder Behälter hat seinen eigenen Füllstand.
    - beliebig viele OutputTrigger möglich: Man kann mehrere Behälter für die Outputstoffe verwenden, z.b. Gülle, Mist, etc.. eder Behälter hat seinen eigenen Füllstand.
    - BGA wandelt InputStoffe in Geld und zum kleinen Teil in Outputstoffe.
    - Ballen werden auch angenommen


    Mit Tablet:

    - Anlage Ein- / Auschalten möglich
    - Einstellen der Leistung des BHKW möglich
    - Übersicht aller Füllstände
    - Datentabelle der letzten Tage




    Zur Bedienung gibt es diesmal nicht viel zu sagen:


    Das Tablet lässt sich mit [Rechte STRG] + [Eingabetaste] öffnen.






    Dateien / Mods der Beta: [hide]https://www.dropbox.com/sh/4og…RTT0d3370A8yFySJfUda?dl=0 [/hide]


    [table='Datei,Stand']
    [*]bga-objekte.rar
    [*]29.03.2016
    [*]bga-objekte-buyable.rar
    [*]29.03.2016
    [*]MapBGA.zip
    [*]17.06.2016
    [*]zzz_Tablet.zip
    [*]17.06.2016
    [/table]


    Changelog:


    [table='Bug,Status']
    [*] Ballen der Ultima werden nun auch angenommen [*] MapBGA.zip, bga-objekte.rar - 29.03.2016
    [*] Kaufbare BGA Objekte hinzugefügt [*] bga-objekte-buyable.rar - 29.03.2016 [*] Speichern Funktion editiert [*] MapBGA.zip - 09.05.2016 [*]optionalen Userattribute stopBGAifEmpty beim Inputrigger hinzugefügt [*] MapBGA.zip - 17.06.2016 [*]Hauptmenü beim Tablet hinzugefügt [*] zzz_Tablet.zip - 17.06.2016
    [/table]

    Hey.
    Wir spielen aktuell auf der Klettenberg 1.1 mit der neuesten Version vom BGA Silo von heut Morgen (28.03.2016, 01 Uhr Irgendwas) im Multiplayer. Nach n bisschen Zeit auf der Map (auch ohne was zu machen) fängt das Game an zu laggen, aber frag nich wie. Die Log wirft folgendes aus:

    Gibts da irgend ne Lösung? ?(

    Der Fehler wurde beim Spielstand speichern ausgelöst. Habe den Fehler behoben und die MapBGASilo.zip aktuallisiert.

    Es gibt eine neue Version der MapBGASilo.zip.


    Folgendes wurde geändert:


    - ob der TipTrigger aktiv ist oder nicht wurde etwas kenntlicher gemacht
    - status aktiver / inaktiver Tiptrigger wird nun gespeichert
    - Gärzeit hinzugefügt, momentan auf 25 stunden eingestellt


    optional kann die Gärzeit mit einem userattribute eingestellt werden, folgende userattribute hinzufügen beim root node (onCreate attribute):


    - fermentTimeHours, integer / float: gibt die gärzeit in stunden an

    Ich hatte in LS08 beim Häcksler mit der Autopipe die zum Anhänger zielt das selbe Problem.


    Hier ein Code Ausschnitt:


    Interessant ist der obere Teil, p1yr gibt die y-rotation des nodes an der zum self.pipeentladepoint2 node schauen soll.


    Weiter gehts dann mit der Begrenzung der y-rotation damit die Pipe nicht in die Kabine rauscht.


    Der untere teil ist für eine 2-teilige Auswurfklappe.


    [lua]if self.pipeAP then

    if table.getn(self.trailerID) > 0 and not self.waitingForDischarge then

    local i = 1;
    if self.trailerID[1].fillLevel >= self.trailerID[1].capacity and table.getn(self.trailerID) > 1 then
    i = 2;
    end;
    self.trailerIndex = i;

    local tx,ty,tz = getWorldTranslation(self.trailerID[i].rootNode);
    if self.trailerID[i].fillNode ~= nil then
    tx,ty,tz = getWorldTranslation(self.trailerID[i].fillNode);
    end;
    local xw,yw,zw = worldToLocal(self.rootNode, tx, ty, tz);
    local pex,pey,pez = getTranslation(self.pipeentladepoint2);
    setTranslation(self.pipeentladepoint2, xw, pey, zw);

    local pxr,pyr,pzr = getRotation(self.rotationParts.rotationPart1.index);
    local p1yr = math.atan2(-xw,-zw);
    local rotY = pyr;
    if (p1yr - self.currentRotY) > 0.001 and pyr < self.rotationParts.rotationPart1.minRot[2] then
    rotY = math.min(pyr + (self.rotationParts.rotationPart1.minRot[2]-self.rotationParts.rotationPart1.maxRot[2])/self.rotationParts.rotationPart1.rotTime * dt, p1yr)
    elseif (p1yr - self.currentRotY) < -0.001 and pyr > self.rotationParts.rotationPart1.maxRot[2] then
    rotY = math.max(pyr - (self.rotationParts.rotationPart1.minRot[2]-self.rotationParts.rotationPart1.maxRot[2])/self.rotationParts.rotationPart1.rotTime * dt, p1yr)
    end;
    self.currentRotY = rotY;
    setRotation(self.rotationParts.rotationPart1.index, pxr, rotY, pzr);

    local kxr3,kyr3,kzr3 = getRotation(self.rotationParts.rotationPart3.index);
    local kxr4,kyr4,kzr4 = getRotation(self.rotationParts.rotationPart4.index);
    --local terrainDeltaY = ty - getTerrainHeightAtWorldPos(g_currentMission.terrainRootNode, tx, 0, tz);
    local px,py,pz = getWorldTranslation(self.rotationParts.rotationPart3.index);
    local kz =Utils.vector2Length(tx-px, tz-pz);
    --local kz = math.sqrt(xw^2+zw^2);

    local kxr = math.atan2(ty-py,kz);
    local kxr3 = kxr / 2;
    --print(kxr);
    setRotation(self.rotationParts.rotationPart3.index, kxr3, kyr3, kzr3);
    setRotation(self.rotationParts.rotationPart4.index, kxr3, kyr4, kzr4);
    end;
    else[/lua]