Jump to content

CommNext [v0.7.0 for KSP2 v0.2.0]


Recommended Posts

CommNext

A CommNet overhaul with body occlusion, dish relays, map view lines and report utilities 

pvNI7kR.gif

[ Full images gallery: https://imgur.com/a/5oPDLYl ]

Download: SpaceDock | GitHub -  CommNext?label=Version

 

Description & Details

CommNext is a complete CommNet (KSP connection system) overhaul, inspired by KSP1 dynamics and additional utilities to make it easier to use.

Now connections between vessels need to be in line of sight (so celestial bodies can block the connection).
Implementation has been crafted to be optimized, so don't worry about performance, just make sure you have _moar_ sats!

Not every vessel can bounce signal to another one: you'll need relays! In the spirit of KSP1, only dish antennas (RA-2, RA-15, RA-100) are allowed to relay signal.
You'll need to setup a relay network in order to bring your missions farther in space.

Use the Map View CommNext toolbar to inspect your network:

  • Click on the Dish icon to cycle through lines display mode (All active connections, Only active vessel path, Hide lines)
  • Use the Ruler icon to toggle Range spheres: each relay will show its range with a yellow sphere (when it's connected) or a red sphere (when it's disconnected from the network)
  • Use the Report icon to open the Vessel Comms Report window, which will show all the connections from and to the current vessel. It will help you to check if some possible connections are blocked by a celestial body, or if there is not enough power in a relay.

Features

  • Body occlusion blocking connections which are not in line of sight
  • New Relay module on dish antennas 
  • Reduced antennas range based on KSP1 values, KSC DSN is now reduced to 2G
  • Vessel Comms Report window to help you understand the connections and the eventual issues
  • Map View display utilities, like Network Lines and Sphere Rulers to know relays range
  • Optimized to be fast while still being precise enough to detect occlusions even on inter-planetary distances
  • Settings to customize the connections behaviour (see them in Settings > Mods)
  • Localization support

See a mod preview here: https://imgur.com/a/5oPDLYl

Credits

  • A huge thanks to all the KSP2 Modding Community support, in particular to @munix and @cheese3660
  • Thanks to @Takovacs, @Falki , @Dolphin, @Safarte , MofuRabbit, Jann5s, Unknown P, DoogieZ, and all the people that helped me testing this mod and gave me extremely useful insights and suggestions. Without them it would not have been possible to make this mod!
  • Thanks for the localizations:
  • Some icons by PiiXL, under CC BY-ND 4.0

Roadmap

  • Network Bands support to choose which vessels could connect and make the connections cleaner

Progress is tracked on GitHub Project: https://github.com/orgs/Kerbalight/projects/5

Installation:

The preferred way to install this mod is through CKAN.


If  you really want to install it manually, download the release from SpaceDock / GitHub (the links are up here), and then install manually:

  • Install BepInEx + SpaceWarp + UITK for KSP2 (all these dependencies are required)
  • Extract the contents of the downloaded .zip into your KSP2 installation folder (usually C:\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program 2)
  • Mod folder will then be positioned in <your installation path>\Kerbal Space Program 2\BepInEx\plugins\

Source Code:
https://github.com/Kerbalight/CommNext License-MIT-yellow.svg

Link to comment
Share on other sites

Release v0.5.1

Improvements

  • Add setting to configure KSC range. Now you can go in settings > mods and choose between 2Gm, 10Gm and 50Gm
  • Show current vessel max. ranges in the Vessel Comms Report window
  • Highlight hover state for rulers & vessel report icons in the toolbar
  • Add tooltips to Vessel Comms Report window and map view toolbar
  • Allow to close the vessel comms report from the toolbar toggling the window

Fixes

  • Fix vessel range not refreshing on decoupling or undocking/docking. Currently the game does not refresh CommNet ranges on these events, so it's now handled in the mod.
  • Vessel report now is synced when switching active vessel
  • Fix a bug which caused some vessels Power status to not be updated
  • Fix report icon in toolbar not being shown as toggled
  • Fix vessel comms report close icon not highlight on hover

tooltips

Download on SpaceDock

Link to comment
Share on other sites

Release v0.5.2

Improvements

  • Save app toolbar position and toggled options in save game. After game reload the position will be restored. Thanks @Falki!

Fixes

  • Fix toolbar connection icons showing always the same icon

Download on SpaceDock

8 hours ago, Schneider21 said:

Oh wow, I saw this appear on CKAN and just installed it without thinking. Discovered the planetary occlusion but had no idea about the report functionality, which looks fantastic!

Great job with this, and thanks for sharing it!

Thanks for your words!

I have in plan some updates too to have "Bands" (or "Channels") to decide how to switch traffic between relays, so just to say if you find the "Band" dropdown in the Relay PAM, it's just an unfinished feature. I'm saying this in case you're wondering what it does :)

Hope you'll enjoy latest update!

Edited by leonardfactory
Link to comment
Share on other sites

20 hours ago, Mr.DingALing said:

Oh yes!

Are Communotrons also included in CommNext?

Please tell me it is compatible with Orbital Survey.  :)

Communotrons included! They just don't act as relays :)

It's compatible with Orbital Survey, the only thing is that right now all Orbital Survey antennas are also relays, but this will be fixed (or better, made configurable) in next release 

Link to comment
Share on other sites

Release v0.6.0

New Features

  • Add bands connection logic with the new "Signal Modulator" module
    • Each transmitter now is coupled with a Signal Modulator module, which allows you to specify which band this antenna uses for communication. By default, each antenna is connected on the X band
    • Higher level antennas have multiple bands, giving you more flexibility
    • Bands are highlighted in map view and comms report
  • Add ability to focus vessel by clicking on the connections in the vessel report. On hover there will be a "Control" button too, to switch to the vessel
  • Add the option to disable the relay behavior for a single antenna
  • Allows to filter only active (in use) connections in the report
  • Add occlusion tolerance to avoid blocking connections on terrain under sea level.
    • Furthermore now occlusion radius multiplier is configurable in settings

Fixes

  • Fix map toolbar position on new games. Map toolbar loaded incorrect position (0, 0) on new game loading if Map View has never been entered before in previous saves
  • Removed connection to the vessel itself which was incorrectly shown in the UI
  • Add UI indicator if active vessel is not powered. Plus a dedicated tooltip in the connections list for the power icon. This way it's easier to see if connection cannot be made due to to target node being out of EC, or if the problem lays in the active vessel.
  • Add rulers mode to display all antennas ranges, not only relays. This can be activated cycling through the ruler icon in the toolbar, like for connection lines

Screenshot 2024-02-25 222117

Download on SpaceDock

Edited by leonardfactory
Link to comment
Share on other sites

31 minutes ago, Schneider21 said:

This is awesome, but like... is there a guide or something that explains how to work at this level of complexity? Or maybe how the ComNet stuff even works in the vanilla game? :huh:

You're right, I tried to add the Vessel Communications Report window (the last button in the toolbar) which should help players see connections issues, or the "Rulers" button which shows the maximum range of each antenna.

Anyway, even with the topic description, I should make a better guide or an in-game one to help players. In the meantime, these are the core gameplay bits:

  • Antennas are split between Relays (only the dish antennas, you can check it in the OAB with shift pressed while hovering the part) and normal Antennas
  • Only Relays can be used to transfer signal between two vessels. Normal antennas can not forward, only receive signal from other relays (or KSC)
  • Signal may be blocked by a celestial body if the planet is between the vessel and the relay
  • Each Antenna has a range (indicated in meters / kilometers / etc. in the OAB). To communicate two vessels should be each one in the range of the other (you can use the Rulers in map view to check this)
  • Relays should be powered (EC > 0) to be functional. This can be disabled in Mods > Settings.
  • Stock CommNet has higher ranges, we are using the lower antenna ranges from KSP1Even here, shift in the OAB to see the ranges
  • Connections are limited to antennas with the same Bands. This means you can create different networks. A vessel can connect to another only if both have the same Band. You can add multiple bands to a vessel using multiple antennas or using higher level antennas. (You can check this in the OAB with shift pressed in the "Signal Modulator" section)
Link to comment
Share on other sites

That's a great start! 

4 hours ago, leonardfactory said:

Connections are limited to antennas with the same Bands. This means you can create different networks. A vessel can connect to another only if both have the same Band. You can add multiple bands to a vessel using multiple antennas or using higher level antennas. (You can check this in the OAB with shift pressed in the "Signal Modulator" section)

While this makes sense to me that it would avoid interference in a real-world setting, what's the advantage to using different bands in game? Does the range vary based on band? I thought I recalled you saying number of antennae doesn't increase range, so I'm curious what else might.

Link to comment
Share on other sites

@Schneider21 right now it’s just a visual thing to cleanup your network (see KSP1 CommNet Constellations), so that you can avoid spaghettis, and it should make it easier to develop interplanetary links with tiered relays without losing your mind :D.

Furthermore I’ve released it in order to check if everything is stable, so in the future I can add other gameplay related features with a solid base. Ideas are transmission bonus (like EC consumption vs packet size), range modifiers (trading range for packet size), but I want to brainstorm more before heading in a precise direction.

As always feedback is highly appreciated!

Link to comment
Share on other sites

Has anyone actually tried setting up 3 sats/relays in orbit around all the planets for complete communications coverage?  KSP2 is not great in performance the more craft you add. Just wondering what it’s like when this occurs.

Edited by Biggen
Link to comment
Share on other sites

hi leonard,

i've been playing a few hours with the mod you create, thanks for you work

i have some trouble to get a 1st com btw already installed relays after relaunching my save, i had to go to each, take command and switch to the other and so on

each time i switch vessel i had to do the same, tell me if i can help giving more info

 

Link to comment
Share on other sites

19 hours ago, leonardfactory said:

Stock CommNet has higher ranges, we are using the lower antenna ranges from KSP1Even here, shift in the OAB to see the ranges

As far as I can tell, this part does not seem to work properly, at least for transmitters built into command pods/probe cores. They all seem to have a range of 200 Mm, which sort of invalidates the Communotron 16 and 16-S for any application that is not heavily reliant on bandwith.

Is that something on my end acting up or something not quite working as intended?

Link to comment
Share on other sites

1 hour ago, swiftsvre said:

As far as I can tell, this part does not seem to work properly, at least for transmitters built into command pods/probe cores. They all seem to have a range of 200 Mm, which sort of invalidates the Communotron 16 and 16-S for any application that is not heavily reliant on bandwith.

Is that something on my end acting up or something not quite working as intended?

I probably messed up the Command Pod antenna ranges, they should be definitely lower, will fix! Thanks for report

 

3 hours ago, Deraw said:

hi leonard,

i've been playing a few hours with the mod you create, thanks for you work

i have some trouble to get a 1st com btw already installed relays after relaunching my save, i had to go to each, take command and switch to the other and so on

each time i switch vessel i had to do the same, tell me if i can help giving more info

 

Please, send some screen (comms report, map view before and after switching to the vessels) and the save game with infos about the vessel names which show issues; this way I’d be able to help you better

Link to comment
Share on other sites

20 hours ago, leonardfactory said:

@Bombaatu HG-5 is not a signal relay antenna. You can check which ones are relaying (RA-2, RA-15 & RA-100) pressing shift in the OAB while hovering the antenna parts.

This shows the HG-5 is a relay & I have used it as such many times in KSP 1 https://wiki.kerbalspaceprogram.com/wiki/Antenna

https://wiki.kerbalspaceprogram.com/wiki/Parts/Utility/DirectAntennas/HG-5.cfg

Edited by Bombaatu
Link to comment
Share on other sites

3 hours ago, Bombaatu said:

The wiki is only relevant to KSP1, not KSP2. In KSP2, there is no such distinction between direct/relay antenna. That is a concept only introduced in this mod (which doesn't perfectly follow KSP1's system, because it's its own thing)

Link to comment
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.

×
×
  • Create New...