Jump to content

[WIP][1.8.1, 1.9.1, 1.10.1, 1.11.0–2, 1.12.2–5] Principia—version ‎‎کاشانی, released 2024-05-08—n-Body and Extended Body Gravitation


eggrobin

Recommended Posts

Hey, this mod looks amazing!

It's honestly almost like a sort of simulation of planets, but in KSP1. Seriously, mods like these push the limits. 

If i may ask, how were you able to make a whole game inside a game? such simulations of planets moving usually takes a lot of CPU usage, even barring any rockets at all.

Link to comment
Share on other sites

21 hours ago, RiceCakes85 said:

Absolutely love this mod...is there any integration to create an alarm for a planned maneuver?  Im not finding one in the flight planner.

Principia works with Kerbal Alarm Clock. You can set KAC to automatically set maneuver alarms. I'm not using the stock alarm, so I don't know about that.  

Link to comment
Share on other sites

  • 3 weeks later...

Thank you so much!

I am playing KSP with Near Future and Far Future series. There are some engines that cannot be activated while flight planning (automatically shut down when throttle < 5%). I am wondering if Principia can provide a method to mannually assign active engines in flight planning, or just let me to decide the thrust and ISP.

Link to comment
Share on other sites

  • 2 weeks later...

For the new moon (lunation number 295), the new release (賈憲) is out.

Local optimization of manœuvres has been added to assist in tuning flybys.

The issue underlying the cryptic error message improved in the preceding release has been fixed.

A three-year-old issue in our handling of rotation with stock aerodynamics has been fixed.

Other bugs have been fixed. See the change log for more details.

Link to comment
Share on other sites

Thanks for fixing the  +1 nodal revolution button. Very useful, like when going from eq. LKO directly to Minmus without a plane change.

Also for this one "...we were missing the application of the angularDrag computed by KSP." I believe I was seeing this effect recently during launches, when rockets were spinning without stopping passively with fins.

One problem I'm still having is very low framerate, only 10 FPS when flying a 124 part airplane. It's 30 FPS on the ground (taxiing) which is tolerable, but it drops dramatically at liftoff. It's almost the same in in orbit- 150 part ship getting 10-15 FPS. A 30 part ship is 40 FPS. KSC overview is 80+ FPS. Tracking station is 40. It's very sensitive to part count. It's roughly 2x faster with stock physics for the same part count. It's definitely CPU limited, not graphics. Running JNSQ with stock aero (not FAR). Ryzen 5 3600. 

Link to comment
Share on other sites

First off, I love this mod so much and greatly appreciate all of the amazing work put into it. I am however having serious fps drops when dealing with large scale spacecrafts. I understand that this is a consequence of how I choose to play with the mod, but I'm somewhat desperate for a solution.

I'm sorry if this has been asked before, but is there a version of Principia that simplifies its complex physics slightly? Potentially one that only retains the interactions that celestial bodies have on crafts? For my playstyle the gravitational interactions that celestial bodies exert on each other, as well as crafts on other crafts, or crafts on celestial bodies are not integral.

Would removing those physics interactions improve performance? And does a version of Principia that does so exist? Thank you!

Link to comment
Share on other sites

5 hours ago, CobalTech said:

I'm sorry if this has been asked before, but is there a version of Principia that simplifies its complex physics slightly? Potentially one that only retains the interactions that celestial bodies have on crafts? For my playstyle the gravitational interactions that celestial bodies exert on each other, as well as crafts on other crafts, or crafts on celestial bodies are not integral.

Would removing those physics interactions improve performance? And does a version of Principia that does so exist? Thank you!

There is no "simplified" version of Principia and there won't be because the time is not spent where you think it is.  The interactions between celestial bodies cost virtually nothing: we can compute about 6 months of interactions per second, which corresponds to warp 15,000,000.  Nobody is limited by that.

The problem with large spacecrafts is that Principia needs to position every single part at every frame.  If your vessel has, say, 1000 parts, that leaves us with 40 μs for each part.  That's not much, and sure enough we will sometimes slow down the game.

We are aware of the problem and there is an issue for that (#3230) but unfortunately, there is no easy solution.

Edited by pleroy
Link to comment
Share on other sites

On 11/12/2023 at 9:26 PM, Krazy1 said:

 still having is very low framerate, only 10 FPS when flying a 124 part airplane. It's 30 FPS on the ground (taxiing) which is tolerable, but it drops dramatically at liftoff. It's almost the same in in orbit- 150 part ship getting 10-15 FPS. A

 @Krazy1 fyi...I'd be happy to hear what you observe with next month's Principia release...if you have not already, I suggest checking out the interesting discussion at #3230 and consequent changes at #3805 

Link to comment
Share on other sites

Ah, an old question

It seems like there is no way to skip the endless burning procedure with Principia installed, which in fact made it impossible to use low thrust engines. I saw the your disscussion with @FreeThinker on the compatibility with the PersistantThrust mod in 2019. But now the Principia maneuver planner can predict trajectories taking burning procedure into account, I'm wondering if Principia could go further to implement some kind of "burning accelerator". I really want to use ion thrusters in the n-body gravity powered universe......

Link to comment
Share on other sites

On 11/26/2023 at 12:14 PM, AloE said:

 @Krazy1 fyi...I'd be happy to hear what you observe with next month's Principia release...if you have not already, I suggest checking out the interesting discussion at #3230 and consequent changes at #3805 

Thanks for the notice. I've been a good boy Santa... please bring me lots of garbage collection optimizations.

One thing that's still baffling is the dramatic change in frame rate between landed and in flight. It's literally 10 FPS in flight and the instant it touches down it's 30 FPS . Vacuum or atmosphere, doesn't seem to matter. Landed actually has additional interactions with the CB surface versus a free body in flight. So I'm really curious how the update will affect this behavior. 

 

On 11/27/2023 at 4:42 AM, ChrisPan said:

which in fact made it impossible to use low thrust engines.

Well, it's not "impossible". I just use 4x physics warp, set KAC to pause near the end of the burn and do something else. 1 hour burn takes 15 minutes, when you don't have to watch it isn't too bad IMO.

Link to comment
Share on other sites

On 11/29/2023 at 11:08 AM, Krazy1 said:

One thing that's still baffling is the dramatic change in frame rate between landed and in flight. It's literally 10 FPS in flight and the instant it touches down it's 30 FPS . Vacuum or atmosphere, doesn't seem to matter.

Believe it or not, we don't do N-body physics for landed vessels.

Link to comment
Share on other sites

On 11/30/2023 at 3:26 PM, pleroy said:

Believe it or not, we don't do N-body physics for landed vessels.

Seems reasonable. But I can't reconcile that with your post above 

On 11/18/2023 at 2:35 PM, pleroy said:

The interactions between celestial bodies cost virtually nothing

Then why does turning it off (landed) make the frame rate triple?

On 11/18/2023 at 2:35 PM, pleroy said:

The problem with large spacecrafts is that Principia needs to position every single part at every frame. 

So does stock KSP, right? I'm deducing that the cost function is some product of N bodies and P parts. So it's doing N-body gravity on every part individually? If so... yeah that's a lot to calculate.

Couldn't the gravity calculation be done just once using the ship CoM? Then assume the same gravity vector applies to each part. The parts are very close together relative to solar system scale. So computation time would be F(N CBs) + G(Parts), not F(N*Parts). I guess it would compromise rotation from differential gravity and tidal forces...? Seems worth it. 

Link to comment
Share on other sites

  • 2 weeks later...

For the new moon (lunation number 295), the new release (Jordan) is out.

Performance with high part count vessels has been improved.

In some limited circumstances, Principia now displays collisions between the prediction and the surface of a celestial at the right location, when seen in the surface frame. This is still work-in-progress.

Other bugs have been fixed. See the change log for more details.

Link to comment
Share on other sites

22 hours ago, eggrobin said:

For the new moon (lunation number 295), the new release (Jordan) is out.

We are aware of multiple bugs with this release: deleting a flight plan results in a crash, and orbit analysis on the flight plan no longer works.

We are trying to understand and resolve these issues. Once they are resolved, the release will be patched as others have been in the past (most recently 伊藤 six months ago).

We apologize for the inconvenience.

Link to comment
Share on other sites

17 hours ago, eggrobin said:

We are aware of multiple bugs with this release: deleting a flight plan results in a crash, and orbit analysis on the flight plan no longer works.

We are trying to understand and resolve these issues. Once they are resolved, the release will be patched as others have been in the past (most recently 伊藤 six months ago).

We apologize for the inconvenience.

We have hotfixed the release; if you downloaded Jordan prior to this post, please click on the link in the OP or the GitHub readme to download it anew (the version string in the Principia UI should say 2023121300-Jordan-0-ge51928f832188fd4eeedd50e33d11218e1cd44eb, not 2023121300-Jordan-0-g9e72cb593eb3e8b37b1ae2bf29a6a08963d1c0b3).

We apologize for the inconvenience.

Link to comment
Share on other sites

Thanks guys. It's WAY faster now. My 150 part ship is running about 30 FPS... at least double. So much more playable. The difference between landed and flight is only 5-10 FPS now. 

One problem though... it's making my GPU fan louder. Can you fix that? :P

Link to comment
Share on other sites

  • 4 weeks later...
  • 4 weeks later...

For the new moon (lunation number 298), the new release (掛谷) is out.

Principia now displays predicted and planned impacts in the right location when seen in the surface frame; this replaces the experimental approach that was attempted in Jordan.

See the change log for more details.

Link to comment
Share on other sites

  • 4 weeks later...
  • 2 weeks later...

@eggrobin  I am trying to use Principia with Parallax. I read your installation instructions on github about how Principia (though Parallax does nothing more than edit terrain height) still recognizes Parallax as a planet pack, and as such requires a custom Kopernicus config to stabilize the Joolian system

I have tried to figure out how to install your custom config in to my GameData folder in order to correct Bop, Vall, and Tylo, but I can't ever seem to get it working

So far I've tried merely copy pasting your config in to a new .cfg file, and placing it inside the Kopernicus Config folder. I've tried moving that same file outside of the Kopernicus Config folder in to the main GameData folder. I've tried taking the specific Semi-Major Axis of the three moons (Including Bop's retrograde inclination) and pasting them in to the Kopernicus system.cfg file under the relevant celestial bodies' configurations, that didn't work either

The conclusion I've come to is that I was on the right track with having my own standalone .cfg file with your parameters in them  for the Joolian satellites. Though, after doing some research, it's obvious to me that creating my own ModuleManager patch file like that, and inputting all the correct strings of code to effectively install your required edits is far above my own capabilities

 

Help? lol 

 

Edit: Disregard, I figured it out

Edited by HereComesTheBoom
Link to comment
Share on other sites

13 hours ago, HereComesTheBoom said:

I have tried to figure out how to install your custom config in to my GameData folder in order to correct Bop, Vall, and Tylo, but I can't ever seem to get it working

The Kopernicus configuration here needs to be put somewhere in the GameData folder (anywhere), and to have the extension .cfg.  You should not have to mess with anything else.

One important point is that you must create a new save.  The configuration of the solar system is recorded in the save the first time it is created, and the .cfg files are not re-read after that.

Link to comment
Share on other sites

  • 2 weeks later...

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.

×
×
  • Create New...