MSFS2020 Soaring Thread

Sure, that would be even better. :slight_smile:

I think the solution could be not to randomize but to use procedural generation.
If both players use the same seed (like the word “banana”, easy to exchange) they will get the same random-looking result.

Ok, I am probably going to embarass myself now, but hey YOLO. :smiley:

@thealx I thought about those thermals again. You could do something like this to create them procedurally.
The multiplayer users would just make sure to all use the same seed and thermal file.

EDIT: Alternatively you could use the first six or seven digits of the unix timestamp as the seed. Most people have their PCs halfway well synchronized. But it is more dangerous as those might have flipped over if some people join significantly later.

Steps required:

  1. have an input field for a user to input some words as the seed
  2. build a checksum from the seed, make sure it is a number that doesn’t create weird results in the function
  3. run it through some function, I used a sinus because it is endless and creates numbers between minus one and one. Afterwards I did Math.abs to keep it positive because that’s how we roll here. :smiley:
  4. define minimums and maximums or read them from the CSV
  5. for every thermal use its line number in the CSV or something, multiply it by the hash number, and throw it into the function.
  6. apply minimums

This should give your thermals positive lift numbers between the defined minimums and maximums.
They will look random, but they aren’t. The same seed should always produce the same numbers.

Sorry for doing the below example in JavaScript, I just did some work on a small website script so I had it handy. Also this might not exactly be perfect, I literally wrote it in 5 minutes. Maybe this helps you or at least gives you an idea. :slight_smile:
(also you can throw it into JS Bin - Collaborative JavaScript Debugging or so, it should work)

// this function is just a simple and fast checksum generator I took from stackexchange, nothing fancy.
// you can of course use md5 or any other as well.
function checksum(s)
{
  var chk = 0x12345678;
  var len = s.length;
  for (var i = 0; i < len; i++) {
      chk += (s.charCodeAt(i) * (i + 1));
  }

  return (chk & 0xffffffff).toString(16);
}


var myseed = "MudspikeFTW";                  // this is the input seed.
var myhash = parseInt(checksum(myseed),16);     // parseInt just makes it decimal

var rangemin = 2;                  // minimum strength of the thermal
var rangemax = 15;               // maximum strength of the thermal

for (var i=1; i<=100; i++)
{
    // just a demo, in your case you could just use the line number from the CSV.
    myThermal = i; 

    // the sinus function. It puts out nice integer numbers.
    myThermalForce = Math.round((Math.abs(Math.sin(myThermal*myhash))*rangemax));
   
  	// if it is too small, just give it the minimum value
	if (myThermalForce <= rangemin){myThermalForce = rangemin;}

    // instead of console log obviously do something else with the number here.
    console.log(myThermalForce);
}

EDIT: And you can use this with little adjustments for the size of the thermals as well.

Meh. Seeded it a few times and it isn’t always nicely random.
If you use it you might want to shuffle the numbers in some way (for example first do all the even indexes, and then the odd ones. Or do sin for the odd ones and cos for the even ones. :smiley: ). Anyway, I guess you get the idea.

uhm… okaaaay) my head occupied by stupid AI sitting inside of towplane, but I will proceed to work with thermals soon and will check your method.

While spelunking around for a different topic (VFRMAP for VR - #7 by fearlessfrog) it occurred to me I should pass on the nice OpenAIP thermals data feed they do here -

https://openaip.github.io/api-v2-docs/#/Hotspots/get_hotspots

It seems to be a free to use and open dataset of thermal hotspots for gliders, so passing on in-case it’s useful for any MSFS plugin. It might already used, so apologies if not useful or already used.

The data seems to be from here: openAIP - Worldwide Aviation Database

…with a map display (thermals shown as cloud in orange/red):

1 Like

that’s actually interesting. denpend on coverage, but worth to try.

1 Like

We have worked hard to bring the Kinetic Assistant to the new level, and partially succeed. Unfortunately, current API and MSFS limitations does not allow Kinetic to fully control AI aircraft, but we have reached some acceptable level of towing by AI.

Two modes available - immediate take off, which can be used anywhere, and taxiing together with a tow plane. Both are quite limited so please read the description carefully. We are going to improve AI behavior but that will take some time to find proper ways to do it. At the moment, towing by live pilot is preferable and strongly recommended to try at least once!

Rope calculation improved as well so you will have better experience now both with winch and towing.

Several issues fixed: compatibility with CJ4 mod and thermals CSV files reading error.

Check out our latest videos for additional information:

2 Likes

Awesome!
Will try it at the weekend.

@Aginor, shall we try towing one of these days? (ehm, evenings) I am happy to be the towing pilot :+1:

So far I have only done winch starts. So yeah, that would be a nice thing to try.

Great, let’s agree on a day/time here so that others, if they’d wish, could join too, OK?

crash falling GIF by nikki desautelle

Sadly my time is a bit limited next week (business trip, extra annoying during this time) so I would have to go for today or tomorrow, or wait one week.

Maybe we should make an extra thread for that.
I’ll post one in a few minutes.

Here it is.

I gave Kinetic Assistant 7.1 a try today.

  • The winch is now more gentle, I like it.
  • I can also confirm that the thermals now work with standard regional settings on German Windows 10.
  • I had some problems with AI towing. When I spawn a tow plane on my usual air fields it just does nothing. It turns slowly into some direction but stays on the ground.
  • I did get AI towing to work on a bigger airport. Still a bit wonky but works.
  • I also had a problem that when I want to start in a parking space, the plane starts with a considerable ground speed. Not sure why. I thought it was the wind so I deactivated it, but the problem was still there. This doesn’t seem to be a KA problem though, it also happens when KA is not running.

All in all this is pretty cool now, good job @thealx !

Afterwards I flew the DG808 from Oos (EDTB) to the Hornisgrinde (the highest mountain in the northern Black Forest: Hornisgrinde – Wikipedia).
This time I set the wind only to 10knots. That made ridge soaring a bit harder but it worked well for me.
I still used a thermal that I set over Baden-Baden to gain some altitude before flying south.

My track. The Hornisgrinde is in the south-eastern corner of my flight path, where I turned west.

The Hornisgrinde. I forgot to take pictures flying south and when I was near the Hornisgrinde, because I had all hands full flying the airplane and finding lift. :slight_smile:

Heading north again.

Back at Oos

1 Like

Sorry if I mist it, but did they change this to a paid version? I downloaded a freeware version a few weeks ago from https://msfs.touching.cloud/. Is there a difference?

1 Like

I am not sure.
They seem to sell it on SimMarket (and I got it there when it was free for some time), but the current 0.7.1 version (forgot the 0. when I posted earlier) seems to be free to download on their site: https://msfs.touching.cloud/mods/kinetic-assistant/

1 Like

No, at the moment versions are exactly the same. After base functionality will be finished (after v1.0), paid version will get some additional features.
We placed it on SimMarket just to became known in the community, for future projects sake. Store owners declined to make it free, so that is how it is.

about 60% of the airfields does not have taxi paths. Unfortunately, there is no way to find it out by SimConnect features (functions that return nearby airports still broken), so this is back-up feature.

immediate takeoff plane does not follow flight plane or ATC commands, so there is no way to control it. only thing applied - altitude adjustment to make it lift faster, but only until ~7000ft

to fix DG parking appearance issue unpack these files https://drive.google.com/file/d/16ZhBG9NJQ0p1k7Xl-aoSi9WmEi-tBnGX/view?usp=sharing
it will be fixed in next update

1 Like

When I get home from work tonight I’m going to replicate these conditions in MSFS2020 and attempt dynamic soaring! :smiley: Hey, what have I got to lose?!

I might need a tow though so it might have to wait until another multplayer session. :slight_smile:

1 Like