The online racing simulator
FFB flavour enhancer (experiment)
(61 posts, started )
#1 - Juls
FFB flavour enhancer (experiment)
For people interested to try something different, this is a little experiment.
This little dll intercepts FFB commands issued by LFS, and apply some weird filter to make you feel whatever can be felt inside the FFB (bumps, grip loss...etc.) while avoiding clipping.

1) unzip this dll in LFS folder, same folder than LFS.exe
2) run LFS, and in options, set force level at 25 (default is 50)... this is needed.
3) try it on a bumpy track like South City Sprint 2. At the beginning you feel nothing it's normal it takes about 30seconds - 1 minute for the dll to adapt to force level from the car you are using. Works best with cars sliding a lot like LXs or Raceabout, I can feel earlier when it is going to slide.

To remove it, simply delete the dll file. It does not change anything in your LFS install.
Attached files
dinput8.zip - 100.9 KB - 1712 views
Interesting! I will try it now.
Could you describe the "weird filter"-thingy a little more?
#4 - Byku
Very interesting addon ^^. The FFB is much sharper now, but personaly i like standard FFB a little bit more(more dull but also easier to drive ).

Edit. WOW... tried FZ5 on Aston. All weight transitions are easly felt O.o. Mate, great job... but the ffb is rather too strong for me even on 15%.
#6 - Byku
I think it is strictly related . Nice on skitpad , really could feel what's goin on .

Edit. I'm starting to like it more and more O.o... feeling bumps etc is great, but turning the wheel is to heavy .
Good job, the feeling was noticeably different.

I guess this dll exaggerates the higher frequencies? Would it be possible to add a cfg -file to adjust the amount of FF -correction?

To me it feels a bit too much like "on & off". Fast transients (?) are felt strongly, but there is maybe too much dynamic range, that is to say the constant (low frequency) force feels too weak compared to sudden "spikes".

Why does the ingame FF have to be set to 25%?

What are your settings in logitech profiler?
#8 - Juls
Yes it is quite strong to make the difference more striking. I do not have time to tune the parameters, and FFB is always finally a question of personal taste.

Yes it is related to the other thread. For the motion simulator I had to develop an adaptative filter to scale down signal from sims (acceleration from -6G to 6G) while keeping or enhancing details.

And yesterday I just realized FFB is the same problem...sims have to fit steering forces (large range) into the limited range of inputs a FFB wheel supports, without clipping, without smashing details.

edit: ingame FF have to be set to 25% or lower otherwise FFB commands the dll receives are already sometimes clipped and it gives weird results like ON & OFF.
I'll definitely give this a shot this afternoon after my exam, sounds brilliant. It also sounds like a good arm workout...
Cool stuff. Will give it a test soon.
This just kills my FFB completely. None whatsoever.
Mmm, Im dont really know anything about this, but it does feel Alot diffrent, feels abit to wierd for me tbh, but as i said i dont know if its anymore realistic or anything, but still an interesting thing
#13 - Juls
It is not supposed to give a better FFB. Just a little experiment I wanted to share. In this example bumps are massively exagerated. I did not know where to put it...between misc addons and programmer forum.

For me it is amazing how alteration of FFB signal can give the feeling physics are different. Different feeling for car mass, mass transfer, bumps, suspensions feel harder...etc.Tyre model and FFB, top two priorities for a sim.
It is certainly very different. I tryed it for a hour or so, with the XRT and FXR on multiple tracks. I love the exxageration of the kerbs and bumps, that feels great, but the wheel has a juttering affect when the steering is held in a position. For example, if im going through mid-corner with the steering held at one position constantly and the speed constant, the wheel seems to lose its FFB, then re-gain it giving a "juttering affect", almost the feel of a heavily buckeled wheel. It also sticks sometimes when turning, and refuse's to return to center. My G25 is fine, and my LFS always runs above 60FPS, so i cant see that being the problem. My dad is also an avid LFS fan, and a sim-head, so i installed the mod onto his LFS (he also has a G25) and it does the same on his too.

Either way, its a very interesting mod with some great abilitys. In its current state though, it does'nt do it for me. Good work though.
I'll try it later, but I already think this has a great potential if you will continue to make it better
#16 - Juls
Quote from Nathan_French_14 :For example, if im going through mid-corner with the steering held at one position constantly and the speed constant, the wheel seems to lose its FFB, then re-gain it giving a "juttering affect", almost the feel of a heavily buckeled wheel. It also sticks sometimes when turning, and refuse's to return to center.

You are right initially this filter is for a different use, and it causes some side-effects... low frequencies are washed out.
Could that jittering be as a result of the tire model not being technically round? Maybe the FFB model picks up on that?
Sounds interesting will give it a spin later
Quote from MAGGOT :Could that jittering be as a result of the tire model not being technically round? Maybe the FFB model picks up on that?

Maybe, but i think the tyres flexing from the pressure would wash out some of this feeling as the contact patch is very smooth in the game and does not follow the shape of the wheels. Its kinda hard to explain the feeling really, but as i said before, a heavily buckled wheel is probably the best way to explain it.
Quote from MAGGOT :Could that jittering be as a result of the tire model not being technically round? Maybe the FFB model picks up on that?

The physics of the tyre and its bounds needn't match the visuals.
Quote from Bob Smith :The physics of the tyre and its bounds needn't match the visuals.

I don't mean its visuals; we all know that the LFS tire has a set number of contact patches. It is my understanding that the sample points are, as far as the physics engine is concerned, flat. That is to say that each patch is treated as a separate entity in so much that the calculations for one are not totally dependent on another. As each patch is calculated by the physics engine, that could lead itself to this jittering.

That may not make sense, I've had a few brews. Ultimately I don't know the physics engine so it's more or less a thought from me.
#22 - Juls
There is jittering here for another reason. The FFB is not updated regularly, only when needed...but the filter requires 100 samples per second. So to make a quick and dirty patch I just feed the filter with the last FFB command every 100th of a second until a new command comes. There should be some smoothing there before the compression.

Because of that the filter receives aliased signal, several times the same value and then a jump to another value. The filter sees these jumps as high frequencies and amplifies them which of course is wrong.
After a couple of laps I have to say, it has some downsides, but the feeling for light front wheels is really nice.

I just like it, wenn you go over a bump and you suddenly feel when the front end has no weight at all on it
it feels very much like iracing in that there are a lot of random wheel movements that dont seem to be related to the physics at all masking what you should be able to feel from the wheel
Quote from MAGGOT :It is my understanding that the sample points are, as far as the physics engine is concerned, flat.

We all know tyres are divided into sections for modelling three-dimensionally. I've not read anything to suggest each section has no curve. In fact I would have thought it would have been harder to make them flat than rounded, as the surface of each arc would not be a constant radius away from the wheel centre. This is ultimately all conjecture though, as with the complex tyre deformation in LFS, only Scawen truly knows how this works.

FGED GREDG RDFGDR GSFDG