GroundResponse.lua - Thumbnail 1
1 / 20
Virus checked
v1.5 Final (Realism Version) latest
Premium

GroundResponse.lua

★ 4.8
Rating
800 Ratings
108.2K
Downloads
433.7K
Views
192
Thanks

Hi guys

 

this is for all those who also leiber little deeper sinking into the wheels, faster hard drive uphill and generally more realistic grip on fields had.

 

On dry and very wet field soil to the mach-noticeable depending on soil type and Feuchtgkeitsgehalt.

 

Have to the "GroundResponse.lua" from the For "Real Module 3: Ground Response" by Giants significantly edited.

 

This is just in the "For Real module 3: Ground Response" is inserted, and thus the standart "GroundResponse.lua" replaced (backup is not necessary to have to click as you anytime "Update Mods" in the main menu in the game only, and there the "for Real module 3: Ground response" Update must-characterized Wirde my ".lua" simply overwritten on the standard).

 

 

changes:

  • deeper sinking of the wheels, especially in humid
  • much less traction through the deeper sinking of the wheels
  • more influence of tire diameter and width to the Einsinkverhalten
  • Charge now causes deeper sinking of the wheels
  • less uncontrolled Kippneigungen on the road
  • Wheels fall more by physical influences, eg curve centrifugal, cant go on a slope, uneven ground
  • travel at speeds of over 25 km / h on soft or uneven ground shall be punished by physical forces more

 

 

 

Because until now only a few have been working on improving the physics in LS 17, this was the reason for me to try it by yourself remodel soil behavior somewhat more according to my wishes, because in the real module 3: Ground Response are for already all options given-but not implemented.

 

I strongly recommend the two mods of "Model Eicher" also to install, so that the effect will look good:

 

Support the topic and the "simplified installation instructions in pictures" are in the Forum of Marhu: http://marhu.net , look there in the theme "Realistic sinking depth and traction."

 

I am not an experienced modders, but the values ??in the "GroundResponse.lua" changed in countless hours and try again to extract eventual with the calculator a bit more fun.

If these ideas do not like it do not need to download, or it nag-the heck do better.

Have this script voluntarily and without any financial motives published, that all may have some more funny thing.

 

Furthermore, fix the changed values ??of me not "slipping" on the slope, which is related to the real module. 3 This continues to apply only the expedient off and dismount the tractor, so that its position is static.

 

Anyone can change any of these values. Try it out, it provides you a according to your wishes.

 

Regards Andy

 

Comments275

You must be logged in to comment.

Log in
DerAgrarBoy
DerAgrarBoy14.04.2018

Ich kann mir die mod nicht downloaden dann kommt dieser Text: -- -- GroundResponse -- -- -- @author GIANTS Software -- @date 15/10/2016 -- @tester rachederasen 28/02/2017 -- Copyright (C) GIANTS Software GmbH, Confidential, All Rights Reserved. GroundResponse = {}; function GroundResponse.prerequisitesPresent(specializations) return true; end function GroundResponse:load(savegame) self.loadParticleSystemsForWheel = GroundResponse.loadParticleSystemsForWheel; self.updateWheelDirtPS = GroundResponse.updateWheelDirtPS; self.updateWheelSink = GroundResponse.updateWheelSink; self.getWheelCurrentSink = GroundResponse.getWheelCurrentSink; self.updateWheelTireFriction = Utils.overwrittenFunction(self.updateWheelTireFriction, GroundResponse.updateWheelTireFriction); self.applyRandomForceToWheels = GroundResponse.applyRandomForceToWheels; if g_currentMission.wheelDirt ~= nil and g_currentMission.wheelDirt.referenceShape ~= nil and g_currentMission.wheelDirt.referencePS["soilDry"] ~= nil and g_currentMission.wheelDirt.referencePS["soilWet"] ~= nil then if self.wheels ~= nil and table.getn(self.wheels) > 0 then local numWheels = table.getn(self.wheels); for iWheel=1,numWheels do local wheel = self.wheels[iWheel]; if wheel.hasParticles then local refNode = wheel.node; self:loadParticleSystemsForWheel(refNode, wheel) if wheel.additionalWheels ~= nil then for ,additionalWheel in pairs(wheel.additionalWheels) do self:loadParticleSystemsForWheel(refNode, additionalWheel); end end end end for iWheel=1,numWheels do local wheel1 = self.wheels[iWheel]; if wheel1.oppositeWheelIndex == nil then for jWheel=1,numWheels do if iWheel ~= jWheel then local wheel2 = self.wheels[jWheel]; if math.abs(wheel1.positionX + wheel2.positionX) < 0.1 and math.abs(wheel1.positionZ - wheel2.positionZ) < 0.1 and math.abs(wheel1.positionY - wheel2.positionY) < 0.1 then wheel1.oppositeWheelIndex = jWheel; wheel2.oppositeWheelIndex = iWheel; break; end end end end end end end self.dirtParticleSystemDirtyFlag = self:getNextDirtyFlag(); end function GroundResponse:postLoad(savegame) for ,wheel in pairs(self.wheels) do wheel.sink = 0; wheel.sinkTarget = 0; wheel.radiusOriginal = wheel.radius; wheel.sinkFrictionScaleFactor = 1; wheel.sinkLongStiffnessFactor = 1; wheel.sinkLatStiffnessFactor = 1; end end function GroundResponse:loadParticleSystemsForWheel(refNode, wheel) wheel.dirtPS = {}; local psEmitterShape = clone(g_currentMission.wheelDirt.referenceShape, false, false, false); link(refNode, psEmitterShape); local x,y,z; if wheel.wheelTire == nil then x,y,z = localToLocal(wheel.driveNode, refNode, 0, 0, 0); else x,y,z = localToLocal(wheel.wheelTire, refNode, 0, 0, 0); end setTranslation(psEmitterShape, x+wheel.xOffset,y,z); setRotation(psEmitterShape, 0, 0, 0); setScale(psEmitterShape, 2*wheel.width, 2*wheel.radius, 2*wheel.radius); for ,name in pairs( {"soilDry", "soilWet"} ) do if gcurrentMission.wheelDirt.referencePS[name] ~= nil then wheel.dirtPS[name] = {}; local psClone = clone(g_currentMission.wheelDirt.referencePS[name].shape, true, false, true); ParticleUtil.loadParticleSystemFromNode(psClone, wheel.dirtPS[name], false, g_currentMission.wheelDirt.referencePS[name].worldSpace, g_currentMission.wheelDirt.referencePS[name].forceFullLifespan); ParticleUtil.setEmitterShape(wheel.dirtPS[name], psEmitterShape); wheel.dirtPS[name].isActive = false; wheel.dirtPS[name].isActiveSend = false; wheel.dirtPS[name].particleSpeed = ParticleUtil.getParticleSystemSpeed(wheel.dirtPS[name]); wheel.dirtPS[name].particleRandomSpeed = ParticleUtil.getParticleSystemSpeedRandom(wheel.dirtPS[name]); --wheel.dirtPS[name].particleNormalSpeed = ParticleUtil.getParticleSystemNormalSpeed(wheel.dirtPS[name]); --wheel.dirtPS[name].particleTangentSpeed = ParticleUtil.getParticleSystemTangentSpeed(wheel.dirtPS[name]); end end end function GroundResponse:delete() for ,wheel in pairs(self.wheels) do ParticleUtil.deleteParticleSystems(wheel.dirtPS); if wheel.additionalWheels ~= nil then for ,additionalWheel in pairs(wheel.additionalWheels) do ParticleUtil.deleteParticleSystems(additionalWheel.dirtPS); end end end end function GroundResponse:mouseEvent(posX, posY, isDown, isUp, button) end function GroundResponse:keyEvent(unicode, sym, modifier, isDown) end function GroundResponse:readUpdateStream(streamId, timestamp, connection) if connection:getIsServer() then local dirty = streamReadBool(streamId); if dirty then for ,wheel in pairs(self.wheels) do wheel.dirtParticlesActive = streamReadBool(streamId); end end end end function GroundResponse:writeUpdateStream(streamId, connection, dirtyMask) if not connection:getIsServer() then if streamWriteBool(streamId, bitAND(dirtyMask, self.dirtParticleSystemDirtyFlag) ~= 0) then for ,wheel in pairs(self.wheels) do streamWriteBool(streamId, wheel.dirtParticlesActive); end end end end function GroundResponse:update(dt) if self.isServer then if self:getIsActive() then self:updateWheelSink(dt); self:applyRandomForceToWheels(dt); end end end function GroundResponse:updateTick(dt) if self.isClient then for ,wheel in pairs(self.wheels) do if wheel.dirtPS ~= nil then if wheel.netInfo.xDriveLast == nil then wheel.netInfo.xDriveLast = wheel.netInfo.xDrive; end local xDriveDiff = wheel.netInfo.xDrive - wheel.netInfo.xDriveLast; if xDriveDiff > math.pi then wheel.netInfo.xDriveLast = wheel.netInfo.xDriveLast + 2*math.pi; elseif xDriveDiff < -math.pi then wheel.netInfo.xDriveLast = wheel.netInfo.xDriveLast - 2*math.pi; end xDriveDiff = wheel.netInfo.xDrive - wheel.netInfo.xDriveLast; wheel.netInfo.xDriveLast = wheel.netInfo.xDrive; local wheelRotSpeed = math.deg(xDriveDiff) / (0.001 * dt); local maxWheelRotSpeed = 1080; local wheelRotFactor = math.abs(wheelRotSpeed) / maxWheelRotSpeed; wheelRotFactor = wheelRotFactor * wheel.radius; self:updateWheelDirtPS(wheel, wheelRotFactor, wheel.steeringAngle); if wheel.additionalWheels ~= nil then for ,additionalWheel in pairs(wheel.additionalWheels) do self:updateWheelDirtPS(additionalWheel, wheelRotFactor, wheel.steeringAngle); end end end end end end function GroundResponse:updateWheelDirtPS(wheel, wheelRotFactor, steeringAngle) if wheel.dirtPS ~= nil then local sizeScale = 2 * wheel.width * wheel.radius; for ,ps in pairs(wheel.dirtPS) do ParticleUtil.setEmittingState(ps, ps.isActive); if ps.isActive then -- emit count local speedEmitScale = wheelRotFactor * sizeScale; local speedEmitScaleWet = math.pow( 2*wheelRotFactor*sizeScale*gcurrentMission.environment.groundWetness, 2 ); local emitScale = 0.5 * (speedEmitScale + speedEmitScaleWet); ParticleUtil.setEmitCountScale(ps, emitScale); -- speeds local speedFactor = 0.3 * wheelRotFactor; local speed = ps.particleSpeed * speedFactor; speed = math.min(speed, 0.001); ParticleUtil.setParticleSystemSpeed(ps, speed); --ParticleUtil.setParticleSystemNormalSpeed(ps, 1.0 ); --ParticleUtil.getParticleSystemTangentSpeed(ps, 0.4 ); ParticleUtil.setParticleSystemSpeedRandom(ps, ps.particleRandomSpeed * speedFactor); -- adjust position local dirSign = 1; if self.movingDirection < 0 then dirSign = -1; end local x,y,z; if wheel.wheelTire == nil then x,y,z = localToLocal(wheel.driveNode, getParent(ps.emitterShape), wheel.xOffset, 0, 0); else x,y,z = localToLocal(wheel.wheelTire, getParent(ps.emitterShape), 0, 0, 0); end setTranslation(ps.emitterShape, x,y,z); if self.movingDirection < 0 then setRotation(ps.emitterShape, 0,math.pi+steeringAngle,0); else setRotation(ps.emitterShape, 0,steeringAngle,0); end end end end end function GroundResponse:draw() end function GroundResponse:updateWheelSink(dt) local speed = self:getLastSpeed(); local detailId = g_currentMission.terrainDetailId; for ,wheel in pairs(self.wheels) do local width = 0.25 * wheel.width; local length = 0.25 * wheel.width; local x0,y0,z0; local x1,y1,z1; local x2,y2,z2; if wheel.repr == wheel.driveNode then x0,y0,z0 = localToWorld(wheel.node, wheel.positionX + width, wheel.positionY, wheel.positionZ - length); x1,y1,z1 = localToWorld(wheel.node, wheel.positionX - width, wheel.positionY, wheel.positionZ - length); x2,y2,z2 = localToWorld(wheel.node, wheel.positionX + width, wheel.positionY, wheel.positionZ + length); else local x,,z = localToLocal(wheel.driveNode, wheel.repr, 0,0,0); x0,y0,z0 = localToWorld(wheel.repr, x + width, 0, z - length); x1,y1,z1 = localToWorld(wheel.repr, x - width, 0, z - length); x2,y2,z2 = localToWorld(wheel.repr, x + width, 0, z + length); end local x,z, widthX,widthZ, heightX,heightZ = Utils.getXZWidthAndHeight(nil, x0,z0, x1,z1, x2,z2); setDensityCompareParams(detailId, "greater", 0); local density, area, _ = getDensityParallelogram(detailId, x,z, widthX,widthZ, heightX,heightZ, g_currentMission.terrainDetailTypeFirstChannel, g_currentMission.terrainDetailTypeNumChannels); setDensityCompareParams(detailId, "greater", -1); local terrainValue = 0; if area > 0 then terrainValue = math.floor(density/area + 0.5); end local minVal, maxVal = 0, 1; local sinkSpeed = (dt/1000) * (speed/10) * (0.01 * math.random(120)); local maxSink = math.min(0.3, wheel.radius*0.7 * (0.8 + 0.5*g_currentMission.environment.groundWetness)) * 1.0; -- Multiplikator Zieleinsinktiefe von 0.6 - 1.3 if terrainValue == 1 then -- cultivator_gegrubberter Boden minVal, maxVal = 180, 180; -- Verhealtniswert im Ziel zum maximalem Einsinken sinkSpeed = sinkSpeed * 0.5; elseif terrainValue == 2 then -- plough_gepflügter Boden minVal, maxVal = 100, 100; sinkSpeed = sinkSpeed * 0.6; elseif terrainValue == 3 then -- sowing_gesähter Boden wie Weizen_Gerste_Raps minVal, maxVal = 110, 110; sinkSpeed = sinkSpeed * 0.3; elseif terrainValue == 4 then -- sowingWidth_gedrillter Boden wie Mais_Sonnenblumen minVal, maxVal = 120, 120; sinkSpeed = sinkSpeed * 0.4; elseif terrainValue == 5 then -- grass_Gras minVal, maxVal = 20, 30; sinkSpeed = sinkSpeed * 0.5; end local ploughEffect = false; if area == 0 then wheel.sinkTarget = 0; else if wheel.sink == wheel.sinkTarget or wheel.lastTerrainValue ~= terrainValue then local currentSink = self:getWheelCurrentSink(wheel); wheel.sinkTarget = math.min(maxSink, 0.01 * math.random(minVal, maxVal) * currentSink); -- 'ploughing effect' if terrainValue == 2 and wheel.oppositeWheelIndex ~= nil then local oppositeWheel = self.wheels[wheel.oppositeWheelIndex]; if oppositeWheel.lastTerrainValue ~= nil and oppositeWheel.lastTerrainValue ~= 2 then wheel.sinkTarget = wheel.sinkTarget * 1.5; ploughEffect = true; end end end end if wheel.sinkTarget ~= wheel.sink then local sinkDelta = maxSink * sinkSpeed; if terrainValue ~= wheel.lastTerrainValue then sinkDelta = maxSink * (dt/250); end if wheel.sink < wheel.sinkTarget then wheel.sink = math.min(wheel.sinkTarget, wheel.sink + sinkDelta); elseif wheel.sink > wheel.sinkTarget then wheel.sink = math.max(wheel.sinkTarget, wheel.sink - sinkDelta); end wheel.radius = wheel.radiusOriginal - wheel.sink; self:updateWheelBase(wheel); local sinkFactor = (wheel.sink/maxSink) * (0.4 + 0.6*g_currentMission.environment.groundWetness); -- bestimmt Einsinkverhalten_erste Zahl trockener Boden_zweite Zahl nasser Boden wheel.sinkFrictionScaleFactor = (1.0 - math.min(0.7, sinkFactor)); -- Traktion bei Einsinktiefe wheel.sinkLongStiffnessFactor = (1.0 - math.min(0.2, sinkFactor)); -- Bodensteiffigkeit in Fahrtrichtung beim Einsinken wheel.sinkLatStiffnessFactor = (1.0 - math.min(0.0, sinkFactor)); -- Bodensteiffigkeit in Querrichtung beim Einsinken self:updateWheelTireFriction(wheel); end wheel.lastTerrainValue = terrainValue; if wheel.dirtPS ~= nil then local enableSoilPS = false; if terrainValue == 1 then -- cultivator enableSoilPS = true; elseif terrainValue == 2 then -- plough enableSoilPS = true; elseif terrainValue == 3 then -- sowing enableSoilPS = true; elseif terrainValue == 4 then -- sowingWidth enableSoilPS = true; elseif terrainValue == 5 then -- grass enableSoilPS = false; end for ,ps in pairs(wheel.dirtPS) do ps.isActive = false; end if enableSoilPS and (speed > 1) and wheel.sink > 0 then if gcurrentMission.environment.groundWetness > 0.2 then if wheel.dirtPS["soilWet"] ~= nil then wheel.dirtPS["soilWet"].isActive = true; end else if wheel.dirtPS["soilDry"] ~= nil then wheel.dirtPS["soilDry"].isActive = true; end end end if wheel.additionalWheels ~= nil then for ,additionalWheel in pairs(wheel.additionalWheels) do for ,ps in pairs(additionalWheel.dirtPS) do ps.isActive = enableSoilPS and (speed > 1) and wheel.sink > 0; end end end end end end function GroundResponse:getWheelCurrentSink(wheel) if wheel.maxDeformation == nil or wheel.wheelTire == nil then return 0; end local gravity = 9.81; local tireLoad = getWheelShapeContactForce(wheel.node, wheel.wheelShape); if tireLoad ~= nil then local nx,ny,nz = getWheelShapeContactNormal(wheel.node, wheel.wheelShape); local dx,dy,dz = localDirectionToWorld(wheel.node, 0,-1,0); tireLoad = -tireLoad*Utils.dotProduct(dx,dy,dz, nx,ny,nz); tireLoad = tireLoad + math.max(ny*gravity, 0.0) * wheel.mass; -- add gravity force of tire else tireLoad = 0; end tireLoad = tireLoad / gravity; local loadFactor = (tireLoad / wheel.restLoad); local totalWidth = wheel.width; if wheel.additionalWheels ~= nil then for ,additionalWheel in pairs(wheel.additionalWheels) do totalWidth = totalWidth + additionalWheel.width; end end local length = 2 * math.pi * (wheel.radius 1.5) (20/360); -- Tragfähigkeit Reifenumfang local area = totalWidth * length; local loadFactor = math.min(10, loadFactor * 0.4 * (1.0/area) * (0.5 + (0.5*gcurrentMission.environment.groundWetness))); -- bestimmt Einfluss der Ladung auf das Einsinken maxSink = loadFactor * wheel.maxDeformation; return maxSink; end function GroundResponse:updateWheelTireFriction(superFunc, wheel) if self.isServer and self.isAddedToPhysics then setWheelShapeTireFriction(wheel.node, wheel.wheelShape, wheel.sinkFrictionScaleFactor*wheel.maxLongStiffness, wheel.sinkLatStiffnessFactor*wheel.maxLatStiffness, wheel.maxLatStiffnessLoad, wheel.sinkFrictionScaleFactor*wheel.frictionScale*wheel.tireGroundFrictionCoeff); end; end function GroundResponse:applyRandomForceToWheels(dt) local numWheels = table.getn(self.wheels); if numWheels == 0 or not self:getIsActive() then return; end local speed = self:getLastSpeed(); local forceFactor = 0.001; local totalMass = 0; for ,component in pairs(self.components) do totalMass = totalMass + getMass(component.node); end for i=1, numWheels do local wheel = self.wheels[i]; if speed > 1 then if wheel.nextRandomHitTime == nil then local hitDistance = math.random(1, numWheels) * 0.5; local speedMS = speed / 3.6; local timeDelta = math.min(1000, (1000 * hitDistance / speedMS)); wheel.nextRandomHitTime = gcurrentMission.time + timeDelta; end end if wheel.nextRandomHitTime ~= nil and wheel.nextRandomHitTime < g_currentMission.time then if wheel.hasGroundContact and wheel.contact == Vehicle.WHEEL_GROUND_CONTACT and wheel.forcePercentage == nil then local r1, r2 = Utils.getNormallyDistributedRandomVariables(5, 5*0.333); r1 = math.max(0.0001, r1); r2 = math.max(1, r2); -- linear influence of speed results in too intense hits --local force = forceFactor * totalMass * speed * r1; -- square root is better local force = forceFactor * totalMass * math.sqrt(speed) * r1 * 0.2; local maxForce = forceFactor * (totalMass * 0.5); force = math.min(force, maxForce); wheel.timeTillFullForce = r2 * 50; -- max. ~500ms wheel.forcePercentage = 0; wheel.currentForce = force; end end if wheel.currentForce ~= nil then local delta = (dt/wheel.timeTillFullForce) * 0.01 * math.random(20); if speed > 1 and not wheel.maxForceReached then wheel.forcePercentage = math.min(1, wheel.forcePercentage + delta); else wheel.forcePercentage = math.max(0, wheel.forcePercentage - delta); end local currentForce = wheel.forcePercentage * wheel.currentForce; local dx,dy,dz = 0,-currentForce,0; --local dx,dy,dz = localDirectionToWorld(wheel.node, 0,-currentForce,0); local px,py,pz = localToLocal(wheel.driveNode, wheel.node, 0,0,0); addImpulse(wheel.node, dx,dy,dz, px,py,pz, true); --addForce(wheel.node, dx,dy,dz, px,py,pz, true); if wheel.forcePercentage == 1 then wheel.maxForceReached = true; end if wheel.maxForceReached and wheel.forcePercentage == 0 then wheel.forcePercentage = nil; wheel.currentForce = nil; wheel.nextRandomHitTime = nil; wheel.maxForceReached = false end end end end

0
olhund
olhund14.01.2018

LUA call stack: =C:/Users/olhun/Documents/My Games/FarmingSimulator2017/mods/FS17_ForRealModule03_GroundResponse/register.lua (71) : delete dataS/scripts/BaseMission.lua (371) : deleteMap dataS/scripts/FSBaseMission.lua (537) : delete dataS/scripts/utils/Utils.lua (1870) : oldFunc dataS/scripts/utils/Utils.lua (1858) : oldFunc dataS/scripts/missions/mission00.lua (84) : delete dataS/scripts/events.lua (125) : delete dataS/scripts/gui/InGameMenu.lua (457) : OnInGameMenuMenu dataS/scripts/gui/InGameMenu.lua (715) : leaveCurrentGame dataS/scripts/gui/dialogs/YesNoDialog.lua (62) : callbackFunc dataS/scripts/gui/dialogs/YesNoDialog.lua (50) : sendCallback dataS/scripts/gui/elements/ButtonElement.lua (191) : raiseCallback dataS/scripts/gui/elements/GuiElement.lua (279) : mouseEvent dataS/scripts/gui/elements/GuiElement.lua (279) : mouseEvent dataS/scripts/gui/elements/GuiElement.lua (279) : mouseEvent dataS/scripts/gui/elements/GuiElement.lua (279) : mouseEvent dataS/scripts/gui/elements/Gui.lua (270) : mouseEvent dataS/scripts/main.lua (1857) : mouseEvent

0
anthu
anthu03.08.2017

hallo rachederrasen kann man diese groundresponse.lua auch mit giants neuem groundresponsemod v 1.0.2.0 verwenden? lg andreas

0
R
rachederasen14.08.2017

Das Ground Response Modul 3: V1.0.2.0 von Giants ist kompatibel mit meiner GroundResponse.lua V1.5 und V1.6 (Da beim Update nur die ModDesc und register.lua von Giants Modul 3 V1.0.2.0 bestehen bleiben und ja identisch zu deren V1.0.1.0 ist, braucht ihr das Update ohnehin nicht machen, denn die groundResponse.lua ist ja entscheidend). Gruß Andy

0
R
rachederasen03.08.2017

Hab ich noch nicht getestet. Gege Bescheid, wenn ich das erledigt habe. Eigentlich braucht ihr das Modul garnicht updaten, denn dadurch wird ja der Inhalt (die groundresponse.lua) von mir durch eine von Giants ersetzt. Gruß Andy

0
G
gerrit047623.05.2017

Moin, ich habe mal eine Frage. Dein Script läuft super und es macht riesig Spaß aber beim Mod-Traktor "John Deere 7R TechMod V2" klappt es nicht! Dieser rutscht und hat auf dem Feld nur durchdrehende Reifen. Die einsinktiefen auf den Böden sind auch deutlich höher! Muss ich bei dem Traktor (Reifen) noch etwas anpassen? Gruß Gerrit

0
R
rachederasen23.05.2017

Moin Gerrit, das Problem haben leider einige Modschlepper. Ich suche schon länger nach einer Lösung innerhalb der Fahrzeugmods (z.B. der Xerion, sobald der Breitreifen drauf hat, das gleiche Problem, der JD 7030 Premium auf der Vorderachse, der 6R,..usw). Die Werte sehen aber scheinbar alle richtig aus, die Pfade zu den Trelleborg stimmen auch,... War nur die letzte Zeit sehr verhindert durch einen Banscheibenvorfalls. Deshalb kann ich nur 5 min am Tag am PC sitzen... Gruß Andy

0
O
Omat199812.05.2017

Moin Andy, erst einmal Danke, dass du dich so bemühst den Fehler zu finden! Ich habe noch ein bisschen getestet und ich weis nicht woran es lag, aber der Fehler ist weg. Frag mich nicht woran es jetzt lag. Ich habe zwar immer noch den ,,Fehler", dass die Trecker beim original Modul ein/zwei mal schaukeln, aber bei der überarbeiteten Version ist dies weg. Falls du mal sehen willst, was ich meine kann ich dir ein Video schicken, wo das zu sehen ist. Gruß Omat :D

0
R
rachederasen12.05.2017

Moin Omat, danke für die Rückmeldung :) Glaube ich dir auch so, brauchst kein Video machen. Werde weiter forschen (soweit die Zeit es zulässt) woran das liegen könnte. Bis bald Gruß Andy

0
R
rachederasen11.05.2017

Kommentarfunktion immer noch inaktiv... Hier das Video zum Test mit dem MF 7700: https://www.youtube.com/watch?v=bHvn0MkCaO8 Gruß Andy

0
R
rachederasen11.05.2017

Moin Omat, danke für die Info. Habe jetzt noch mal kurz auf der Testmap getestet nur mit dem Modul 3 V1.5.2, Drive Controll, FillMassAdjust, Gearbox, und den Fahrzeugmods...Kein Schaukeln :( bin ratlos Kanns mir net erklären, habe den 7700 MF mal aufgenommen auf der "an der Ostsee"-Map, meinem TestAreal, der hat die beladenen Bandit 750 und den Fetten Krone Tridem hinter, auf 3 verschidenen Untergründen (Gras, Feld, Straße), kein Schaukeln, auf der neuen Südharz-Map schon. Das ist für mich grad unverständlich... Lade gerne ein Video hoch zum Beweis. Gruß Andy

0
R
rachederasen10.05.2017

Moin Omat. Das Problem, das du beschreibst, mit dem Schaukeln ist mir (wenn auch nur in abgeschwächter Form) auch aufgefallen. Nur bei mir sind nur einige Tridem (und auch nur voll beladen) betroffen. Der Bandit 750 machts z.B. net. Wenn ich die nächsten Tage mal wieder Zeit finde mich etwas länger an den PC zu setzen, als nur 5 min, dann schaue ich mal wo durch dies ausgelöst werden könnte. Hatte auch schon mal in einem meiner unzähligen Tests beobachtet, dass das Schaukeln mit dem Standart Modul 3 genau so auftritt. Könnte auch an einer anderen Mod liegen,... Um nach dem Problem mit einigen Rädern von Modschleppern zu suchen bin ich auch nocht nicht gekommen,... Gruß Andy

0
O
Omat199811.05.2017

Guten Tag, ich habe selber gestern ein bisschen rumgetestet und mir ist aufgefallen das es nicht an einer anderen Mod liegt und das der Effekt durch die bearbeitete lua nur verstärkt wird. Der Effekt tritt nämlich auch auf wenn man das Original Modul ohne überarbeitete lua verwendet, allerdings schaukelt das Gespann dann nur ein/zwei mal und dann steht es. Außerdem habe ich bemerkt, dass der Effekt am stärksten mit dem MF 7700 ist und z.B. mit dem Fendt 900 gar nicht auftritt. Vielleicht hilft dir das weiter bei der Lösung. LG Omat

0
O
Omat199810.05.2017

Moin Moin, ich habe dieses Skript runtergeladen und war erst einmal begeistert. Endlich müssen die Schlepper auch mal n bisschen Leistung haben um die Maschinen zu ziehen. Jetzt habe ich aber folgendes Problem entdeckt: Wenn ich an einen Schlepper einen Tandem oder Tridem Hänger hänge fängt dieser im Stillstand an zu schaukeln, was sich nur ändert wenn ich den Hänger abkoppel. Besonders fällt es auf mit dem MF 7700 und dem Krampe Bandit 750 auf einem Feld (egal ob gegrubert/gepflügt oder abgeerntet). Ich habe schon viel ausprobiert finde den Fehler aber nicht. Ich nutze das Modul 03 in der neuesten Version ( 1.0.1.0 ) und die Ground Response Version 1.5. kann mir einer helfen oder hat einer das gleiche Problem ? Grüße Omat

0
B
Bomberman8203.05.2017

Habe erst kürzlich mal Zeit gefunden es zu testen die neueste Version und muss sagen Top. Volle Punktzahl und klare Empfehlung aufjedenfall. Einzig bei einem vollen Ballenwagen wie dem Brandtner den man über Modhub beziehen kann, kann es passieren das der Hinterteil manchmal wegdriftet. Aufjedenfall genial und ein muss auf der Sosnovkamap da es ja in den Ostblockstaaten ja eh etwas rauher und schwerer zugeht mit dem lehmartigen Boden. Wer es noch realistischer mag kann auch den Manual Attacher nutzen. Danke fürs teilen.

1