eggrobin

[WIP][1.5.1, 1.6.1, 1.7.x, 1.8.1] Principia—version Fréchet, released 2019-12-26—n-Body and Extended Body Gravitation, axial tilt

Recommended Posts

20 minutes ago, Zeiss Ikon said:

Two, I can try to install an older version of Principia -- but I don't see that older binaries are available.  I'm looking for the oldest version that supports 1.6.1, in the hope that it won't require libraries newer than my 16.04 Ubuntu.

Three, if I can install the necessary libraries for only Principia, I'll be good to go for another several months, at least.  The libraries in question are libc++ and libc++abi.  I can download just the binaries for those libraries -- would Principia find them successfully if I place them inside the Principia folder?

The oldest binary that supports 1.6.1 is at bit.ly/2CWdvdo.  You're on your own, though: we upgraded past Xenial (16.04) in June 2017 so if a binary produced after that date works on Xenial, it's pure luck.

Recent versions of Principia want libc++-8-dev and libc++abi-8-dev, and I am not aware that these would be available before Bionic (18.04).

Share this post


Link to post
Share on other sites
7 hours ago, pleroy said:

The oldest binary that supports 1.6.1 is at bit.ly/2CWdvdo.  You're on your own, though: we upgraded past Xenial (16.04) in June 2017 so if a binary produced after that date works on Xenial, it's pure luck.

Recent versions of Principia want libc++-8-dev and libc++abi-8-dev, and I am not aware that these would be available before Bionic (18.04).

Thanks.  I was afraid of that.

Clearly there's a strong bias in the Linux community in favor of those who upgrade everything at the earliest opportunity, vs. those who ride the old as long as possible to avoid having to spend their work/play time fighting bugs and learning a new system only to have it change again (figuratively) the next week.  If you jumped off 16.04 in mid-2017, it had to be to 16.10, 17.04, or pre-release builds of 17.10, and as you say, it's anyone's guess whether stuff made to run on that would work on 16.04.

I'll grab the binary you pointed to and see if it'll work.  Thanks for the help!

EDIT: Followup, not surprisingly, Principia Euclid (seemingly built under Ubuntu 16.10 or 17.04) caused my 1.6.1 RSS/RO/RP-1 game install to fail to start on Ubuntu 16.04.  The library versions cited above are those for 19.04.  I'd suggest that at the least, it might be more user friendly to keep support for LTS versions, at least until the next LTS comes out.  At present, it appears that one must keep up to the latest non-LTS releases of Ubuntu in order to keep the most current Principia as recommended by the devs.

Worth noting that the game itself seems to work in all supported versions of Ubuntu -- evidenced by the fact it works fine in 16.04, which is the oldest currently supported version.

FURTHER EDIT: If I had the faintest idea how to build a complex program like this, I'd try building it myself to see if that fixes the version dependency -- but I don't know in detail how to do that.

Edited by Zeiss Ikon
Add followup

Share this post


Link to post
Share on other sites
14 hours ago, Zeiss Ikon said:

I'd suggest that at the least, it might be more user friendly to keep support for LTS versions, at least until the next LTS comes out.  At present, it appears that one must keep up to the latest non-LTS releases of Ubuntu in order to keep the most current Principia as recommended by the devs.

The reason why it's not going to happen is that we need a recent version of Clang and libc++ to build Principia.  Essentially, we need complete support for C++17.  The version of libc++ that shipped with Xenial was 3.7, where they had hardly started looking into C++17.  We don't, at the moment, have complete C++17 support on MacOS (that only came with Catalina) and having to emulate the missing bits is a royal pain in the neck (and hampers development of useful features).

14 hours ago, Zeiss Ikon said:

FURTHER EDIT: If I had the faintest idea how to build a complex program like this, I'd try building it myself to see if that fixes the version dependency -- but I don't know in detail how to do that.

That wouldn't help you.  You'd need a Xenial version of libc++ version 8, or it would not even compile.

Share this post


Link to post
Share on other sites
4 hours ago, pleroy said:

The reason why it's not going to happen is that we need a recent version of Clang and libc++ to build Principia.  Essentially, we need complete support for C++17.  The version of libc++ that shipped with Xenial was 3.7, where they had hardly started looking into C++17.  We don't, at the moment, have complete C++17 support on MacOS (that only came with Catalina) and having to emulate the missing bits is a royal pain in the neck (and hampers development of useful features).

Seems as if even upgrading to 18.04 wouldn't help me; I searched for libc++-8-dev and found it only in Ubuntu 19.04.  I am NOT going to jump on the "upgrade every six months" train.  Sad that the need for "useful features" pushes the entire mod out of the "Linux is just an OS, not a hobby in itself" world.

Maybe, instead of upgrading Ubuntu, I need to look at Debian based rolling distros...

Share this post


Link to post
Share on other sites
17 hours ago, Zeiss Ikon said:

Seems as if even upgrading to 18.04 wouldn't help me; I searched for libc++-8-dev and found it only in Ubuntu 19.04.  I am NOT going to jump on the "upgrade every six months" train.  Sad that the need for "useful features" pushes the entire mod out of the "Linux is just an OS, not a hobby in itself" world.

Maybe, instead of upgrading Ubuntu, I need to look at Debian based rolling distros...

You can always use `apt.llvm.org' for latest llvm packages. Furthermore, the `debootstrap' package included with each Ubuntu/Debian versions make upgrading issues entirely moot. I'm using debootstrap on Arch to avoid #include clashes with regard to the in-tree dependencies for Principia.

Share this post


Link to post
Share on other sites
20 hours ago, Zeiss Ikon said:

Seems as if even upgrading to 18.04 wouldn't help me; I searched for libc++-8-dev and found it only in Ubuntu 19.04.

It exists in 18.04.1.

Share this post


Link to post
Share on other sites
6 hours ago, sthalik said:

You can always use `apt.llvm.org' for latest llvm packages. Furthermore, the `debootstrap' package included with each Ubuntu/Debian versions make upgrading issues entirely moot. I'm using debootstrap on Arch to avoid #include clashes with regard to the in-tree dependencies for Principia.

Did I mention Linux and Ubuntu aren't themselves a hobby for me, never mind a job?  I have no idea what llvm and debootstrap are or are good for.  I use Linux mainly because it isn't Microsoft or Apple...

Share this post


Link to post
Share on other sites
On 12/16/2019 at 3:03 PM, pleroy said:

There is a configuration file for that.  There was also a discussion earlier on this thread.

I can't seem to find it anywhere in the folder, does it i have to write the config manually? If so, should i write something after the colon in "principia_gravity_model:"? Where do I need to place it, what should I name it, do i have to fill in other things such as gravity parameter and mean radius which is irrelevant for things i want to edit? That page doesn't answer any of those questions at all.

Share this post


Link to post
Share on other sites
1 hour ago, hanhan658 said:

That page doesn't answer any of those questions at all

 

By seeking to change the tilt of planets, you enter the realm of making your own mods, not unlike, e.g., changing other characteristics of planets with Kopernicus.

The page linked by @pleroy documents the Principia-specific aspects of that. It is not intended as a general introduction to KSP configuration modding.

It would be a good idea for you to become acquainted with that, and with ModuleManager patches in particular; see for instance @sarbian's ModuleManager handbook.

 

 

Share this post


Link to post
Share on other sites
On 12/9/2019 at 11:52 PM, sthalik said:

You can always use `apt.llvm.org' for latest llvm packages. Furthermore, the `debootstrap' package included with each Ubuntu/Debian versions make upgrading issues entirely moot. I'm using debootstrap on Arch to avoid #include clashes with regard to the in-tree dependencies for Principia.

A couple weeks of digging around when I had time to do so, and I found this ppa host that has a backport of llvm-toolchain-8 for Ubuntu 16.04; I installed the needed libraries (libc++-8-dev and libc++abi-8-dev) from that ppa, and (so far) my Ubuntu still works (it should continue, since these are rebuilt under 16.04), and Principia for November at least doesn't crash on starting the RO install (nothing in orbit in the existing save that I opened).

I couldn't find a link for the binary for Frechet (also don't have the correct French accents on my keyboard), so I wound up with something with a Greek-looking name, dated November 23.  Since Frechet was only a couple hours old on GitHub, I presume the binary and updated Readme to link to it will be along later.

Share this post


Link to post
Share on other sites
53 minutes ago, Zeiss Ikon said:

A couple weeks of digging around when I had time to do so, and I found this ppa host that has a backport of llvm-toolchain-8 for Ubuntu 16.04; I installed the needed libraries (libc++-8-dev and libc++abi-8-dev) from that ppa, and (so far) my Ubuntu still works (it should continue, since these are rebuilt under 16.04), and Principia for November at least doesn't crash on starting the RO install (nothing in orbit in the existing save that I opened).

Good to hear that you managed to make things work on 16.04, and thank you for reporting it.

I just updated the links for Fréchet on github.  Announcement coming in a few minutes.

Share this post


Link to post
Share on other sites

For the new moon (lunation number 247), the new release (Fréchet) is out.

  • Support for KSP 1.8.1 has been added.
  • The camera is oriented in map view and the tracking station so that the horizontal is the reference plane of the selected plotting frame. Further, the camera rotates with the plotting frame, so that the plotted trajectories do not rotate as time passes.

 See the change log for more details; note in particular the known issue with map view camera rotation when showing the menu.

We support two sets of versions of KSP: downloads are available for 1.8.1, and for 1.5.1, 1.6.1, 1.7.x. Make sure you download the right one (if you don't, the game will crash on load).

For the convenience of our Chinese users, the binaries can be downloaded either from Google Drive or from 腾讯微云.

 

Share this post


Link to post
Share on other sites

May I offer a suggestion?

I love the fact that Principia now shows celestial predictions as well. However, it takes an extreme prediction length to show significant portions of just the Mun's orbit. It may be better to either mutliply the prediction time for celestials before drawing them or to add a new option because I personally don't need a massive prediction length for my own craft, only for celestials.

Share this post


Link to post
Share on other sites

Question im not sure if this is true but does Principia have any bugs with rss ro and axis tilt or any bugs at all with RSS? I ask because id like to add it to my RP1 save i want to make sure it doesn't have any bugs before i add it? Thank you in advance:)

Share this post


Link to post
Share on other sites
13 minutes ago, Jim123 said:

Question im not sure if this is true but does Principia have any bugs with rss ro and axis tilt or any bugs at all with RSS? I ask because id like to add it to my RP1 save i want to make sure it doesn't have any bugs before i add it? Thank you in advance:)

Adding Principia mid-save is, while possible, a bad idea. Celestials and spacecraft will be in vastly different positions.

Share this post


Link to post
Share on other sites

Can I give you a suggestion?

You could add barycentre fixed, non rotating reference frame. Because it's kinda hard to fly like "this":

Spoiler

ez12vEQ.png

 

Share this post


Link to post
Share on other sites
22 hours ago, MorePortal said:

Can I give you a suggestion?

You could add barycentre fixed, non rotating reference frame. Because it's kinda hard to fly like "this":

  Hide contents

ez12vEQ.png

 

It looks like it is indeed necessary for the orbits of circumbinary planets to be legible. This will be a nontrivial amount of work (both for implementing the reference frame and sorting out UI questions). I opened #2454 to track this.

In the meantime, for interplanetary flights, I suggest using the reference frame centred on the target planet and fixing the direction of the Sun (the reference frame with the orange navball). This reference frame is similar to the target vessel frame (red navball) and should hopefully remain usable even with the binary star.

Impressive work stabilizing the Beyond Home system by the way!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.