Restwertberechnung fehlerhaft mit verändertem maintenance.lifespan

Willkommen in der Transport Fever Community

Wir begrüßen euch in der Fan-Community zu den Spielen Transport Fever und Train Fever, den Wirtschaftssimulatoren von Urban Games. Die Community steht euch kostenlos zur Verfügung damit ihr euch über das Spiel austauschen und informieren könnt. Wir pflegen hier einen freundlichen und sachlichen Umgang untereinander und unser Team steht euch in allen Fragen gerne beiseite.

 

Die Registrierung und Nutzung ist selbstverständlich kostenlos.

 

Wir wünschen euch viel Spaß und hoffen auf rege Beteiligung.

Das Team der Transport-Fever Community


  • Wenn maintenance.lifespan mit 2 multipliziert wird, funktioniert es noch, aber die Restwertberechnung ist dann schon verwirrend.


    Ab einem Multiplikator von 3 (vielleicht schon mit > 2) passiert folgendes:

    1. Der Restwert bleibt während der gesamten "Lebensdauer" bei 100%
    2. Sobald die "Lebensdauer" abgelaufen ist, springt der Restwert auf 1%

    Bei einem Multiplikator von 2 ist es insofern verwirrend, als dass z.B. nach 15% der Lebensdauer bereits nur noch 60% des Restwerts vorliegen.


    In der Kalkulation ist der Wurm drin und sie mag keine Modifizierung - also müsste irgendwo eine Querreferenz in der Berechnung stecken, eine Art break-even-point wird ausgelöst.

    Wo steckt diese Kalkulation? Ist sie hardcoded?

  • Ich widme mich dem Thema noch mal und schau mal, ob es einen Unterschied im Verhalten zwischen den Mods von AbbyTheFoxx und LINX gibt.


    Siehe https://steamcommunity.com/wor…dytouseitems&requiredtags[]=Script+Mod


    AbbyTheFoxx (2 Mods: 2x und 4x - Beispielcode von 4x):

    Code
        runFn = function(settings)
            addModifier("loadModel", function(fn, data)
                if data.metadata then if data.metadata.maintenance then if data.metadata.maintenance.lifespan then
                    data.metadata.maintenance.lifespan = data.metadata.maintenance.lifespan * 4
                end end end
                return data
            end)
            
        end


    LINX (3 Mods: 5x, 10x und 50x - Beispielcode von 5x):

    Code
            runFn = function (settings)
                addModifier("loadModel", function (fileName, data)
                    if data.metadata.transportVehicle then
                        data.metadata.maintenance.lifespan = data.metadata.maintenance.lifespan*5
                    end
                    return data
                end)
            end 


    Ich bin gespannt, ob die Herangehensweise der Mods einen Unterschied macht bzgl. des im OP genannten Verhaltens.

BlueBrixx