Yearly Developer Requests Post

  • Well, it's been a whole year since I last moaned enquired about these improvements.

    I'll limit myself to one post a year so as not to be tiresome :)


    GeoConvert

    Make GeoConvert give an unambiguous "all done / all complete" message in the log when it's done all tiles and the green text is shown.

    Currently in AeroScenery I have to screenshot (yeah, I know, right) the GeoConvert window every second and scan each pixel for green text. It's crazy.


    TGI Files

    Either open up the binary TGI file format or give us a DLL to write them. The text TGI format is already known as MCX writes it.

    An export DLL apparently exists as it was given / offered to Arno, who I spoke to on the subject.

    Being able to fully write TGI files in code would open up so many possibilities.

    I get that IPACS might want to be able to change the format and that's harder when it's open, but an export DLL would be no better or worse than the Max and AC3D plugins in that regard.


    API Messages

    Be able to read and write all weather details with the C++ message API. A plugin to automatically set conditions based on METAR data and location would be great, but currently not possible.


    Since last year we now have a 3DS Max 2019 plugin, so huge thanks to IPACS for that :thumbup:


    Promise I wont mention these again until 2020 :saint:

  • Some form of realistic looking weather has been my number one request since day one. It doesn't have to change, it doesn't have to reflect the current real world, just multiple cloud layers that reach the horizon and wind that varies by altitude would make a huge difference for me.

  • It's not that there's no documentation, it's that the weather API doesn't exist :)


    The messages in the C++ plugin example are the only messages Aerofly sends / receives to registered plugins.

    8| Well, that explains quite a lot about my misguided attempts to find additional API symbols. I must have missed that information... in the documentation. ;)


    I believed there were more symbols because I could see some passing by which had unknown IDs. Well, thank god I cancelled my quest after some weeks of searching and asking questions on the forum. ;)

  • I believed there were more symbols because I could see some passing by which had unknown IDs.

    There's only "Simulation.Visibility" documented at the moment.


    I'd expect to see


    Simulation.Wind.Direction

    Simulation.Wind.Strengh

    Simulation.Clouds.[etc]


    if there was any direct way to set those.


    What I suspect is happening is that the sim is built such that it needs to restart (the simulation bit, not the entire app) in order to change the weather, so that doesn't lend itself well to being set via a plugin.


    I checked if it was possible to write to the main.mcf file while the sim is running, and for those changes to take effect (as I'm sure you did), but it only seems to be read on app start.

    Shame, as that would have been an acceptable work around.

  • The main.mcf is only read on startup and then overwritten several times, e.g. when you exit the simulation and didn't crash it saves the aircraft or when you set up a route in the menu it saves that, too.

    The visibility at least is probably adjustable via external dll, I mean you can assign keys for it, I see no reason why you shouldn't be able to emulate that.

    Wind speed and strength might also work if you send it a step qualifier or sth. Those have existed in the Aerofly RC world for quite some time, if you're lucky they active in the FS world, too.


    Clouds may not work... this is mainly because an external library is used for them and as we said in the past this somewhat limits what we can do with them at the moment. The only way around this would be to reprogram them but that's easier said than done of course. This is why it's most likely not possible to inject any weather from the outside, there are just no "hooks" on the inside.

  • Jet-Pack Thanks for the info.


    Seeing as I have your ear ... the plugin API seems like it's frozen since 2017. A few additions would open up so much cool stuff.

    Reading and writing weather is one of course.

    Being able to add and position an aircraft or other model could bring AI airport traffic, VATSIM support, AI moving vehicles etc.


    Hopefully one day anyway. :)

  • Reading and writing weather is one of course.

    Being able to add and position an aircraft or other model could bring AI airport traffic, VATSIM support, AI moving vehicles etc.

    Sending all this data via dll is not going to cut it. That is how you get a slow simulator that crashes a lot and we couldn't optimize the code "on the other side".

    We need integrated systems for this, e.g. one system that can display a ton of aircraft and other systems that tell these aircraft where they should be. Those sources can then be switched around between AI, multiplayer, VATSIM, PilotEdge, IVAO, projectFLY, etc. but all use the same core function to load and display the aircraft asynchronously. Ideally the different sources from the internet only need a tiny adjustment between them, e.g. the differences in file formats they use to send the data.


    When we decide to do any of this we are going to do it as a core part of Aerofly... done right from the beginning. And if it is in the sim and we're "finished" with it and there is still demand for sending data to these modules form the outside we can think about it. But we're not going to write the systems to load and display aircraft or weather and then not use it for ourselves.

  • that would require a serious rewrite to the core code.

    No, not a rewrite, obviously the rendering engine is pretty perfect, no need to redo that.

    But it requires some additional cross connections and changes to shaders and rendering code and that implies many changes and makes the code potentially unstable and untested.... which means we won't be able to push out releases to the different platforms when we want to.

  • No, not a rewrite, obviously the rendering engine is pretty perfect, no need to redo that.

    But it requires some additional cross connections and changes to shaders and rendering code and that implies many changes and makes the code potentially unstable and untested.... which means we won't be able to push out releases to the different platforms when we want to.

    But I’m still believe that IPACS can fix that problem in future :)